A-Frame:如何使用 setObject3D 将多个网格添加到一个实体?

A-Frame: How do you add multiple meshes to an entity with setObject3D?

使用 A-Frames 标签,可以将多个组件作为子组件添加到一个实体中:

<a-scene>
  <a-entity>
   <a-box>...</a-box>
   <a-box>...</a-box> 
 </a-entity>
<a-scene>

如何使用 setObject3D 方法在已注册的组件中复制它?

代码笔:https://codepen.io/ubermario/pen/wrwjVG

据我所知,setObject3D 仅将 Three 对象映射为 object3D 的根,例如将子实体与父实体合并。 为了实现你想要的,你需要:

  • 获取父实体object3D引用
  • 创建三个对象
  • 使用 parent.add(three.object)
  • 将对象添加到父级

fiddle 这里:https://jsfiddle.net/kzv3rj6m/1/

是的,您可以根据需要命名 object3D。 mesh 词只是一种普遍接受的网格并被 geometry/material 组件使用。澄清一下:

setObject3D('mesh')

setObject3D('yourobject')

setObject3D('whateveryouwantbox');