【问题标题】:Three.js gltf specifying object parts三.js gltf 指定对象部分
【发布时间】:2021-08-09 22:27:53
【问题描述】:

我有一个项目,我们想在 three.js 中使用 gltf 模型显示铁门的 3d 渲染。它们看起来类似于:iron door example。我需要能够改变框架的颜色,而不是门上的玻璃板。如何识别和更改框架的颜色,同时保持玻璃窗格的颜色相同? 谢谢

【问题讨论】:

    标签: javascript colors three.js gltf


    【解决方案1】:

    最好在对象的设计阶段解决此问题。这意味着当您在 Blender 等 DCC 工具中创建资产时,您必须确保门模型由多个组件(框架、玻璃板、把手等)组成,并且可能具有独特的材料。

    在应用程序中,您可以通过光线投射选择各个组件,提取相应的材质,然后更改颜色值。这样,其他组件就不会受到此操作的影响。官方three.js 示例提供了一些代码,例如工作流,例如:

    https://threejs.org/examples/webgl_interactive_cubes

    【讨论】:

    • 好的,很高兴知道。如果我希望客户端能够选择 three.js html 元素之外的颜色,比如颜色选择器,该怎么办?所以我不能使用光线投射,但需要通过 id 或 name 进行选择。只要我知道在设计期间创建的组件名称,gltf.scene.getObjectByName 会起作用吗?
    • 是的,这将是首选方法。选择唯一的名称很重要。
    猜你喜欢
    • 2020-05-25
    • 1970-01-01
    • 2020-06-27
    • 1970-01-01
    • 2020-01-31
    • 2015-05-11
    • 2016-12-06
    • 2020-06-10
    • 1970-01-01
    相关资源
    最近更新 更多