导出到 DAE 时如何继承相同的纹理映射?

Posted

技术标签:

【中文标题】导出到 DAE 时如何继承相同的纹理映射?【英文标题】:How do I carry over identical texture mapping when exporting to DAE? 【发布时间】:2020-03-02 07:45:58 【问题描述】:

我能够在 MeshLab 中打开一个 3DS 文件,当我导出为 Collada DAE 格式时,纹理是可见的,但它们并没有像 MeshLab 中的预览那样被投影到网格上。例如,立方体的正面/背面将具有适当的纹理(假设它是圆点),但顶部和底部具有条纹外观。如何应用单个纹理并使其在所有面上按预期显示,例如在转换之前导入的模型?

【问题讨论】:

你能上传你的问题的截图吗?再次在meshlab中打开输出DAE文件是错误的还是ok的? 感谢您的评论。它让我从不同的角度思考我的问题,我回答了我自己的问题。 【参考方案1】:

此问题是使用终端软件查看 DAE 文件的结果。这不是 MeshLab 的问题。

例如,如果将文件加载到 Away3D 中,请确保使用 TextureMaterial 类而不是更简单的 SinglePassMaterialBase 来处理纹理材质,例如您可能在他们的示例代码中找到的内容。这是我现在使用的,它可以正确显示纹理:

var material:TextureMaterial = cast(asset, TextureMaterial);
material.ambientColor = 0xffffff;
material.lightPicker = _lightPicker;
material.shadowMethod = new FilteredShadowMapMethod(_light);
material.lightPicker = _lightPicker;
material.gloss = 30;
material.specular = 1;
material.ambient = 1;
material.repeat = true;

【讨论】:

以上是关于导出到 DAE 时如何继承相同的纹理映射?的主要内容,如果未能解决你的问题,请参考以下文章

dae 到 gltf pbr 导出不导出纹理不是 base64

将纹理 3d 模型和纹理从搅拌机导出到 xna 4.0

旋转纹理时如何消除失真

纹理映射一个NGon?

基于全景照片和场景模型计算导出纹理贴图

FBO:渲染到纹理,绘制渲染纹理时纹理映射错误