You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
153 lines
6.5 KiB
153 lines
6.5 KiB
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8" />
|
|
<base href="../../../" />
|
|
<script src="page.js"></script>
|
|
<link type="text/css" rel="stylesheet" href="page.css" />
|
|
</head>
|
|
<body>
|
|
<h1>Material Constants</h1>
|
|
|
|
<p class="desc">
|
|
These constants define properties common to all material types,
|
|
with the exception of Texture Combine Operations which only apply to [page:MeshBasicMaterial.combine MeshBasicMaterial], [page:MeshLambertMaterial.combine MeshLambertMaterial] and [page:MeshPhongMaterial.combine MeshPhongMaterial].<br />
|
|
</p>
|
|
|
|
|
|
<h2>Side</h2>
|
|
<code>
|
|
THREE.FrontSide
|
|
THREE.BackSide
|
|
THREE.DoubleSide
|
|
</code>
|
|
<p>
|
|
Defines which side of faces will be rendered - front, back or both.
|
|
Default is [page:Constant FrontSide].
|
|
</p>
|
|
|
|
<h2>Blending Mode</h2>
|
|
<code>
|
|
THREE.NoBlending
|
|
THREE.NormalBlending
|
|
THREE.AdditiveBlending
|
|
THREE.SubtractiveBlending
|
|
THREE.MultiplyBlending
|
|
THREE.CustomBlending
|
|
</code>
|
|
|
|
|
|
<p>
|
|
These control the source and destination blending equations for the material's RGB and Alpha sent to the WebGLRenderer for use by WebGL.<br />
|
|
[page:Constant NormalBlending] is the default.<br />
|
|
Note that [page:Constant CustomBlending] must be set to use [page:CustomBlendingEquation Custom Blending Equations].<br />
|
|
See the [example:webgl_materials_blending materials / blending] example.<br />
|
|
</p>
|
|
|
|
<h2>Depth Mode</h2>
|
|
<code>
|
|
THREE.NeverDepth
|
|
THREE.AlwaysDepth
|
|
THREE.EqualDepth
|
|
THREE.LessDepth
|
|
THREE.LessEqualDepth
|
|
THREE.GreaterEqualDepth
|
|
THREE.GreaterDepth
|
|
THREE.NotEqualDepth
|
|
</code>
|
|
<p>
|
|
Which depth function the material uses to compare incoming pixels Z-depth against the current Z-depth buffer value. If the result of the comparison is true, the pixel will be drawn.<br />
|
|
[page:Materials NeverDepth] will never return true.<br />
|
|
[page:Materials AlwaysDepth] will always return true.<br />
|
|
[page:Materials EqualDepth] will return true if the incoming pixel Z-depth is equal to the current buffer Z-depth.<br />
|
|
[page:Materials LessDepth] will return true if the incoming pixel Z-depth is less than the current buffer Z-depth.<br />
|
|
[page:Materials LessEqualDepth] is the default and will return true if the incoming pixel Z-depth is less than or equal to the current buffer Z-depth.<br />
|
|
[page:Materials GreaterEqualDepth] will return true if the incoming pixel Z-depth is greater than or equal to the current buffer Z-depth.<br />
|
|
[page:Materials GreaterDepth] will return true if the incoming pixel Z-depth is greater than the current buffer Z-depth.<br />
|
|
[page:Materials NotEqualDepth] will return true if the incoming pixel Z-depth is not equal to the current buffer Z-depth.<br />
|
|
</p>
|
|
|
|
<h2>Texture Combine Operations</h2>
|
|
<code>
|
|
THREE.MultiplyOperation
|
|
THREE.MixOperation
|
|
THREE.AddOperation
|
|
</code>
|
|
<p>
|
|
These define how the result of the surface's color is combined with the environment map (if present), for [page:MeshBasicMaterial.combine MeshBasicMaterial], [page:MeshLambertMaterial.combine MeshLambertMaterial] and [page:MeshPhongMaterial.combine MeshPhongMaterial]. <br />
|
|
[page:Constant MultiplyOperation] is the default and multiplies the environment map color with the surface color.<br />
|
|
[page:Constant MixOperation] uses reflectivity to blend between the two colors.<br />
|
|
[page:Constant AddOperation] adds the two colors.
|
|
</p>
|
|
|
|
<h2>Stencil Functions</h2>
|
|
<code>
|
|
THREE.NeverStencilFunc
|
|
THREE.LessStencilFunc
|
|
THREE.EqualStencilFunc
|
|
THREE.LessEqualStencilFunc
|
|
THREE.GreaterStencilFunc
|
|
THREE.NotEqualStencilFunc
|
|
THREE.GreaterEqualStencilFunc
|
|
THREE.AlwaysStencilFunc
|
|
</code>
|
|
<p>
|
|
Which stencil function the material uses to determine whether or not to perform a stencil operation.<br />
|
|
[page:Materials NeverStencilFunc] will never return true.<br />
|
|
[page:Materials LessStencilFunc] will return true if the stencil reference value is less than the current stencil value.<br />
|
|
[page:Materials EqualStencilFunc] will return true if the stencil reference value is equal to the current stencil value.<br />
|
|
[page:Materials LessEqualStencilFunc] will return true if the stencil reference value is less than or equal to the current stencil value.<br />
|
|
[page:Materials GreaterStencilFunc] will return true if the stencil reference value is greater than the current stencil value.<br />
|
|
[page:Materials NotEqualStencilFunc] will return true if the stencil reference value is not equal to the current stencil value.<br />
|
|
[page:Materials GreaterEqualStencilFunc] will return true if the stencil reference value is greater than or equal to the current stencil value.<br />
|
|
[page:Materials AlwaysStencilFunc] will always return true.<br />
|
|
</p>
|
|
|
|
<h2>Stencil Operations</h2>
|
|
<code>
|
|
THREE.ZeroStencilOp
|
|
THREE.KeepStencilOp
|
|
THREE.ReplaceStencilOp
|
|
THREE.IncrementStencilOp
|
|
THREE.DecrementStencilOp
|
|
THREE.IncrementWrapStencilOp
|
|
THREE.DecrementWrapStencilOp
|
|
THREE.InvertStencilOp
|
|
</code>
|
|
<p>
|
|
Which stencil operation the material will perform on the stencil buffer pixel if the provided stencil function passes.<br />
|
|
[page:Materials ZeroStencilOp] will set the stencil value to 0.<br />
|
|
[page:Materials KeepStencilOp] will not change the current stencil value.<br />
|
|
[page:Materials ReplaceStencilOp] will replace the stencil value with the specified stencil reference value.<br />
|
|
[page:Materials IncrementStencilOp] will increment the current stencil value by `1`.<br />
|
|
[page:Materials DecrementStencilOp] will decrement the current stencil value by `1`.<br />
|
|
[page:Materials IncrementWrapStencilOp] will increment the current stencil value by `1`. If the value increments past `255` it will be set to `0`.<br />
|
|
[page:Materials DecrementWrapStencilOp] will increment the current stencil value by `1`. If the value decrements below `0` it will be set to `255`.<br />
|
|
[page:Materials InvertStencilOp] will perform a bitwise inversion of the current stencil value.<br />
|
|
</p>
|
|
|
|
<h2>Normal map type</h2>
|
|
<code>
|
|
THREE.TangentSpaceNormalMap
|
|
THREE.ObjectSpaceNormalMap
|
|
</code>
|
|
<p>
|
|
Defines the type of the normal map.
|
|
For TangentSpaceNormalMap, the information is relative to the underlying surface.
|
|
For ObjectSpaceNormalMap, the information is relative to the object orientation.
|
|
Default is [page:Constant TangentSpaceNormalMap].
|
|
</p>
|
|
|
|
<h2>GLSL Version</h2>
|
|
<code>
|
|
THREE.GLSL1
|
|
THREE.GLSL3
|
|
</code>
|
|
|
|
<h2>Source</h2>
|
|
|
|
<p>
|
|
[link:https://github.com/mrdoob/three.js/blob/master/src/constants.js src/constants.js]
|
|
</p>
|
|
</body>
|
|
</html>
|
|
|