当前位置:   article > 正文

threejs 加载模型遇到的问题_three.js模型部署到安卓系统出现模型丢失问题

three.js模型部署到安卓系统出现模型丢失问题

今天在处理threejs加载的Obj模型的时候,想让按照模型的不同类型一次加载到页面中,

根据模型中的children中的name来判断模型的类型

  1. //consle.log(this.modelObject.children.length) //86
  2. this.modelObject.traverse(child => {
  3. console.log("in")
  4. scene.add(child);
  5. })

以上代码 如果 不加scene.add(child)  控制台上打印出来的“in”的数量是正确的,一旦加上 scene.add(child) 这句话 控制台上打印出来的"in"数量就不正确

经过了解发现 scene.add() 方法 不会复制一份child到scene中,原有的child是属于this.modelObject的 如果直接将child添加到场景中 就会造成层级关系(父子关系)混乱

因此需要单独创建一份数据出来 添加到场景中 这样就能将模型中的数据依次加载到场景中

  1. this.modelObject.traverse(child => {
  2. console.log("in")
  3. scene.add(child.clone());
  4. })
  5. 或者
  6. scene.add(...this.modelObject.children)

\

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/95832
推荐阅读
相关标签
  

闽ICP备14008679号