如果我在 three.js 中有一个应用了纹理(彩色纹理)的对象,例如汽车 - 我如何向表面添加部分反射,以便最终的材质可以说是闪亮的红色金属和场景的反射?
我熟悉使用额外的相机和立方体贴图来创建反射,但我不确定如何将其与对象现有材质相结合。
我使用的反射方法的一个例子可以在这里找到:
如果可以组合材料,是否可以控制每个部分的不透明度(原始材料与反射)来控制表面的“反射”程度?
非常感谢
如果我在 three.js 中有一个应用了纹理(彩色纹理)的对象,例如汽车 - 我如何向表面添加部分反射,以便最终的材质可以说是闪亮的红色金属和场景的反射?
我熟悉使用额外的相机和立方体贴图来创建反射,但我不确定如何将其与对象现有材质相结合。
我使用的反射方法的一个例子可以在这里找到:
如果可以组合材料,是否可以控制每个部分的不透明度(原始材料与反射)来控制表面的“反射”程度?
非常感谢
是的,但控制表面反射程度的是 ,而reflectivity
不是。opacity
见这个例子: http: //mrdoob.github.com/three.js/examples/webgl_materials_cubemap.html
编辑:此示例未显示应用于材质的纹理,但在上面的示例中,可以像这样添加:
var texture = THREE.ImageUtils.loadTexture( 'texture.jpg' );
var cubeMaterial1 = new THREE.MeshLambertMaterial( {
color: 0xffffff,
ambient: 0xffffff,
map: texture,
envMap: reflectionCube
} );
(旁注,cubeMaterial1
在示例中是应用于网格的材料——尽管变量名称的选择不寻常。)