THREE.js 中 material 的不透明度
Opacity of material in THREE.js
我正在使用 lambert 着色器,在示例中它设置 material 如下:
this.material.uniforms.emissive.value = new THREE.Color(
Math.random(),
Math.random(),
Math.random());
在我有一个简单的着色器设置 material 之前我可以控制 alpha:
this.material.uniforms.color.value = new THREE.Vector4(
Math.random(),
Math.random(),
Math.random(),
0.3)
但看起来 lambert 着色器没有颜色向量4。
知道如何控制 alpha 吗?
我在此处对兰伯特着色器使用相同的示例:https://forge.autodesk.com/blog/forge-viewer-custom-shaders-part-2
简单着色器来自:http://adndevblog.typepad.com/cloud_and_mobile/2017/01/forge-viewer-custom-shaders-part-1.html
您将不得不使用 material 不透明度。
请务必先将其标记为透明:
this.material.uniforms.transparent = true;
然后设置不透明度:
this.material.uniforms.opacity.value = 0.3;
如果您已经渲染了场景,您可能必须将其标记为更新:
this.material.uniforms.needsUpdate = true;
纹理使用 .alphaMap
我正在使用 lambert 着色器,在示例中它设置 material 如下:
this.material.uniforms.emissive.value = new THREE.Color(
Math.random(),
Math.random(),
Math.random());
在我有一个简单的着色器设置 material 之前我可以控制 alpha:
this.material.uniforms.color.value = new THREE.Vector4(
Math.random(),
Math.random(),
Math.random(),
0.3)
但看起来 lambert 着色器没有颜色向量4。
知道如何控制 alpha 吗?
我在此处对兰伯特着色器使用相同的示例:https://forge.autodesk.com/blog/forge-viewer-custom-shaders-part-2
简单着色器来自:http://adndevblog.typepad.com/cloud_and_mobile/2017/01/forge-viewer-custom-shaders-part-1.html
您将不得不使用 material 不透明度。 请务必先将其标记为透明:
this.material.uniforms.transparent = true;
然后设置不透明度:
this.material.uniforms.opacity.value = 0.3;
如果您已经渲染了场景,您可能必须将其标记为更新:
this.material.uniforms.needsUpdate = true;
纹理使用 .alphaMap