材质(material)

发布时间 2023-04-10 16:40:34作者: escapist
material
给每个可见的像素上色,包括纹理的处理,这些都是片元着色器完成的
scene.add(mesh1, mesh2) 可以一次添加多个
 
法线材质:不需要光照。当我们使用几何体的时候 normal 这些信息都已经有了,所以才能呈现出不同的颜色
指向外面的方向
可以对灯光反射和折射,主要是对于光作出反应
当一束光照射过来的时候,就可以知道那个地方更加明亮,表面阴影呀这些东西
如果一束光的方向和 法线的方向一致,就表示在背面,就看不清了
normalMterial.flatShading = true 可以显示法线的表面阴影
可以清楚的看清 face,表面看起来就不是光滑的了
 
法线材质一般用于调试法线的
 
madcapMaterial 不需要光照 将通过法线作为参考展示一个颜色,在纹理上选择正确的颜色
可以用于模拟灯光产生的效果,实际上并没有灯光
在哪里找 github.com/nidorx/matcap 你也可以自己在3d软件上做,方法就是 增加灯光效果 然后渲染出来
甚至可以在PS上做
 
MeshDepthMaterial
离我们很近时接近 白色,越远 越黑
可以用于 创建雾 预处理 对光照不起作用
 
下面的就需要灯光了
LambertMaterial 和木材差不多
 
和上面的区别在于,下面的 中间有很大的阴影,而且表面更加明亮
phongMaterial
具有镜面高光效果
material.shininess = 100 可以在球上看见光点,值越大,光点越明亮
material.specular = color 材质的高光颜色
 
toonMaterial 卡通效果 必须要有光照
可以看清颜色的 很明显的变化
gridentMap 设置了之后 看不清很明显的颜色变化(也就失去了卡通感)
必须使用 magFilter 才能有效,因为图片实在是太小了
加上之后可以很明显的看见 5中颜色的分界
 
standardMaterial 标准材质
基于PBR模型,更加的有真实感 它是一个标准,很多3d软件都是基于这个的
否则,在导入模型会就回有很大的差别
多了很多其他属性 金属感 和粗糙感
 
MeshPhysicalMaterial
如果需要透明的涂层,就可以使用它
 
环境光贴图(aoMap), 在一些角落里面,增加一些阴影,这是假的阴影
但是需要第二组 uv 值
 
发现贴图 也有 系数 是二位向量
normalScale.set(0.4, 0.6) 值越小 越不明显
 
环境贴图 envMap
找材料 hdrihaven 这都是hdr文件
HDRI-to-CubeMap github上