Mr.doob 2 years ago
parent
commit
ed993256bb
100 changed files with 6989 additions and 4468 deletions
  1. 1482 1459
      build/three.cjs
  2. 1483 1459
      build/three.js
  3. 1 0
      build/three.min.js
  4. 1482 1459
      build/three.module.js
  5. 1 1
      docs/api/ar/audio/Audio.html
  6. 1 1
      docs/api/en/audio/Audio.html
  7. 9 0
      docs/api/en/materials/Material.html
  8. 1 1
      docs/api/en/math/Ray.html
  9. 5 0
      docs/api/en/scenes/Fog.html
  10. 5 0
      docs/api/en/scenes/FogExp2.html
  11. 10 6
      docs/api/en/textures/CompressedArrayTexture.html
  12. 5 0
      docs/api/en/textures/CompressedTexture.html
  13. 97 9
      docs/api/en/textures/Data3DTexture.html
  14. 57 5
      docs/api/en/textures/DataArrayTexture.html
  15. 2 2
      docs/api/en/textures/DataTexture.html
  16. 50 0
      docs/api/en/textures/FramebufferTexture.html
  17. 5 0
      docs/api/en/textures/Source.html
  18. 1 1
      docs/api/fr/audio/Audio.html
  19. 1 1
      docs/api/it/audio/Audio.html
  20. 9 0
      docs/api/it/materials/Material.html
  21. 1 1
      docs/api/it/math/Ray.html
  22. 5 0
      docs/api/it/scenes/Fog.html
  23. 6 0
      docs/api/it/scenes/FogExp2.html
  24. 1 1
      docs/api/it/textures/DataArrayTexture.html
  25. 1 1
      docs/api/it/textures/DataTexture.html
  26. 5 0
      docs/api/it/textures/Source.html
  27. 1 1
      docs/api/ko/audio/Audio.html
  28. 51 0
      docs/api/ko/constants/BufferAttributeUsage.html
  29. 75 0
      docs/api/ko/geometries/BoxGeometry.html
  30. 74 0
      docs/api/ko/geometries/CapsuleGeometry.html
  31. 75 0
      docs/api/ko/geometries/CircleGeometry.html
  32. 73 0
      docs/api/ko/geometries/ConeGeometry.html
  33. 74 0
      docs/api/ko/geometries/CylinderGeometry.html
  34. 59 0
      docs/api/ko/geometries/DodecahedronGeometry.html
  35. 55 0
      docs/api/ko/geometries/EdgesGeometry.html
  36. 111 0
      docs/api/ko/geometries/ExtrudeGeometry.html
  37. 58 0
      docs/api/ko/geometries/IcosahedronGeometry.html
  38. 77 0
      docs/api/ko/geometries/LatheGeometry.html
  39. 58 0
      docs/api/ko/geometries/OctahedronGeometry.html
  40. 70 0
      docs/api/ko/geometries/PlaneGeometry.html
  41. 67 0
      docs/api/ko/geometries/PolyhedronGeometry.html
  42. 73 0
      docs/api/ko/geometries/RingGeometry.html
  43. 83 0
      docs/api/ko/geometries/ShapeGeometry.html
  44. 78 0
      docs/api/ko/geometries/SphereGeometry.html
  45. 59 0
      docs/api/ko/geometries/TetrahedronGeometry.html
  46. 71 0
      docs/api/ko/geometries/TorusGeometry.html
  47. 74 0
      docs/api/ko/geometries/TorusKnotGeometry.html
  48. 111 0
      docs/api/ko/geometries/TubeGeometry.html
  49. 56 0
      docs/api/ko/geometries/WireframeGeometry.html
  50. 1 1
      docs/api/pt-br/audio/Audio.html
  51. 1 1
      docs/api/zh/audio/Audio.html
  52. 13 4
      docs/api/zh/materials/Material.html
  53. 1 1
      docs/api/zh/math/Ray.html
  54. 5 0
      docs/api/zh/scenes/Fog.html
  55. 6 0
      docs/api/zh/scenes/FogExp2.html
  56. 1 1
      docs/api/zh/textures/DataTexture.html
  57. 10 5
      docs/api/zh/textures/Source.html
  58. 11 0
      docs/examples/en/animations/CCDIKSolver.html
  59. 11 0
      docs/examples/en/animations/MMDAnimationHelper.html
  60. 11 0
      docs/examples/en/animations/MMDPhysics.html
  61. 10 0
      docs/examples/en/controls/ArcballControls.html
  62. 12 1
      docs/examples/en/controls/DragControls.html
  63. 11 0
      docs/examples/en/controls/FirstPersonControls.html
  64. 11 0
      docs/examples/en/controls/FlyControls.html
  65. 18 3
      docs/examples/en/controls/OrbitControls.html
  66. 13 2
      docs/examples/en/controls/PointerLockControls.html
  67. 11 0
      docs/examples/en/controls/TrackballControls.html
  68. 11 0
      docs/examples/en/controls/TransformControls.html
  69. 11 0
      docs/examples/en/exporters/ColladaExporter.html
  70. 85 0
      docs/examples/en/exporters/DRACOExporter.html
  71. 11 0
      docs/examples/en/exporters/EXRExporter.html
  72. 20 1
      docs/examples/en/exporters/GLTFExporter.html
  73. 13 3
      docs/examples/en/exporters/OBJExporter.html
  74. 11 0
      docs/examples/en/exporters/PLYExporter.html
  75. 75 0
      docs/examples/en/exporters/STLExporter.html
  76. 15 2
      docs/examples/en/geometries/ConvexGeometry.html
  77. 15 1
      docs/examples/en/geometries/DecalGeometry.html
  78. 11 14
      docs/examples/en/geometries/ParametricGeometry.html
  79. 8 13
      docs/examples/en/geometries/TextGeometry.html
  80. 11 0
      docs/examples/en/helpers/LightProbeHelper.html
  81. 11 0
      docs/examples/en/helpers/PositionalAudioHelper.html
  82. 11 0
      docs/examples/en/helpers/RectAreaLightHelper.html
  83. 11 0
      docs/examples/en/helpers/VertexNormalsHelper.html
  84. 11 0
      docs/examples/en/helpers/VertexTangentsHelper.html
  85. 11 0
      docs/examples/en/lights/LightProbeGenerator.html
  86. 15 4
      docs/examples/en/loaders/3DMLoader.html
  87. 11 0
      docs/examples/en/loaders/DRACOLoader.html
  88. 11 0
      docs/examples/en/loaders/FontLoader.html
  89. 11 0
      docs/examples/en/loaders/GLTFLoader.html
  90. 12 1
      docs/examples/en/loaders/KTX2Loader.html
  91. 10 0
      docs/examples/en/loaders/LDrawLoader.html
  92. 12 1
      docs/examples/en/loaders/MMDLoader.html
  93. 11 0
      docs/examples/en/loaders/MTLLoader.html
  94. 11 0
      docs/examples/en/loaders/OBJLoader.html
  95. 11 0
      docs/examples/en/loaders/PCDLoader.html
  96. 11 0
      docs/examples/en/loaders/PDBLoader.html
  97. 11 0
      docs/examples/en/loaders/PRWMLoader.html
  98. 11 0
      docs/examples/en/loaders/SVGLoader.html
  99. 11 0
      docs/examples/en/loaders/TGALoader.html
  100. 12 1
      docs/examples/en/math/Lut.html

File diff suppressed because it is too large
+ 1482 - 1459
build/three.cjs


File diff suppressed because it is too large
+ 1483 - 1459
build/three.js


File diff suppressed because it is too large
+ 1 - 0
build/three.min.js


File diff suppressed because it is too large
+ 1482 - 1459
build/three.module.js


+ 1 - 1
docs/api/ar/audio/Audio.html

@@ -89,7 +89,7 @@
 		<h3>[property:Number duration]</h3>
 		<h3>[property:Number duration]</h3>
 		<p>يتجاوز مدة الصوت. مثل المعلمة *duration* لـ[link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode/start AudioBufferSourceNode.start](). الافتراضي هو *undefined* لتشغيل المخزن المؤقت بالكامل.</p>
 		<p>يتجاوز مدة الصوت. مثل المعلمة *duration* لـ[link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode/start AudioBufferSourceNode.start](). الافتراضي هو *undefined* لتشغيل المخزن المؤقت بالكامل.</p>
 
 
-		<h3>[property:String source]</h3>
+		<h3>[property:AudioNode source]</h3>
 		<p>[link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode AudioBufferSourceNode]  تم إنشاؤها باستخدام [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioContext/createBufferSource AudioContext.createBufferSource]().</p>
 		<p>[link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode AudioBufferSourceNode]  تم إنشاؤها باستخدام [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioContext/createBufferSource AudioContext.createBufferSource]().</p>
 
 
 		<h3>[property:String sourceType]</h3>
 		<h3>[property:String sourceType]</h3>

+ 1 - 1
docs/api/en/audio/Audio.html

@@ -91,7 +91,7 @@
 		<h3>[property:Number duration]</h3>
 		<h3>[property:Number duration]</h3>
 		<p>Overrides the duration of the audio. Same as the `duration` parameter of [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode/start AudioBufferSourceNode.start](). Default is `undefined` to play the whole buffer.</p>
 		<p>Overrides the duration of the audio. Same as the `duration` parameter of [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode/start AudioBufferSourceNode.start](). Default is `undefined` to play the whole buffer.</p>
 
 
-		<h3>[property:String source]</h3>
+		<h3>[property:AudioNode source]</h3>
 		<p>An [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode AudioBufferSourceNode] created
 		<p>An [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode AudioBufferSourceNode] created
 		using [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioContext/createBufferSource AudioContext.createBufferSource]().</p>
 		using [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioContext/createBufferSource AudioContext.createBufferSource]().</p>
 
 

+ 9 - 0
docs/api/en/materials/Material.html

@@ -128,6 +128,15 @@
 		When drawing 2D overlays it can be useful to disable the depth writing in order to layer several things together without creating z-index artifacts.
 		When drawing 2D overlays it can be useful to disable the depth writing in order to layer several things together without creating z-index artifacts.
 		</p>
 		</p>
 
 
+		<h3>[property:Boolean forceSinglePass]</h3>
+		<p>
+		Whether double-sided, transparent objects should be rendered with a single pass or not. Default is `false`.<br /><br />
+
+		The engine renders double-sided, transparent objects with two draw calls (back faces first, then front faces) to mitigate transparency artifacts.
+		There are scenarios however where this approach produces no quality gains but still doubles draw calls e.g. when rendering flat vegetation like grass sprites. 
+		In these cases, set the `forceSinglePass` flag to `false` to disable the two pass rendering to avoid performance issues.
+		</p>
+
 		<h3>[property:Boolean isMaterial]</h3>
 		<h3>[property:Boolean isMaterial]</h3>
 		<p>
 		<p>
 			Read-only flag to check if a given object is of type [name].
 			Read-only flag to check if a given object is of type [name].

+ 1 - 1
docs/api/en/math/Ray.html

@@ -196,7 +196,7 @@
 		<h3>[method:this set]( [param:Vector3 origin], [param:Vector3 direction] )</h3>
 		<h3>[method:this set]( [param:Vector3 origin], [param:Vector3 direction] )</h3>
 		<p>
 		<p>
 		[page:Vector3 origin] - the [page:.origin origin] of the [page:Ray].<br />
 		[page:Vector3 origin] - the [page:.origin origin] of the [page:Ray].<br />
-		[page:Vector3 origin] - the [page:.direction direction] of the [page:Ray].
+		[page:Vector3 direction] - the [page:.direction direction] of the [page:Ray].
 		This must be normalized (with [page:Vector3.normalize]) for the methods to operate
 		This must be normalized (with [page:Vector3.normalize]) for the methods to operate
 		properly.<br /><br />
 		properly.<br /><br />
 
 

+ 5 - 0
docs/api/en/scenes/Fog.html

@@ -11,6 +11,11 @@
 
 
 		<p class="desc">This class contains the parameters that define linear fog, i.e., that grows linearly denser with the distance.</p>
 		<p class="desc">This class contains the parameters that define linear fog, i.e., that grows linearly denser with the distance.</p>
 
 
+		<h2>Code Example</h2>
+
+		<code>const scene = new THREE.Scene();
+		scene.fog = new THREE.Fog( 0xcccccc, 10, 15 );
+		</code>
 
 
 		<h2>Constructor</h2>
 		<h2>Constructor</h2>
 
 

+ 5 - 0
docs/api/en/scenes/FogExp2.html

@@ -11,6 +11,11 @@
 
 
 		<p class="desc">This class contains the parameters that define exponential squared fog, which gives a clear view near the camera and a faster than exponentially densening fog farther from the camera.</p>
 		<p class="desc">This class contains the parameters that define exponential squared fog, which gives a clear view near the camera and a faster than exponentially densening fog farther from the camera.</p>
 
 
+		<h2>Code Example</h2>
+
+		<code>const scene = new THREE.Scene();
+		scene.fog = new THREE.FogExp2( 0xcccccc, 0.002 );
+		</code>
 
 
 		<h2>Constructor</h2>
 		<h2>Constructor</h2>
 
 

+ 10 - 6
docs/api/en/textures/CompressedArrayTexture.html

@@ -39,7 +39,6 @@
 
 
 		[page:Constant type] -- Default is [page:Textures THREE.UnsignedByteType].
 		[page:Constant type] -- Default is [page:Textures THREE.UnsignedByteType].
 		See [page:Textures type constants] for other choices.<br />
 		See [page:Textures type constants] for other choices.<br />
-
 		</p>
 		</p>
 
 
 
 
@@ -49,10 +48,15 @@
 
 
 		<h3>[property:number wrapR]</h3>
 		<h3>[property:number wrapR]</h3>
 		<p>
 		<p>
-		This defines how the texture is wrapped in the depth direction.<br />
-		The default is [page:Textures THREE.ClampToEdgeWrapping], where the edge is clamped to the outer edge texels.
-		The other two choices are [page:Textures THREE.RepeatWrapping] and [page:Textures THREE.MirroredRepeatWrapping].
-		See the [page:Textures texture constants] page for details.
+			This defines how the texture is wrapped in the depth direction.<br />
+			The default is [page:Textures THREE.ClampToEdgeWrapping], where the edge is clamped to the outer edge texels.
+			The other two choices are [page:Textures THREE.RepeatWrapping] and [page:Textures THREE.MirroredRepeatWrapping].
+			See the [page:Textures texture constants] page for details.
+		</p>
+
+		<h3>[property:Object image]</h3>
+		<p>
+			Overridden with a object containing width, height, and depth.
 		</p>
 		</p>
 
 
 		<h3>[property:Boolean isCompressedArrayTexture]</h3>
 		<h3>[property:Boolean isCompressedArrayTexture]</h3>
@@ -63,7 +67,7 @@
 		<h2>Methods</h2>
 		<h2>Methods</h2>
 
 
 		<p>
 		<p>
-		See the base [page:CompressedTexture CompressedTexture] class for common methods.
+			See the base [page:CompressedTexture CompressedTexture] class for common methods.
 		</p>
 		</p>
 
 
 		<h2>Source</h2>
 		<h2>Source</h2>

+ 5 - 0
docs/api/en/textures/CompressedTexture.html

@@ -75,6 +75,11 @@
 			False by default. Mipmaps can't be generated for compressed textures
 			False by default. Mipmaps can't be generated for compressed textures
 		</p>
 		</p>
 
 
+		<h3>[property:Object image]</h3>
+		<p>
+			Overridden with a object containing width and height.
+		</p>
+
 		<h3>[property:Boolean isCompressedTexture]</h3>
 		<h3>[property:Boolean isCompressedTexture]</h3>
 		<p>
 		<p>
 			Read-only flag to check if a given object is of type [name].
 			Read-only flag to check if a given object is of type [name].

+ 97 - 9
docs/api/en/textures/Data3DTexture.html

@@ -11,13 +11,16 @@
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
-		<p class="desc">Creates a three-dimensional texture. This type of texture can only be used with a WebGL 2 rendering context.</p>
+		<p class="desc">
+			Creates a three-dimensional texture from raw data, with parameters to divide it into width, height, and depth. 
+			This type of texture can only be used with a WebGL 2 rendering context.
+		</p>
 
 
 		<h2>Constructor</h2>
 		<h2>Constructor</h2>
 
 
 		<h3>[name]( [param:TypedArray data], [param:Number width], [param:Number height], [param:Number depth] )</h3>
 		<h3>[name]( [param:TypedArray data], [param:Number width], [param:Number height], [param:Number depth] )</h3>
 		<p>
 		<p>
-			[page:Object data] -- data of the texture.<br />
+			[page:Object data] -- [link:https://developer.mozilla.org/en-US/docs/Web/API/ArrayBufferView ArrayBufferView] of the texture.<br />
 
 
 			[page:Number width] -- width of the texture.<br />
 			[page:Number width] -- width of the texture.<br />
 
 
@@ -26,30 +29,115 @@
 			[page:Number depth] -- depth of the texture.
 			[page:Number depth] -- depth of the texture.
 		</p>
 		</p>
 
 
+		<h2>Code Example</h2>
+
+		<p>This creates a [name] with repeating data, 0 to 255</p>
+
+		<code>
+		// create a buffer with some data
+
+		const sizeX = 64;
+		const sizeY = 64;
+		const sizeZ = 64;
+
+		const data = new Uint8Array( sizeX * sizeY * sizeZ );
+
+		let i = 0;
+
+		for ( let z = 0; z < sizeZ; z ++ ) {
+
+			for ( let y = 0; y < sizeY; y ++ ) {
+
+				for ( let x = 0; x < sizeX; x ++ ) {
+
+					data[ i ] = i % 256;
+
+					i ++;
+
+				}
+
+			}
+
+		}
+
+		// use the buffer to create the texture
+
+		const texture = new THREE.Data3DTexture( data, sizeX, sizeY, sizeZ );
+		texture.needsUpdate = true;
+		</code>
+
 		<h2>Examples</h2>
 		<h2>Examples</h2>
 
 
 		<p>
 		<p>
-			[example:webgl2_materials_texture3d WebGL2 / materials / texture3d]
+			[example:webgl2_materials_texture3d WebGL2 / materials / texture3d]<br />
+			[example:webgl2_materials_texture3d_partialupdate WebGL2 / materials / texture3d / partialupdate]<br />
+			[example:webgl2_volume_cloud WebGL2 / volume / cloud]<br />
+			[example:webgl2_volume_perlin WebGL2 / volume / perlin]
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
 
 
 		<p>
 		<p>
-		See the base [page:Texture Texture] class for common properties.
+			See the base [page:Texture Texture] class for common properties.
+		</p>
+
+		<h3>[property:Boolean flipY]</h3>
+		<p>
+			Whether the texture is flipped along the Y axis when uploaded to the GPU. Default is `false`.
+		</p>
+	
+		<h3>[property:Boolean generateMipmaps]</h3>
+		<p>
+			Whether to generate mipmaps (if possible) for the texture. Default is `false`.
+		</p>
+
+		<h3>[property:Image image]</h3>
+		<p>
+			Overridden with a record type holding data, width and height and depth.
+		</p>
+
+		<h3>[property:Boolean isData3DTexture]</h3>
+		<p>
+			Read-only flag to check if a given object is of type [name].
+		</p>
+
+		<h3>[property:number magFilter]</h3>
+		<p>
+			How the texture is sampled when a texel covers more than one pixel. The default is
+		 	[page:Textures THREE.NearestFilter], which uses the value of the closest texel.<br /><br />
+		 
+			See the [page:Textures texture constants] page for details.
+		</p>
+
+		<h3>[property:number minFilter]</h3>
+		<p>
+			How the texture is sampled when a texel covers less than one pixel. The default is
+			[page:Textures THREE.NearestFilter], which uses the value of the closest texel.<br /><br />
+
+			See the [page:Textures texture constants] page for details.
+		</p>
+
+		<h3>[property:number unpackAlignment]</h3>
+		<p>
+			1 by default. Specifies the alignment requirements for the start of each pixel row in memory.
+			The allowable values are 1 (byte-alignment), 2 (rows aligned to even-numbered bytes),
+			4 (word-alignment), and 8 (rows start on double-word boundaries).
+			See [link:https://registry.khronos.org/OpenGL-Refpages/es3.0/html/glPixelStorei.xhtml glPixelStorei]
+			for more information.
 		</p>
 		</p>
 
 
 		<h3>[property:number wrapR]</h3>
 		<h3>[property:number wrapR]</h3>
 		<p>
 		<p>
-		This defines how the texture is wrapped in the depth direction.<br />
-		The default is [page:Textures THREE.ClampToEdgeWrapping], where the edge is clamped to the outer edge texels.
-		The other two choices are [page:Textures THREE.RepeatWrapping] and [page:Textures THREE.MirroredRepeatWrapping].
-		See the [page:Textures texture constants] page for details.
+			This defines how the texture is wrapped in the depth direction.<br />
+			The default is [page:Textures THREE.ClampToEdgeWrapping], where the edge is clamped to the outer edge texels.
+			The other two choices are [page:Textures THREE.RepeatWrapping] and [page:Textures THREE.MirroredRepeatWrapping].
+			See the [page:Textures texture constants] page for details.
 		</p>
 		</p>
 
 
 		<h2>Methods</h2>
 		<h2>Methods</h2>
 
 
 		<p>
 		<p>
-		See the base [page:Texture Texture] class for common methods.
+			See the base [page:Texture Texture] class for common methods.
 		</p>
 		</p>
 
 
 		<h2>Source</h2>
 		<h2>Source</h2>

+ 57 - 5
docs/api/en/textures/DataArrayTexture.html

@@ -11,7 +11,10 @@
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
-		<p class="desc">Creates an array of textures directly from raw data, width and height and depth. This type of texture can only be used with a WebGL 2 rendering context.</p>
+		<p class="desc">
+			Creates an array of textures directly from raw data, width and height and depth. 
+			This type of texture can only be used with a WebGL 2 rendering context.
+		</p>
 
 
 
 
 		<h2>Constructor</h2>
 		<h2>Constructor</h2>
@@ -74,23 +77,72 @@
 
 
 		<p>
 		<p>
 			[example:webgl2_materials_texture2darray WebGL2 / materials / texture2darray]
 			[example:webgl2_materials_texture2darray WebGL2 / materials / texture2darray]
+			[example:webgl2_rendertarget_texture2darray WebGL2 / rendertarget / texture2darray]
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
 
 
 		<p>
 		<p>
-		See the base [page:Texture Texture] class for common properties.
+			See the base [page:Texture Texture] class for common properties.
+		</p>
+
+		<h3>[property:Boolean flipY]</h3>
+		<p>
+			Whether the texture is flipped along the Y axis when uploaded to the GPU. Default is `false`.
+		</p>
+	
+		<h3>[property:Boolean generateMipmaps]</h3>
+		<p>
+			Whether to generate mipmaps (if possible) for the texture. Default is `false`.
+		</p>
+
+		<h3>[property:Object image]</h3>
+		<p>
+			Overridden with a object holding data, width, height, and depth.
+		</p>
+
+		<h3>[property:Boolean isDataArrayTexture]</h3>
+		<p>
+			Read-only flag to check if a given object is of type [name].
+		</p>
+
+		<h3>[property:number magFilter]</h3>
+		<p>
+			How the texture is sampled when a texel covers more than one pixel. The default is
+		 	[page:Textures THREE.NearestFilter], which uses the value of the closest texel.<br /><br />
+		 
+			See the [page:Textures texture constants] page for details.
+		</p>
+
+		<h3>[property:number minFilter]</h3>
+		<p>
+			How the texture is sampled when a texel covers less than one pixel. The default is
+			[page:Textures THREE.NearestFilter], which uses the value of the closest texel.<br /><br />
+
+			See the [page:Textures texture constants] page for details.
+		</p>
+
+		<h3>[property:number unpackAlignment]</h3>
+		<p>
+			1 by default. Specifies the alignment requirements for the start of each pixel row in memory.
+			The allowable values are 1 (byte-alignment), 2 (rows aligned to even-numbered bytes),
+			4 (word-alignment), and 8 (rows start on double-word boundaries).
+			See [link:https://registry.khronos.org/OpenGL-Refpages/es3.0/html/glPixelStorei.xhtml glPixelStorei]
+			for more information.
 		</p>
 		</p>
 
 
-		<h3>[property:Image image]</h3>
+		<h3>[property:number wrapR]</h3>
 		<p>
 		<p>
-		Overridden with a record type holding data, width and height and depth.
+			This defines how the texture is wrapped in the depth direction.<br />
+			The default is [page:Textures THREE.ClampToEdgeWrapping], where the edge is clamped to the outer edge texels.
+			The other two choices are [page:Textures THREE.RepeatWrapping] and [page:Textures THREE.MirroredRepeatWrapping].
+			See the [page:Textures texture constants] page for details.
 		</p>
 		</p>
 
 
 		<h2>Methods</h2>
 		<h2>Methods</h2>
 
 
 		<p>
 		<p>
-		See the base [page:Texture Texture] class for common methods.
+			See the base [page:Texture Texture] class for common methods.
 		</p>
 		</p>
 
 
 		<h2>Source</h2>
 		<h2>Source</h2>

+ 2 - 2
docs/api/en/textures/DataTexture.html

@@ -80,9 +80,9 @@
 		Whether to generate mipmaps (if possible) for a texture. False by default.
 		Whether to generate mipmaps (if possible) for a texture. False by default.
 		</p>
 		</p>
 
 
-		<h3>[property:Image image]</h3>
+		<h3>[property:Object image]</h3>
 		<p>
 		<p>
-		Overridden with a record type holding data, width and height.
+			Overridden with a object holding data, width, and height.
 		</p>
 		</p>
 
 
 		<h3>[property:Boolean isDataTexture]</h3>
 		<h3>[property:Boolean isDataTexture]</h3>

+ 50 - 0
docs/api/en/textures/FramebufferTexture.html

@@ -15,7 +15,34 @@
 			This class can only be used in combination with [page:WebGLRenderer.copyFramebufferToTexture]().
 			This class can only be used in combination with [page:WebGLRenderer.copyFramebufferToTexture]().
 		</p>
 		</p>
 
 
+		<code>
+			const pixelRatio = window.devicePixelRatio;
+			const textureSize = 128 * pixelRatio;
+
+			// instantiate a framebuffer texture
+			const frameTexture = new FramebufferTexture( textureSize, textureSize, RGBAFormat );
+	
+			// calculate start position for copying part of the frame data
+			const vector = new Vector2();
+			vector.x = ( window.innerWidth * pixelRatio / 2 ) - ( textureSize / 2 );
+			vector.y = ( window.innerHeight * pixelRatio / 2 ) - ( textureSize / 2 );
+
+			// render the scene
+			renderer.clear();
+			renderer.render( scene, camera );
+
+			// copy part of the rendered frame into the framebuffer texture
+			renderer.copyFramebufferToTexture( vector, frameTexture );
+		</code>
+
+		<h2>Examples</h2>
+
+		<p>
+			[example:webgl_framebuffer_texture]
+		</p>
+
 		<h2>Constructor</h2>
 		<h2>Constructor</h2>
+
 		<h3>[name]( [param:Number width], [param:Number height], [param:Constant format] )</h3>
 		<h3>[name]( [param:Number width], [param:Number height], [param:Constant format] )</h3>
 		<p>
 		<p>
 		[page:Number width] -- The width of the texture.<br />
 		[page:Number width] -- The width of the texture.<br />
@@ -31,11 +58,34 @@
 
 
 		<p>See the base [page:Texture Texture] class for common properties.</p>
 		<p>See the base [page:Texture Texture] class for common properties.</p>
 
 
+		<h3>[property:Boolean generateMipmaps]</h3>
+		<p>
+			Whether to generate mipmaps for the [name]. Default value is `false`.
+		</p>
+
 		<h3>[property:Boolean isFramebufferTexture]</h3>
 		<h3>[property:Boolean isFramebufferTexture]</h3>
 		<p>
 		<p>
 			Read-only flag to check if a given object is of type [name].
 			Read-only flag to check if a given object is of type [name].
 		</p>
 		</p>
 
 
+		<h3>[property:number magFilter]</h3>
+		<p>
+			How the texture is sampled when a texel covers more than one pixel. The default is
+			[page:Textures THREE.NearestFilter], which uses the value of the closest texel.
+			<br /><br />
+			
+			See [page:Textures texture constants] for details.
+		</p>
+
+		<h3>[property:number minFilter]</h3>
+		<p>
+			How the texture is sampled when a texel covers less than one pixel. The default is
+			[page:Textures THREE.NearestFilter], which uses the value of the closest texel. 
+			<br /><br />
+
+			See [page:Textures texture constants] for details.
+		</p>
+
 		<h3>[property:Boolean needsUpdate]</h3>
 		<h3>[property:Boolean needsUpdate]</h3>
 
 
 		<p>
 		<p>

+ 5 - 0
docs/api/en/textures/Source.html

@@ -27,6 +27,11 @@
 		The actual data of a texture. The type of this property depends on the texture that uses this instance.
 		The actual data of a texture. The type of this property depends on the texture that uses this instance.
 		</p>
 		</p>
 
 
+		<h3>[property:Boolean isSource]</h3>
+		<p>
+			Read-only flag to check if a given object is of type [name].
+		</p>
+
 		<h3>[property:Boolean needsUpdate]</h3>
 		<h3>[property:Boolean needsUpdate]</h3>
 		<p>
 		<p>
 		Set this to `true` to trigger a data upload to the GPU next time the source is used.
 		Set this to `true` to trigger a data upload to the GPU next time the source is used.

+ 1 - 1
docs/api/fr/audio/Audio.html

@@ -91,7 +91,7 @@
 		<h3>[property:Number duration]</h3>
 		<h3>[property:Number duration]</h3>
 		<p>Écrase la durée de l'audio. Équivalent au paramètre `duration` de [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode/start AudioBufferSourceNode.start](). La valeur par défaut est `undefined` afin de jour le buffer entier.</p>
 		<p>Écrase la durée de l'audio. Équivalent au paramètre `duration` de [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode/start AudioBufferSourceNode.start](). La valeur par défaut est `undefined` afin de jour le buffer entier.</p>
 
 
-		<h3>[property:String source]</h3>
+		<h3>[property:AudioNode source]</h3>
 		<p>Un [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode AudioBufferSourceNode] créé
 		<p>Un [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode AudioBufferSourceNode] créé
 		en utilisant [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioContext/createBufferSource AudioContext.createBufferSource]().</p>
 		en utilisant [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioContext/createBufferSource AudioContext.createBufferSource]().</p>
 
 

+ 1 - 1
docs/api/it/audio/Audio.html

@@ -107,7 +107,7 @@
       Il valore predefinito è `undefined` per riprodurre l'intero buffer.
       Il valore predefinito è `undefined` per riprodurre l'intero buffer.
     </p>
     </p>
 
 
-		<h3>[property:String source]</h3>
+		<h3>[property:AudioNode source]</h3>
 		<p>
 		<p>
       Un [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode AudioBufferSourceNode] creato
       Un [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode AudioBufferSourceNode] creato
       usando [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioContext/createBufferSource AudioContext.createBufferSource]().
       usando [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioContext/createBufferSource AudioContext.createBufferSource]().

+ 9 - 0
docs/api/it/materials/Material.html

@@ -137,6 +137,15 @@
 			cose insieme senza creare artefatti z.index.
 			cose insieme senza creare artefatti z.index.
 		</p>
 		</p>
 
 
+		<h3>[property:Boolean forceSinglePass]</h3>
+		<p>
+		Whether double-sided, transparent objects should be rendered with a single pass or not. Default is `false`.<br /><br />
+
+		The engine renders double-sided, transparent objects with two draw calls (back faces first, then front faces) to mitigate transparency artifacts.
+		There are scenarios however where this approach produces no quality gains but still doubles draw calls e.g. when rendering flat vegetation like grass sprites. 
+		In these cases, set the `forceSinglePass` flag to `false` to disable the two pass rendering to avoid performance issues.
+		</p>
+
 		<h3>[property:Boolean isMaterial]</h3>
 		<h3>[property:Boolean isMaterial]</h3>
 		<p>
 		<p>
 			Flag di sola lettura per  verificare se l'oggetto dato è di tipo [name].
 			Flag di sola lettura per  verificare se l'oggetto dato è di tipo [name].

+ 1 - 1
docs/api/it/math/Ray.html

@@ -193,7 +193,7 @@
 		<h3>[method:this set]( [param:Vector3 origin], [param:Vector3 direction] )</h3>
 		<h3>[method:this set]( [param:Vector3 origin], [param:Vector3 direction] )</h3>
 		<p>
 		<p>
 		[page:Vector3 origin] - l'[page:.origin origine] del [page:Ray raggio].<br />
 		[page:Vector3 origin] - l'[page:.origin origine] del [page:Ray raggio].<br />
-		[page:Vector3 origin] - la [page:.direction direzione] del [page:Ray raggio].
+		[page:Vector3 direction] - la [page:.direction direzione] del [page:Ray raggio].
 		Deve essere normalizzato (con [page:Vector3.normalize]) affinchè i metodi funzionino correttamente.<br /><br />
 		Deve essere normalizzato (con [page:Vector3.normalize]) affinchè i metodi funzionino correttamente.<br /><br />
 
 
 		Imposta le proprietà [page:.origin origine] e [page:.direction direzione] di questo raggio copiando i valori dagli oggetti dati.
 		Imposta le proprietà [page:.origin origine] e [page:.direction direzione] di questo raggio copiando i valori dagli oggetti dati.

+ 5 - 0
docs/api/it/scenes/Fog.html

@@ -11,6 +11,11 @@
 
 
 		<p class="desc">Questa classe contiene i parametri che definiscono la nebbia lineare, cioè che cresce linearmente con la distanza.</p>
 		<p class="desc">Questa classe contiene i parametri che definiscono la nebbia lineare, cioè che cresce linearmente con la distanza.</p>
 
 
+		<h2>Codice di Esempio</h2>
+
+		<code>const scene = new THREE.Scene();
+		scene.fog = new THREE.Fog( 0xcccccc, 10, 15 );
+		</code>
 
 
 		<h2>Costruttore</h2>
 		<h2>Costruttore</h2>
 
 

+ 6 - 0
docs/api/it/scenes/FogExp2.html

@@ -15,6 +15,12 @@
 			a densità esponenziale più lontana dalla telecamera.
 			a densità esponenziale più lontana dalla telecamera.
 		</p>
 		</p>
 
 
+		<h2>Codice di Esempio</h2>
+
+		<code>const scene = new THREE.Scene();
+		scene.fog = new THREE.FogExp2( 0xcccccc, 0.002 );
+		</code>
+
 		<h2>Costruttore</h2>
 		<h2>Costruttore</h2>
 
 
 
 

+ 1 - 1
docs/api/it/textures/DataArrayTexture.html

@@ -89,7 +89,7 @@
     	Vedi la classe base [page:Texture Texture] per le proprietà comuni.
     	Vedi la classe base [page:Texture Texture] per le proprietà comuni.
     </p>
     </p>
 
 
-		<h3>[property:Image image]</h3>
+		<h3>[property:Object image]</h3>
 		<p>
 		<p>
 			Sostituito con un tipo di record contenente dati, larghezza, altezza e profondità.
 			Sostituito con un tipo di record contenente dati, larghezza, altezza e profondità.
 		</p>
 		</p>

+ 1 - 1
docs/api/it/textures/DataTexture.html

@@ -83,7 +83,7 @@
 			Indica se generare mipmap (se possibile) per una texture. Falso per impostazione predefinita.
 			Indica se generare mipmap (se possibile) per una texture. Falso per impostazione predefinita.
 		</p>
 		</p>
 
 
-		<h3>[property:Image image]</h3>
+		<h3>[property:Object image]</h3>
 		<p>
 		<p>
 			Sostituito con un tipo di record contenente dati, larghezza, altezza e profondità.
 			Sostituito con un tipo di record contenente dati, larghezza, altezza e profondità.
 		</p>
 		</p>

+ 5 - 0
docs/api/it/textures/Source.html

@@ -27,6 +27,11 @@
 			I dati effettivi di una texture. Il tipo di questa proprietà dipende dalla texture che utilizza questa istanza.
 			I dati effettivi di una texture. Il tipo di questa proprietà dipende dalla texture che utilizza questa istanza.
 		</p>
 		</p>
 
 
+		<h3>[property:Boolean isSource]</h3>
+		<p>
+			Flag di sola lettura per verificare se l'oggetto dato è di tipo [name].
+		</p>
+
 		<h3>[property:Boolean needsUpdate]</h3>
 		<h3>[property:Boolean needsUpdate]</h3>
 		<p>
 		<p>
 			Impostalo a `true` per attivare un caricamento di dati sulla GPU la prossima volta che viene utilizzata la sorgente.
 			Impostalo a `true` per attivare un caricamento di dati sulla GPU la prossima volta che viene utilizzata la sorgente.

+ 1 - 1
docs/api/ko/audio/Audio.html

@@ -89,7 +89,7 @@
 		<h3>[property:Number duration]</h3>
 		<h3>[property:Number duration]</h3>
 		<p>오디오 길이를 오버라이드합니다. [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode/start AudioBufferSourceNode.start]()의 *duration* 파라미터와 동일. 전체 버퍼 재생을 위한 기본값은 *undefined*입니다.</p>
 		<p>오디오 길이를 오버라이드합니다. [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode/start AudioBufferSourceNode.start]()의 *duration* 파라미터와 동일. 전체 버퍼 재생을 위한 기본값은 *undefined*입니다.</p>
 
 
-		<h3>[property:String source]</h3>
+		<h3>[property:AudioNode source]</h3>
 		<p>
 		<p>
 			[link:https://developer.mozilla.org/en-US/docs/Web/API/AudioContext/createBufferSource AudioContext.createBufferSource]()로 생성된
 			[link:https://developer.mozilla.org/en-US/docs/Web/API/AudioContext/createBufferSource AudioContext.createBufferSource]()로 생성된
 			[link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode AudioBufferSourceNode]입니다.
 			[link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode AudioBufferSourceNode]입니다.

+ 51 - 0
docs/api/ko/constants/BufferAttributeUsage.html

@@ -0,0 +1,51 @@
+<!DOCTYPE html>
+<html lang="ko">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		<h1>Buffer Attribute Usage Constants</h1>
+
+		<p>
+			사용 상수를 사용하여 성능을 최적화하기 위해 지오메트리 버퍼 속성을 사용하는 방법에 대한 힌트를 API에 제공할 수 있습니다.
+		</p>
+
+		<h2>코드 예제</h2>
+
+		<code>
+		const geometry = new THREE.BufferGeometry();
+		const positionAttribute = new THREE.BufferAttribute( array, 3 , false );
+		positionAttribute.setUsage( THREE.DynamicDrawUsage );
+		geometry.setAttribute( 'position', positionAttribute );
+		</code>
+
+		<h2>예제</h2>
+		<p>[example:webgl_buffergeometry_drawrange materials / buffergeometry / drawrange ]</p>
+
+		<h2>Geometry Usage</h2>
+		<code>
+		THREE.StaticDrawUsage
+		THREE.DynamicDrawUsage
+		THREE.StreamDrawUsage
+
+		THREE.StaticReadUsage
+		THREE.DynamicReadUsage
+		THREE.StreamReadUsage
+
+		THREE.StaticCopyUsage
+		THREE.DynamicCopyUsage
+		THREE.StreamCopyUsage
+		</code>
+
+		이러한 각 상수에 대한 자세한 내용은 [link:https://www.khronos.org/opengl/wiki/Buffer_Object#Buffer_Object_Usage this OpenGL documentation]를 참조하세요. 
+
+		<h2>소스코드</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/constants.js src/constants.js]
+		</p>
+	</body>
+</html>

+ 75 - 0
docs/api/ko/geometries/BoxGeometry.html

@@ -0,0 +1,75 @@
+<!DOCTYPE html>
+<html lang="ko">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+			[name]는 주어진 '폭', '높이', '깊이'를 갖는 직사각형 정육면체 형상에 대한 클래스입니다.
+			생성 시, 정육면체는 원점의 중심에 위치하며, 각 모서리는 축 중 하나와 평행합니다.
+		</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#BoxGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>코드 예제</h2>
+
+		<code>
+		const geometry = new THREE.BoxGeometry( 1, 1, 1 );
+		const material = new THREE.MeshBasicMaterial( {color: 0x00ff00} );
+		const cube = new THREE.Mesh( geometry, material );
+		scene.add( cube );
+		</code>
+
+		<h2>생성자</h2>
+
+		<h3>[name]([param:Float width], [param:Float height], [param:Float depth], [param:Integer widthSegments], [param:Integer heightSegments], [param:Integer depthSegments])</h3>
+		<p>
+		width — 너비, 즉 X축에 평행한 모서리의 길이입니다.  Optional; 기본값은 1 입니다.<br />
+		height — 높이, 즉 Y축에 평행한 가장자리의 길이입니다. Optional; 기본값은 1 입니다.<br />
+		depth — 깊이, 즉 Z축에 평행한 가장자리의 길이입니다. Optional; 기본값은 1 입니다.<br />
+		widthSegments — 변의 폭을 따라 분할된 직사각형 면의 수입니다. Optional; 기본값은 1 입니다.<br />
+		heightSegments — 변의 높이를 따라 분할된 직사각형 면의 수입니다. Optional; 기본값은 1 입니다.<br />
+		depthSegments — 변의 깊이를 따라 분할된 직사각형 면의 수입니다. Optional; 기본값은 1 입니다.<br />
+		</p>
+
+		<h2>프로퍼티</h2>
+		<p>일반 프로퍼티는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		각 생성자 매개 변수에 대한 속성을 가진 개체입니다. 인스턴스화 후에 수정해도 지오메트리는 변경되지 않습니다.
+		</p>
+
+		<h2>메서드</h2>
+		<p>일반 메서드는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h2>소스 코드</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 74 - 0
docs/api/ko/geometries/CapsuleGeometry.html

@@ -0,0 +1,74 @@
+<!DOCTYPE html>
+<html lang="ko">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr; [page:LatheGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+			[name]는 주어진 반지름과 높이를 가진 캡슐 형상에 대한  클래스입니다.
+			LatheGeometry를 사용하여 생성됩니다.
+		</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#CapsuleGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>코드 예제</h2>
+
+		<code>
+		const geometry = new THREE.CapsuleGeometry( 1, 1, 4, 8 );
+		const material = new THREE.MeshBasicMaterial( {color: 0x00ff00} );
+		const capsule = new THREE.Mesh( geometry, material );
+		scene.add( capsule );
+		</code>
+
+		<h2>생성자</h2>
+
+		<h3>[name]([param:Float radius], [param:Float length], [param:Integer capSubdivisions], [param:Integer radialSegments])</h3>
+		<p>
+
+		radius — 캡슐의 반경입니다. Optional; 기본값은 1 입니다.<br />
+		length — 중간 구역의 길이입니다. Optional; 기본값은 1 입니다.<br />
+		capSegments — 캡을 구성하는 데 사용된 곡선 면의 수입니다. Optional; 기본값은 4 입니다.<br />
+		radialSegments — 캡슐 둘레 주변의 분할된 면의 수입니다. Optional; 기본값은 8 입니다.<br />
+		</p>
+
+		<h2>프로퍼티</h2>
+		<p>일반 프로퍼티는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		각 생성자 매개 변수에 대한 속성을 가진 개체입니다. 인스턴스화 후에 수정해도 지오메트리는 변경되지 않습니다.
+		</p>
+
+		<h2>메서드</h2>
+		<p>일반 메서드는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h2>소스 코드</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 75 - 0
docs/api/ko/geometries/CircleGeometry.html

@@ -0,0 +1,75 @@
+<!DOCTYPE html>
+<html lang="ko">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+			[name]는 유클리드 기하학의 단순한 모양입니다.
+			중심점을 중심으로 방향을 잡고 주어진 반경만큼 멀리 뻗어있는 많은 삼각형 세그먼트로 구성됩니다.
+			시작 각도와 주어진 중심 각도에서 시계 반대 방향으로 만들어집니다.
+			세그먼트의 수가 변의 수를 결정하는 정규 다각형을 만드는 데도 사용할 수 있습니다.
+		</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#CircleGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>코드 예제</h2>
+
+		<code>
+		const geometry = new THREE.CircleGeometry( 5, 32 );
+		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
+		const circle = new THREE.Mesh( geometry, material );
+		scene.add( circle );
+		</code>
+
+		<h2>생성자</h2>
+
+		<h3>[name]([param:Float radius], [param:Integer segments], [param:Float thetaStart], [param:Float thetaLength])</h3>
+		<p>
+		radius — 원의 반지름, 기본값 = 1.<br />
+		segments — 세그먼트 수(삼각형), 최소값 = 3, 기본값 = 32.<br />
+		thetaStart — 첫 세그먼트의 각도 시작, 기본값 = 0 (3시 위치).<br />
+		thetaLength — 원형 섹터의 중심 각도(흔히 세타라고 함)입니다. 기본값은 완전한 원을 만드는 2*Pi 입니다.
+		</p>
+
+		<h2>프로퍼티</h2>
+		<p>일반 프로퍼티는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		각 생성자 매개 변수에 대한 속성을 가진 개체입니다. 인스턴스화 후에 수정해도 지오메트리는 변경되지 않습니다.
+		</p>
+
+		<h2>메서드</h2>
+		<p>일반 메서드는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h2>소스코드</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 73 - 0
docs/api/ko/geometries/ConeGeometry.html

@@ -0,0 +1,73 @@
+<!DOCTYPE html>
+<html lang="ko">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr; [page:CylinderGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">원뿔 형상을 생성하기 위한 클래스입니다.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#ConeGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>코드 예제</h2>
+
+		<code>
+		const geometry = new THREE.ConeGeometry( 5, 20, 32 );
+		const material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
+		const cone = new THREE.Mesh( geometry, material );
+		scene.add( cone );
+		</code>
+
+		<h2>생성자</h2>
+
+		<h3>[name]([param:Float radius], [param:Float height], [param:Integer radialSegments], [param:Integer heightSegments], [param:Boolean openEnded], [param:Float thetaStart], [param:Float thetaLength])</h3>
+		<p>
+		radius — 원뿔 밑면의 반지름입니다. 기본값은 1 입니다.<br />
+		height — 원뿔의 높이입니다. 기본값은 1 입니다.<br />
+		radialSegments — 원뿔 둘레 주변의 분할된 면의 수입니다. 기본값은 32 입니다.<br />
+		heightSegments — 원뿔 높이를 따라 있는 면의 행 수입니다. 기본값은 1 입니다.<br />
+		openEnded — 원뿔의 밑면이 열려 있는지 닫혀 있는지를 나타내는 부울입니다. 기본값은 닫힘을 의미하는 false 입니다.<br />
+		thetaStart — 첫 번째 세그먼트의 시작 각도, 기본값은 0 입니다 (3시 위치).<br />
+		thetaLength — 원형 섹터의 중심 각도(흔히 세타라고 함)입니다. 기본값은 완전한 원을 만드는 2*Pi 입니다.
+		</p>
+
+		<h2>프로퍼티</h2>
+		<p>일반 프로퍼티는 기본 [page:CylinderGeometry] 클래스를 참조하십시오.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		각 생성자 매개 변수에 대한 속성을 가진 개체입니다. 인스턴스화 후에 수정해도 지오메트리는 변경되지 않습니다.
+		</p>
+
+		<h2>메서드</h2>
+		<p>일반 메서드는 기본 [page:CylinderGeometry] 클래스를 참조하십시오.</p>
+
+		<h2>소스 코드</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 74 - 0
docs/api/ko/geometries/CylinderGeometry.html

@@ -0,0 +1,74 @@
+<!DOCTYPE html>
+<html lang="ko">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">실린더 형상을 생성하기 위한 클래스입니다..</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#CylinderGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>코드 예제</h2>
+
+		<code>
+		const geometry = new THREE.CylinderGeometry( 5, 5, 20, 32 );
+		const material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
+		const cylinder = new THREE.Mesh( geometry, material );
+		scene.add( cylinder );
+		</code>
+
+		<h2>생성자</h2>
+
+		<h3>[name]([param:Float radiusTop], [param:Float radiusBottom], [param:Float height], [param:Integer radialSegments], [param:Integer heightSegments], [param:Boolean openEnded], [param:Float thetaStart], [param:Float thetaLength])</h3>
+		<p>
+		radiusTop — 상단에서 원통의 반지름입니다. 기본값은 1 입니다.<br />
+		radiusBottom — 바닥에서 원통의 반지름입니다. 기본값은 1 입니다.<br />
+		height — 실린더의 높이입니다. 기본값은 1 입니다.<br />
+		radialSegments — 실린더 원주 주위의 분할된 면의 수입니다. 기본값은 32 입니다.<br />
+		heightSegments — 원통 높이를 따라 있는 면의 행 수입니다. 기본값은 1 입니다.<br />
+		openEnded — 원뿔의 끝이 열려 있는지 닫혀 있는지를 나타내는 부울입니다. 기본값은 닫힘을 의미하는 false 입니다.<br />
+		thetaStart — 첫 번째 세그먼트의 시작 각도, 기본값은 0 입니다 (3시 위치).<br />
+		thetaLength — 원형 섹터의 중심 각도(흔히 세타라고 함)입니다. 기본값은 완전한 실린더를 만드는 2*Pi 입니다.
+		</p>
+
+		<h2>프로퍼티</h2>
+		<p>일반 프로퍼티는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		각 생성자 매개 변수에 대한 속성을 가진 개체입니다. 인스턴스화 후에 수정해도 지오메트리는 변경되지 않습니다.
+		</p>
+
+		<h2>메서드</h2>
+		<p>일반 메서드는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+		
+		<h2>소스 코드</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 59 - 0
docs/api/ko/geometries/DodecahedronGeometry.html

@@ -0,0 +1,59 @@
+<!DOCTYPE html>
+<html lang="ko">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr; [page:PolyhedronGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">12면체 형상을 생성하기 위한 클래스입니다.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#DodecahedronGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>생성자</h2>
+
+		<h3>[name]([param:Float radius], [param:Integer detail])</h3>
+		<p>
+		radius — 12면체의 반지름입니다. 기본값은 1입니다.<br />
+		detail — 기본값은 0 입니다. 이 값을 0보다 큰 값으로 설정하면 정점이 추가되어 더 이상 12면체가 아닙니다.
+		</p>
+
+		<h2>프로퍼티</h2>
+		<p>일반 프로퍼티는 기본 [page:PolyhedronGeometry] 클래스를 참조하십시오.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		각 생성자 매개 변수에 대한 속성을 가진 개체입니다. 인스턴스화 후에 수정해도 지오메트리는 변경되지 않습니다.
+		</p>
+
+		<h2>메서드</h2>
+		<p>일반 메서드는 기본 [page:PolyhedronGeometry] 클래스를 참조하십시오.</p>
+
+		<h2>소스 코드</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 55 - 0
docs/api/ko/geometries/EdgesGeometry.html

@@ -0,0 +1,55 @@
+<!DOCTYPE html>
+<html lang="ko">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">[page:BufferGeometry geometry]는 지오메트리의 모서리를 보기 위한 도우미 개체로 사용할 수 있습니다.</p>
+
+		<h2>코드 예제</h2>
+
+		<code>
+		const geometry = new THREE.BoxGeometry( 100, 100, 100 );
+		const edges = new THREE.EdgesGeometry( geometry );
+		const line = new THREE.LineSegments( edges, new THREE.LineBasicMaterial( { color: 0xffffff } ) );
+		scene.add( line );
+		</code>
+
+		<h2>예제</h2>
+		<p>
+			[example:webgl_helpers helpers]
+		</p>
+
+		<h2>생성자</h2>
+
+		<h3>[name]( [param:BufferGeometry geometry], [param:Integer thresholdAngle] )</h3>
+		<p>
+		geometry — 모든 기하학 객체.<br />
+		thresholdAngle — 인접한 면의 면 법선 사이의 각도 (단위는 도)가 이 값을 초과하는 경우에만 가장자리가 렌더링됩니다. 기본값 = 1도.
+		</p>
+
+		<h2>프로퍼티</h2>
+		<p>일반 프로퍼티는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		각 생성자 매개 변수에 대한 속성을 가진 개체입니다. 인스턴스화 후에 수정해도 지오메트리는 변경되지 않습니다.
+		</p>
+
+		<h2>메서드</h2>
+		<p>일반 메서드는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h2>소스 코드</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 111 - 0
docs/api/ko/geometries/ExtrudeGeometry.html

@@ -0,0 +1,111 @@
+<!DOCTYPE html>
+<html lang="ko">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">경로 모양에서 돌출된 형상을 만듭니다.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#ExtrudeGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>코드 예제</h2>
+
+
+		<code>
+		const length = 12, width = 8;
+
+		const shape = new THREE.Shape();
+		shape.moveTo( 0,0 );
+		shape.lineTo( 0, width );
+		shape.lineTo( length, width );
+		shape.lineTo( length, 0 );
+		shape.lineTo( 0, 0 );
+
+		const extrudeSettings = {
+			steps: 2,
+			depth: 16,
+			bevelEnabled: true,
+			bevelThickness: 1,
+			bevelSize: 1,
+			bevelOffset: 0,
+			bevelSegments: 1
+		};
+
+		const geometry = new THREE.ExtrudeGeometry( shape, extrudeSettings );
+		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
+		const mesh = new THREE.Mesh( geometry, material ) ;
+		scene.add( mesh );
+		</code>
+
+
+		<h2>생성자</h2>
+
+
+		<h3>[name]([param:Array shapes], [param:Object options])</h3>
+		<p>
+		shapes — 모양 또는 모양의 배열입니다. <br />
+		options — 다음 매개변수를 포함할 수 있는 객체입니다.
+
+			<ul>
+				<li>curveSegments — int. 곡선의 점 수. 기본값은 12 입니다.</li>
+				<li>steps — int. 돌출된 스플라인의 깊이를 따라 세그먼트를 세분화하는 데 사용되는 점 수입니다. 기본값은 1 입니다.</li>
+				<li>depth — float. 모양을 돌출시킬 깊이입니다. 기본값은 1 입니다.</li>
+				<li>bevelEnabled — bool. 모양에 베벨링을 적용합니다. 기본값은 true 입니다.</li>
+				<li>bevelThickness — float. 베벨이 원래 모양으로 들어가는 깊이입니다. 기본값은 0.2 입니다.</li>
+				<li>bevelSize — float. 베벨이 확장되는 모양 윤곽선으로부터의 거리입니다. 기본값은 bevelThickness - 0.1 입니다.</li>
+				<li>bevelOffset — float. 경사가 시작되는 모양 윤곽선으로부터의 거리입니다. 기본값은 0 입니다.</li>
+				<li>bevelSegments — int. 베벨 레이어 수. 기본값은 3 입니다.</li>
+				<li>extrudePath — THREE.Curve. 모양이 돌출되어야 하는 3D 스플라인 경로입니다. 경로 돌출에는 베벨이 지원되지 않습니다.</li>
+				<li>UVGenerator —  Object. UV 제너레이터 기능을 제공하는 객체</li>
+			</ul>
+
+		</p>
+		<p>
+			이 객체는 2D 모양을 3D 형상으로 돌출시킵니다.
+		</p>
+
+		<p>
+			이 지오메트리로 메시를 생성할 때 면과 돌출된 면에 별도의 재질을 사용하려는 경우 여러 재질을 사용할 수 있습니다. 첫 번째 재질이 얼굴에 적용됩니다. 두 번째 재료는 측면에 적용됩니다.
+		</p>
+
+		<h2>프로퍼티</h2>
+		<p>일반 프로퍼티는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		각 생성자 매개 변수에 대한 속성을 가진 개체입니다. 인스턴스화 후에 수정해도 지오메트리는 변경되지 않습니다.
+		</p>
+
+		<h2>메서드</h2>
+		<p>일반 메서드는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h2>소스 코드</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 58 - 0
docs/api/ko/geometries/IcosahedronGeometry.html

@@ -0,0 +1,58 @@
+<!DOCTYPE html>
+<html lang="ko">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr; [page:PolyhedronGeometry] &rarr;
+		<h1>[name]</h1>
+
+		<p class="desc">20면체 형상을 생성하기 위한 클래스입니다.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#IcosahedronGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>생성자</h2>
+
+		<h3>[name]([param:Float radius], [param:Integer detail])</h3>
+		<p>
+		radius — 기본값은 1 입니다. <br />
+		detail — 기본값은 0 입니다.  이 값을 0보다 큰 값으로 설정하면 정점이 더 추가되어 더 이상 20면체가 아닙니다. 디테일이 1보다 크면 사실상 구체입니다.
+		</p>
+
+		<h2>프로퍼티</h2>
+		<p>일반 프로퍼티 기본 [page:PolyhedronGeometry] 클래스를 참조하십시오.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		각 생성자 매개 변수에 대한 속성을 가진 개체입니다. 인스턴스화 후에 수정해도 지오메트리는 변경되지 않습니다.
+		</p>
+
+		<h2>메서드</h2>
+		<p>일반 메서드는 기본 [page:PolyhedronGeometry] 클래스를 참조하십시오.</p>
+
+		<h2>소스 코드</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 77 - 0
docs/api/ko/geometries/LatheGeometry.html

@@ -0,0 +1,77 @@
+<!DOCTYPE html>
+<html lang="ko">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">꽃병과 같은 축 대칭으로 메쉬를 만듭니다. 선반은 Y축을 중심으로 회전합니다.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#LatheGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>코드 예제</h2>
+
+		<code>
+		const points = [];
+		for ( let i = 0; i < 10; i ++ ) {
+			points.push( new THREE.Vector2( Math.sin( i * 0.2 ) * 10 + 5, ( i - 5 ) * 2 ) );
+		}
+		const geometry = new THREE.LatheGeometry( points );
+		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
+		const lathe = new THREE.Mesh( geometry, material );
+		scene.add( lathe );
+		</code>
+
+		<h2>생성자</h2>
+
+		<h3>[name]([param:Array points], [param:Integer segments], [param:Float phiStart], [param:Float phiLength])</h3>
+		<p>
+		points — Vector2의 배열. 각 점의 x 좌표는 0보다 커야 합니다. 기본값은 단순한 다이아몬드 모양을 만드는 (0,-0.5), (0.5,0) 및 (0,0.5)의 배열입니다.<br />
+		segments — 생성할 원주 세그먼트의 수입니다. 기본값은 12 입니다.<br />
+		phiStart — 시작 각도(라디안 단위). 기본값은 0 입니다.<br />
+		phiLength — 선반 섹션의 라디안(0 ~ 2PI) 범위 2PI는 닫힌 선반이고, 2PI 미만이 한 부분입니다. 기본값은 2PI 입니다.
+		</p>
+		<p>
+		이렇게 하면 매개변수를 기반으로 [name]가 생성됩니다.
+		</p>
+
+		<h2>프로퍼티</h2>
+		<p>일반 프로퍼티는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		각 생성자 매개 변수에 대한 속성을 가진 개체입니다. 인스턴스화 후에 수정해도 지오메트리는 변경되지 않습니다.
+		</p>
+
+		<h2>메서드</h2>
+		<p>일반 메서드는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h2>소스 코드</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 58 - 0
docs/api/ko/geometries/OctahedronGeometry.html

@@ -0,0 +1,58 @@
+<!DOCTYPE html>
+<html lang="ko">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr; [page:PolyhedronGeometry] &rarr;
+		<h1>[name]</h1>
+
+		<p class="desc">팔면체 형상을 생성하기 위한 클래스입니다..</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#OctahedronGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>생성자</h2>
+
+		<h3>[name]([param:Float radius], [param:Integer detail])</h3>
+		<p>
+		radius — 팔면체의 반지름. 기본값은 1 입니다.<br />
+		detail — 기본값은 0 입니다.   이 값을 0보다 큰 값으로 설정하면 정점이 더 이상 팔면체가 아닙니다.
+		</p>
+
+		<h2>프로퍼티</h2>
+		<p>일반 프로퍼티는 기본 [page:PolyhedronGeometry] 클래스를 참조하십시오.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		각 생성자 매개 변수에 대한 속성이 있는 개체입니다. 인스턴스화 후 수정해도 형상은 변경되지 않습니다.
+		</p>
+
+		<h2>메서드</h2>
+		<p>일반 메서드는 기본 [page:PolyhedronGeometry] 클래스를 참조하십시오.</p>
+
+		<h2>소스 코드</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 70 - 0
docs/api/ko/geometries/PlaneGeometry.html

@@ -0,0 +1,70 @@
+<!DOCTYPE html>
+<html lang="ko">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">평면 형상을 생성하기 위한 클래스입니다.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#PlaneGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>코드 예제</h2>
+
+		<code>
+		const geometry = new THREE.PlaneGeometry( 1, 1 );
+		const material = new THREE.MeshBasicMaterial( {color: 0xffff00, side: THREE.DoubleSide} );
+		const plane = new THREE.Mesh( geometry, material );
+		scene.add( plane );
+		</code>
+
+		<h2>생성자</h2>
+
+		<h3>[name]([param:Float width], [param:Float height], [param:Integer widthSegments], [param:Integer heightSegments])</h3>
+		<p>
+		width — X축의 너비입니다. 기본값은 1 입니다.<br />
+		height — Y축의 높이입니다. 기본값은 1 입니다.<br />
+		widthSegments — Optional. 기본값은 1 입니다. <br />
+		heightSegments — Optional. 기본값은 1 입니다.
+		</p>
+
+		<h2>프로퍼티</h2>
+		<p>일반 프로퍼티는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		각 생성자 매개 변수에 대한 속성이 있는 개체입니다. 인스턴스화 후 수정해도 형상은 변경되지 않습니다.
+		</p>
+
+		<h2>메서드</h2>
+		<p>일반 메서드는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h2>소스 코드</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 67 - 0
docs/api/ko/geometries/PolyhedronGeometry.html

@@ -0,0 +1,67 @@
+<!DOCTYPE html>
+<html lang="ko">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+			다면체는 평평한 면을 가진 3차원 입체입니다. 이 클래스는 정점 배열을 구에 투영한 다음 원하는 세부 수준으로 나눕니다.
+			이 클래스는 [page:DodecahedronGeometry], [page:IcosahedronGeometry], [page:OctahedronGeometry],
+			및 [page:TetrahedronGeometry] 에서 각각의 형상을 생성하는 데 사용됩니다 .
+		</p>
+
+		<h2>코드 예제</h2>
+		<code>
+		const verticesOfCube = [
+		    -1,-1,-1,    1,-1,-1,    1, 1,-1,    -1, 1,-1,
+ 		    -1,-1, 1,    1,-1, 1,    1, 1, 1,    -1, 1, 1,
+		];
+
+		const indicesOfFaces = [
+ 		   2,1,0,    0,3,2,
+ 		   0,4,7,    7,3,0,
+ 		   0,1,5,    5,4,0,
+ 		   1,2,6,    6,5,1,
+ 		   2,3,7,    7,6,2,
+ 		   4,5,6,    6,7,4
+		];
+
+		const geometry = new THREE.PolyhedronGeometry( verticesOfCube, indicesOfFaces, 6, 2 );
+		</code>
+
+		<h2>생성자</h2>
+
+
+		<h3>[name]([param:Array vertices], [param:Array indices], [param:Float radius], [param:Integer detail])</h3>
+		<p>
+		vertices — 다음과 같은 형태의 점 [page:Array] [1,1,1, -1,-1,-1, ... ] <br />
+		indices — 다음과 같은 형식의 면을 구성하는 인덱스들의 [page:Array] [0,1,2, 2,3,0, ... ] <br />
+		radius — [page:Float] - 최종 모양의 반지름 <br />
+		detail — [page:Integer] - 지오메트리를 세분화할 레벨 수. 디테일이 많을수록 모양이 부드러워집니다.
+		</p>
+
+		<h2>프로퍼티</h2>
+		<p>일반 프로퍼티는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		각 생성자 매개 변수에 대한 속성이 있는 개체입니다. 인스턴스화 후 수정해도 형상은 변경되지 않습니다.
+		</p>
+
+		<h2>메서드</h2>
+		<p>일반 메서드는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h2>소스 코드</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 73 - 0
docs/api/ko/geometries/RingGeometry.html

@@ -0,0 +1,73 @@
+<!DOCTYPE html>
+<html lang="ko">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">2차원 링 형상을 생성하기 위한 클래스입니다.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#RingGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>코드 예제</h2>
+
+		<code>
+		const geometry = new THREE.RingGeometry( 1, 5, 32 );
+		const material = new THREE.MeshBasicMaterial( { color: 0xffff00, side: THREE.DoubleSide } );
+		const mesh = new THREE.Mesh( geometry, material );
+		scene.add( mesh );
+		</code>
+
+		<h2>생성자</h2>
+
+		<h3>[name]([param:Float innerRadius], [param:Float outerRadius], [param:Integer thetaSegments], [param:Integer phiSegments], [param:Float thetaStart], [param:Float thetaLength])</h3>
+		<p>
+		innerRadius — 기본값은 0.5 입니다. <br />
+		outerRadius — 기본값은 1 입니다. <br />
+		thetaSegments — 세그먼트 수. 숫자가 높을수록 링이 더 둥글다는 의미입니다. 최소값은 3 입니다.  기본값은 32 입니다. <br />
+		phiSegments — 최소값은 1 입니다.  기본값은 1 입니다.<br />
+		thetaStart — 시작 각도입니다. 기본값은 0 입니다. <br />
+		thetaLength — 중심 각도입니다.  기본값은 Math.PI * 2 입니다.
+		</p>
+
+
+		<h2>프로퍼티</h2>
+		<p>일반 프로퍼티는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		각 생성자 매개 변수에 대한 속성이 있는 개체입니다. 인스턴스화 후 수정해도 형상은 변경되지 않습니다.
+		</p>
+
+		<h2>메서드</h2>
+		<p>일반 메서드는 기본 [page:BufferGeometry] 클래스를 찹조하십시오.</p>
+
+		<h2>소스 코드</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 83 - 0
docs/api/ko/geometries/ShapeGeometry.html

@@ -0,0 +1,83 @@
+<!DOCTYPE html>
+<html lang="ko">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">하나 이상의 경로 모양에서 한면 다각형 형상을 만듭니다.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#ShapeGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+
+		<h2>코드 예제</h2>
+
+
+		<code>
+		const x = 0, y = 0;
+
+		const heartShape = new THREE.Shape();
+
+		heartShape.moveTo( x + 5, y + 5 );
+		heartShape.bezierCurveTo( x + 5, y + 5, x + 4, y, x, y );
+		heartShape.bezierCurveTo( x - 6, y, x - 6, y + 7,x - 6, y + 7 );
+		heartShape.bezierCurveTo( x - 6, y + 11, x - 3, y + 15.4, x + 5, y + 19 );
+		heartShape.bezierCurveTo( x + 12, y + 15.4, x + 16, y + 11, x + 16, y + 7 );
+		heartShape.bezierCurveTo( x + 16, y + 7, x + 16, y, x + 10, y );
+		heartShape.bezierCurveTo( x + 7, y, x + 5, y + 5, x + 5, y + 5 );
+
+		const geometry = new THREE.ShapeGeometry( heartShape );
+		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
+		const mesh = new THREE.Mesh( geometry, material ) ;
+		scene.add( mesh );
+		</code>
+
+		<h2>생성자</h2>
+
+
+		<h3>[name]([param:Array shapes], [param:Integer curveSegments])</h3>
+		<p>
+		shapes — 모양의 [page:Array] 또는 단일 [page:Shape shape]. 기본값은 단일 삼각형 모양입니다.<br />
+		curveSegments - [page:Integer] - 모양당 세그먼트 수입니다. 기본값은 12 입니다.
+		</p>
+
+		<h2>프로퍼티</h2>
+		<p>일반 프로퍼티는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		각 생성자 매개 변수에 대한 속성이 있는 개체입니다. 인스턴스화 후 수정해도 형상은 변경되지 않습니다.
+		</p>
+
+		<h2>메서드</h2>
+		<p>일반 메서드는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h2>소스 코드</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 78 - 0
docs/api/ko/geometries/SphereGeometry.html

@@ -0,0 +1,78 @@
+<!DOCTYPE html>
+<html lang="ko">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">구 형상을 생성하기 위한 클래스입니다.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#SphereGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>코드 예제</h2>
+
+		<code>
+		const geometry = new THREE.SphereGeometry( 15, 32, 16 );
+		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
+		const sphere = new THREE.Mesh( geometry, material );
+		scene.add( sphere );
+		</code>
+
+		<h2>생성자</h2>
+
+		<h3>[name]([param:Float radius], [param:Integer widthSegments], [param:Integer heightSegments], [param:Float phiStart], [param:Float phiLength], [param:Float thetaStart], [param:Float thetaLength])</h3>
+
+		<p>
+		radius — 구 반지름. Default is 1.<br />
+		widthSegments — 수평 세그먼트의 수입니다. 최소값은 3 입니다, 그리고 기본값은 32 입니다.<br />
+		heightSegments — 수직 세그먼트의 수입니다. 최소값은 2 입니다, 그리고 기본값은 16 입니다.<br />
+		phiStart — 수평 시작 각도를 지정합니다. 기본값은 0 입니다.<br />
+		phiLength — 수평 스위프 각도 크기를 지정합니다. 기본값은 Math.PI * 2 입니다.<br />
+		thetaStart — 수직 시작 각도를 지정합니다. 기본값은 0 입니다.<br />
+		thetaLength — 수직 스위프 각도 크기를 지정합니다. 기본값은 Math.PI 입니다.<br />
+		</p>
+
+		<p>
+		지오메트리는 Y축(수평 스윕)과 Z축(수직 스윕) 주위의 정점을 스윕하고 계산하여 생성됩니다.따라서, 우리가 정점 계산을 시작(또는 종료)하는 지점을 정의하기 위해, 다른 값의 phiStart, phiLength, 세타Start 및 세타Length를 사용하여 불완전한 구('sphere slices' 와 유사한)를 만들 수 있다.
+		</p>
+
+		<h2>프로퍼티</h2>
+		<p>일반 프로퍼티는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		각 생성자 매개 변수에 대한 속성이 있는 개체입니다. 인스턴스화 후 수정해도 형상은 변경되지 않습니다.
+		</p>
+
+		<h2>메서드</h2>
+		<p>일반 메서드는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h2>소스 코드</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 59 - 0
docs/api/ko/geometries/TetrahedronGeometry.html

@@ -0,0 +1,59 @@
+<!DOCTYPE html>
+<html lang="ko">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr; [page:PolyhedronGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">사면체 형상을 생성하기 위한 클래스입니다.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#TetrahedronGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>생성자</h2>
+
+		<h3>[name]([param:Float radius], [param:Integer detail])</h3>
+		<p>
+		radius — 사면체의 반지름. 기본값은 1 입니다.<br />
+		detail — 기본값은 0 입니다. 이 값을 0보다 큰 값으로 설정하면 정점이 추가되어 더 이상 사면체가 아닙니다.
+		</p>
+
+		<h2>프로퍼티</h2>
+		<p>일반 프로퍼티는 기본 [page:PolyhedronGeometry] 클래스를 참조하십시오.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		각 생성자 매개 변수에 대한 속성이 있는 개체입니다. 인스턴스화 후 수정해도 형상은 변경되지 않습니다.
+		</p>
+
+		<h2>메서드</h2>
+		<p>일반 메서드는 기본 [page:PolyhedronGeometry] 클래스를 참조하십시오.</p>
+
+		<h2>소스 코드</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 71 - 0
docs/api/ko/geometries/TorusGeometry.html

@@ -0,0 +1,71 @@
+<!DOCTYPE html>
+<html lang="ko">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">도넛 모양 형상을 생성하기 위한 클래스입니다.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#TorusGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>코드 예제</h2>
+
+		<code>
+		const geometry = new THREE.TorusGeometry( 10, 3, 16, 100 );
+		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
+		const torus = new THREE.Mesh( geometry, material );
+		scene.add( torus );
+		</code>
+
+		<h2>생성자</h2>
+
+		<h3>[name]([param:Float radius], [param:Float tube], [param:Integer radialSegments], [param:Integer tubularSegments], [param:Float arc])</h3>
+		<p>
+		radius -  도넛 모양 중심에서 튜브 중심까지의 도넛 모양 반경. 기본값은 1 입니다. <br />
+		tube — 튜브의 반경입니다. 기본값은 0.4 입니다. <br />
+		radialSegments — 기본값은 12 입니다. <br />
+		tubularSegments — 기본값은 48 입니다. <br />
+		arc — 중심 각도입니다.  기본값은 Math.PI * 2 입니다.
+		</p>
+
+		<h2>프로퍼티</h2>
+		<p>일반 프로퍼티는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		각 생성자 매개 변수에 대한 속성이 있는 개체입니다. 인스턴스화 후 수정해도 형상은 변경되지 않습니다.
+		</p>
+
+		<h2>메서드</h2>
+		<p>일반 메서드는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h2>소스 코드</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 74 - 0
docs/api/ko/geometries/TorusKnotGeometry.html

@@ -0,0 +1,74 @@
+<!DOCTYPE html>
+<html lang="ko">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">도넛 모양 매듭의 특정 모양이 한 쌍의 서로소 정수(p 및 q)로 정의되는 도넛 모양 매듭을 만듭니다. p와 q가 서로소가 아니면 결과는 도넛 모양 링크가 됩니다.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#TorusKnotGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>코드 예제</h2>
+
+		<code>
+		const geometry = new THREE.TorusKnotGeometry( 10, 3, 100, 16 );
+		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
+		const torusKnot = new THREE.Mesh( geometry, material );
+		scene.add( torusKnot );
+		</code>
+
+		<h2>생성자</h2>
+
+		<h3>[name]([param:Float radius], [param:Float tube], [param:Integer tubularSegments], [param:Integer radialSegments], [param:Integer p], [param:Integer q])</h3>
+		<p>
+			<ul>
+				<li>radius - 도넛 모양의 반경. 기본값은 1 입니다.</li>
+				<li>tube — 큐브의 반경. 기본값은 0.4 입니다.</li>
+				<li>tubularSegments — 기본값은 64 입니다.</li>
+				<li>radialSegments — 기본값은 8 입니다.</li>
+				<li>p — 이 값은 형상이 회전 대칭 축 주위를 감는 횟수를 결정합니다. 기본값은 2 입니다.</li>
+				<li>q — 이 값은 형상이 도넛 모양 내부의 원 주위를 감는 횟수를 결정합니다. 기본값은 3 입니다.</li>
+			</ul>
+		</p>
+
+		<h2>프로퍼티</h2>
+		<p>일반 프로퍼티는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		각 생성자 매개 변수에 대한 속성이 있는 개체입니다. 인스턴스화 후 수정해도 형상은 변경되지 않습니다.
+		</p>
+
+		<h2>메서드</h2>
+		<p>일반 메서드는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h2>소스 코드</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 111 - 0
docs/api/ko/geometries/TubeGeometry.html

@@ -0,0 +1,111 @@
+<!DOCTYPE html>
+<html lang="ko">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">3D 커브를 따라 돌출되는 튜브를 생성합니다.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#TubeGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>코드 예제</h2>
+
+		<code>
+		class CustomSinCurve extends THREE.Curve {
+
+			constructor( scale = 1 ) {
+
+				super();
+
+				this.scale = scale;
+
+			}
+
+			getPoint( t, optionalTarget = new THREE.Vector3() ) {
+
+				const tx = t * 3 - 1.5;
+				const ty = Math.sin( 2 * Math.PI * t );
+				const tz = 0;
+
+				return optionalTarget.set( tx, ty, tz ).multiplyScalar( this.scale );
+
+			}
+
+		}
+
+		const path = new CustomSinCurve( 10 );
+		const geometry = new THREE.TubeGeometry( path, 20, 2, 8, false );
+		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
+		const mesh = new THREE.Mesh( geometry, material );
+		scene.add( mesh );
+		</code>
+
+		<h2>생성자</h2>
+
+
+		<h3>[name]([param:Curve path], [param:Integer tubularSegments], [param:Float radius], [param:Integer radialSegments], [param:Boolean closed])</h3>
+		<p>
+		path — [page:Curve] - [page:Curve] 기본 클래스 에서 상속되는 3D 경로입니다. 기본값은 2차 베지어 곡선입니다.<br />
+		tubularSegments — [page:Integer] - 튜브를 구성하는 세그먼트 수입니다. 기본값은 64 입니다.<br />
+		radius — [page:Float] - 튜브의 반지름입니다. 기본값은 1 입니다.<br />
+		radialSegments — [page:Integer] - 횡단면을 구성하는 세그먼트의 수입니다. 기본값은 8 입니다.<br />
+		closed — [page:Boolean] 튜브가 열려 있거나 닫혀 있는지 여부입니다. 기본값은 false 입니다.<br />
+		</p>
+
+
+		<h2>프로퍼티</h2>
+		<p>일반 프로퍼티는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		각 생성자 매개 변수에 대한 속성이 있는 개체입니다. 인스턴스화 후 수정해도 형상은 변경되지 않습니다.
+		</p>
+
+		<h3>[property:Array tangents]</h3>
+		<p>
+		[page:Vector3] 접선의 배열
+		</p>
+
+		<h3>[property:Array normals]</h3>
+		<p>
+		[page:Vector3] 법선의 배열
+		</p>
+
+		<h3>[property:Array binormals]</h3>
+		<p>
+		[page:Vector3] 종법선의 배열
+		</p>
+
+		<h2>메서드</h2>
+		<p>일반 메서드는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h2>소스 코드</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 56 - 0
docs/api/ko/geometries/WireframeGeometry.html

@@ -0,0 +1,56 @@
+<!DOCTYPE html>
+<html lang="ko">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">[page:BufferGeometry geometry] 와이어프레임으로 보기 위한 도우미 오브젝트로 사용할 수 있습니다.</p>
+
+		<h2>코드 예제</h2>
+
+		<code>
+		const geometry = new THREE.SphereGeometry( 100, 100, 100 );
+
+		const wireframe = new THREE.WireframeGeometry( geometry );
+
+		const line = new THREE.LineSegments( wireframe );
+		line.material.depthTest = false;
+		line.material.opacity = 0.25;
+		line.material.transparent = true;
+
+		scene.add( line );
+		</code>
+
+		<h2>예제</h2>
+
+		<p>
+			[example:webgl_helpers helpers]
+		</p>
+
+		<h2>생성자</h2>
+
+		<h3>[name]( [param:BufferGeometry geometry] )</h3>
+		<p>
+		geometry — any geometry object.
+		</p>
+
+		<h2>프로퍼티</h2>
+		<p>일반 프로퍼티는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h2>메서드</h2>
+		<p>일반 메서드는 기본 [page:BufferGeometry] 클래스를 참조하십시오.</p>
+
+		<h2>소스 코드</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 1 - 1
docs/api/pt-br/audio/Audio.html

@@ -91,7 +91,7 @@
 		<h3>[property:Number duration]</h3>
 		<h3>[property:Number duration]</h3>
 		<p>Substitui a duração do áudio. O mesmo que o parâmetro `duration` do [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode/start AudioBufferSourceNode.start](). O padrão é `undefined` para reproduzir todo o buffer.</p>
 		<p>Substitui a duração do áudio. O mesmo que o parâmetro `duration` do [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode/start AudioBufferSourceNode.start](). O padrão é `undefined` para reproduzir todo o buffer.</p>
 
 
-		<h3>[property:String source]</h3>
+		<h3>[property:AudioNode source]</h3>
 		<p>Um [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode AudioBufferSourceNode] criado
 		<p>Um [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode AudioBufferSourceNode] criado
 		usando [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioContext/createBufferSource AudioContext.createBufferSource]().</p>
 		usando [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioContext/createBufferSource AudioContext.createBufferSource]().</p>
 
 

+ 1 - 1
docs/api/zh/audio/Audio.html

@@ -89,7 +89,7 @@
 		<h3>[property:Number duration]</h3>
 		<h3>[property:Number duration]</h3>
 		<p>覆盖音频的持续时间。与[link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode/start AudioBufferSourceNode.start]()中的*duration*属性相同。默认为*undefined*,以用于播放整个buffer。</p>
 		<p>覆盖音频的持续时间。与[link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode/start AudioBufferSourceNode.start]()中的*duration*属性相同。默认为*undefined*,以用于播放整个buffer。</p>
 
 
-		<h3>[property:String source]</h3>
+		<h3>[property:AudioNode source]</h3>
 		<p>使用 [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioContext/createBufferSource AudioContext.createBufferSource]()创建的[link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode AudioBufferSourceNode].</p>
 		<p>使用 [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioContext/createBufferSource AudioContext.createBufferSource]()创建的[link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode AudioBufferSourceNode].</p>
 
 
 		<h3>[property:String sourceType]</h3>
 		<h3>[property:String sourceType]</h3>

+ 13 - 4
docs/api/zh/materials/Material.html

@@ -107,10 +107,19 @@
 	在绘制2D叠加时,将多个事物分层在一起而不创建z-index时,禁用深度写入会很有用。
 	在绘制2D叠加时,将多个事物分层在一起而不创建z-index时,禁用深度写入会很有用。
 </p>
 </p>
 
 
-		<h3>[property:Boolean isMaterial]</h3>
-		<p>
-			检查这个对象是否为材质[name]的只读标记.
-		</p>
+<h3>[property:Boolean forceSinglePass]</h3>
+<p>
+Whether double-sided, transparent objects should be rendered with a single pass or not. Default is `false`.<br /><br />
+
+The engine renders double-sided, transparent objects with two draw calls (back faces first, then front faces) to mitigate transparency artifacts.
+There are scenarios however where this approach produces no quality gains but still doubles draw calls e.g. when rendering flat vegetation like grass sprites. 
+In these cases, set the `forceSinglePass` flag to `false` to disable the two pass rendering to avoid performance issues.
+</p>
+
+<h3>[property:Boolean isMaterial]</h3>
+<p>
+	检查这个对象是否为材质[name]的只读标记.
+</p>
 
 
 <h3>[property:Boolean stencilWrite]</h3>
 <h3>[property:Boolean stencilWrite]</h3>
 <p>
 <p>

+ 1 - 1
docs/api/zh/math/Ray.html

@@ -188,7 +188,7 @@
 		<h3>[method:this set]( [param:Vector3 origin], [param:Vector3 direction] )</h3>
 		<h3>[method:this set]( [param:Vector3 origin], [param:Vector3 direction] )</h3>
 		<p>
 		<p>
 		[page:Vector3 origin] - [page:Ray](射线)的[page:.origin origin](原点)。<br />
 		[page:Vector3 origin] - [page:Ray](射线)的[page:.origin origin](原点)。<br />
-		[page:Vector3 origin] - [page:Ray](射线)的[page:.direction direction](方向)。
+		[page:Vector3 direction] - [page:Ray](射线)的[page:.direction direction](方向)。
 
 
 		该向量必须经过标准化(使用[page:Vector3.normalize]),这样才能使方法正常运行。
 		该向量必须经过标准化(使用[page:Vector3.normalize]),这样才能使方法正常运行。
 		<br /><br />
 		<br /><br />

+ 5 - 0
docs/api/zh/scenes/Fog.html

@@ -11,6 +11,11 @@
 
 
 		<p class="desc">这个类中的参数定义了线性雾。也就是说,雾的密度是随着距离线性增大的。</p>
 		<p class="desc">这个类中的参数定义了线性雾。也就是说,雾的密度是随着距离线性增大的。</p>
 
 
+		<h2>代码示例</h2>
+
+		<code>const scene = new THREE.Scene();
+		scene.fog = new THREE.Fog( 0xcccccc, 10, 15 );
+		</code>
 
 
 		<h2>构造器</h2>
 		<h2>构造器</h2>
 
 

+ 6 - 0
docs/api/zh/scenes/FogExp2.html

@@ -11,6 +11,12 @@
 
 
 		<p class="desc">该类所包含的参数定义了指数雾,它可以在相机附近提供清晰的视野,且距离相机越远,雾的浓度随着指数增长越快。</p>
 		<p class="desc">该类所包含的参数定义了指数雾,它可以在相机附近提供清晰的视野,且距离相机越远,雾的浓度随着指数增长越快。</p>
 
 
+		<h2>代码示例</h2>
+
+		<code>const scene = new THREE.Scene();
+		scene.fog = new THREE.FogExp2( 0xcccccc, 0.002 );
+		</code>
+
 		<h2>构造器</h2>
 		<h2>构造器</h2>
 
 
 
 

+ 1 - 1
docs/api/zh/textures/DataTexture.html

@@ -80,7 +80,7 @@
 		Whether to generate mipmaps (if possible) for a texture. False by default.
 		Whether to generate mipmaps (if possible) for a texture. False by default.
 		</p>
 		</p>
 
 
-		<h3>[property:Image image]</h3>
+		<h3>[property:Object image]</h3>
 		<p>
 		<p>
 		Overridden with a record type holding data, width and height.
 		Overridden with a record type holding data, width and height.
 		</p>
 		</p>

+ 10 - 5
docs/api/zh/textures/Source.html

@@ -1,5 +1,5 @@
 <!DOCTYPE html>
 <!DOCTYPE html>
-<html lang="en">
+<html lang="zh">
 	<head>
 	<head>
 		<meta charset="utf-8" />
 		<meta charset="utf-8" />
 		<base href="../../../" />
 		<base href="../../../" />
@@ -13,20 +13,25 @@
 			Represents the data source of a texture.
 			Represents the data source of a texture.
 		</p>
 		</p>
 
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 
 		<h3>[name]( [param:Any data] )</h3>
 		<h3>[name]( [param:Any data] )</h3>
 		<p>
 		<p>
 			[page:Any data] -- The data definition of a texture. Default is *null*.
 			[page:Any data] -- The data definition of a texture. Default is *null*.
 		</p>
 		</p>
 
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 
 		<h3>[property:Any data]</h3>
 		<h3>[property:Any data]</h3>
 		<p>
 		<p>
 		The actual data of a texture. The type of this property depends on the texture that uses this instance.
 		The actual data of a texture. The type of this property depends on the texture that uses this instance.
 		</p>
 		</p>
 
 
+		<h3>[property:Boolean isCubeTexture]</h3>
+		<p>
+			Read-only flag to check if a given object is of type [name].
+		</p>
+
 		<h3>[property:Boolean needsUpdate]</h3>
 		<h3>[property:Boolean needsUpdate]</h3>
 		<p>
 		<p>
 		Set this to *true* to trigger a data upload to the GPU next time the source is used.
 		Set this to *true* to trigger a data upload to the GPU next time the source is used.
@@ -43,7 +48,7 @@
 		This starts at *0* and counts how many times [page:Source.needsUpdate .needsUpdate] is set to *true*.
 		This starts at *0* and counts how many times [page:Source.needsUpdate .needsUpdate] is set to *true*.
 		</p>
 		</p>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 
 		<h3>[method:Object toJSON]( [param:Object meta] )</h3>
 		<h3>[method:Object toJSON]( [param:Object meta] )</h3>
 		<p>
 		<p>
@@ -51,7 +56,7 @@
 		Convert the data source to three.js [link:https://github.com/mrdoob/three.js/wiki/JSON-Object-Scene-format-4 JSON Object/Scene format].
 		Convert the data source to three.js [link:https://github.com/mrdoob/three.js/wiki/JSON-Object-Scene-format-4 JSON Object/Scene format].
 		</p>
 		</p>
 
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 
 		<p>
 		<p>
 			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 11 - 0
docs/examples/en/animations/CCDIKSolver.html

@@ -16,6 +16,17 @@
 
 
 		<iframe id="scene" src="scenes/ccdiksolver-browser.html"></iframe>
 		<iframe id="scene" src="scenes/ccdiksolver-browser.html"></iframe>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { CCDIKSolver } from 'three/addons/animation/CCDIKSolver.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>

+ 11 - 0
docs/examples/en/animations/MMDAnimationHelper.html

@@ -14,6 +14,17 @@
 		It uses [page:CCDIKSolver] and [page:MMDPhysics] inside.
 		It uses [page:CCDIKSolver] and [page:MMDPhysics] inside.
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { MMDAnimationHelper } from 'three/addons/animation/MMDAnimationHelper.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>

+ 11 - 0
docs/examples/en/animations/MMDPhysics.html

@@ -13,6 +13,17 @@
 		[name] calculates Physics for model loaded by [page:MMDLoader] with [link:https://github.com/kripken/ammo.js/ ammo.js] (Bullet-based JavaScript Physics engine).
 		[name] calculates Physics for model loaded by [page:MMDLoader] with [link:https://github.com/kripken/ammo.js/ ammo.js] (Bullet-based JavaScript Physics engine).
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { MMDPhysics } from 'three/addons/animation/MMDPhysics.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>

+ 10 - 0
docs/examples/en/controls/ArcballControls.html

@@ -31,9 +31,19 @@
 
 
 		To use this, as with all files in the /examples directory, you will have to
 		To use this, as with all files in the /examples directory, you will have to
 		include the file separately in your HTML.
 		include the file separately in your HTML.
+		</p>
+
+		<h2>Import</h2>
 
 
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
 		</p>
 		</p>
 
 
+		<code>
+			import { ArcballControls } from 'three/addons/controls/ArcballControls.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>

+ 12 - 1
docs/examples/en/controls/DragControls.html

@@ -12,9 +12,20 @@
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
 		<p class="desc">
 		<p class="desc">
-		This class can be used to provide a drag'n'drop interaction.
+			This class can be used to provide a drag'n'drop interaction.
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { DragControls } from 'three/addons/controls/DragControls.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>

+ 11 - 0
docs/examples/en/controls/FirstPersonControls.html

@@ -14,6 +14,17 @@
 			This class is an alternative implementation of [page:FlyControls].
 			This class is an alternative implementation of [page:FlyControls].
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { FirstPersonControls } from 'three/addons/controls/FirstPersonControls.js';
+		</code>
+
 		<h2>Examples</h2>
 		<h2>Examples</h2>
 
 
 		<p>[example:webgl_geometry_terrain webgl / geometry / terrain ]</p>
 		<p>[example:webgl_geometry_terrain webgl / geometry / terrain ]</p>

+ 11 - 0
docs/examples/en/controls/FlyControls.html

@@ -15,6 +15,17 @@
 			3D space without any limitations (e.g. focus on a specific target).
 			3D space without any limitations (e.g. focus on a specific target).
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { FlyControls } from 'three/addons/controls/FlyControls.js';
+		</code>
+
 		<h2>Examples</h2>
 		<h2>Examples</h2>
 
 
 		<p>[example:misc_controls_fly misc / controls / fly ]</p>
 		<p>[example:misc_controls_fly misc / controls / fly ]</p>

+ 18 - 3
docs/examples/en/controls/OrbitControls.html

@@ -10,13 +10,23 @@
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
 		<p class="desc">
 		<p class="desc">
-		Orbit controls allow the camera to orbit around a target.<br>
+			Orbit controls allow the camera to orbit around a target.<br>
 
 
-		To use this, as with all files in the /examples directory, you will have to
-		include the file separately in your HTML.
+			To use this, as with all files in the /examples directory, you will have to
+			include the file separately in your HTML.
+		</p>
+
+		<h2>Import</h2>
 
 
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
 		</p>
 		</p>
 
 
+		<code>
+			import { OrbitControls } from 'three/addons/controls/OrbitControls.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>
@@ -302,6 +312,11 @@ controls.touches = {
 			Save the current state of the controls. This can later be recovered with [page:.reset].
 			Save the current state of the controls. This can later be recovered with [page:.reset].
 		</p>
 		</p>
 
 
+		<h3>[method:undefined stopListenToKeyEvents] ()</h3>
+		<p>
+			Removes the key event listener previously defined with [page:.listenToKeyEvents]().
+		</p>
+
 		<h3>[method:Boolean update] ()</h3>
 		<h3>[method:Boolean update] ()</h3>
 		<p>
 		<p>
 			Update the controls. Must be called after any manual changes to the camera's transform,
 			Update the controls. Must be called after any manual changes to the camera's transform,

+ 13 - 2
docs/examples/en/controls/PointerLockControls.html

@@ -12,10 +12,21 @@
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
 		<p class="desc">
 		<p class="desc">
-		The implementation of this class is based on the [link:https://developer.mozilla.org/en-US/docs/Web/API/Pointer_Lock_API Pointer Lock API].
-		[name] is a perfect choice for first person 3D games.
+			The implementation of this class is based on the [link:https://developer.mozilla.org/en-US/docs/Web/API/Pointer_Lock_API Pointer Lock API].
+			[name] is a perfect choice for first person 3D games.
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { PointerLockControls } from 'three/addons/controls/PointerLockControls.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>

+ 11 - 0
docs/examples/en/controls/TrackballControls.html

@@ -18,6 +18,17 @@
 			</p>
 			</p>
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { TrackballControls } from 'three/addons/controls/TrackballControls.js';
+		</code>
+
 		<h2>Examples</h2>
 		<h2>Examples</h2>
 
 
 		<p>[example:misc_controls_trackball misc / controls / trackball ]</p>
 		<p>[example:misc_controls_trackball misc / controls / trackball ]</p>

+ 11 - 0
docs/examples/en/controls/TransformControls.html

@@ -18,6 +18,17 @@
 			[name] expects that its attached 3D object is part of the scene graph.
 			[name] expects that its attached 3D object is part of the scene graph.
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { TransformControls } from 'three/addons/controls/TransformControls.js';
+		</code>
+
 		<h2>Examples</h2>
 		<h2>Examples</h2>
 
 
 		<p>[example:misc_controls_transform misc / controls / transform ]</p>
 		<p>[example:misc_controls_transform misc / controls / transform ]</p>

+ 11 - 0
docs/examples/en/exporters/ColladaExporter.html

@@ -17,6 +17,17 @@
 		This exporter only supports exporting geometry, materials, textures, and scene hierarchy.
 		This exporter only supports exporting geometry, materials, textures, and scene hierarchy.
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { ColladaExporter } from 'three/addons/exporters/ColladaExporter.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>

+ 85 - 0
docs/examples/en/exporters/DRACOExporter.html

@@ -0,0 +1,85 @@
+<!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>[name]</h1>
+
+		<p class="desc">
+			An exporter to compress geometry with the Draco library. <br /><br />
+			[link:https://google.github.io/draco/ Draco] is an open source library for compressing and
+			decompressing 3D meshes and point clouds. Compressed geometry can be significantly smaller,
+			at the cost of additional decoding time on the client device.
+		</p>
+
+		<p>
+			Standalone Draco files have a `.drc` extension, and contain vertex positions,
+			normals, colors, and other attributes. Draco files *do not* contain materials,
+			textures, animation, or node hierarchies – to use these features, embed Draco geometry
+			inside of a glTF file. A normal glTF file can be converted to a Draco-compressed glTF file
+			using [link:https://github.com/AnalyticalGraphicsInc/gltf-pipeline glTF-Pipeline].
+		</p>
+
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { DRACOExporter } from 'three/addons/exporters/DRACOExporter.js';
+		</code>
+
+		<h2>Code Example</h2>
+
+		<code>
+		// Instantiate a exporter
+		const exporter = new DRACOExporter();
+
+		// Parse the input and generate the DRACO encoded output
+		const binaryData = exporter.parse( mesh, options );
+		</code>
+
+		<h2>Examples</h2>
+
+		<p>
+			[example:misc_exporter_draco]
+		</p>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]()</h3>
+		<p>
+		Creates a new [name].
+		</p>
+
+		<h2>Methods</h2>
+
+		<h3>[method:Int8Array parse]( [param:Mesh object] | [param:Points object], [param:Object options] )</h3>
+
+		<p>
+		[page:Mesh object] | [page:Points object] — Mesh or Points to encode.<br />
+		[page:Options options] — Optional export options<br />
+		<ul>
+			<li>decodeSpeed - int. Indicates how to tune the encoder regarding decode speed (0 gives better speed but worst quality). Default is 5</li>
+			<li>encodeSpeed - int. Indicates how to tune the encoder parameters (0 gives better speed but worst quality). Default is 5.</li>
+			<li>encoderMethod - int. Either sequential (very little compression) or Edgebreaker. Edgebreaker traverses the triangles of the mesh in a deterministic, spiral-like way which provides most of the benefits of this data format. Default is DRACOExporter.MESH_EDGEBREAKER_ENCODING.</li>
+			<li>quantization - Array of int. Indicates the presision of each type of data stored in the draco file in the order (POSITION, NORMAL, COLOR, TEX_COORD, GENERIC). Default is [ 16, 8, 8, 8, 8 ]</li>
+			<li>exportUvs - bool. Default is true.</li>
+			<li>exportNormals - bool. Default is true.</li>
+			<li>exportColor - bool. Default is false.</li>
+		</ul>
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/exporters/DRACOExporter.js examples/jsm/exporters/DRACOExporter.js]
+		</p>
+	</body>
+</html>

+ 11 - 0
docs/examples/en/exporters/EXRExporter.html

@@ -21,6 +21,17 @@
 		and DI.
 		and DI.
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { EXRExporter } from 'three/addons/exporters/EXRExporter.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>

+ 20 - 1
docs/examples/en/exporters/GLTFExporter.html

@@ -20,6 +20,17 @@
 		textures, skins, skeletons, morph targets, animations, lights, and/or cameras.
 		textures, skins, skeletons, morph targets, animations, lights, and/or cameras.
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { GLTFExporter } from 'three/addons/exporters/GLTFExporter.js';
+		</code>
+
 		<h2>Extensions</h2>
 		<h2>Extensions</h2>
 
 
 		<p>
 		<p>
@@ -29,7 +40,16 @@
 
 
 		<ul>
 		<ul>
 			<li>KHR_lights_punctual</li>
 			<li>KHR_lights_punctual</li>
+			<li>KHR_materials_clearcoat</li>
+			<li>KHR_materials_emissive_strength</li>
+			<li>KHR_materials_ior</li>
+			<li>KHR_materials_iridescence</li>		
+			<li>KHR_materials_specular</li>
+			<li>KHR_materials_sheen</li>
+			<li>KHR_materials_transmission</li>
 			<li>KHR_materials_unlit</li>
 			<li>KHR_materials_unlit</li>
+			<li>KHR_materials_volume</li>
+			<li>KHR_mesh_quantization</li>
 			<li>KHR_texture_transform</li>
 			<li>KHR_texture_transform</li>
 		</ul>
 		</ul>
 
 
@@ -120,7 +140,6 @@
 			<li>binary - bool. Export in binary (.glb) format, returning an ArrayBuffer. Default is false.</li>
 			<li>binary - bool. Export in binary (.glb) format, returning an ArrayBuffer. Default is false.</li>
 			<li>maxTextureSize - int. Restricts the image maximum size (both width and height) to the given value. Default is Infinity.</li>
 			<li>maxTextureSize - int. Restricts the image maximum size (both width and height) to the given value. Default is Infinity.</li>
 			<li>animations - Array<[page:AnimationClip AnimationClip]>. List of animations to be included in the export.</li>
 			<li>animations - Array<[page:AnimationClip AnimationClip]>. List of animations to be included in the export.</li>
-			<li>forceIndices - bool. Generate indices for non-index geometry and export with them. Default is false.</li>
 			<li>includeCustomExtensions - bool. Export custom glTF extensions defined on an object's `userData.gltfExtensions` property. Default is false.</li>
 			<li>includeCustomExtensions - bool. Export custom glTF extensions defined on an object's `userData.gltfExtensions` property. Default is false.</li>
 		</ul>
 		</ul>
 		</p>
 		</p>

+ 13 - 3
docs/examples/en/exporters/OBJExporter.html

@@ -10,12 +10,22 @@
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
 		<p class="desc">
 		<p class="desc">
-		An exporter for the [link:https://en.wikipedia.org/wiki/Wavefront_.obj_file OBJ] file format.
+			An exporter for the [link:https://en.wikipedia.org/wiki/Wavefront_.obj_file OBJ] file format.
+			<br/><br/>
+			[name] is not able to export material data into MTL files so only geometry data are supported.
 		</p>
 		</p>
-		<p class="desc">
-		[name] is not able to export material data into MTL files so only geometry data are supported.
+
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
 		</p>
 		</p>
 
 
+		<code>
+			import { OBJExporter } from 'three/addons/exporters/OBJExporter.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>

+ 11 - 0
docs/examples/en/exporters/PLYExporter.html

@@ -18,6 +18,17 @@
 		uv coordinates. No textures or texture references are saved.
 		uv coordinates. No textures or texture references are saved.
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { PLYExporter } from 'three/addons/exporters/PLYExporter.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>

+ 75 - 0
docs/examples/en/exporters/STLExporter.html

@@ -0,0 +1,75 @@
+<!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>[name]</h1>
+
+		<p class="desc">
+			An exporter for the STL file format. <br /><br />
+			[link:https://en.wikipedia.org/wiki/STL_(file_format) STL] files describe only the surface geometry
+			of a three-dimensional object without any representation of color, texture or other common model attributes.
+			The STL format specifies both ASCII and binary representations, with binary being more compact. 
+			STL files contain no scale information or indexes, and the units are arbitrary.
+		</p>
+
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { STLExporter } from 'three/addons/exporters/STLExporter.js';
+		</code>
+
+		<h2>Code Example</h2>
+
+		<code>
+		// Instantiate an exporter
+		const exporter = new STLExporter();
+
+		// Configure export options
+		const options = { binary: true }
+
+		// Parse the input and generate the STL encoded output
+		const result = exporter.parse( mesh, options );
+		</code>
+
+		<h2>Examples</h2>
+
+		<p>
+			[example:misc_exporter_stl]
+		</p>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]()</h3>
+		<p>
+		Creates a new [name].
+		</p>
+
+		<h2>Methods</h2>
+
+		<h3>[method:Object parse]( [param:Object3D scene], [param:Object options] )</h3>
+
+		<p>
+		[page:Object3D scene] — Scene, Mesh, or other Object3D based class containing Meshes to encode.<br />
+		[page:Options options] — Optional export options<br />
+		<ul>
+			<li>binary - bool. Return an ASCII encoded string or binary data buffer. Default is `false`.</li>
+		</ul>
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/exporters/STLExporter.js examples/jsm/exporters/STLExporter.js]
+		</p>
+	</body>
+</html>

+ 15 - 2
docs/examples/en/geometries/ConvexGeometry.html

@@ -11,8 +11,21 @@
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
-		<p class="desc">[name] can be used to generate a convex hull for a given array of 3D points.
-			The average time complexity for this task is considered to be O(nlog(n)).</p>
+		<p class="desc">
+			[name] can be used to generate a convex hull for a given array of 3D points.
+			The average time complexity for this task is considered to be O(nlog(n)).
+		</p>
+
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { ConvexGeometry } from 'three/addons/geometries/ConvexGeometry.js';
+		</code>
 
 
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 

+ 15 - 1
docs/examples/en/geometries/DecalGeometry.html

@@ -11,7 +11,21 @@
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
-		<p class="desc">[name] can be used to create a decal mesh that serves different kinds of purposes e.g. adding unique details to models, performing dynamic visual environmental changes or covering seams.</p>
+		<p class="desc">
+			[name] can be used to create a decal mesh that serves different kinds of purposes e.g. adding unique details
+			to models, performing dynamic visual environmental changes or covering seams.
+		</p>
+
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { DecalGeometry } from 'three/addons/geometries/DecalGeometry.js';
+		</code>
 
 
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 

+ 11 - 14
docs/examples/en/geometries/ParametricGeometry.html

@@ -11,23 +11,20 @@
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
-		<p class="desc">Generate geometry representing a parametric surface.</p>
-
-		<script>
-
-		// iOS iframe auto-resize workaround
-
-		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
-
-			const scene = document.getElementById( 'scene' );
+		<p class="desc">
+			Generate geometry representing a parametric surface.
+		</p>
 
 
-			scene.style.width = getComputedStyle( scene ).width;
-			scene.style.height = getComputedStyle( scene ).height;
-			scene.setAttribute( 'scrolling', 'no' );
+		<h2>Import</h2>
 
 
-		}
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
 
 
-		</script>
+		<code>
+			import { ParametricGeometry } from 'three/addons/geometries/ParametricGeometry.js';
+		</code>
 
 
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 

+ 8 - 13
docs/examples/en/geometries/TextGeometry.html

@@ -17,21 +17,16 @@
 			See the [page:FontLoader] page for additional details.
 			See the [page:FontLoader] page for additional details.
 		</p>
 		</p>
 
 
-		<script>
+		<h2>Import</h2>
 
 
-		// iOS iframe auto-resize workaround
-
-		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
-
-			const scene = document.getElementById( 'scene' );
-
-			scene.style.width = getComputedStyle( scene ).width;
-			scene.style.height = getComputedStyle( scene ).height;
-			scene.setAttribute( 'scrolling', 'no' );
-
-		}
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
 
 
-		</script>
+		<code>
+			import { TextGeometry } from 'three/addons/geometries/TextGeometry.js';
+		</code>
 
 
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 

+ 11 - 0
docs/examples/en/helpers/LightProbeHelper.html

@@ -15,6 +15,17 @@
 			Renders a sphere to visualize a light probe in the scene.
 			Renders a sphere to visualize a light probe in the scene.
 		<p>
 		<p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { LightProbeHelper } from 'three/addons/helpers/LightProbeHelper.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>

+ 11 - 0
docs/examples/en/helpers/PositionalAudioHelper.html

@@ -13,6 +13,17 @@
 
 
 		<p class="desc">This helper displays the directional cone of a [page:PositionalAudio].</p>
 		<p class="desc">This helper displays the directional cone of a [page:PositionalAudio].</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { PositionalAudioHelper } from 'three/addons/helpers/PositionalAudioHelper.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 		<code>
 		<code>
 		const positionalAudio = new THREE.PositionalAudio( listener );
 		const positionalAudio = new THREE.PositionalAudio( listener );

+ 11 - 0
docs/examples/en/helpers/RectAreaLightHelper.html

@@ -15,6 +15,17 @@
 			Creates a visual aid for a [page:RectAreaLight].
 			Creates a visual aid for a [page:RectAreaLight].
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { RectAreaLightHelper } from 'three/addons/helpers/RectAreaLightHelper.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>

+ 11 - 0
docs/examples/en/helpers/VertexNormalsHelper.html

@@ -17,6 +17,17 @@
 			have been calculated using [page:BufferGeometry.computeVertexNormals computeVertexNormals].<br /><br />
 			have been calculated using [page:BufferGeometry.computeVertexNormals computeVertexNormals].<br /><br />
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { VertexNormalsHelper } from 'three/addons/helpers/VertexNormalsHelper.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>

+ 11 - 0
docs/examples/en/helpers/VertexTangentsHelper.html

@@ -17,6 +17,17 @@
 			have been calculated using [page:BufferGeometry.computeTangents computeTangents].<br /><br />
 			have been calculated using [page:BufferGeometry.computeTangents computeTangents].<br /><br />
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { VertexTangentsHelper } from 'three/addons/helpers/VertexTangentsHelper.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>

+ 11 - 0
docs/examples/en/lights/LightProbeGenerator.html

@@ -14,6 +14,17 @@
 			Utility class for creating instances of [page:LightProbe].
 			Utility class for creating instances of [page:LightProbe].
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { LightProbeGenerator } from 'three/addons/lights/LightProbeGenerator.js';
+		</code>
+
 		<h2>Examples</h2>
 		<h2>Examples</h2>
 
 
 		<p>
 		<p>

+ 15 - 4
docs/examples/en/loaders/3DMLoader.html

@@ -17,6 +17,17 @@
 			The loader currently uses [link:https://www.npmjs.com/package/rhino3dm/v/0.15.0-beta rhino3dm.js 0.15.0-beta.]
 			The loader currently uses [link:https://www.npmjs.com/package/rhino3dm/v/0.15.0-beta rhino3dm.js 0.15.0-beta.]
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { 3DMLoader } from 'three/addons/loaders/3DMLoader.js';
+		</code>
+
 		<h2>Supported Conversions</h2>
 		<h2>Supported Conversions</h2>
 
 
 		<p>
 		<p>
@@ -110,7 +121,7 @@
 
 
 		// Specify path to a folder containing WASM/JS libraries or a CDN.
 		// Specify path to a folder containing WASM/JS libraries or a CDN.
 		//loader.setLibraryPath( '/path_to_library/rhino3dm/' );
 		//loader.setLibraryPath( '/path_to_library/rhino3dm/' );
-		loader.setLibraryPath( 'https://cdn.jsdelivr.net/npm/rhino3dm@0.15.0-beta/' );
+		loader.setLibraryPath( 'https://cdn.jsdelivr.net/npm/rhino3dm@7.15.0/' );
 
 
 		// Load a 3DM file
 		// Load a 3DM file
 		loader.load(
 		loader.load(
@@ -184,13 +195,13 @@
 		</p>
 		</p>
 
 
 		<code>
 		<code>
-		import rhino3dm from 'https://cdn.jsdelivr.net/npm/rhino3dm@0.15.0-beta/rhino3dm.module.js'
+		import rhino3dm from 'https://cdn.jsdelivr.net/npm/rhino3dm@7.15.0/rhino3dm.module.js'
 
 
 		// Instantiate a loader
 		// Instantiate a loader
 		const loader = new Rhino3dmLoader();
 		const loader = new Rhino3dmLoader();
 
 
 		// Specify path to a folder containing WASM/JS libraries or a CDN.
 		// Specify path to a folder containing WASM/JS libraries or a CDN.
-		loader.setLibraryPath( 'https://cdn.jsdelivr.net/npm/rhino3dm@0.15.0-beta/' );
+		loader.setLibraryPath( 'https://cdn.jsdelivr.net/npm/rhino3dm@7.15.0/' );
 
 
 		rhino3dm().then(async m => {
 		rhino3dm().then(async m => {
 
 
@@ -227,7 +238,7 @@
 		// Specify path to a folder containing the WASM/JS library:
 		// Specify path to a folder containing the WASM/JS library:
 		loader.setLibraryPath( '/path_to_library/rhino3dm/' );
 		loader.setLibraryPath( '/path_to_library/rhino3dm/' );
 		// or from a CDN:
 		// or from a CDN:
-		loader.setLibraryPath( 'https://cdn.jsdelivr.net/npm/rhino3dm@0.15.0-beta/' );
+		loader.setLibraryPath( 'https://cdn.jsdelivr.net/npm/rhino3dm@7.15.0/' );
 		</code>
 		</code>
 
 
 		<h3>[method:this setWorkerLimit]( [param:Number workerLimit] )</h3>
 		<h3>[method:this setWorkerLimit]( [param:Number workerLimit] )</h3>

+ 11 - 0
docs/examples/en/loaders/DRACOLoader.html

@@ -31,6 +31,17 @@
 			decoder instances.
 			decoder instances.
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { DRACOLoader } from 'three/addons/loaders/DRACOLoader.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>

+ 11 - 0
docs/examples/en/loaders/FontLoader.html

@@ -19,6 +19,17 @@
 		You can convert fonts online using [link:https://gero3.github.io/facetype.js/ facetype.js]
 		You can convert fonts online using [link:https://gero3.github.io/facetype.js/ facetype.js]
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { FontLoader } from 'three/addons/loaders/FontLoader.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>

+ 11 - 0
docs/examples/en/loaders/GLTFLoader.html

@@ -25,6 +25,17 @@
 			and they require special handling during the disposal process. More information in the [link:https://threejs.org/docs/#manual/en/introduction/How-to-dispose-of-objects How to dispose of objects] guide.
 			and they require special handling during the disposal process. More information in the [link:https://threejs.org/docs/#manual/en/introduction/How-to-dispose-of-objects How to dispose of objects] guide.
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js';
+		</code>
+
 		<h2>Extensions</h2>
 		<h2>Extensions</h2>
 
 
 		<p>
 		<p>

+ 12 - 1
docs/examples/en/loaders/KTX2Loader.html

@@ -27,6 +27,17 @@
 			directory.
 			directory.
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { KTX2Loader } from 'three/addons/loaders/KTX2Loader.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>
@@ -81,7 +92,7 @@
 
 
 		<h3>[method:CompressedTexture load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:CompressedTexture load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>
-		[page:String url] — A string containing the path/URL of the `.basis` file.<br />
+		[page:String url] — A string containing the path/URL of the `.ktx2` file.<br />
 		[page:Function onLoad] — A function to be called after the loading is successfully completed.<br />
 		[page:Function onLoad] — A function to be called after the loading is successfully completed.<br />
 		[page:Function onProgress] — (optional) A function to be called while the loading is in progress. The argument will be the XMLHttpRequest instance, that contains .[page:Integer total] and .[page:Integer loaded] bytes. If the server does not set the Content-Length header; .[page:Integer total] will be 0.<br />
 		[page:Function onProgress] — (optional) A function to be called while the loading is in progress. The argument will be the XMLHttpRequest instance, that contains .[page:Integer total] and .[page:Integer loaded] bytes. If the server does not set the Content-Length header; .[page:Integer total] will be 0.<br />
 		[page:Function onError] — (optional) A function to be called if an error occurs during loading. The function receives error as an argument.<br />
 		[page:Function onError] — (optional) A function to be called if an error occurs during loading. The function receives error as an argument.<br />

+ 10 - 0
docs/examples/en/loaders/LDrawLoader.html

@@ -29,6 +29,16 @@
 		See section 'Packing LDraw models'. The LDrawLoader example loads several packed files.
 		See section 'Packing LDraw models'. The LDrawLoader example loads several packed files.
 		The official parts library is not included due to its large size.</p>
 		The official parts library is not included due to its large size.</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { LDrawLoader } from 'three/addons/loaders/LDrawLoader.js';
+		</code>
 
 
 		<h2>Extensions</h2>
 		<h2>Extensions</h2>
 
 

+ 12 - 1
docs/examples/en/loaders/MMDLoader.html

@@ -15,7 +15,18 @@
 		[name] creates Three.js Objects from MMD resources as PMD, PMX, VMD, and VPD files.
 		[name] creates Three.js Objects from MMD resources as PMD, PMX, VMD, and VPD files.
 		See [page:MMDAnimationHelper] for MMD animation handling as IK, Grant, and Physics.<br /><br />
 		See [page:MMDAnimationHelper] for MMD animation handling as IK, Grant, and Physics.<br /><br />
 
 
-		If you want raw content of MMD resources, use .loadPMD/PMX/VMD/VPD methods.
+		If you want raw content of MMD resources, use .loadPMD/PMX/VMD/VPD methods.</p>
+
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { MMDLoader } from 'three/addons/loaders/MMDLoader.js';
+		</code>
 
 
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 

+ 11 - 0
docs/examples/en/loaders/MTLLoader.html

@@ -16,6 +16,17 @@
 		(material) properties of objects within one or more .OBJ files.
 		(material) properties of objects within one or more .OBJ files.
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { MTLLoader } from 'three/addons/loaders/MTLLoader.js';
+		</code>
+
 		<h2>Constructor</h2>
 		<h2>Constructor</h2>
 
 
 		<h3>[name]( [param:LoadingManager loadingManager] )</h3>
 		<h3>[name]( [param:LoadingManager loadingManager] )</h3>

+ 11 - 0
docs/examples/en/loaders/OBJLoader.html

@@ -18,6 +18,17 @@
 		vertices, and texture vertices.
 		vertices, and texture vertices.
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { OBJLoader } from 'three/addons/loaders/OBJLoader.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>

+ 11 - 0
docs/examples/en/loaders/PCDLoader.html

@@ -22,6 +22,17 @@
 			</ul>
 			</ul>
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { PCDLoader } from 'three/addons/loaders/PCDLoader.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>

+ 11 - 0
docs/examples/en/loaders/PDBLoader.html

@@ -15,6 +15,17 @@
 		The [link:http://en.wikipedia.org/wiki/Protein_Data_Bank_(file_format) Protein Data Bank] file format is a textual file describing the three-dimensional structures of molecules.
 		The [link:http://en.wikipedia.org/wiki/Protein_Data_Bank_(file_format) Protein Data Bank] file format is a textual file describing the three-dimensional structures of molecules.
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { PDBLoader } from 'three/addons/loaders/PDBLoader.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>

+ 11 - 0
docs/examples/en/loaders/PRWMLoader.html

@@ -19,6 +19,17 @@
 		on this [link:https://github.com/kchapelier/PRWM here].
 		on this [link:https://github.com/kchapelier/PRWM here].
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { PRWMLoader } from 'three/addons/loaders/PRWMLoader.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>

+ 11 - 0
docs/examples/en/loaders/SVGLoader.html

@@ -15,6 +15,17 @@
 		[link:https://en.wikipedia.org/wiki/Scalable_Vector_Graphics Scalable Vector Graphics] is an XML-based vector image format for two-dimensional graphics with support for interactivity and animation.
 		[link:https://en.wikipedia.org/wiki/Scalable_Vector_Graphics Scalable Vector Graphics] is an XML-based vector image format for two-dimensional graphics with support for interactivity and animation.
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { SVGLoader } from 'three/addons/loaders/SVGLoader.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>

+ 11 - 0
docs/examples/en/loaders/TGALoader.html

@@ -15,6 +15,17 @@
 		[link:https://en.wikipedia.org/wiki/Truevision_TGA TGA] is a raster graphics, image file format.
 		[link:https://en.wikipedia.org/wiki/Truevision_TGA TGA] is a raster graphics, image file format.
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { TGALoader } from 'three/addons/loaders/TGALoader.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>

+ 12 - 1
docs/examples/en/math/Lut.html

@@ -10,9 +10,20 @@
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
 		<p class="desc">
 		<p class="desc">
-		Represents a lookup table for colormaps. It is used to determine the color values from a range of data values.
+			Represents a lookup table for colormaps. It is used to determine the color values from a range of data values.
 		</p>
 		</p>
 
 
+		<h2>Import</h2>
+
+		<p>
+			[name] is an add-on, and must be imported explicitly.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { Lut } from 'three/addons/math/Lut.js';
+		</code>
+
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>

Some files were not shown because too many files changed in this diff