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.
		
		
		
		
			
				
					154 lines
				
				6.5 KiB
			
		
		
			
		
	
	
					154 lines
				
				6.5 KiB
			| 
								 
											3 years ago
										 
									 | 
							
								<!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>
							 |