【问题标题】:Apply material to collada mesh in A-frame将材料应用于 A 型框架中的 collada 网格
【发布时间】:2016-07-30 21:35:31
【问题描述】:

我正在尝试将材质应用于 A 框架中的自定义 3d 网格(基于 Three.js),但它不起作用(即模型保持其原始材质) 知道可能是什么问题?

下面是我的场景,其中“ruban4”是从 Blender 导出的随机 Collada 模型。

<a-scene>
    <a-assets>
        <a-asset-item id="ruban" src="ruban4.dae">
    </a-assets>
    <a-collada-model 
                     src="#ruban"
                     material="shader: flat; color: #93d400;"
                     position=" 10 10 0">
    </a-collada-model>
</a-scene>

更新:似乎是 Collada 特有的,适用于 .obj 和 .mtl

【问题讨论】:

    标签: three.js collada aframe


    【解决方案1】:

    Collada 模型应被视为黑匣子。如果您想修改模型或其纹理,您应该在您选择的 3d 包中进行。 Collada 模型通常包含多个几何图形、动画、纹理和映射(它们导入完整的子场景)。框架材料不适用,因为它无法以可预测的方式完成。哪个纹理将被替换? Aframe 需要了解作者的意图。

    OBJ 之所以有效,是因为该格式描述了一个简单的几何形状,并且可以以可预测的方式应用材料。

    【讨论】:

      【解决方案2】:

      作为 Diego 的答案的替代方案,一旦将 COLLADA 模型导入您的场景,您可以遍历其场景图并根据需要手动修改各个部分。这有点 hacky,但可能。

      四处逛逛:

      myColladaEl.getObject3D('mesh');
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-03-25
        • 1970-01-01
        • 2021-12-14
        • 2021-12-26
        • 2019-02-17
        • 2015-06-02
        • 1970-01-01
        • 2015-04-23
        相关资源
        最近更新 更多