Forge MeshPhongMaterial透明色
Forge MeshPhongMaterial transparent color
在 Forge Viewer 中,我添加并尝试将 THREE.PlaneBufferGeometry
的颜色设置为 #384c70
,而 Material 我使用 THREE.MeshPhongMaterial()
。但是有一个问题,因为 Color 是透明的。如果我在三个 js 沙箱中使用相同的颜色,那么它是正确的,没有透明。哪里出了问题?
我不需要透明色。其他颜色也存在此错误,但并非所有颜色都存在。
谢谢
有一个我的代码示例:
this.viewer.overlays.addScene("custom-scene");
let plane = new THREE.PlaneBufferGeometry(100, 100);
let material = new THREE.MeshPhongMaterial();
material.color = new THREE.Color("#384c70");
material.side = THREE.DoubleSide;
let mesh = new THREE.Mesh(plane, material);
mesh.position.set(0, 0, 0);
this.viewer.overlays.addMesh(mesh, "custom-scene");
this.viewer.impl.sceneUpdated(true);
当在 overlay 中使用某种颜色时,这是 Forge Viewer 中的一种奇怪错误。原因是 - 叠加渲染管道使用自定义着色器逻辑将特定范围的颜色转换为透明选择高亮。
这绝对是观众需要解决的问题,但与此同时,我建议避免叠加并使用 ModelBuilder 添加您的自定义几何图形。
在 Forge Viewer 中,我添加并尝试将 THREE.PlaneBufferGeometry
的颜色设置为 #384c70
,而 Material 我使用 THREE.MeshPhongMaterial()
。但是有一个问题,因为 Color 是透明的。如果我在三个 js 沙箱中使用相同的颜色,那么它是正确的,没有透明。哪里出了问题?
我不需要透明色。其他颜色也存在此错误,但并非所有颜色都存在。
谢谢
有一个我的代码示例:
this.viewer.overlays.addScene("custom-scene");
let plane = new THREE.PlaneBufferGeometry(100, 100);
let material = new THREE.MeshPhongMaterial();
material.color = new THREE.Color("#384c70");
material.side = THREE.DoubleSide;
let mesh = new THREE.Mesh(plane, material);
mesh.position.set(0, 0, 0);
this.viewer.overlays.addMesh(mesh, "custom-scene");
this.viewer.impl.sceneUpdated(true);
当在 overlay 中使用某种颜色时,这是 Forge Viewer 中的一种奇怪错误。原因是 - 叠加渲染管道使用自定义着色器逻辑将特定范围的颜色转换为透明选择高亮。
这绝对是观众需要解决的问题,但与此同时,我建议避免叠加并使用 ModelBuilder 添加您的自定义几何图形。