从 Maya 导出时,DAE 文件图像纹理不会显示在 Aframe 中

DAE files image texture doesn't show up in Aframe when exported from Maya

我已经从 Maya 中导出了一个带有图像纹理的 .dae 文件。但是当那个.dae文件和Aframe一起使用时,图像纹理没有出现,你只能看到基础material.

我可以在 Maya 中使用哪个导出器来解决这个问题?

下面是 PSD 和 Aframe 中相同的 .dae 文件:

更新:

通过脚本将模型作为 Threejs.json 注入是可行的,但有点违背了使用 AFrame 的目的。 Screenshot

我想您添加了您的 collada ( dae ) 模型,如 aframe 文档中所示:

<a-scene>
  <a-assets>
    <a-asset-item id="head" src="/path/to/head.dae"></a-asset-item>
  </a-assets>
  <a-entity collada-model="#head"></a-entity>
</a-scene>

要对模型进行纹理处理,您需要:
1.在实体的material中引用纹理。 在 <a-assets> 中进行 img 引用:<img id="texture" src="head.jpg"> 然后在您的实体中声明 material:

<a-entity collada-model="#head" material="#texture"></a-entity>


2. 将你的模型和纹理上传到clara.io,将其转换为json(threejs) 模型,并确保json 文件中的引用正确,然后加载模型<a-scene>。我通过将脚本放在已注册的 分量:

var objectLoader = new THREE.ObjectLoader();
            objectLoader.load("untitled-scene.json", function ( obj ) {
                sceneEl.object3D.add( obj );
                obj.scale.set(10,1,010);
                obj.rotation.set(0,179,0);
                obj.position.set(0,0,10);
            } );

如果问题仍然存在,请提供有关您的代码的更多信息。
注意:我经常收到 .tga 纹理,确保它是 .png 或 .jpg,如果你不使用 tga 加载器,.tga 将无法工作,正如 kevinngo 解释的那样 。尽管如此,如果它是一个 tga 问题,那么头部将是黑色的,如 link.

中所述

当我将我的模型从 Cinema 4D 导出到 collada 1.5 时,它没有纹理,但是当我导出 collada 1.4 时,它在一帧中有纹理!

也许这有帮助!