MeshToonMaterial
继承自Material
一种实现卡通着色的材质。
1.构造函数
const material = new THREE.MeshToonMaterial(parameters: Object);参数:
- parameters:(可选)用于定义材质外观的对象,具有一个或多个属性。
2.属性
共有属性见其基类Material
alphaMap
类型:Texture
alpha 贴图是一种灰度纹理,可控制整个表面的不透明度(黑色:完全透明;白色:完全不透明)。默认为空。
仅使用纹理的颜色,如果存在则忽略alpha通道。对于RGB和RGBA纹理,由于在DXT压缩和未压缩的RGB565格式中为绿色提供了额外的精度,WebGL渲染器将在对该纹理进行采样时使用绿色通道。仅亮度和亮度/alpha纹理也将按预期工作。
aoMap
类型:Texture
该纹理的红色通道用作环境遮挡贴图。默认为空。aoMap需要第二组UV。
aoMapIntensity
类型:Float
环境遮挡效果的强度。默认值为1。零表示没有遮挡效果。
bumpMap
类型:Texture
创建凹凸贴图的纹理。黑色和白色值映射到与灯光相关的感知深度。凹凸实际上不会影响对象的几何形状,只会影响光照。如果定义了法线贴图,这将被忽略。
bumpScale
类型:Float
凹凸贴图对材质的影响程度。典型范围是0-1。默认值为1。
color
类型:Color
材质的颜色Color,默认设置为白色 (0xffffff)。
displacementMap
类型:Texture
置换贴图影响网格顶点的位置。 与其他仅影响材质明暗的贴图不同,置换的顶点可以投射阴影、阻挡其他对象,并以其他方式充当真实几何体。 位移纹理是一个图像,其中每个像素的值(白色为最高)映射到网格的顶点并重新定位。
displacementScale
类型:Float
置换贴图对网格的影响程度(黑色表示无置换,白色表示最大置换)。如果没有置换贴图集,则不会应用此值。默认值为1。
displacementBias
类型:Float
置换贴图值在网格顶点上的偏移量。如果没有置换贴图集,则不会应用此值。默认为0。
emissive
类型:Color
材料的发射(光)颜色,本质上是一种不受其他光照影响的纯色。默认为黑色。
emissiveMap
类型:Texture
设置发射(发光)贴图。默认为空。发射贴图颜色由发射颜色和发射强度调制。如果您有自发光贴图,请务必将自发光颜色设置为黑色以外的颜色。
emissiveIntensity
类型:Float
发射光的强度。调制发光颜色。默认值为1。
fog
类型:Boolean
材质是否受雾影响。默认为true。
gradientMap
类型:Texture
卡通着色的渐变贴图。使用此类纹理时,需要将Texture.minFilterTexture.minFilter和Texture.magFilterTexture.magFilter设置为THREE.NearestFilter。默认为空。
lightMap
类型:Texture
光照贴图。默认为空。lightMap需要第二组UV。
lightMapIntensity
类型:Float
烘焙光的强度。默认值为1。
map
类型:Texture
彩色地图。可以选择包含一个alpha通道,通常与.transparent或.alphaTest结合使用。默认为空。纹理贴图颜色由漫反射.color.color调制。
normalMap
类型:Texture
创建法线贴图的纹理。RGB值影响每个像素片段的表面法线并改变颜色的点亮方式。法线贴图不会改变表面的实际形状,只会改变光照。如果材质具有使用左手惯例创作的法线贴图,则应取反normalScale的y分量以补偿不同的手性。
normalMapType
类型:Integer
法线贴图的类型。
选项为THREE.TangentSpaceNormalMap(默认)和THREE.ObjectSpaceNormalMap。
normalScale
类型:Vector2
法线贴图对材质的影响有多大。典型范围是0-1。默认是设置为(1,1)的二维向量Vector2。
wireframe
类型:Boolean
将几何渲染为线框。默认为false(即呈现为平面多边形)。
wireframeLinecap
类型:String
定义线端的外观。可能的值为“butt”、“round”和“square”。默认为“圆形”。
这对应于2DCanvas的lineCap属性,它会被WebGL渲染器忽略。
wireframeLinejoin
类型:String
定义线接头的外观。可能的值是“round”、“bevel”和“miter”。默认为“圆形”。
这对应于2DCanvas的lineCap属性,它会被WebGL渲染器忽略。
wireframeLinewidth
类型:Float
控制线框厚度。默认值为1。
由于OpenGL Core Profile与WebGL渲染器在大多数平台上的限制,无论设置值如何,线宽始终为1。
