三个Js加载FBX不显示所有模型部分

Posted

技术标签:

【中文标题】三个Js加载FBX不显示所有模型部分【英文标题】:Threeejs loaded FBX not show all model part 【发布时间】:2020-06-29 08:34:51 【问题描述】:

我需要你的手。我在这里将 FBX 模型导入 Threejs 的导入代码:

let loader = new FBXLoader();
loader.load(model.obj_path, object => 
  let mix = new THREE.AnimationMixer(object);
  if (object.animations.length) 
     var action = mix.clipAction(
        object.animations[0]
     );
     mixer.push(mix);
     action.play();
  
  object.castShadow = true;
  object.scale.copy(model.scale);
  object.position.copy(model.position);
  object.rotation.set(model.rotation.x, model.rotation.y, model.rotation.z);
  group.add(object);
  loadingScreen();
, onProgress);

目前它没有出现任何导入问题,但是我意识到对于某些型号,存在显示问题,某些部件丢失。这里是屏幕:

然而在这个项目中,我还安装了OrbitControl来管理相机,我发现通过移动相机,缩放等,模型变得完整

我想知道这是否已经发生在某人身上,以及是否有办法解决这个问题。非常感谢大家,祝您有美好的一天!

【问题讨论】:

有趣。有没有机会用editable live example 证明这个问题?或者作为一个 git repo。 【参考方案1】:

可能与截锥体剔除有关。动画对象通常具有错误定义的边界框。如果模型仅在其中心点进入相机视野时出现,则表明它可能是边界框问题。

【讨论】:

以上是关于三个Js加载FBX不显示所有模型部分的主要内容,如果未能解决你的问题,请参考以下文章

将 FBX 模型加载到 DirectX 应用程序中

把fbx车身模型导入unity3d有的零件显示不出来,而换个角度又会出现,求大佬支招

Three.js FBX 二进制格式不支持

使用三个 js 无法正常运行 FBX 动画

如何在three.js中为.fbx模型应用纹理?

从 *.FBX 文件读取和显示动画