【问题标题】:Fix Three.js model when scale hasn't been applied in Blender在 Blender 中未应用缩放时修复 Three.js 模型
【发布时间】:2020-10-26 17:19:13
【问题描述】:

我用 Three.js 构建了一个 .glb 查看器。每当我想从 Blender 中显示一个模型,其中在导出之前没有应用比例(例如,比例为 0.5 而不是 1),我在 Three.js 中遇到尺寸问题。它通常表现为模型小于其边界框。

有没有办法通过 Three.js 获得一致的规模?

可下载的文件:

这是导致问题的文件: https://firebasestorage.googleapis.com/v0/b/fotura3d-dev.appspot.com/o/cassette.glb?alt=media&token=27e08f59-68b4-4011-89a4-04bdc56365db

这是在 Blender 中应用了转换的文件,它在 Three.js 中按预期工作: https://firebasestorage.googleapis.com/v0/b/fotura3d-dev.appspot.com/o/cassetteApplied.glb?alt=media&token=fc6decb1-aa36-4ab2-8582-9ce21111585b

【问题讨论】:

  • 可以分享一下你的截图型号吗?
  • 没问题!我刚刚编辑了问题。

标签: three.js blender


【解决方案1】:

而不是 scene.add(yourModel) 将您的模型添加到场景中。尝试 scene.attach(yourModel)

【讨论】:

  • 不幸的是,这并没有改变任何东西。
  • 您可以使用 mesh.geometry.computeBoundingBox() 强制重新计算边界框
  • 目前没有变化。无论我是为父对象还是网格重新计算。它总是如上图所示。
  • 如果您将文件拖到 don mccurdys 查看器上,您是否会看到同样的问题:gltf-viewer.donmccurdy.com
  • 我在查看器中看不到边界框,但两个文件以不同的初始大小加载。我认为这意味着问题也在那里发生。
猜你喜欢
  • 2018-02-19
  • 1970-01-01
  • 2012-12-11
  • 2020-03-15
  • 2014-09-03
  • 2021-03-21
  • 2018-06-07
  • 2013-12-08
  • 2015-12-01
相关资源
最近更新 更多