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.
		
		
		
		
			
				
					566 lines
				
				22 KiB
			
		
		
			
		
	
	
					566 lines
				
				22 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>Texture Constants</h1>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										<h2>Mapping Modes</h2>
							 | 
						||
| 
								 | 
							
										<code>
							 | 
						||
| 
								 | 
							
										THREE.UVMapping
							 | 
						||
| 
								 | 
							
										THREE.CubeReflectionMapping
							 | 
						||
| 
								 | 
							
										THREE.CubeRefractionMapping
							 | 
						||
| 
								 | 
							
										THREE.EquirectangularReflectionMapping
							 | 
						||
| 
								 | 
							
										THREE.EquirectangularRefractionMapping
							 | 
						||
| 
								 | 
							
										THREE.CubeUVReflectionMapping
							 | 
						||
| 
								 | 
							
										</code>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										<p>
							 | 
						||
| 
								 | 
							
										These define the texture's mapping mode.<br />
							 | 
						||
| 
								 | 
							
										[page:Constant UVMapping] is the default, and maps the texture using the mesh's UV coordinates.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										The rest define environment mapping types.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:Constant CubeReflectionMapping] and [page:Constant CubeRefractionMapping] are for
							 | 
						||
| 
								 | 
							
										use with a [page:CubeTexture CubeTexture], which is made up of six textures, one for each face of the cube.
							 | 
						||
| 
								 | 
							
										[page:Constant CubeReflectionMapping] is the default for a [page:CubeTexture CubeTexture]. <br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:Constant EquirectangularReflectionMapping] and [page:Constant EquirectangularRefractionMapping]
							 | 
						||
| 
								 | 
							
										are for use with an equirectangular environment map.  Also called a lat-long map, an equirectangular
							 | 
						||
| 
								 | 
							
										texture represents a 360-degree view along the horizontal centerline, and a 180-degree view along the
							 | 
						||
| 
								 | 
							
										vertical axis, with the top and bottom edges of the image corresponding to the north and south poles
							 | 
						||
| 
								 | 
							
										of a mapped sphere.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										See the [example:webgl_materials_envmaps materials / envmaps] example.
							 | 
						||
| 
								 | 
							
										</p>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										<h2>Wrapping Modes</h2>
							 | 
						||
| 
								 | 
							
										<code>
							 | 
						||
| 
								 | 
							
										THREE.RepeatWrapping
							 | 
						||
| 
								 | 
							
										THREE.ClampToEdgeWrapping
							 | 
						||
| 
								 | 
							
										THREE.MirroredRepeatWrapping
							 | 
						||
| 
								 | 
							
										</code>
							 | 
						||
| 
								 | 
							
										<p>
							 | 
						||
| 
								 | 
							
										These define the texture's [page:Texture.wrapS wrapS] and [page:Texture.wrapT wrapT] properties,
							 | 
						||
| 
								 | 
							
										which define horizontal and vertical texture wrapping.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										With [page:constant RepeatWrapping] the texture will simply repeat to infinity.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant ClampToEdgeWrapping] is the default.
							 | 
						||
| 
								 | 
							
										The last pixel of the texture stretches to the edge of the mesh.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										With [page:constant MirroredRepeatWrapping] the texture will repeats to infinity, mirroring on each repeat.
							 | 
						||
| 
								 | 
							
										</p>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										<h2>Magnification Filters</h2>
							 | 
						||
| 
								 | 
							
										<code>
							 | 
						||
| 
								 | 
							
										THREE.NearestFilter
							 | 
						||
| 
								 | 
							
										THREE.LinearFilter
							 | 
						||
| 
								 | 
							
										</code>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										<p>
							 | 
						||
| 
								 | 
							
										For use with a texture's [page:Texture.magFilter magFilter]	property,
							 | 
						||
| 
								 | 
							
										these define the texture magnification function to be used when the pixel being textured maps to an
							 | 
						||
| 
								 | 
							
										area less than or equal to one texture element (texel).<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant NearestFilter] returns the value of the texture element that is nearest
							 | 
						||
| 
								 | 
							
										(in Manhattan distance) to the specified texture coordinates.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant LinearFilter] is the default and returns the weighted average
							 | 
						||
| 
								 | 
							
										of the four texture elements that are closest to the specified texture coordinates,
							 | 
						||
| 
								 | 
							
										and can include items wrapped or repeated from other parts of a texture,
							 | 
						||
| 
								 | 
							
										depending on the values of [page:Texture.wrapS wrapS] and [page:Texture.wrapT wrapT], and on the exact mapping.
							 | 
						||
| 
								 | 
							
										</p>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										<h2>Minification Filters</h2>
							 | 
						||
| 
								 | 
							
										<code>
							 | 
						||
| 
								 | 
							
										THREE.NearestFilter
							 | 
						||
| 
								 | 
							
										THREE.NearestMipmapNearestFilter
							 | 
						||
| 
								 | 
							
										THREE.NearestMipmapLinearFilter
							 | 
						||
| 
								 | 
							
										THREE.LinearFilter
							 | 
						||
| 
								 | 
							
										THREE.LinearMipmapNearestFilter
							 | 
						||
| 
								 | 
							
										THREE.LinearMipmapLinearFilter
							 | 
						||
| 
								 | 
							
										</code>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										<p>
							 | 
						||
| 
								 | 
							
										For use with a texture's [page:Texture.minFilter minFilter]	property, these define
							 | 
						||
| 
								 | 
							
										the texture minifying function that is used whenever the pixel being textured maps
							 | 
						||
| 
								 | 
							
										to an area greater than one texture element (texel).<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										In addition to [page:constant NearestFilter] and [page:constant LinearFilter],
							 | 
						||
| 
								 | 
							
										the following four functions can be used for minification:<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant NearestMipmapNearestFilter] chooses the mipmap that most closely
							 | 
						||
| 
								 | 
							
										matches the size of the pixel being textured
							 | 
						||
| 
								 | 
							
										and uses the [page:constant NearestFilter] criterion (the texel nearest to the
							 | 
						||
| 
								 | 
							
										center of the pixel) to produce a texture value.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant NearestMipmapLinearFilter] chooses the two mipmaps that most closely
							 | 
						||
| 
								 | 
							
										match the size of the pixel being textured and uses the [page:constant NearestFilter] criterion to produce
							 | 
						||
| 
								 | 
							
										a texture value from each mipmap. The final texture value is a weighted average of those two values.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant LinearMipmapNearestFilter] chooses the mipmap that most closely matches
							 | 
						||
| 
								 | 
							
										the size of the pixel being textured and uses the [page:constant LinearFilter] criterion
							 | 
						||
| 
								 | 
							
										(a weighted average of the four texels that are closest to the center of the pixel)
							 | 
						||
| 
								 | 
							
										to produce a texture value.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant LinearMipmapLinearFilter] is the default and chooses the two mipmaps
							 | 
						||
| 
								 | 
							
										that most closely match the size of the pixel being textured and uses the [page:constant LinearFilter] criterion
							 | 
						||
| 
								 | 
							
										to produce a texture value from each mipmap. The final texture value is a weighted average of those two values.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										See the [example:webgl_materials_texture_filters materials / texture / filters] example.
							 | 
						||
| 
								 | 
							
										</p>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										<h2>Types</h2>
							 | 
						||
| 
								 | 
							
										<code>
							 | 
						||
| 
								 | 
							
										THREE.UnsignedByteType
							 | 
						||
| 
								 | 
							
										THREE.ByteType
							 | 
						||
| 
								 | 
							
										THREE.ShortType
							 | 
						||
| 
								 | 
							
										THREE.UnsignedShortType
							 | 
						||
| 
								 | 
							
										THREE.IntType
							 | 
						||
| 
								 | 
							
										THREE.UnsignedIntType
							 | 
						||
| 
								 | 
							
										THREE.FloatType
							 | 
						||
| 
								 | 
							
										THREE.HalfFloatType
							 | 
						||
| 
								 | 
							
										THREE.UnsignedShort4444Type
							 | 
						||
| 
								 | 
							
										THREE.UnsignedShort5551Type
							 | 
						||
| 
								 | 
							
										THREE.UnsignedInt248Type
							 | 
						||
| 
								 | 
							
										</code>
							 | 
						||
| 
								 | 
							
										<p>
							 | 
						||
| 
								 | 
							
										For use with a texture's [page:Texture.type type]	property, which must correspond to the correct format. See below for details.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant UnsignedByteType] is the default.
							 | 
						||
| 
								 | 
							
										</p>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										<h2>Formats</h2>
							 | 
						||
| 
								 | 
							
										<code>
							 | 
						||
| 
								 | 
							
										THREE.AlphaFormat
							 | 
						||
| 
								 | 
							
										THREE.RedFormat
							 | 
						||
| 
								 | 
							
										THREE.RedIntegerFormat
							 | 
						||
| 
								 | 
							
										THREE.RGFormat
							 | 
						||
| 
								 | 
							
										THREE.RGIntegerFormat
							 | 
						||
| 
								 | 
							
										THREE.RGBAFormat
							 | 
						||
| 
								 | 
							
										THREE.RGBAIntegerFormat
							 | 
						||
| 
								 | 
							
										THREE.LuminanceFormat
							 | 
						||
| 
								 | 
							
										THREE.LuminanceAlphaFormat
							 | 
						||
| 
								 | 
							
										THREE.DepthFormat
							 | 
						||
| 
								 | 
							
										THREE.DepthStencilFormat
							 | 
						||
| 
								 | 
							
										</code>
							 | 
						||
| 
								 | 
							
										<p>
							 | 
						||
| 
								 | 
							
										For use with a texture's [page:Texture.format format]	property, these define
							 | 
						||
| 
								 | 
							
										how elements of a 2d texture, or `texels`, are read by shaders.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant AlphaFormat] discards the red, green and blue components and reads just the alpha component.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RedFormat] discards the green and blue components and reads just the red component.
							 | 
						||
| 
								 | 
							
										(can only be used with a WebGL 2 rendering context).
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RedIntegerFormat] discards the green and blue components and reads just the red component.
							 | 
						||
| 
								 | 
							
										The texels are read as integers instead of floating point.
							 | 
						||
| 
								 | 
							
										(can only be used with a WebGL 2 rendering context).
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGFormat] discards the alpha, and blue components and reads the red, and green components.
							 | 
						||
| 
								 | 
							
										(can only be used with a WebGL 2 rendering context).
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGIntegerFormat] discards the alpha, and blue components and reads the red, and green components.
							 | 
						||
| 
								 | 
							
										The texels are read as integers instead of floating point.
							 | 
						||
| 
								 | 
							
										(can only be used with a WebGL 2 rendering context).
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGBAFormat] is the default and reads the red, green, blue and alpha components.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGBAIntegerFormat] is the default and reads the red, green, blue and alpha components.
							 | 
						||
| 
								 | 
							
										The texels are read as integers instead of floating point.
							 | 
						||
| 
								 | 
							
										(can only be used with a WebGL 2 rendering context).
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant LuminanceFormat] reads each element as a single luminance component.
							 | 
						||
| 
								 | 
							
										 This is then converted to a floating point, clamped to the range [0,1], and then assembled
							 | 
						||
| 
								 | 
							
										 into an RGBA element by placing the luminance value in the red, green and blue channels,
							 | 
						||
| 
								 | 
							
										 and attaching 1.0 to the alpha channel.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant LuminanceAlphaFormat] reads each element as a luminance/alpha double.
							 | 
						||
| 
								 | 
							
										The same process occurs as for the [page:constant LuminanceFormat], except that the
							 | 
						||
| 
								 | 
							
										alpha channel may have values other than `1.0`.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant DepthFormat] reads each element as a single depth value, converts it to floating point, and clamps to the range [0,1].
							 | 
						||
| 
								 | 
							
										This is the default for [page:DepthTexture DepthTexture].<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant DepthStencilFormat] reads each element is a pair of depth and stencil values.
							 | 
						||
| 
								 | 
							
										The depth component of the pair is interpreted as in [page:constant DepthFormat].
							 | 
						||
| 
								 | 
							
										The stencil component is interpreted based on the depth + stencil internal format.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										Note that the texture must have the correct [page:Texture.type type] set, as described above.
							 | 
						||
| 
								 | 
							
										See [link:https://developer.mozilla.org/en/docs/Web/API/WebGLRenderingContext/texImage2D WebGLRenderingContext.texImage2D] for details.
							 | 
						||
| 
								 | 
							
										</p>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										<h2>DDS / ST3C Compressed Texture Formats</h2>
							 | 
						||
| 
								 | 
							
										<code>
							 | 
						||
| 
								 | 
							
										THREE.RGB_S3TC_DXT1_Format
							 | 
						||
| 
								 | 
							
										THREE.RGBA_S3TC_DXT1_Format
							 | 
						||
| 
								 | 
							
										THREE.RGBA_S3TC_DXT3_Format
							 | 
						||
| 
								 | 
							
										THREE.RGBA_S3TC_DXT5_Format
							 | 
						||
| 
								 | 
							
										</code>
							 | 
						||
| 
								 | 
							
										<p>
							 | 
						||
| 
								 | 
							
										For use with a [page:CompressedTexture CompressedTexture]'s [page:Texture.format format]	property,
							 | 
						||
| 
								 | 
							
										these require support for the
							 | 
						||
| 
								 | 
							
										[link:https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_s3tc/ WEBGL_compressed_texture_s3tc]
							 | 
						||
| 
								 | 
							
										extension. <br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										There are four [link:https://en.wikipedia.org/wiki/S3_Texture_Compression S3TC] formats available via this extension. These are:<br />
							 | 
						||
| 
								 | 
							
										[page:constant RGB_S3TC_DXT1_Format]: A DXT1-compressed image in an RGB image format.<br />
							 | 
						||
| 
								 | 
							
										[page:constant RGBA_S3TC_DXT1_Format]: A DXT1-compressed image in an RGB image format with a simple on/off alpha value.<br />
							 | 
						||
| 
								 | 
							
										[page:constant RGBA_S3TC_DXT3_Format]: A DXT3-compressed image in an RGBA image format. Compared to a 32-bit RGBA texture, it offers 4:1 compression.<br />
							 | 
						||
| 
								 | 
							
										[page:constant RGBA_S3TC_DXT5_Format]: A DXT5-compressed image in an RGBA image format. It also provides a 4:1 compression, but differs to the DXT3 compression in how the alpha compression is done.<br />
							 | 
						||
| 
								 | 
							
										</p>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										<h2>PVRTC Compressed Texture Formats</h2>
							 | 
						||
| 
								 | 
							
										<code>
							 | 
						||
| 
								 | 
							
										THREE.RGB_PVRTC_4BPPV1_Format
							 | 
						||
| 
								 | 
							
										THREE.RGB_PVRTC_2BPPV1_Format
							 | 
						||
| 
								 | 
							
										THREE.RGBA_PVRTC_4BPPV1_Format
							 | 
						||
| 
								 | 
							
										THREE.RGBA_PVRTC_2BPPV1_Format
							 | 
						||
| 
								 | 
							
										</code>
							 | 
						||
| 
								 | 
							
										<p>
							 | 
						||
| 
								 | 
							
										For use with a [page:CompressedTexture CompressedTexture]'s [page:Texture.format format]	property,
							 | 
						||
| 
								 | 
							
										these require support for the [link:https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_pvrtc/ WEBGL_compressed_texture_pvrtc]
							 | 
						||
| 
								 | 
							
										extension. <br />
							 | 
						||
| 
								 | 
							
										PVRTC is typically only available on mobile devices with PowerVR chipsets, which are mainly Apple devices.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										There are four [link:https://en.wikipedia.org/wiki/PVRTC PVRTC] formats available via this extension. These are:<br />
							 | 
						||
| 
								 | 
							
										[page:constant RGB_PVRTC_4BPPV1_Format]: RGB compression in 4-bit mode. One block for each 4×4 pixels.<br />
							 | 
						||
| 
								 | 
							
										[page:constant RGB_PVRTC_2BPPV1_Format]: RGB compression in 2-bit mode. One block for each 8×4 pixels.<br />
							 | 
						||
| 
								 | 
							
										[page:constant RGBA_PVRTC_4BPPV1_Format]: RGBA compression in 4-bit mode. One block for each 4×4 pixels.<br />
							 | 
						||
| 
								 | 
							
										[page:constant RGBA_PVRTC_2BPPV1_Format]: RGBA compression in 2-bit mode. One block for each 8×4 pixels.<br />
							 | 
						||
| 
								 | 
							
										</p>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										<h2>ETC Compressed Texture Format</h2>
							 | 
						||
| 
								 | 
							
										<code>
							 | 
						||
| 
								 | 
							
										THREE.RGB_ETC1_Format
							 | 
						||
| 
								 | 
							
										THREE.RGB_ETC2_Format
							 | 
						||
| 
								 | 
							
										THREE.RGBA_ETC2_EAC_Format
							 | 
						||
| 
								 | 
							
										</code>
							 | 
						||
| 
								 | 
							
										<p>
							 | 
						||
| 
								 | 
							
										For use with a [page:CompressedTexture CompressedTexture]'s [page:Texture.format format]	property,
							 | 
						||
| 
								 | 
							
										these require support for the [link:https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_etc1/ WEBGL_compressed_texture_etc1]
							 | 
						||
| 
								 | 
							
										(ETC1) or [link:https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_etc/ WEBGL_compressed_texture_etc]
							 | 
						||
| 
								 | 
							
										(ETC2) extensions. <br /><br />
							 | 
						||
| 
								 | 
							
										</p>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										<h2>ASTC Compressed Texture Format</h2>
							 | 
						||
| 
								 | 
							
										<code>
							 | 
						||
| 
								 | 
							
										THREE.RGBA_ASTC_4x4_Format
							 | 
						||
| 
								 | 
							
										THREE.RGBA_ASTC_5x4_Format
							 | 
						||
| 
								 | 
							
										THREE.RGBA_ASTC_5x5_Format
							 | 
						||
| 
								 | 
							
										THREE.RGBA_ASTC_6x5_Format
							 | 
						||
| 
								 | 
							
										THREE.RGBA_ASTC_6x6_Format
							 | 
						||
| 
								 | 
							
										THREE.RGBA_ASTC_8x5_Format
							 | 
						||
| 
								 | 
							
										THREE.RGBA_ASTC_8x6_Format
							 | 
						||
| 
								 | 
							
										THREE.RGBA_ASTC_8x8_Format
							 | 
						||
| 
								 | 
							
										THREE.RGBA_ASTC_10x5_Format
							 | 
						||
| 
								 | 
							
										THREE.RGBA_ASTC_10x6_Format
							 | 
						||
| 
								 | 
							
										THREE.RGBA_ASTC_10x8_Format
							 | 
						||
| 
								 | 
							
										THREE.RGBA_ASTC_10x10_Format
							 | 
						||
| 
								 | 
							
										THREE.RGBA_ASTC_12x10_Format
							 | 
						||
| 
								 | 
							
										THREE.RGBA_ASTC_12x12_Format
							 | 
						||
| 
								 | 
							
										</code>
							 | 
						||
| 
								 | 
							
										<p>
							 | 
						||
| 
								 | 
							
										For use with a [page:CompressedTexture CompressedTexture]'s [page:Texture.format format] property,
							 | 
						||
| 
								 | 
							
										these require support for the [link:https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/ WEBGL_compressed_texture_astc] extension. <br /><br />
							 | 
						||
| 
								 | 
							
										</p>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										<h2>BPTC Compressed Texture Format</h2>
							 | 
						||
| 
								 | 
							
										<code>
							 | 
						||
| 
								 | 
							
										THREE.RGBA_BPTC_Format
							 | 
						||
| 
								 | 
							
										</code>
							 | 
						||
| 
								 | 
							
										<p>
							 | 
						||
| 
								 | 
							
										For use with a [page:CompressedTexture CompressedTexture]'s [page:Texture.format format] property,
							 | 
						||
| 
								 | 
							
										these require support for the [link:https://www.khronos.org/registry/webgl/extensions/EXT_texture_compression_bptc/ EXT_texture_compression_bptc] extension. <br /><br />
							 | 
						||
| 
								 | 
							
										</p>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										<h2>Internal Formats</h2>
							 | 
						||
| 
								 | 
							
										<code>
							 | 
						||
| 
								 | 
							
										'ALPHA'
							 | 
						||
| 
								 | 
							
										'RGB'
							 | 
						||
| 
								 | 
							
										'RGBA'
							 | 
						||
| 
								 | 
							
										'LUMINANCE'
							 | 
						||
| 
								 | 
							
										'LUMINANCE_ALPHA'
							 | 
						||
| 
								 | 
							
										'RED_INTEGER'
							 | 
						||
| 
								 | 
							
										'R8'
							 | 
						||
| 
								 | 
							
										'R8_SNORM'
							 | 
						||
| 
								 | 
							
										'R8I'
							 | 
						||
| 
								 | 
							
										'R8UI'
							 | 
						||
| 
								 | 
							
										'R16I'
							 | 
						||
| 
								 | 
							
										'R16UI'
							 | 
						||
| 
								 | 
							
										'R16F'
							 | 
						||
| 
								 | 
							
										'R32I'
							 | 
						||
| 
								 | 
							
										'R32UI'
							 | 
						||
| 
								 | 
							
										'R32F'
							 | 
						||
| 
								 | 
							
										'RG8'
							 | 
						||
| 
								 | 
							
										'RG8_SNORM'
							 | 
						||
| 
								 | 
							
										'RG8I'
							 | 
						||
| 
								 | 
							
										'RG8UI'
							 | 
						||
| 
								 | 
							
										'RG16I'
							 | 
						||
| 
								 | 
							
										'RG16UI'
							 | 
						||
| 
								 | 
							
										'RG16F'
							 | 
						||
| 
								 | 
							
										'RG32I'
							 | 
						||
| 
								 | 
							
										'RG32UI'
							 | 
						||
| 
								 | 
							
										'RG32F'
							 | 
						||
| 
								 | 
							
										'RGB565'
							 | 
						||
| 
								 | 
							
										'RGB8'
							 | 
						||
| 
								 | 
							
										'RGB8_SNORM'
							 | 
						||
| 
								 | 
							
										'RGB8I'
							 | 
						||
| 
								 | 
							
										'RGB8UI'
							 | 
						||
| 
								 | 
							
										'RGB16I'
							 | 
						||
| 
								 | 
							
										'RGB16UI'
							 | 
						||
| 
								 | 
							
										'RGB16F'
							 | 
						||
| 
								 | 
							
										'RGB32I'
							 | 
						||
| 
								 | 
							
										'RGB32UI'
							 | 
						||
| 
								 | 
							
										'RGB32F'
							 | 
						||
| 
								 | 
							
										'RGB9_E5'
							 | 
						||
| 
								 | 
							
										'SRGB8'
							 | 
						||
| 
								 | 
							
										'R11F_G11F_B10F'
							 | 
						||
| 
								 | 
							
										'RGBA4'
							 | 
						||
| 
								 | 
							
										'RGBA8'
							 | 
						||
| 
								 | 
							
										'RGBA8_SNORM'
							 | 
						||
| 
								 | 
							
										'RGBA8I'
							 | 
						||
| 
								 | 
							
										'RGBA8UI'
							 | 
						||
| 
								 | 
							
										'RGBA16I'
							 | 
						||
| 
								 | 
							
										'RGBA16UI'
							 | 
						||
| 
								 | 
							
										'RGBA16F'
							 | 
						||
| 
								 | 
							
										'RGBA32I'
							 | 
						||
| 
								 | 
							
										'RGBA32UI'
							 | 
						||
| 
								 | 
							
										'RGBA32F'
							 | 
						||
| 
								 | 
							
										'RGB5_A1'
							 | 
						||
| 
								 | 
							
										'RGB10_A2'
							 | 
						||
| 
								 | 
							
										'RGB10_A2UI'
							 | 
						||
| 
								 | 
							
										'SRGB8_ALPHA8'
							 | 
						||
| 
								 | 
							
										'DEPTH_COMPONENT16'
							 | 
						||
| 
								 | 
							
										'DEPTH_COMPONENT24'
							 | 
						||
| 
								 | 
							
										'DEPTH_COMPONENT32F'
							 | 
						||
| 
								 | 
							
										'DEPTH24_STENCIL8'
							 | 
						||
| 
								 | 
							
										'DEPTH32F_STENCIL8'
							 | 
						||
| 
								 | 
							
										</code>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										<p>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										Heads up: changing the internal format of a texture will only affect the
							 | 
						||
| 
								 | 
							
										texture when using a WebGL 2 rendering context.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										For use with a texture's [page:Texture.internalFormat internalFormat]	property,
							 | 
						||
| 
								 | 
							
										these define how elements of a texture, or `texels`, are stored on the GPU.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant R8] stores the red component on 8 bits.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant R8_SNORM] stores the red component on 8 bits. The component is stored as normalized. <br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant R8I] stores the red component on 8 bits. The component is stored as an integer. <br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant R8UI] stores the red component on 8 bits. The component is stored as an unsigned integer. <br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant R16I] stores the red component on 16 bits. The component is stored as an integer. <br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant R16UI] stores the red component on 16 bits. The component is stored as an unsigned integer. <br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant R16F] stores the red component on 16 bits. The component is stored as floating point. <br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant R32I] stores the red component on 32 bits. The component is stored as an integer. <br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant R32UI] stores the red component on 32 bits. The component is stored as an unsigned integer. <br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant R32F] stores the red component on 32 bits. The component is stored as floating point. <br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RG8] stores the red and green components on 8 bits each.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RG8_SNORM] stores the red and green components on 8 bits each.
							 | 
						||
| 
								 | 
							
										Every component is stored as normalized.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RG8I] stores the red and green components on 8 bits each.
							 | 
						||
| 
								 | 
							
										Every component is stored as an integer.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RG8UI] stores the red and green components on 8 bits each.
							 | 
						||
| 
								 | 
							
										Every component is stored as an unsigned integer.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RG16I] stores the red and green components on 16 bits each.
							 | 
						||
| 
								 | 
							
										Every component is stored as an integer.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RG16UI] stores the red and green components on 16 bits each.
							 | 
						||
| 
								 | 
							
										Every component is stored as an unsigned integer.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RG16F] stores the red and green components on 16 bits each.
							 | 
						||
| 
								 | 
							
										Every component is stored as floating point.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RG32I] stores the red and green components on 32 bits each.
							 | 
						||
| 
								 | 
							
										Every component is stored as an integer.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RG32UI] stores the red and green components on 32 bits.
							 | 
						||
| 
								 | 
							
										Every component is stored as an unsigned integer.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RG32F] stores the red and green components on 32 bits.
							 | 
						||
| 
								 | 
							
										Every component is stored as floating point.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGB8] stores the red, green, and blue components on 8 bits each.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGB8_SNORM] stores the red, green, and blue components on 8 bits each.
							 | 
						||
| 
								 | 
							
										Every component is stored as normalized.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGB8I] stores the red, green, and blue components on 8 bits each.
							 | 
						||
| 
								 | 
							
										Every component is stored as an integer.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGB8UI] stores the red, green, and blue components on 8 bits each.
							 | 
						||
| 
								 | 
							
										Every component is stored as an unsigned integer.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGB16I] stores the red, green, and blue components on 16 bits each.
							 | 
						||
| 
								 | 
							
										Every component is stored as an integer.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGB16UI] stores the red, green, and blue components on 16 bits each.
							 | 
						||
| 
								 | 
							
										Every component is stored as an unsigned integer.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGB16F] stores the red, green, and blue components on 16 bits each.
							 | 
						||
| 
								 | 
							
										Every component is stored as floating point
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGB32I] stores the red, green, and blue components on 32 bits each.
							 | 
						||
| 
								 | 
							
										Every component is stored as an integer.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGB32UI] stores the red, green, and blue components on 32 bits each.
							 | 
						||
| 
								 | 
							
										Every component is stored as an unsigned integer.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGB32F] stores the red, green, and blue components on 32 bits each.
							 | 
						||
| 
								 | 
							
										Every component is stored as floating point
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant R11F_G11F_B10F] stores the red, green, and blue components respectively on 11 bits, 11 bits, and 10bits.
							 | 
						||
| 
								 | 
							
										Every component is stored as floating point.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGB565] stores the red, green, and blue components respectively on 5 bits, 6 bits, and 5 bits.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGB9_E5] stores the red, green, and blue components on 9 bits each.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGBA8] stores the red, green, blue, and alpha components on 8 bits each.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGBA8_SNORM] stores the red, green, blue, and alpha components on 8 bits.
							 | 
						||
| 
								 | 
							
										Every component is stored as normalized.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGBA8I] stores the red, green, blue, and alpha components on 8 bits each.
							 | 
						||
| 
								 | 
							
										Every component is stored as an integer.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGBA8UI] stores the red, green, blue, and alpha components on 8 bits.
							 | 
						||
| 
								 | 
							
										Every component is stored as an unsigned integer.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGBA16I] stores the red, green, blue, and alpha components on 16 bits.
							 | 
						||
| 
								 | 
							
										Every component is stored as an integer.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGBA16UI] stores the red, green, blue, and alpha components on 16 bits.
							 | 
						||
| 
								 | 
							
										Every component is stored as an unsigned integer.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGBA16F] stores the red, green, blue, and alpha components on 16 bits.
							 | 
						||
| 
								 | 
							
										Every component is stored as floating point.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGBA32I] stores the red, green, blue, and alpha components on 32 bits.
							 | 
						||
| 
								 | 
							
										Every component is stored as an integer.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGBA32UI] stores the red, green, blue, and alpha components on 32 bits.
							 | 
						||
| 
								 | 
							
										Every component is stored as an unsigned integer.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGBA32F] stores the red, green, blue, and alpha components on 32 bits.
							 | 
						||
| 
								 | 
							
										Every component is stored as floating point.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGB5_A1] stores the red, green, blue, and alpha components respectively on 5 bits, 5 bits, 5 bits, and 1 bit.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGB10_A2] stores the red, green, blue, and alpha components respectively on 10 bits, 10 bits, 10 bits and 2 bits.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant RGB10_A2UI] stores the red, green, blue, and alpha components respectively on 10 bits, 10 bits, 10 bits and 2 bits.
							 | 
						||
| 
								 | 
							
										Every component is stored as an unsigned integer.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant SRGB8] stores the red, green, and blue components on 8 bits each.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant SRGB8_ALPHA8] stores the red, green, blue, and alpha components on 8 bits each.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant DEPTH_COMPONENT16] stores the depth component on 16bits.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant DEPTH_COMPONENT24] stores the depth component on 24bits.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant DEPTH_COMPONENT32F] stores the depth component on 32bits. The component is stored as floating point.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant DEPTH24_STENCIL8] stores the depth, and stencil components respectively on 24 bits and 8 bits.
							 | 
						||
| 
								 | 
							
										The stencil component is stored as an unsigned integer.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant DEPTH32F_STENCIL8] stores the depth, and stencil components respectively on 32 bits and 8 bits.
							 | 
						||
| 
								 | 
							
										The depth component is stored as floating point, and the stencil component as an unsigned integer.
							 | 
						||
| 
								 | 
							
										<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										Note that the texture must have the correct [page:Texture.type type] set,
							 | 
						||
| 
								 | 
							
										as well as the correct [page:Texture.format format].
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										See [link:https://developer.mozilla.org/en/docs/Web/API/WebGLRenderingContext/texImage2D WebGLRenderingContext.texImage2D], and
							 | 
						||
| 
								 | 
							
										[link:https://developer.mozilla.org/en-US/docs/Web/API/WebGL2RenderingContext/texImage3D WebGL2RenderingContext.texImage3D],
							 | 
						||
| 
								 | 
							
										for more details regarding the possible combination of [page:Texture.format format], [page:Texture.internalFormat internalFormat],
							 | 
						||
| 
								 | 
							
										and [page:Texture.type type].<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										For more in-depth information regarding internal formats, you can also refer directly
							 | 
						||
| 
								 | 
							
										to the [link:https://www.khronos.org/registry/webgl/specs/latest/2.0/ WebGL2 Specification] and
							 | 
						||
| 
								 | 
							
										to the [link:https://www.khronos.org/registry/OpenGL/specs/es/3.0/es_spec_3.0.pdf OpenGL ES 3.0 Specification].
							 | 
						||
| 
								 | 
							
										</p>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										<h2>Encoding</h2>
							 | 
						||
| 
								 | 
							
										<code>
							 | 
						||
| 
								 | 
							
										THREE.LinearEncoding
							 | 
						||
| 
								 | 
							
										THREE.sRGBEncoding
							 | 
						||
| 
								 | 
							
										THREE.BasicDepthPacking
							 | 
						||
| 
								 | 
							
										THREE.RGBADepthPacking
							 | 
						||
| 
								 | 
							
										</code>
							 | 
						||
| 
								 | 
							
										<p>
							 | 
						||
| 
								 | 
							
										For use with a Texture's [page:Texture.encoding encoding]	property.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										If the encoding type is changed after the texture has already been used by a material,
							 | 
						||
| 
								 | 
							
										you will need to set [page:Material.needsUpdate Material.needsUpdate] to `true` to make the material recompile.<br /><br />
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										[page:constant LinearEncoding] is the default.
							 | 
						||
| 
								 | 
							
										Values other than this are only valid for a material's map, envMap and emissiveMap.
							 | 
						||
| 
								 | 
							
										</p>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										<h2>Source</h2>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										<p>
							 | 
						||
| 
								 | 
							
											[link:https://github.com/mrdoob/three.js/blob/master/src/constants.js src/constants.js]
							 | 
						||
| 
								 | 
							
										</p>
							 | 
						||
| 
								 | 
							
									</body>
							 | 
						||
| 
								 | 
							
								</html>
							 |