【问题标题】:Exporting Textures with Offsets to GLTF from Three.js Scene从 Three.js 场景将带偏移的纹理导出到 GLTF
【发布时间】:2018-11-23 21:13:18
【问题描述】:

编辑:

我有一个关于导出到 obj 和 mtl 的问题,但我发现我可以使用 GLTFExporter.js 从three.js 导出,并成功地从three.js 中获取几何和纹理。

我在使用 GLTF 导出器时遇到的问题是,当我在 Blender 中打开文件时,我的纹理具有偏移和重复设置,这些设置似乎没有从 three.js 导出。在 Blender 中,整个纹理占据了 MeshPlane,而过去在 Three.js 场景中只显示一小部分纹理。

有人知道我可以添加什么到 GLTF 导出器以记录和保留重复和偏移纹理设置吗?

非常感谢:)

【问题讨论】:

    标签: javascript three.js


    【解决方案1】:

    我自己也遇到过这个问题。据我所知,答案是否定的。

    偏移和重复是三个.js 特有的功能。其他一些库也有等价物。一些引擎使用直接纹理矩阵操作来实现相同的效果。

    一种解决方法是在导出之前修改模型的 UV 坐标,以反映 texture.offset 和 texture.repeat 的设置。 您基本上会将每个顶点 UV 乘以 texture.repeat,然后添加 texture.offset。这将有效地将这些参数“烘焙”到模型 UV 中,但随后需要您将 .repeat 和 .offset 分别重置回 1,1 和 0,0,以便在 THREE.js 中再次正确渲染模型。

    以下是 GLTF 工作组的一个稍微相关的主题:

    https://github.com/KhronosGroup/glTF/issues/107

    【讨论】:

    • 该死!非常感谢您提出可能的解决方法,我明天会做一些测试,看看是否可行,如果我得到它,我会将此标记为答案。
    • 老兄!!!谢谢!!这绝对是解决方案,但意味着我必须返回我的应用程序并更改与纹理相关的所有内容......所以这就是我正在做的!找到了大量信息,甚至使用了这个很棒的 Udemy 课程中的代码来学习three.js classroom.udacity.com/courses/cs291。 .现在我只需要弄清楚如何让它们干净地脱离 Three.js。目前他们需要在搅拌机中重新制作材料,因为它们是金属材质且没有 alpha。但是您的解决方案有效!
    • 太棒了 :) 很高兴我能帮上忙!干杯!
    猜你喜欢
    • 2015-05-16
    • 1970-01-01
    • 2021-05-29
    • 2020-04-14
    • 2015-03-12
    • 2021-12-25
    • 2016-10-28
    • 2018-08-01
    • 1970-01-01
    相关资源
    最近更新 更多