Jelajahi Sumber

Merge pull request #21038 from Mugen87/dev44

Refactor geometry generators.
Mr.doob 4 tahun lalu
induk
melakukan
20a41d2a4f
100 mengubah file dengan 334 tambahan dan 616 penghapusan
  1. 2 2
      README.md
  2. 1 1
      docs/api/ar/audio/PositionalAudio.html
  3. 1 1
      docs/api/en/audio/PositionalAudio.html
  4. 1 1
      docs/api/en/extras/core/Shape.html
  5. 2 2
      docs/api/en/geometries/BoxGeometry.html
  6. 2 2
      docs/api/en/geometries/CircleGeometry.html
  7. 5 5
      docs/api/en/geometries/ConeGeometry.html
  8. 2 2
      docs/api/en/geometries/CylinderGeometry.html
  9. 4 4
      docs/api/en/geometries/DodecahedronGeometry.html
  10. 1 1
      docs/api/en/geometries/EdgesGeometry.html
  11. 2 2
      docs/api/en/geometries/ExtrudeGeometry.html
  12. 4 4
      docs/api/en/geometries/IcosahedronGeometry.html
  13. 3 3
      docs/api/en/geometries/LatheGeometry.html
  14. 4 4
      docs/api/en/geometries/OctahedronGeometry.html
  15. 2 2
      docs/api/en/geometries/ParametricGeometry.html
  16. 2 2
      docs/api/en/geometries/PlaneGeometry.html
  17. 3 3
      docs/api/en/geometries/PolyhedronGeometry.html
  18. 2 2
      docs/api/en/geometries/RingGeometry.html
  19. 2 2
      docs/api/en/geometries/ShapeGeometry.html
  20. 2 2
      docs/api/en/geometries/SphereGeometry.html
  21. 4 4
      docs/api/en/geometries/TetrahedronGeometry.html
  22. 6 6
      docs/api/en/geometries/TextGeometry.html
  23. 2 2
      docs/api/en/geometries/TorusGeometry.html
  24. 2 2
      docs/api/en/geometries/TorusKnotGeometry.html
  25. 2 2
      docs/api/en/geometries/TubeGeometry.html
  26. 1 1
      docs/api/en/geometries/WireframeGeometry.html
  27. 1 1
      docs/api/en/helpers/BoxHelper.html
  28. 2 2
      docs/api/en/lights/shadows/DirectionalLightShadow.html
  29. 2 2
      docs/api/en/lights/shadows/PointLightShadow.html
  30. 2 2
      docs/api/en/lights/shadows/SpotLightShadow.html
  31. 1 1
      docs/api/en/materials/ShadowMaterial.html
  32. 1 1
      docs/api/en/math/Box3.html
  33. 1 1
      docs/api/en/objects/Group.html
  34. 1 1
      docs/api/en/objects/LOD.html
  35. 1 1
      docs/api/en/objects/Mesh.html
  36. 1 1
      docs/api/en/objects/SkinnedMesh.html
  37. 1 1
      docs/api/ko/audio/PositionalAudio.html
  38. 1 1
      docs/api/zh/audio/PositionalAudio.html
  39. 1 1
      docs/api/zh/extras/core/Shape.html
  40. 2 2
      docs/api/zh/geometries/BoxGeometry.html
  41. 2 2
      docs/api/zh/geometries/CircleGeometry.html
  42. 5 5
      docs/api/zh/geometries/ConeGeometry.html
  43. 2 2
      docs/api/zh/geometries/CylinderGeometry.html
  44. 4 4
      docs/api/zh/geometries/DodecahedronGeometry.html
  45. 1 1
      docs/api/zh/geometries/EdgesGeometry.html
  46. 2 2
      docs/api/zh/geometries/ExtrudeGeometry.html
  47. 4 4
      docs/api/zh/geometries/IcosahedronGeometry.html
  48. 2 2
      docs/api/zh/geometries/LatheGeometry.html
  49. 4 4
      docs/api/zh/geometries/OctahedronGeometry.html
  50. 2 2
      docs/api/zh/geometries/ParametricGeometry.html
  51. 2 2
      docs/api/zh/geometries/PlaneGeometry.html
  52. 2 2
      docs/api/zh/geometries/PolyhedronGeometry.html
  53. 2 2
      docs/api/zh/geometries/RingGeometry.html
  54. 2 2
      docs/api/zh/geometries/ShapeGeometry.html
  55. 2 2
      docs/api/zh/geometries/SphereGeometry.html
  56. 4 4
      docs/api/zh/geometries/TetrahedronGeometry.html
  57. 6 6
      docs/api/zh/geometries/TextGeometry.html
  58. 2 2
      docs/api/zh/geometries/TorusGeometry.html
  59. 2 2
      docs/api/zh/geometries/TorusKnotGeometry.html
  60. 2 2
      docs/api/zh/geometries/TubeGeometry.html
  61. 1 1
      docs/api/zh/geometries/WireframeGeometry.html
  62. 1 1
      docs/api/zh/helpers/BoxHelper.html
  63. 2 2
      docs/api/zh/lights/shadows/DirectionalLightShadow.html
  64. 2 2
      docs/api/zh/lights/shadows/PointLightShadow.html
  65. 2 2
      docs/api/zh/lights/shadows/SpotLightShadow.html
  66. 1 1
      docs/api/zh/materials/ShadowMaterial.html
  67. 1 1
      docs/api/zh/math/Box3.html
  68. 1 1
      docs/api/zh/objects/Group.html
  69. 1 1
      docs/api/zh/objects/LOD.html
  70. 1 1
      docs/api/zh/objects/Mesh.html
  71. 1 1
      docs/api/zh/objects/SkinnedMesh.html
  72. 0 44
      docs/examples/en/geometries/ConvexBufferGeometry.html
  73. 1 1
      docs/examples/en/geometries/ConvexGeometry.html
  74. 1 1
      docs/examples/en/helpers/VertexNormalsHelper.html
  75. 1 1
      docs/examples/en/helpers/VertexTangentsHelper.html
  76. 1 1
      docs/examples/en/loaders/SVGLoader.html
  77. 0 44
      docs/examples/zh/geometries/ConvexBufferGeometry.html
  78. 1 1
      docs/examples/zh/geometries/ConvexGeometry.html
  79. 1 1
      docs/examples/zh/helpers/VertexNormalsHelper.html
  80. 1 1
      docs/examples/zh/helpers/VertexTangentsHelper.html
  81. 1 1
      docs/examples/zh/loaders/SVGLoader.html
  82. 40 42
      docs/list.json
  83. 4 4
      docs/manual/ar/introduction/Creating-a-scene.html
  84. 4 4
      docs/manual/en/introduction/Creating-a-scene.html
  85. 4 4
      docs/manual/ko/introduction/Creating-a-scene.html
  86. 4 4
      docs/manual/zh/introduction/Creating-a-scene.html
  87. 2 2
      docs/scenes/bones-browser.html
  88. 79 79
      docs/scenes/geometry-browser.html
  89. 2 2
      docs/scenes/material-browser.html
  90. 2 16
      examples/js/geometries/ConvexGeometry.js
  91. 3 3
      examples/js/misc/ConvexObjectBreaker.js
  92. 1 8
      examples/jsm/geometries/ConvexGeometry.d.ts
  93. 4 19
      examples/jsm/geometries/ConvexGeometry.js
  94. 4 4
      examples/jsm/misc/ConvexObjectBreaker.js
  95. 2 2
      examples/jsm/physics/AmmoPhysics.js
  96. 2 2
      examples/physics_ammo_break.html
  97. 2 2
      examples/webgl_geometry_convex.html
  98. 10 168
      src/Three.Legacy.js
  99. 4 2
      src/geometries/BoxGeometry.d.ts
  100. 3 3
      src/geometries/BoxGeometry.js

+ 2 - 2
README.md

@@ -39,7 +39,7 @@ function init() {
 
 	scene = new THREE.Scene();
 
-	geometry = new THREE.BoxBufferGeometry( 0.2, 0.2, 0.2 );
+	geometry = new THREE.BoxGeometry( 0.2, 0.2, 0.2 );
 	material = new THREE.MeshNormalMaterial();
 
 	mesh = new THREE.Mesh( geometry, material );
@@ -62,7 +62,7 @@ function animation( time ) {
 }
 ```
 
-If everything went well, you should see [this](https://jsfiddle.net/9v7eqwu1/).
+If everything went well, you should see [this](https://jsfiddle.net/zdjankqw/).
 
 ### Cloning this repository ###
 

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

@@ -36,7 +36,7 @@
 		});
 
 		// create an object for the sound to play from
-		const sphere = new THREE.SphereBufferGeometry( 20, 32, 16 );
+		const sphere = new THREE.SphereGeometry( 20, 32, 16 );
 		const material = new THREE.MeshPhongMaterial( { color: 0xff2200 } );
 		const mesh = new THREE.Mesh( sphere, material );
 		scene.add( mesh );

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

@@ -36,7 +36,7 @@
 		});
 
 		// create an object for the sound to play from
-		const sphere = new THREE.SphereBufferGeometry( 20, 32, 16 );
+		const sphere = new THREE.SphereGeometry( 20, 32, 16 );
 		const material = new THREE.MeshPhongMaterial( { color: 0xff2200 } );
 		const mesh = new THREE.Mesh( sphere, material );
 		scene.add( mesh );

+ 1 - 1
docs/api/en/extras/core/Shape.html

@@ -31,7 +31,7 @@
 
 		const extrudeSettings = { amount: 8, bevelEnabled: true, bevelSegments: 2, steps: 2, bevelSize: 1, bevelThickness: 1 };
 
-		const geometry = new THREE.ExtrudeBufferGeometry( heartShape, extrudeSettings );
+		const geometry = new THREE.ExtrudeGeometry( heartShape, extrudeSettings );
 
 		const mesh = new THREE.Mesh( geometry, new THREE.MeshPhongMaterial() );
 		</code>

+ 2 - 2
docs/api/en/geometries/BoxBufferGeometry.html → docs/api/en/geometries/BoxGeometry.html

@@ -16,7 +16,7 @@
 			On creation, the cuboid is centred on the origin, with each edge parallel to one of the axes.
 		</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#BoxBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#BoxGeometry"></iframe>
 
 		<script>
 
@@ -36,7 +36,7 @@
 
 		<h2>Code Example</h2>
 
-		<code>const geometry = new THREE.BoxBufferGeometry( 1, 1, 1 );
+		<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 );

+ 2 - 2
docs/api/en/geometries/CircleBufferGeometry.html → docs/api/en/geometries/CircleGeometry.html

@@ -18,7 +18,7 @@
 			It can also be used to create regular polygons, where the number of segments determines the number of sides.
 		</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#CircleBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#CircleGeometry"></iframe>
 
 		<script>
 
@@ -39,7 +39,7 @@
 		<h2>Code Example</h2>
 
 		<code>
-		const geometry = new THREE.CircleBufferGeometry( 5, 32 );
+		const geometry = new THREE.CircleGeometry( 5, 32 );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const circle = new THREE.Mesh( geometry, material );
 		scene.add( circle );

+ 5 - 5
docs/api/en/geometries/ConeBufferGeometry.html → docs/api/en/geometries/ConeGeometry.html

@@ -7,13 +7,13 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:BufferGeometry] &rarr; [page:CylinderBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:CylinderGeometry] &rarr;
 
 		<h1>[name]</h1>
 
 		<p class="desc">A class for generating cone geometries.</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#ConeBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#ConeGeometry"></iframe>
 
 		<script>
 
@@ -33,7 +33,7 @@
 
 		<h2>Code Example</h2>
 
-		<code>const geometry = new THREE.ConeBufferGeometry( 5, 20, 32 );
+		<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 );
@@ -53,7 +53,7 @@
 		</p>
 
 		<h2>Properties</h2>
-		<p>See the base [page:CylinderBufferGeometry] class for common properties.</p>
+		<p>See the base [page:CylinderGeometry] class for common properties.</p>
 
 		<h3>[property:Object parameters]</h3>
 		<p>
@@ -61,7 +61,7 @@
 		</p>
 
 		<h2>Methods</h2>
-		<p>See the base [page:CylinderBufferGeometry] class for common methods.</p>
+		<p>See the base [page:CylinderGeometry] class for common methods.</p>
 
 		<h2>Source</h2>
 

+ 2 - 2
docs/api/en/geometries/CylinderBufferGeometry.html → docs/api/en/geometries/CylinderGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">A class for generating cylinder geometries.</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#CylinderBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#CylinderGeometry"></iframe>
 
 		<script>
 
@@ -33,7 +33,7 @@
 
 		<h2>Code Example</h2>
 
-		<code>const geometry = new THREE.CylinderBufferGeometry( 5, 5, 20, 32 );
+		<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 );

+ 4 - 4
docs/api/en/geometries/DodecahedronBufferGeometry.html → docs/api/en/geometries/DodecahedronGeometry.html

@@ -7,13 +7,13 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:BufferGeometry] &rarr; [page:PolyhedronBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:PolyhedronGeometry] &rarr;
 
 		<h1>[name]</h1>
 
 		<p class="desc">A class for generating a dodecahedron geometries.</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#DodecahedronBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#DodecahedronGeometry"></iframe>
 
 		<script>
 
@@ -40,7 +40,7 @@
 		</p>
 
 		<h2>Properties</h2>
-		<p>See the base [page:PolyhedronBufferGeometry] class for common properties.</p>
+		<p>See the base [page:PolyhedronGeometry] class for common properties.</p>
 
 		<h3>[property:Object parameters]</h3>
 		<p>
@@ -48,7 +48,7 @@
 		</p>
 
 		<h2>Methods</h2>
-		<p>See the base [page:PolyhedronBufferGeometry] class for common methods.</p>
+		<p>See the base [page:PolyhedronGeometry] class for common methods.</p>
 
 		<h2>Source</h2>
 

+ 1 - 1
docs/api/en/geometries/EdgesGeometry.html

@@ -16,7 +16,7 @@
 		<h2>Code Example</h2>
 
 		<code>
-const geometry = new THREE.BoxBufferGeometry( 100, 100, 100 );
+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 );

+ 2 - 2
docs/api/en/geometries/ExtrudeBufferGeometry.html → docs/api/en/geometries/ExtrudeGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">Creates extruded geometry from a path shape.</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#ExtrudeBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#ExtrudeGeometry"></iframe>
 
 		<script>
 
@@ -54,7 +54,7 @@
 			bevelSegments: 1
 		};
 
-		const geometry = new THREE.ExtrudeBufferGeometry( shape, extrudeSettings );
+		const geometry = new THREE.ExtrudeGeometry( shape, extrudeSettings );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const mesh = new THREE.Mesh( geometry, material ) ;
 		scene.add( mesh );

+ 4 - 4
docs/api/en/geometries/IcosahedronBufferGeometry.html → docs/api/en/geometries/IcosahedronGeometry.html

@@ -7,12 +7,12 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:BufferGeometry] &rarr; [page:PolyhedronBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:PolyhedronGeometry] &rarr;
 		<h1>[name]</h1>
 
 		<p class="desc">A class for generating an icosahedron geometry.</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#IcosahedronBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#IcosahedronGeometry"></iframe>
 
 		<script>
 
@@ -39,7 +39,7 @@
 		</p>
 
 		<h2>Properties</h2>
-		<p>See the base [page:PolyhedronBufferGeometry] class for common properties.</p>
+		<p>See the base [page:PolyhedronGeometry] class for common properties.</p>
 
 		<h3>[property:Object parameters]</h3>
 		<p>
@@ -47,7 +47,7 @@
 		</p>
 
 		<h2>Methods</h2>
-		<p>See the base [page:PolyhedronBufferGeometry] class for common methods.</p>
+		<p>See the base [page:PolyhedronGeometry] class for common methods.</p>
 
 		<h2>Source</h2>
 

+ 3 - 3
docs/api/en/geometries/LatheBufferGeometry.html → docs/api/en/geometries/LatheGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">Creates meshes with axial symmetry like vases. The lathe rotates around the Y axis.</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#LatheBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#LatheGeometry"></iframe>
 
 		<script>
 
@@ -38,7 +38,7 @@
 		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.LatheBufferGeometry( points );
+		const geometry = new THREE.LatheGeometry( points );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const lathe = new THREE.Mesh( geometry, material );
 		scene.add( lathe );
@@ -54,7 +54,7 @@
 		phiLength — the radian (0 to 2PI) range of the lathed section 2PI is a closed lathe, less than 2PI is a portion. Default is 2PI.
 		</p>
 		<p>
-		This creates a LatheBufferGeometry based on the parameters.
+		This creates a [name] based on the parameters.
 		</p>
 
 		<h2>Properties</h2>

+ 4 - 4
docs/api/en/geometries/OctahedronBufferGeometry.html → docs/api/en/geometries/OctahedronGeometry.html

@@ -7,12 +7,12 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:BufferGeometry] &rarr; [page:PolyhedronBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:PolyhedronGeometry] &rarr;
 		<h1>[name]</h1>
 
 		<p class="desc">A class for generating an octahedron geometry.</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#OctahedronBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#OctahedronGeometry"></iframe>
 
 		<script>
 
@@ -39,7 +39,7 @@
 		</p>
 
 		<h2>Properties</h2>
-		<p>See the base [page:PolyhedronBufferGeometry] class for common properties.</p>
+		<p>See the base [page:PolyhedronGeometry] class for common properties.</p>
 
 		<h3>[property:Object parameters]</h3>
 		<p>
@@ -47,7 +47,7 @@
 		</p>
 
 		<h2>Methods</h2>
-		<p>See the base [page:PolyhedronBufferGeometry] class for common methods.</p>
+		<p>See the base [page:PolyhedronGeometry] class for common methods.</p>
 
 		<h2>Source</h2>
 

+ 2 - 2
docs/api/en/geometries/ParametricBufferGeometry.html → docs/api/en/geometries/ParametricGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">Generate geometry representing a parametric surface.</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#ParametricBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#ParametricGeometry"></iframe>
 
 		<script>
 
@@ -34,7 +34,7 @@
 		<h2>Code Example</h2>
 
 		<code>
-		const geometry = new THREE.ParametricBufferGeometry( THREE.ParametricGeometries.klein, 25, 25 );
+		const geometry = new THREE.ParametricGeometry( THREE.ParametricGeometries.klein, 25, 25 );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const klein = new THREE.Mesh( geometry, material );
 		scene.add( klein );

+ 2 - 2
docs/api/en/geometries/PlaneBufferGeometry.html → docs/api/en/geometries/PlaneGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">A class for generating plane geometries.</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#PlaneBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#PlaneGeometry"></iframe>
 
 		<script>
 
@@ -33,7 +33,7 @@
 
 		<h2>Code Example</h2>
 
-		<code>const geometry = new THREE.PlaneBufferGeometry( 5, 20, 32 );
+		<code>const geometry = new THREE.PlaneGeometry( 5, 20, 32 );
 		const material = new THREE.MeshBasicMaterial( {color: 0xffff00, side: THREE.DoubleSide} );
 		const plane = new THREE.Mesh( geometry, material );
 		scene.add( plane );

+ 3 - 3
docs/api/en/geometries/PolyhedronBufferGeometry.html → docs/api/en/geometries/PolyhedronGeometry.html

@@ -14,8 +14,8 @@
 		<p class="desc">
 			A polyhedron is a solid in three dimensions with flat faces. This class will take an array of vertices,
 			project them onto a sphere, and then divide them up to the desired level of detail. This class is used
-			by [page:DodecahedronBufferGeometry], [page:IcosahedronBufferGeometry], [page:OctahedronBufferGeometry],
-			and [page:TetrahedronBufferGeometry] to generate their respective geometries.
+			by [page:DodecahedronGeometry], [page:IcosahedronGeometry], [page:OctahedronGeometry],
+			and [page:TetrahedronGeometry] to generate their respective geometries.
 		</p>
 
 		<h2>Code Example</h2>
@@ -34,7 +34,7 @@ const indicesOfFaces = [
     4,5,6,    6,7,4
 ];
 
-const geometry = new THREE.PolyhedronBufferGeometry( verticesOfCube, indicesOfFaces, 6, 2 );
+const geometry = new THREE.PolyhedronGeometry( verticesOfCube, indicesOfFaces, 6, 2 );
 </code>
 
 		<h2>Constructor</h2>

+ 2 - 2
docs/api/en/geometries/RingBufferGeometry.html → docs/api/en/geometries/RingGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">A class for generating a two-dimensional ring geometry.</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#RingBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#RingGeometry"></iframe>
 
 		<script>
 
@@ -33,7 +33,7 @@
 
 		<h2>Code Example</h2>
 
-		<code>const geometry = new THREE.RingBufferGeometry( 1, 5, 32 );
+		<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 );

+ 2 - 2
docs/api/en/geometries/ShapeBufferGeometry.html → docs/api/en/geometries/ShapeGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">Creates an one-sided polygonal geometry from one or more path shapes.</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#ShapeBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#ShapeGeometry"></iframe>
 
 		<script>
 
@@ -48,7 +48,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.ShapeBufferGeometry( heartShape );
+		const geometry = new THREE.ShapeGeometry( heartShape );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const mesh = new THREE.Mesh( geometry, material ) ;
 		scene.add( mesh );

+ 2 - 2
docs/api/en/geometries/SphereBufferGeometry.html → docs/api/en/geometries/SphereGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">A class for generating sphere geometries.</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#SphereBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#SphereGeometry"></iframe>
 
 		<script>
 
@@ -33,7 +33,7 @@
 
 		<h2>Code Example</h2>
 
-		<code>const geometry = new THREE.SphereBufferGeometry( 5, 32, 32 );
+		<code>const geometry = new THREE.SphereGeometry( 5, 32, 32 );
 		const material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
 		const sphere = new THREE.Mesh( geometry, material );
 		scene.add( sphere );

+ 4 - 4
docs/api/en/geometries/TetrahedronBufferGeometry.html → docs/api/en/geometries/TetrahedronGeometry.html

@@ -7,13 +7,13 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:BufferGeometry] &rarr; [page:PolyhedronBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:PolyhedronGeometry] &rarr;
 
 		<h1>[name]</h1>
 
 		<p class="desc">A class for generating a tetrahedron geometries.</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#TetrahedronBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#TetrahedronGeometry"></iframe>
 
 		<script>
 
@@ -40,7 +40,7 @@
 		</p>
 
 		<h2>Properties</h2>
-		<p>See the base [page:PolyhedronBufferGeometry] class for common properties.</p>
+		<p>See the base [page:PolyhedronGeometry] class for common properties.</p>
 
 		<h3>[property:Object parameters]</h3>
 		<p>
@@ -48,7 +48,7 @@
 		</p>
 
 		<h2>Methods</h2>
-		<p>See the base [page:PolyhedronBufferGeometry] class for common methods.</p>
+		<p>See the base [page:PolyhedronGeometry] class for common methods.</p>
 
 		<h2>Source</h2>
 

+ 6 - 6
docs/api/en/geometries/TextBufferGeometry.html → docs/api/en/geometries/TextGeometry.html

@@ -7,17 +7,17 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:BufferGeometry] &rarr; [page:ExtrudeBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:ExtrudeGeometry] &rarr;
 
 		<h1>[name]</h1>
 
 		<p class="desc">
 			A class for generating text as a single geometry. It is constructed by providing a string of text, and a hash of
-			parameters consisting of a loaded [page:Font] and settings for the geometry's parent [page:ExtrudeBufferGeometry].
+			parameters consisting of a loaded [page:Font] and settings for the geometry's parent [page:ExtrudeGeometry].
 			See the [page:Font], [page:FontLoader] and [page:Creating_Text] pages for additional details.
 		</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#TextBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#TextGeometry"></iframe>
 
 		<script>
 
@@ -42,7 +42,7 @@
 
 		loader.load( 'fonts/helvetiker_regular.typeface.json', function ( font ) {
 
-			const geometry = new THREE.TextBufferGeometry( 'Hello three.js!', {
+			const geometry = new THREE.TextGeometry( 'Hello three.js!', {
 				font: font,
 				size: 80,
 				height: 5,
@@ -157,7 +157,7 @@
 		</table>
 
 		<h2>Properties</h2>
-		<p>See the base [page:ExtrudeBufferGeometry] class for common properties.</p>
+		<p>See the base [page:ExtrudeGeometry] class for common properties.</p>
 
 		<h3>[property:Object parameters]</h3>
 		<p>
@@ -165,7 +165,7 @@
 		</p>
 
 		<h2>Methods</h2>
-		<p>See the base [page:ExtrudeBufferGeometry] class for common methods.</p>
+		<p>See the base [page:ExtrudeGeometry] class for common methods.</p>
 
 		<h2>Source</h2>
 

+ 2 - 2
docs/api/en/geometries/TorusBufferGeometry.html → docs/api/en/geometries/TorusGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">A class for generating torus geometries.</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#TorusBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#TorusGeometry"></iframe>
 
 		<script>
 
@@ -33,7 +33,7 @@
 
 		<h2>Code Example</h2>
 
-		<code>const geometry = new THREE.TorusBufferGeometry( 10, 3, 16, 100 );
+		<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 );

+ 2 - 2
docs/api/en/geometries/TorusKnotBufferGeometry.html → docs/api/en/geometries/TorusKnotGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">Creates a torus knot, the particular shape of which is defined by a pair of coprime integers, p and q. If p and q are not coprime, the result will be a torus link.</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#TorusKnotBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#TorusKnotGeometry"></iframe>
 
 		<script>
 
@@ -33,7 +33,7 @@
 
 		<h2>Code Example</h2>
 
-		<code>const geometry = new THREE.TorusKnotBufferGeometry( 10, 3, 100, 16 );
+		<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 );

+ 2 - 2
docs/api/en/geometries/TubeBufferGeometry.html → docs/api/en/geometries/TubeGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">Creates a tube that extrudes along a 3d curve.</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#TubeBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#TubeGeometry"></iframe>
 
 		<script>
 
@@ -57,7 +57,7 @@
 		}
 
 		const path = new CustomSinCurve( 10 );
-		const geometry = new THREE.TubeBufferGeometry( path, 20, 2, 8, false );
+		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 );

+ 1 - 1
docs/api/en/geometries/WireframeGeometry.html

@@ -16,7 +16,7 @@
 		<h2>Code Example</h2>
 
 		<code>
-		const geometry = new THREE.SphereBufferGeometry( 100, 100, 100 );
+		const geometry = new THREE.SphereGeometry( 100, 100, 100 );
 
 		const wireframe = new THREE.WireframeGeometry( geometry );
 

+ 1 - 1
docs/api/en/helpers/BoxHelper.html

@@ -21,7 +21,7 @@
 		<h2>Code Example</h2>
 
 		<code>
-		const sphere = new THREE.SphereBufferGeometry();
+		const sphere = new THREE.SphereGeometry();
 		const object = new THREE.Mesh( sphere, new THREE.MeshBasicMaterial( 0xff0000 ) );
 		const box = new THREE.BoxHelper( object, 0xffff00 );
 		scene.add( box );

+ 2 - 2
docs/api/en/lights/shadows/DirectionalLightShadow.html

@@ -40,7 +40,7 @@
 		light.shadow.camera.far = 500; // default
 
 		//Create a sphere that cast shadows (but does not receive them)
-		const sphereGeometry = new THREE.SphereBufferGeometry( 5, 32, 32 );
+		const sphereGeometry = new THREE.SphereGeometry( 5, 32, 32 );
 		const sphereMaterial = new THREE.MeshStandardMaterial( { color: 0xff0000 } );
 		const sphere = new THREE.Mesh( sphereGeometry, sphereMaterial );
 		sphere.castShadow = true; //default is false
@@ -48,7 +48,7 @@
 		scene.add( sphere );
 
 		//Create a plane that receives shadows (but does not cast them)
-		const planeGeometry = new THREE.PlaneBufferGeometry( 20, 20, 32, 32 );
+		const planeGeometry = new THREE.PlaneGeometry( 20, 20, 32, 32 );
 		const planeMaterial = new THREE.MeshStandardMaterial( { color: 0x00ff00 } )
 		const plane = new THREE.Mesh( planeGeometry, planeMaterial );
 		plane.receiveShadow = true;

+ 2 - 2
docs/api/en/lights/shadows/PointLightShadow.html

@@ -35,7 +35,7 @@
 		light.shadow.camera.far = 500; // default
 
 		//Create a sphere that cast shadows (but does not receive them)
-		const sphereGeometry = new THREE.SphereBufferGeometry( 5, 32, 32 );
+		const sphereGeometry = new THREE.SphereGeometry( 5, 32, 32 );
 		const sphereMaterial = new THREE.MeshStandardMaterial( { color: 0xff0000 } );
 		const sphere = new THREE.Mesh( sphereGeometry, sphereMaterial );
 		sphere.castShadow = true; //default is false
@@ -43,7 +43,7 @@
 		scene.add( sphere );
 
 		//Create a plane that receives shadows (but does not cast them)
-		const planeGeometry = new THREE.PlaneBufferGeometry( 20, 20, 32, 32 );
+		const planeGeometry = new THREE.PlaneGeometry( 20, 20, 32, 32 );
 		const planeMaterial = new THREE.MeshStandardMaterial( { color: 0x00ff00 } )
 		const plane = new THREE.Mesh( planeGeometry, planeMaterial );
 		plane.receiveShadow = true;

+ 2 - 2
docs/api/en/lights/shadows/SpotLightShadow.html

@@ -35,7 +35,7 @@
 		light.shadow.focus = 1; // default
 
 		//Create a sphere that cast shadows (but does not receive them)
-		const sphereGeometry = new THREE.SphereBufferGeometry( 5, 32, 32 );
+		const sphereGeometry = new THREE.SphereGeometry( 5, 32, 32 );
 		const sphereMaterial = new THREE.MeshStandardMaterial( { color: 0xff0000 } );
 		const sphere = new THREE.Mesh( sphereGeometry, sphereMaterial );
 		sphere.castShadow = true; //default is false
@@ -43,7 +43,7 @@
 		scene.add( sphere );
 
 		//Create a plane that receives shadows (but does not cast them)
-		const planeGeometry = new THREE.PlaneBufferGeometry( 20, 20, 32, 32 );
+		const planeGeometry = new THREE.PlaneGeometry( 20, 20, 32, 32 );
 		const planeMaterial = new THREE.MeshStandardMaterial( { color: 0x00ff00 } )
 		const plane = new THREE.Mesh( planeGeometry, planeMaterial );
 		plane.receiveShadow = true;

+ 1 - 1
docs/api/en/materials/ShadowMaterial.html

@@ -18,7 +18,7 @@
 		<h2>Code Example</h2>
 
 		<code>
-		const geometry = new THREE.PlaneBufferGeometry( 2000, 2000 );
+		const geometry = new THREE.PlaneGeometry( 2000, 2000 );
 		geometry.rotateX( - Math.PI / 2 );
 
 		const material = new THREE.ShadowMaterial();

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

@@ -19,7 +19,7 @@
 		const box = new THREE.Box3();
 
 		const mesh = new THREE.Mesh(
-			new THREE.SphereBufferGeometry(),
+			new THREE.SphereGeometry(),
 			new THREE.MeshBasicMaterial()
 		);
 

+ 1 - 1
docs/api/en/objects/Group.html

@@ -19,7 +19,7 @@
 		<h2>Code Example</h2>
 
 		<code>
-		const geometry = new THREE.BoxBufferGeometry( 1, 1, 1 );
+		const geometry = new THREE.BoxGeometry( 1, 1, 1 );
 		const material = new THREE.MeshBasicMaterial( {color: 0x00ff00} );
 
 		const cubeA = new THREE.Mesh( geometry, material );

+ 1 - 1
docs/api/en/objects/LOD.html

@@ -27,7 +27,7 @@
 		//Create spheres with 3 levels of detail and create new LOD levels for them
 		for( let i = 0; i < 3; i++ ) {
 
-			const geometry = new THREE.IcosahedronBufferGeometry( 10, 3 - i )
+			const geometry = new THREE.IcosahedronGeometry( 10, 3 - i )
 
 			const mesh = new THREE.Mesh( geometry, material );
 

+ 1 - 1
docs/api/en/objects/Mesh.html

@@ -19,7 +19,7 @@
 		<h2>Code Example</h2>
 
 		<code>
-		const geometry = new THREE.BoxBufferGeometry( 1, 1, 1 );
+		const geometry = new THREE.BoxGeometry( 1, 1, 1 );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const mesh = new THREE.Mesh( geometry, material );
 		scene.add( mesh );

+ 1 - 1
docs/api/en/objects/SkinnedMesh.html

@@ -37,7 +37,7 @@
 		<h2>Code Example</h2>
 
 		<code>
-		const geometry = new THREE.CylinderBufferGeometry( 5, 5, 5, 5, 15, 5, 30 );
+		const geometry = new THREE.CylinderGeometry( 5, 5, 5, 5, 15, 5, 30 );
 
 		// create the skin indices and skin weights
 

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

@@ -36,7 +36,7 @@
 		});
 
 		// create an object for the sound to play from
-		const sphere = new THREE.SphereBufferGeometry( 20, 32, 16 );
+		const sphere = new THREE.SphereGeometry( 20, 32, 16 );
 		const material = new THREE.MeshPhongMaterial( { color: 0xff2200 } );
 		const mesh = new THREE.Mesh( sphere, material );
 		scene.add( mesh );

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

@@ -36,7 +36,7 @@
 		});
 
 		// create an object for the sound to play from
-		const sphere = new THREE.SphereBufferGeometry( 20, 32, 16 );
+		const sphere = new THREE.SphereGeometry( 20, 32, 16 );
 		const material = new THREE.MeshPhongMaterial( { color: 0xff2200 } );
 		const mesh = new THREE.Mesh( sphere, material );
 		scene.add( mesh );

+ 1 - 1
docs/api/zh/extras/core/Shape.html

@@ -31,7 +31,7 @@
 
 		const extrudeSettings = { amount: 8, bevelEnabled: true, bevelSegments: 2, steps: 2, bevelSize: 1, bevelThickness: 1 };
 
-		const geometry = new THREE.ExtrudeBufferGeometry( heartShape, extrudeSettings );
+		const geometry = new THREE.ExtrudeGeometry( heartShape, extrudeSettings );
 
 		const mesh = new THREE.Mesh( geometry, new THREE.MeshPhongMaterial() );
 		</code>

+ 2 - 2
docs/api/zh/geometries/BoxBufferGeometry.html → docs/api/zh/geometries/BoxGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">[name]是四边形的原始几何类,它通常使用构造函数所提供的“width”、“height”、“depth”参数来创建立方体或者不规则四边形。</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#BoxBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#BoxGeometry"></iframe>
 
 		<script>
 
@@ -33,7 +33,7 @@
 
 		<h2>代码示例</h2>
 
-		<code>const geometry = new THREE.BoxBufferGeometry( 1, 1, 1 );
+		<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 );

+ 2 - 2
docs/api/zh/geometries/CircleBufferGeometry.html → docs/api/zh/geometries/CircleGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">[name]是欧式几何的一个简单形状,它由围绕着一个中心点的三角分段的数量所构造,由给定的半径来延展。 同时它也可以用于创建规则多边形,其分段数量取决于该规则多边形的边数。</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#CircleBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#CircleGeometry"></iframe>
 
 		<script>
 
@@ -34,7 +34,7 @@
 		<h2>代码示例</h2>
 
 		<code>
-		const geometry = new THREE.CircleBufferGeometry( 5, 32 );
+		const geometry = new THREE.CircleGeometry( 5, 32 );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const circle = new THREE.Mesh( geometry, material );
 		scene.add( circle );

+ 5 - 5
docs/api/zh/geometries/ConeBufferGeometry.html → docs/api/zh/geometries/ConeGeometry.html

@@ -7,13 +7,13 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:CylinderBufferGeometry] &rarr;
+		[page:CylinderGeometry] &rarr;
 
 		<h1>圆锥缓冲几何体([name])</h1>
 
 		<p class="desc">一个用于生成圆锥几何体的类。</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#ConeBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#ConeGeometry"></iframe>
 
 		<script>
 
@@ -33,7 +33,7 @@
 
 		<h2>代码示例</h2>
 
-		<code>const geometry = new THREE.ConeBufferGeometry( 5, 20, 32 );
+		<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 );
@@ -53,7 +53,7 @@
 		</p>
 
 		<h2>属性</h2>
-		<p>共有属性请参见其基类[page:CylinderBufferGeometry]。</p>
+		<p>共有属性请参见其基类[page:CylinderGeometry]。</p>
 
 		<h3>[property:Object parameters]</h3>
 		<p>
@@ -61,7 +61,7 @@
 		</p>
 
 		<h2>方法(Methods)</h2>
-		<p>共有方法请参见其基类[page:CylinderBufferGeometry]。</p>
+		<p>共有方法请参见其基类[page:CylinderGeometry]。</p>
 
 		<h2>源代码</h2>
 

+ 2 - 2
docs/api/zh/geometries/CylinderBufferGeometry.html → docs/api/zh/geometries/CylinderGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">一个用于生成圆柱几何体的类。</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#CylinderBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#CylinderGeometry"></iframe>
 
 		<script>
 
@@ -33,7 +33,7 @@
 
 		<h2>代码示例</h2>
 
-		<code>const geometry = new THREE.CylinderBufferGeometry( 5, 5, 20, 32 );
+		<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 );

+ 4 - 4
docs/api/zh/geometries/DodecahedronBufferGeometry.html → docs/api/zh/geometries/DodecahedronGeometry.html

@@ -7,13 +7,13 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:PolyhedronBufferGeometry] &rarr;
+		[page:PolyhedronGeometry] &rarr;
 
 		<h1>十二面缓冲几何体([name])</h1>
 
 		<p class="desc">一个用于创建十二面几何体的类。</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#DodecahedronBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#DodecahedronGeometry"></iframe>
 
 		<script>
 
@@ -40,7 +40,7 @@
 		</p>
 
 		<h2>属性</h2>
-		<p>共有属性请参见其基类[page:PolyhedronBufferGeometry]。</p>
+		<p>共有属性请参见其基类[page:PolyhedronGeometry]。</p>
 
 		<h3>[property:Object parameters]</h3>
 		<p>
@@ -48,7 +48,7 @@
 		</p>
 
 		<h2>方法(Methods)</h2>
-		<p>共有方法请参见其基类[page:PolyhedronBufferGeometry]。</p>
+		<p>共有方法请参见其基类[page:PolyhedronGeometry]。</p>
 
 		<h2>源代码</h2>
 

+ 1 - 1
docs/api/zh/geometries/EdgesGeometry.html

@@ -15,7 +15,7 @@
 
 		<h2>代码示例</h2>
 		<code>
-		const geometry = new THREE.BoxBufferGeometry( 100, 100, 100 );
+		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 );

+ 2 - 2
docs/api/zh/geometries/ExtrudeBufferGeometry.html → docs/api/zh/geometries/ExtrudeGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">从一个形状路径中,挤压出一个BufferGeometry。</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#ExtrudeBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#ExtrudeGeometry"></iframe>
 
 		<script>
 
@@ -54,7 +54,7 @@
 			bevelSegments: 1
 		};
 
-		const geometry = new THREE.ExtrudeBufferGeometry( shape, extrudeSettings );
+		const geometry = new THREE.ExtrudeGeometry( shape, extrudeSettings );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const mesh = new THREE.Mesh( geometry, material ) ;
 		scene.add( mesh );

+ 4 - 4
docs/api/zh/geometries/IcosahedronBufferGeometry.html → docs/api/zh/geometries/IcosahedronGeometry.html

@@ -7,12 +7,12 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:PolyhedronBufferGeometry] &rarr;
+		[page:PolyhedronGeometry] &rarr;
 		<h1>二十面缓冲几何体([name])</h1>
 
 		<p class="desc">一个用于生成二十面体的类。</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#IcosahedronBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#IcosahedronGeometry"></iframe>
 
 		<script>
 
@@ -39,7 +39,7 @@
 		</p>
 
 		<h2>属性</h2>
-		<p>共有属性请参见其基类[page:PolyhedronBufferGeometry]。</p>
+		<p>共有属性请参见其基类[page:PolyhedronGeometry]。</p>
 
 		<h3>[property:Object parameters]</h3>
 		<p>
@@ -47,7 +47,7 @@
 		</p>
 
 		<h2>方法(Methods)</h2>
-		<p>共有方法请参见其基类[page:PolyhedronBufferGeometry]。</p>
+		<p>共有方法请参见其基类[page:PolyhedronGeometry]。</p>
 
 		<h2>源代码</h2>
 

+ 2 - 2
docs/api/zh/geometries/LatheBufferGeometry.html → docs/api/zh/geometries/LatheGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">创建具有轴对称性的网格,比如花瓶。车削绕着Y轴来进行旋转。</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#LatheBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#LatheGeometry"></iframe>
 
 		<script>
 
@@ -38,7 +38,7 @@
 		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.LatheBufferGeometry( points );
+		const geometry = new THREE.LatheGeometry( points );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const lathe = new THREE.Mesh( geometry, material );
 		scene.add( lathe );

+ 4 - 4
docs/api/zh/geometries/OctahedronBufferGeometry.html → docs/api/zh/geometries/OctahedronGeometry.html

@@ -7,12 +7,12 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:PolyhedronBufferGeometry] &rarr;
+		[page:PolyhedronGeometry] &rarr;
 		<h1>八面缓冲几何体([name])</h1>
 
 		<p class="desc">一个用于创建八面体的类。</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#OctahedronBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#OctahedronGeometry"></iframe>
 
 		<script>
 
@@ -39,7 +39,7 @@
 		</p>
 
 		<h2>属性</h2>
-		<p>共有属性请参见其基类[page:PolyhedronBufferGeometry]。</p>
+		<p>共有属性请参见其基类[page:PolyhedronGeometry]。</p>
 
 		<h3>[property:Object parameters]</h3>
 		<p>
@@ -48,7 +48,7 @@
 		</p>
 
 		<h2>方法(Methods)</h2>
-		<p>共有方法请参见其基类[page:PolyhedronBufferGeometry]。</p>
+		<p>共有方法请参见其基类[page:PolyhedronGeometry]。</p>
 
 		<h2>源代码</h2>
 

+ 2 - 2
docs/api/zh/geometries/ParametricBufferGeometry.html → docs/api/zh/geometries/ParametricGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">生成由参数表示其表面的几何体。</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#ParametricBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#ParametricGeometry"></iframe>
 
 		<script>
 
@@ -34,7 +34,7 @@
 		<h2>代码示例</h2>
 
 		<code>
-		const geometry = new THREE.ParametricBufferGeometry( THREE.ParametricGeometries.klein, 25, 25 );
+		const geometry = new THREE.ParametricGeometry( THREE.ParametricGeometries.klein, 25, 25 );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const klein = new THREE.Mesh( geometry, material );
 		scene.add( klein );

+ 2 - 2
docs/api/zh/geometries/PlaneBufferGeometry.html → docs/api/zh/geometries/PlaneGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">一个用于生成平面几何体的类。</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#PlaneBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#PlaneGeometry"></iframe>
 
 		<script>
 
@@ -33,7 +33,7 @@
 
 		<h2>代码示例</h2>
 
-		<code>const geometry = new THREE.PlaneBufferGeometry( 5, 20, 32 );
+		<code>const geometry = new THREE.PlaneGeometry( 5, 20, 32 );
 		const material = new THREE.MeshBasicMaterial( {color: 0xffff00, side: THREE.DoubleSide} );
 		const plane = new THREE.Mesh( geometry, material );
 		scene.add( plane );

+ 2 - 2
docs/api/zh/geometries/PolyhedronBufferGeometry.html → docs/api/zh/geometries/PolyhedronGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">
 				多面体在三维空间中具有一些平面的立体图形。这个类将一个顶点数组投射到一个球面上,之后将它们细分为所需的细节级别。
-				这个类由[page:DodecahedronBufferGeometry]、[page:IcosahedronBufferGeometry]、[page:OctahedronBufferGeometry]和[page:TetrahedronBufferGeometry]
+				这个类由[page:DodecahedronGeometry]、[page:IcosahedronGeometry]、[page:OctahedronGeometry]和[page:TetrahedronGeometry]
 				所使用,以生成它们各自的几何结构。
 		</p>
 
@@ -33,7 +33,7 @@ const indicesOfFaces = [
     4,5,6,    6,7,4
 ];
 
-const geometry = new THREE.PolyhedronBufferGeometry( verticesOfCube, indicesOfFaces, 6, 2 );
+const geometry = new THREE.PolyhedronGeometry( verticesOfCube, indicesOfFaces, 6, 2 );
 </code>
 
 		<h2>构造器</h2>

+ 2 - 2
docs/api/zh/geometries/RingBufferGeometry.html → docs/api/zh/geometries/RingGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">一个用于生成二维圆环几何体的类。</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#RingBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#RingGeometry"></iframe>
 
 		<script>
 
@@ -33,7 +33,7 @@
 
 		<h2>代码示例</h2>
 
-		<code>const geometry = new THREE.RingBufferGeometry( 1, 5, 32 );
+		<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 );

+ 2 - 2
docs/api/zh/geometries/ShapeBufferGeometry.html → docs/api/zh/geometries/ShapeGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">从一个或多个路径形状中创建一个单面多边形几何体。</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#ShapeBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#ShapeGeometry"></iframe>
 
 		<script>
 
@@ -48,7 +48,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.ShapeBufferGeometry( heartShape );
+		const geometry = new THREE.ShapeGeometry( heartShape );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const mesh = new THREE.Mesh( geometry, material ) ;
 		scene.add( mesh );

+ 2 - 2
docs/api/zh/geometries/SphereBufferGeometry.html → docs/api/zh/geometries/SphereGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">一个用于生成球体的类。</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#SphereBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#SphereGeometry"></iframe>
 
 		<script>
 
@@ -33,7 +33,7 @@
 
 		<h2>代码示例</h2>
 
-		<code>const geometry = new THREE.SphereBufferGeometry( 5, 32, 32 );
+		<code>const geometry = new THREE.SphereGeometry( 5, 32, 32 );
 		const material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
 		const sphere = new THREE.Mesh( geometry, material );
 		scene.add( sphere );

+ 4 - 4
docs/api/zh/geometries/TetrahedronBufferGeometry.html → docs/api/zh/geometries/TetrahedronGeometry.html

@@ -7,13 +7,13 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:BufferGeometry] &rarr; [page:PolyhedronBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:PolyhedronGeometry] &rarr;
 
 		<h1>四面缓冲几何体([name])</h1>
 
 		<p class="desc">一个用于生成四面几何体的类。</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#TetrahedronBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#TetrahedronGeometry"></iframe>
 
 		<script>
 
@@ -40,7 +40,7 @@
 		</p>
 
 		<h2>属性</h2>
-		<p>共有属性请参见其基类[page:PolyhedronBufferGeometry]。</p>
+		<p>共有属性请参见其基类[page:PolyhedronGeometry]。</p>
 
 		<h3>[property:Object parameters]</h3>
 		<p>
@@ -48,7 +48,7 @@
 		</p>
 
 		<h2>方法(Methods)</h2>
-		<p>共有方法请参见其基类[page:PolyhedronBufferGeometry]。</p>
+		<p>共有方法请参见其基类[page:PolyhedronGeometry]。</p>
 
 		<h2>源代码</h2>
 

+ 6 - 6
docs/api/zh/geometries/TextBufferGeometry.html → docs/api/zh/geometries/TextGeometry.html

@@ -7,17 +7,17 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:BufferGeometry] &rarr; [page:ExtrudeBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:ExtrudeGeometry] &rarr;
 
 		<h1>文本缓冲几何体([name])</h1>
 
 		<p class="desc">
 				一个用于将文本生成为单一的几何体的类。
-				它是由一串给定的文本,以及由加载的[page:Font](字体)和该几何体[page:ExtrudeBufferGeometry]父类中的设置所组成的参数来构造的。
+				它是由一串给定的文本,以及由加载的[page:Font](字体)和该几何体[page:ExtrudeGeometry]父类中的设置所组成的参数来构造的。
 				请参阅[page:Font]、[page:FontLoader]和[page:Creating_Text]页面来查看更多详细信息。
 			</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#TextBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#TextGeometry"></iframe>
 
 		<script>
 
@@ -42,7 +42,7 @@
 
 		loader.load( 'fonts/helvetiker_regular.typeface.json', function ( font ) {
 
-			const geometry = new THREE.TextBufferGeometry( 'Hello three.js!', {
+			const geometry = new THREE.TextGeometry( 'Hello three.js!', {
 				font: font,
 				size: 80,
 				height: 5,
@@ -155,7 +155,7 @@
 		</table>
 
 		<h2>属性</h2>
-		<p>共有属性请参见其基类[page:ExtrudeBufferGeometry]。</p>
+		<p>共有属性请参见其基类[page:ExtrudeGeometry]。</p>
 
 		<h3>[property:Object parameters]</h3>
 		<p>
@@ -163,7 +163,7 @@
 		</p>
 
 		<h2>方法(Methods)</h2>
-		<p>共有方法请参见其基类[page:ExtrudeBufferGeometry]。</p>
+		<p>共有方法请参见其基类[page:ExtrudeGeometry]。</p>
 
 		<h2>源代码</h2>
 

+ 2 - 2
docs/api/zh/geometries/TorusBufferGeometry.html → docs/api/zh/geometries/TorusGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">一个用于生成圆环几何体的类。</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#TorusBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#TorusGeometry"></iframe>
 
 		<script>
 
@@ -33,7 +33,7 @@
 
 		<h2>代码示例</h2>
 
-		<code>const geometry = new THREE.TorusBufferGeometry( 10, 3, 16, 100 );
+		<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 );

+ 2 - 2
docs/api/zh/geometries/TorusKnotBufferGeometry.html → docs/api/zh/geometries/TorusKnotGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">创建一个圆环扭结,其特殊形状由一对互质的整数,p和q所定义。如果p和q不互质,创建出来的几何体将是一个环面链接。</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#TorusKnotBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#TorusKnotGeometry"></iframe>
 
 		<script>
 
@@ -33,7 +33,7 @@
 
 		<h2>代码示例</h2>
 
-		<code>const geometry = new THREE.TorusKnotBufferGeometry( 10, 3, 100, 16 );
+		<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 );

+ 2 - 2
docs/api/zh/geometries/TubeBufferGeometry.html → docs/api/zh/geometries/TubeGeometry.html

@@ -13,7 +13,7 @@
 
 		<p class="desc">创建一个沿着三维曲线延伸的管道。</p>
 
-		<iframe id="scene" src="scenes/geometry-browser.html#TubeBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#TubeGeometry"></iframe>
 
 		<script>
 
@@ -57,7 +57,7 @@
 		}
 
 		const path = new CustomSinCurve( 10 );
-		const geometry = new THREE.TubeBufferGeometry( path, 20, 2, 8, false );
+		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 );

+ 1 - 1
docs/api/zh/geometries/WireframeGeometry.html

@@ -16,7 +16,7 @@
 		<h2>代码示例</h2>
 
 		<code>
-		const geometry = new THREE.SphereBufferGeometry( 100, 100, 100 );
+		const geometry = new THREE.SphereGeometry( 100, 100, 100 );
 
 		const wireframe = new THREE.WireframeGeometry( geometry );
 

+ 1 - 1
docs/api/zh/helpers/BoxHelper.html

@@ -22,7 +22,7 @@
 		<h2>代码示例</h2>
 
 		<code>
-		const sphere = new THREE.SphereBufferGeometry();
+		const sphere = new THREE.SphereGeometry();
 		const object = new THREE.Mesh( sphere, new THREE.MeshBasicMaterial( 0xff0000 ) );
 		const box = new THREE.BoxHelper( object, 0xffff00 );
 		scene.add( box );

+ 2 - 2
docs/api/zh/lights/shadows/DirectionalLightShadow.html

@@ -37,7 +37,7 @@
 		light.shadow.camera.far = 500; // default
 
 		//Create a sphere that cast shadows (but does not receive them)
-		const sphereGeometry = new THREE.SphereBufferGeometry( 5, 32, 32 );
+		const sphereGeometry = new THREE.SphereGeometry( 5, 32, 32 );
 		const sphereMaterial = new THREE.MeshStandardMaterial( { color: 0xff0000 } );
 		const sphere = new THREE.Mesh( sphereGeometry, sphereMaterial );
 		sphere.castShadow = true; //default is false
@@ -45,7 +45,7 @@
 		scene.add( sphere );
 
 		//Create a plane that receives shadows (but does not cast them)
-		const planeGeometry = new THREE.PlaneBufferGeometry( 20, 20, 32, 32 );
+		const planeGeometry = new THREE.PlaneGeometry( 20, 20, 32, 32 );
 		const planeMaterial = new THREE.MeshStandardMaterial( { color: 0x00ff00 } )
 		const plane = new THREE.Mesh( planeGeometry, planeMaterial );
 		plane.receiveShadow = true;

+ 2 - 2
docs/api/zh/lights/shadows/PointLightShadow.html

@@ -36,7 +36,7 @@
 		light.shadow.camera.far = 500 // default
 
 		//Create a sphere that cast shadows (but does not receive them)
-		const sphereGeometry = new THREE.SphereBufferGeometry( 5, 32, 32 );
+		const sphereGeometry = new THREE.SphereGeometry( 5, 32, 32 );
 		const sphereMaterial = new THREE.MeshStandardMaterial( { color: 0xff0000 } );
 		const sphere = new THREE.Mesh( sphereGeometry, sphereMaterial );
 		sphere.castShadow = true; //default is false
@@ -44,7 +44,7 @@
 		scene.add( sphere );
 
 		//Create a plane that receives shadows (but does not cast them)
-		const planeGeometry = new THREE.PlaneBufferGeometry( 20, 20, 32, 32 );
+		const planeGeometry = new THREE.PlaneGeometry( 20, 20, 32, 32 );
 		const planeMaterial = new THREE.MeshStandardMaterial( { color: 0x00ff00 } )
 		const plane = new THREE.Mesh( planeGeometry, planeMaterial );
 		plane.receiveShadow = true;

+ 2 - 2
docs/api/zh/lights/shadows/SpotLightShadow.html

@@ -36,7 +36,7 @@
 		light.shadow.focus = 1;            // default
 
 		//Create a sphere that cast shadows (but does not receive them)
-		const sphereGeometry = new THREE.SphereBufferGeometry( 5, 32, 32 );
+		const sphereGeometry = new THREE.SphereGeometry( 5, 32, 32 );
 		const sphereMaterial = new THREE.MeshStandardMaterial( { color: 0xff0000 } );
 		const sphere = new THREE.Mesh( sphereGeometry, sphereMaterial );
 		sphere.castShadow = true; //default is false
@@ -44,7 +44,7 @@
 		scene.add( sphere );
 
 		//Create a plane that receives shadows (but does not cast them)
-		const planeGeometry = new THREE.PlaneBufferGeometry( 20, 20, 32, 32 );
+		const planeGeometry = new THREE.PlaneGeometry( 20, 20, 32, 32 );
 		const planeMaterial = new THREE.MeshStandardMaterial( { color: 0x00ff00 } )
 		const plane = new THREE.Mesh( planeGeometry, planeMaterial );
 		plane.receiveShadow = true;

+ 1 - 1
docs/api/zh/materials/ShadowMaterial.html

@@ -18,7 +18,7 @@
 		<h2>代码示例</h2>
 
 		<code>
-		const geometry = new THREE.PlaneBufferGeometry( 2000, 2000 );
+		const geometry = new THREE.PlaneGeometry( 2000, 2000 );
 		geometry.rotateX( - Math.PI / 2 );
 
 		const material = new THREE.ShadowMaterial();

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

@@ -19,7 +19,7 @@
 		const box = new THREE.Box3();
 
 		const mesh = new THREE.Mesh(
-			new THREE.SphereBufferGeometry(),
+			new THREE.SphereGeometry(),
 			new THREE.MeshBasicMaterial()
 		);
 

+ 1 - 1
docs/api/zh/objects/Group.html

@@ -18,7 +18,7 @@
 		<h2>代码示例</h2>
 
 		<code>
-		const geometry = new THREE.BoxBufferGeometry( 1, 1, 1 );
+		const geometry = new THREE.BoxGeometry( 1, 1, 1 );
 		const material = new THREE.MeshBasicMaterial( {color: 0x00ff00} );
 
 		const cubeA = new THREE.Mesh( geometry, material );

+ 1 - 1
docs/api/zh/objects/LOD.html

@@ -25,7 +25,7 @@
 		//Create spheres with 3 levels of detail and create new LOD levels for them
 		for( let i = 0; i < 3; i++ ) {
 
-			const geometry = new THREE.IcosahedronBufferGeometry( 10, 3 - i )
+			const geometry = new THREE.IcosahedronGeometry( 10, 3 - i )
 
 			const mesh = new THREE.Mesh( geometry, material );
 

+ 1 - 1
docs/api/zh/objects/Mesh.html

@@ -20,7 +20,7 @@
 		<h2>代码示例</h2>
 
 		<code>
-		const geometry = new THREE.BoxBufferGeometry( 1, 1, 1 );
+		const geometry = new THREE.BoxGeometry( 1, 1, 1 );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const mesh = new THREE.Mesh( geometry, material );
 		scene.add( mesh );

+ 1 - 1
docs/api/zh/objects/SkinnedMesh.html

@@ -37,7 +37,7 @@
 		<h2>代码示例</h2>
 
 		<code>
-		const geometry = new THREE.CylinderBufferGeometry( 5, 5, 5, 5, 15, 5, 30 );
+		const geometry = new THREE.CylinderGeometry( 5, 5, 5, 5, 15, 5, 30 );
 
 		// create the skin indices and skin weights
 

+ 0 - 44
docs/examples/en/geometries/ConvexBufferGeometry.html

@@ -1,44 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../" />
-		<script src="page.js"></script>
-		<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] 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>Code Example</h2>
-
-		<code>const geometry = new ConvexBufferGeometry( points );
-		const material = new THREE.MeshBasicMaterial( {color: 0x00ff00} );
-		const mesh = new THREE.Mesh( geometry, material );
-		scene.add( mesh );
-		</code>
-
-		<h2>Examples</h2>
-
-		<p>[example:webgl_geometry_convex geometry / convex ]</p>
-
-		<h2>Constructor</h2>
-
-		<h3>[name]( [param:Array points] )</h3>
-		<p>
-		points — Array of [page:Vector3 Vector3s] that the resulting convex hull will contain.
-		</p>
-
-
-		<h2>Source</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/geometries/ConvexGeometry.js examples/jsm/geometries/ConvexGeometry.js]
-		</p>
-	</body>
-</html>

+ 1 - 1
docs/examples/en/geometries/ConvexGeometry.html

@@ -7,7 +7,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:Geometry] &rarr;
+		[page:BufferGeometry] &rarr;
 
 		<h1>[name]</h1>
 

+ 1 - 1
docs/examples/en/helpers/VertexNormalsHelper.html

@@ -20,7 +20,7 @@
 		<h2>Code Example</h2>
 
 		<code>
-		const geometry = new THREE.BoxBufferGeometry( 10, 10, 10, 2, 2, 2 );
+		const geometry = new THREE.BoxGeometry( 10, 10, 10, 2, 2, 2 );
 		const material = new THREE.MeshBasicMaterial( { color: 0xff0000 } );
 		const box = new THREE.Mesh( geometry, material );
 

+ 1 - 1
docs/examples/en/helpers/VertexTangentsHelper.html

@@ -21,7 +21,7 @@
 
 		<h2>Code Example</h2>
 		<code>
-		const geometry = new THREE.BoxBufferGeometry( 10, 10, 10, 2, 2, 2 );
+		const geometry = new THREE.BoxGeometry( 10, 10, 10, 2, 2, 2 );
 		const material = new THREE.MeshNormalMaterial();
 		const box = new THREE.Mesh( geometry, material );
 

+ 1 - 1
docs/examples/en/loaders/SVGLoader.html

@@ -46,7 +46,7 @@
 					for ( let j = 0; j < shapes.length; j ++ ) {
 
 						const shape = shapes[ j ];
-						const geometry = new THREE.ShapeBufferGeometry( shape );
+						const geometry = new THREE.ShapeGeometry( shape );
 						const mesh = new THREE.Mesh( geometry, material );
 						group.add( mesh );
 

+ 0 - 44
docs/examples/zh/geometries/ConvexBufferGeometry.html

@@ -1,44 +0,0 @@
-<!DOCTYPE html>
-<html lang="zh">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../" />
-		<script src="page.js"></script>
-		<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] 可被用于为传入的一组点生成凸包。
-				该任务的平均时间复杂度被认为是O(nlog(n))。</p>
-
-		<h2>代码示例</h2>
-
-		<code>const geometry = new ConvexBufferGeometry( points );
-		const material = new THREE.MeshBasicMaterial( {color: 0x00ff00} );
-		const mesh = new THREE.Mesh( geometry, material );
-		scene.add( mesh );
-		</code>
-
-		<h2>例子</h2>
-
-		<p>[example:webgl_geometry_convex geometry / convex ]</p>
-
-		<h2>Constructor</h2>
-
-		<h3>[name]( [param:Array points] )</h3>
-		<p>
-		points — 所得凸包中将包含的一组[page:Vector3 Vector3]。
-		</p>
-
-
-		<h2>源代码</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/geometries/ConvexGeometry.js examples/jsm/geometries/ConvexGeometry.js]
-		</p>
-	</body>
-</html>

+ 1 - 1
docs/examples/zh/geometries/ConvexGeometry.html

@@ -7,7 +7,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:Geometry] &rarr;
+		[page:BufferGeometry] &rarr;
 
 		<h1>凸包几何体([name])</h1>
 

+ 1 - 1
docs/examples/zh/helpers/VertexNormalsHelper.html

@@ -20,7 +20,7 @@
 		<h2>代码示例</h2>
 
 		<code>
-		const geometry = new THREE.BoxBufferGeometry( 10, 10, 10, 2, 2, 2 );
+		const geometry = new THREE.BoxGeometry( 10, 10, 10, 2, 2, 2 );
 		const material = new THREE.MeshBasicMaterial( { color: 0xff0000 } );
 		const box = new THREE.Mesh( geometry, material );
 

+ 1 - 1
docs/examples/zh/helpers/VertexTangentsHelper.html

@@ -22,7 +22,7 @@
 		<h2>代码示例</h2>
 
 		<code>
-		const geometry = new THREE.BoxBufferGeometry( 10, 10, 10, 2, 2, 2 );
+		const geometry = new THREE.BoxGeometry( 10, 10, 10, 2, 2, 2 );
 		const material = new THREE.MeshNormalMaterial();
 		const box = new THREE.Mesh( geometry, material );
 

+ 1 - 1
docs/examples/zh/loaders/SVGLoader.html

@@ -46,7 +46,7 @@
 					for ( let j = 0; j < shapes.length; j ++ ) {
 
 						const shape = shapes[ j ];
-						const geometry = new THREE.ShapeBufferGeometry( shape );
+						const geometry = new THREE.ShapeGeometry( shape );
 						const mesh = new THREE.Mesh( geometry, material );
 						group.add( mesh );
 

+ 40 - 42
docs/list.json

@@ -142,27 +142,27 @@
 			},
 
 			"Geometries": {
-				"BoxBufferGeometry": "api/en/geometries/BoxBufferGeometry",
-				"CircleBufferGeometry": "api/en/geometries/CircleBufferGeometry",
-				"ConeBufferGeometry": "api/en/geometries/ConeBufferGeometry",
-				"CylinderBufferGeometry": "api/en/geometries/CylinderBufferGeometry",
-				"DodecahedronBufferGeometry": "api/en/geometries/DodecahedronBufferGeometry",
+				"BoxGeometry": "api/en/geometries/BoxGeometry",
+				"CircleGeometry": "api/en/geometries/CircleGeometry",
+				"ConeGeometry": "api/en/geometries/ConeGeometry",
+				"CylinderGeometry": "api/en/geometries/CylinderGeometry",
+				"DodecahedronGeometry": "api/en/geometries/DodecahedronGeometry",
 				"EdgesGeometry": "api/en/geometries/EdgesGeometry",
-				"ExtrudeBufferGeometry": "api/en/geometries/ExtrudeBufferGeometry",
-				"IcosahedronBufferGeometry": "api/en/geometries/IcosahedronBufferGeometry",
-				"LatheBufferGeometry": "api/en/geometries/LatheBufferGeometry",
-				"OctahedronBufferGeometry": "api/en/geometries/OctahedronBufferGeometry",
-				"ParametricBufferGeometry": "api/en/geometries/ParametricBufferGeometry",
-				"PlaneBufferGeometry": "api/en/geometries/PlaneBufferGeometry",
-				"PolyhedronBufferGeometry": "api/en/geometries/PolyhedronBufferGeometry",
-				"RingBufferGeometry": "api/en/geometries/RingBufferGeometry",
-				"ShapeBufferGeometry": "api/en/geometries/ShapeBufferGeometry",
-				"SphereBufferGeometry": "api/en/geometries/SphereBufferGeometry",
-				"TetrahedronBufferGeometry": "api/en/geometries/TetrahedronBufferGeometry",
-				"TextBufferGeometry": "api/en/geometries/TextBufferGeometry",
-				"TorusBufferGeometry": "api/en/geometries/TorusBufferGeometry",
-				"TorusKnotBufferGeometry": "api/en/geometries/TorusKnotBufferGeometry",
-				"TubeBufferGeometry": "api/en/geometries/TubeBufferGeometry",
+				"ExtrudeGeometry": "api/en/geometries/ExtrudeGeometry",
+				"IcosahedronGeometry": "api/en/geometries/IcosahedronGeometry",
+				"LatheGeometry": "api/en/geometries/LatheGeometry",
+				"OctahedronGeometry": "api/en/geometries/OctahedronGeometry",
+				"ParametricGeometry": "api/en/geometries/ParametricGeometry",
+				"PlaneGeometry": "api/en/geometries/PlaneGeometry",
+				"PolyhedronGeometry": "api/en/geometries/PolyhedronGeometry",
+				"RingGeometry": "api/en/geometries/RingGeometry",
+				"ShapeGeometry": "api/en/geometries/ShapeGeometry",
+				"SphereGeometry": "api/en/geometries/SphereGeometry",
+				"TetrahedronGeometry": "api/en/geometries/TetrahedronGeometry",
+				"TextGeometry": "api/en/geometries/TextGeometry",
+				"TorusGeometry": "api/en/geometries/TorusGeometry",
+				"TorusKnotGeometry": "api/en/geometries/TorusKnotGeometry",
+				"TubeGeometry": "api/en/geometries/TubeGeometry",
 				"WireframeGeometry": "api/en/geometries/WireframeGeometry"
 			},
 
@@ -352,7 +352,6 @@
 			},
 
 			"Geometries": {
-				"ConvexBufferGeometry": "examples/en/geometries/ConvexBufferGeometry",
 				"ConvexGeometry": "examples/en/geometries/ConvexGeometry",
 				"DecalGeometry": "examples/en/geometries/DecalGeometry"
 			},
@@ -656,27 +655,27 @@
 			},
 
 			"几何体": {
-				"BoxBufferGeometry": "api/zh/geometries/BoxBufferGeometry",
-				"CircleBufferGeometry": "api/zh/geometries/CircleBufferGeometry",
-				"ConeBufferGeometry": "api/zh/geometries/ConeBufferGeometry",
-				"CylinderBufferGeometry": "api/zh/geometries/CylinderBufferGeometry",
-				"DodecahedronBufferGeometry": "api/zh/geometries/DodecahedronBufferGeometry",
+				"BoxGeometry": "api/zh/geometries/BoxGeometry",
+				"CircleGeometry": "api/zh/geometries/CircleGeometry",
+				"ConeGeometry": "api/zh/geometries/ConeGeometry",
+				"CylinderGeometry": "api/zh/geometries/CylinderGeometry",
+				"DodecahedronGeometry": "api/zh/geometries/DodecahedronGeometry",
 				"EdgesGeometry": "api/zh/geometries/EdgesGeometry",
-				"ExtrudeBufferGeometry": "api/zh/geometries/ExtrudeBufferGeometry",
-				"IcosahedronBufferGeometry": "api/zh/geometries/IcosahedronBufferGeometry",
-				"LatheBufferGeometry": "api/zh/geometries/LatheBufferGeometry",
-				"OctahedronBufferGeometry": "api/zh/geometries/OctahedronBufferGeometry",
-				"ParametricBufferGeometry": "api/zh/geometries/ParametricBufferGeometry",
-				"PlaneBufferGeometry": "api/zh/geometries/PlaneBufferGeometry",
-				"PolyhedronBufferGeometry": "api/zh/geometries/PolyhedronBufferGeometry",
-				"RingBufferGeometry": "api/zh/geometries/RingBufferGeometry",
-				"ShapeBufferGeometry": "api/zh/geometries/ShapeBufferGeometry",
-				"SphereBufferGeometry": "api/zh/geometries/SphereBufferGeometry",
-				"TetrahedronBufferGeometry": "api/zh/geometries/TetrahedronBufferGeometry",
-				"TextBufferGeometry": "api/zh/geometries/TextBufferGeometry",
-				"TorusBufferGeometry": "api/zh/geometries/TorusBufferGeometry",
-				"TorusKnotBufferGeometry": "api/zh/geometries/TorusKnotBufferGeometry",
-				"TubeBufferGeometry": "api/zh/geometries/TubeBufferGeometry",
+				"ExtrudeGeometry": "api/zh/geometries/ExtrudeGeometry",
+				"IcosahedronGeometry": "api/zh/geometries/IcosahedronGeometry",
+				"LatheGeometry": "api/zh/geometries/LatheGeometry",
+				"OctahedronGeometry": "api/zh/geometries/OctahedronGeometry",
+				"ParametricGeometry": "api/zh/geometries/ParametricGeometry",
+				"PlaneGeometry": "api/zh/geometries/PlaneGeometry",
+				"PolyhedronGeometry": "api/zh/geometries/PolyhedronGeometry",
+				"RingGeometry": "api/zh/geometries/RingGeometry",
+				"ShapeGeometry": "api/zh/geometries/ShapeGeometry",
+				"SphereGeometry": "api/zh/geometries/SphereGeometry",
+				"TetrahedronGeometry": "api/zh/geometries/TetrahedronGeometry",
+				"TextGeometry": "api/zh/geometries/TextGeometry",
+				"TorusGeometry": "api/zh/geometries/TorusGeometry",
+				"TorusKnotGeometry": "api/zh/geometries/TorusKnotGeometry",
+				"TubeGeometry": "api/zh/geometries/TubeGeometry",
 				"WireframeGeometry": "api/zh/geometries/WireframeGeometry"
 			},
 
@@ -866,7 +865,6 @@
 			},
 
 			"几何体": {
-				"ConvexBufferGeometry": "examples/zh/geometries/ConvexBufferGeometry",
 				"ConvexGeometry": "examples/zh/geometries/ConvexGeometry",
 				"DecalGeometry": "examples/zh/geometries/DecalGeometry"
 			},

+ 4 - 4
docs/manual/ar/introduction/Creating-a-scene.html

@@ -121,7 +121,7 @@
 		</p>
 
 		<code>
-		const geometry = new THREE.BoxBufferGeometry();
+		const geometry = new THREE.BoxGeometry();
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const cube = new THREE.Mesh( geometry, material );
 		scene.add( cube );
@@ -130,7 +130,7 @@
 		</code>
 
 		<p>
-			لكي نقوم بإنشاء مكعب، نحتاج مكون <strong>BoxBufferGeometry</strong>. هذا الأخير مسؤول عن حفض أماكن كل النقاط
+			لكي نقوم بإنشاء مكعب، نحتاج مكون <strong>BoxGeometry</strong>. هذا الأخير مسؤول عن حفض أماكن كل النقاط
 			(<strong>vertices</strong>) و تعبئة كل الأوجه
 			(<strong>faces</strong>) المكونة للمكعب. سنقوم بالتعمق في هذا الموضوع مستقبلا.
 		</p>
@@ -218,7 +218,7 @@
 		</p>
 
 		<p>
-			الشفرة البرمجية الكاملة في الأسفل إلى جانب محرر مباشر [link:https://jsfiddle.net/zpcswh8m/ live example].
+			الشفرة البرمجية الكاملة في الأسفل إلى جانب محرر مباشر [link:https://jsfiddle.net/fxurzeb4/ live example].
 			أنت
 			مدعو للعب بالأوامر البرمجية لكي تصبح صورة كيفية عملها أوضح من قبل.
 		</p>
@@ -241,7 +241,7 @@
 					renderer.setSize( window.innerWidth, window.innerHeight );
 					document.body.appendChild( renderer.domElement );
 
-					const geometry = new THREE.BoxBufferGeometry();
+					const geometry = new THREE.BoxGeometry();
 					const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 					const cube = new THREE.Mesh( geometry, material );
 					scene.add( cube );

+ 4 - 4
docs/manual/en/introduction/Creating-a-scene.html

@@ -70,7 +70,7 @@
 		<p><em>"That's all good, but where's that cube you promised?"</em> Let's add it now.</p>
 
 		<code>
-		const geometry = new THREE.BoxBufferGeometry();
+		const geometry = new THREE.BoxGeometry();
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const cube = new THREE.Mesh( geometry, material );
 		scene.add( cube );
@@ -78,7 +78,7 @@
 		camera.position.z = 5;
 		</code>
 
-		<p>To create a cube, we need a <strong>BoxBufferGeometry</strong>. This is an object that contains all the points (<strong>vertices</strong>) and fill (<strong>faces</strong>) of the cube. We'll explore this more in the future.</p>
+		<p>To create a cube, we need a <strong>BoxGeometry</strong>. This is an object that contains all the points (<strong>vertices</strong>) and fill (<strong>faces</strong>) of the cube. We'll explore this more in the future.</p>
 
 		<p>In addition to the geometry, we need a material to color it. Three.js comes with several materials, but we'll stick to the <strong>MeshBasicMaterial</strong> for now. All materials take an object of properties which will be applied to them. To keep things very simple, we only supply a color attribute of <strong>0x00ff00</strong>, which is green. This works the same way that colors work in CSS or Photoshop (<strong>hex colors</strong>).</p>
 
@@ -116,7 +116,7 @@
 		<h2>The result</h2>
 		<p>Congratulations! You have now completed your first three.js application. It's simple, you have to start somewhere.</p>
 
-		<p>The full code is available below and as an editable [link:https://jsfiddle.net/zpcswh8m/ live example]. Play around with it to get a better understanding of how it works.</p>
+		<p>The full code is available below and as an editable [link:https://jsfiddle.net/fxurzeb4/ live example]. Play around with it to get a better understanding of how it works.</p>
 
 		<code>
 		&lt;!DOCTYPE html&gt;
@@ -137,7 +137,7 @@
 					renderer.setSize( window.innerWidth, window.innerHeight );
 					document.body.appendChild( renderer.domElement );
 
-					const geometry = new THREE.BoxBufferGeometry();
+					const geometry = new THREE.BoxGeometry();
 					const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 					const cube = new THREE.Mesh( geometry, material );
 					scene.add( cube );

+ 4 - 4
docs/manual/ko/introduction/Creating-a-scene.html

@@ -71,7 +71,7 @@
 		<p><em>"그건 그렇고, 아까 말했던 큐브는 어디에 있죠?"</em> 바로 추가해 봅시다.</p>
 
 		<code>
-		const geometry = new THREE.BoxBufferGeometry();
+		const geometry = new THREE.BoxGeometry();
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const cube = new THREE.Mesh( geometry, material );
 		scene.add( cube );
@@ -79,7 +79,7 @@
 		camera.position.z = 5;
 		</code>
 
-		<p>큐브를 만드려면, <strong>BoxBufferGeometry</strong>가 필요합니다. 여기에는 큐브에 필요한 모든 꼭짓점 (<strong>vertices</strong>) 와 면(<strong>faces</strong>)이 포함돼 있습니다. 여기에 대해서는 나중에 더 자세히 알아봅시다.</p>
+		<p>큐브를 만드려면, <strong>BoxGeometry</strong>가 필요합니다. 여기에는 큐브에 필요한 모든 꼭짓점 (<strong>vertices</strong>) 와 면(<strong>faces</strong>)이 포함돼 있습니다. 여기에 대해서는 나중에 더 자세히 알아봅시다.</p>
 
 		<p>geometry와 더불어, 무언가를 색칠해줄 요소가 필요합니다. Three.js에서는 여러 방법을 고려했지만, 현재로서는<strong>MeshBasicMaterial</strong>을 고수하고자 합니다. 이 속성이 적용된 오브젝트들은 모두 영향을 받을 것입니다. 가장 단순하게 알아볼 수 있도록, 여기에서는 녹색인 <strong>0x00ff00</strong>만을 속성으로 사용하겠습니다. CSS 나 Photoshop에서처럼 (<strong>hex colors</strong>)로 동일하게 작동합니다.</p>
 
@@ -117,7 +117,7 @@
 		<h2>결과 화면</h2>
 		<p>축하합니다! 첫 three.js이 완성되었네요. 이제 본격적으로 시작해보면 됩니다.</p>
 
-		<p>전체 코드는 아래에 나와 있고 [link:https://jsfiddle.net/zpcswh8m/ live example]로도 확인해볼 수 있습니다. 잘 살펴보고 어떻게 구동되는지 확인해 보세요.</p>
+		<p>전체 코드는 아래에 나와 있고 [link:https://jsfiddle.net/fxurzeb4/ live example]로도 확인해볼 수 있습니다. 잘 살펴보고 어떻게 구동되는지 확인해 보세요.</p>
 
 		<code>
 		&lt;!DOCTYPE html&gt;
@@ -139,7 +139,7 @@
 					renderer.setSize( window.innerWidth, window.innerHeight );
 					document.body.appendChild( renderer.domElement );
 
-					const geometry = new THREE.BoxBufferGeometry();
+					const geometry = new THREE.BoxGeometry();
 					const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 					const cube = new THREE.Mesh( geometry, material );
 					scene.add( cube );

+ 4 - 4
docs/manual/zh/introduction/Creating-a-scene.html

@@ -70,7 +70,7 @@
 		<p><em>“嗯,看起来很不错,那你说的那个立方体在哪儿?”</em>接下来,我们就来添加立方体。</p>
 
 		<code>
-		const geometry = new THREE.BoxBufferGeometry();
+		const geometry = new THREE.BoxGeometry();
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const cube = new THREE.Mesh( geometry, material );
 		scene.add( cube );
@@ -78,7 +78,7 @@
 		camera.position.z = 5;
 		</code>
 
-		<p>要创建一个立方体,我们需要一个<strong>BoxBufferGeometry</strong>(立方体)对象. 这个对象包含了一个立方体中所有的顶点(<strong>vertices</strong>)和面(<strong>faces</strong>)。未来我们将在这方面进行更多的探索。</p>
+		<p>要创建一个立方体,我们需要一个<strong>BoxGeometry</strong>(立方体)对象. 这个对象包含了一个立方体中所有的顶点(<strong>vertices</strong>)和面(<strong>faces</strong>)。未来我们将在这方面进行更多的探索。</p>
 
 		<p>接下来,对于这个立方体,我们需要给它一个材质,来让它有颜色。Three.js自带了几种材质,在这里我们使用的是<strong>MeshBasicMaterial</strong>。所有的材质都存有应用于他们的属性的对象。在这里为了简单起见,我们只设置一个color属性,值为<strong>0x00ff00</strong>,也就是绿色。这里所做的事情,和在CSS或者Photoshop中使用十六进制(<strong>hex colors</strong>)颜色格式来设置颜色的方式一致。</p>
 
@@ -117,7 +117,7 @@
 		<h2>结果</h2>
 		<p>祝贺你!你现在已经成功完成了你的第一个Three.js应用程序。虽然它很简单,但现在你已经有了一个入门的起点。</p>
 
-		<p>下面是完整的代码,可在[link:https://jsfiddle.net/zpcswh8m/ live example]运行、编辑;运行或者修改代码有助于你更好的理解它是如何工作的。</p>
+		<p>下面是完整的代码,可在[link:https://jsfiddle.net/fxurzeb4/ live example]运行、编辑;运行或者修改代码有助于你更好的理解它是如何工作的。</p>
 
 		<code>
 		&lt;html&gt;
@@ -137,7 +137,7 @@
 					renderer.setSize( window.innerWidth, window.innerHeight );
 					document.body.appendChild( renderer.domElement );
 
-					const geometry = new THREE.BoxBufferGeometry();
+					const geometry = new THREE.BoxGeometry();
 					const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 					const cube = new THREE.Mesh( geometry, material );
 					scene.add( cube );

+ 2 - 2
docs/scenes/bones-browser.html

@@ -29,7 +29,7 @@
 			import {
 				Bone,
 				Color,
-				CylinderBufferGeometry,
+				CylinderGeometry,
 				DoubleSide,
 				Float32BufferAttribute,
 				MeshPhongMaterial,
@@ -101,7 +101,7 @@
 
 			function createGeometry( sizing ) {
 
-				const geometry = new CylinderBufferGeometry(
+				const geometry = new CylinderGeometry(
 					5, // radiusTop
 					5, // radiusBottom
 					sizing.height, // height

+ 79 - 79
docs/scenes/geometry-browser.html

@@ -27,40 +27,40 @@
 
 		<script type="module">
 			import {
-				BoxBufferGeometry,
+				BoxGeometry,
 				BufferGeometry,
-				CircleBufferGeometry,
+				CircleGeometry,
 				Color,
-				ConeBufferGeometry,
+				ConeGeometry,
 				Curve,
-				CylinderBufferGeometry,
-				DodecahedronBufferGeometry,
+				CylinderGeometry,
+				DodecahedronGeometry,
 				DoubleSide,
-				ExtrudeBufferGeometry,
+				ExtrudeGeometry,
 				Float32BufferAttribute,
 				FontLoader,
 				Group,
-				IcosahedronBufferGeometry,
-				LatheBufferGeometry,
+				IcosahedronGeometry,
+				LatheGeometry,
 				LineSegments,
 				LineBasicMaterial,
 				Mesh,
 				MeshPhongMaterial,
-				OctahedronBufferGeometry,
-				ParametricBufferGeometry,
+				OctahedronGeometry,
+				ParametricGeometry,
 				PerspectiveCamera,
-				PlaneBufferGeometry,
+				PlaneGeometry,
 				PointLight,
-				RingBufferGeometry,
+				RingGeometry,
 				Scene,
 				Shape,
-				ShapeBufferGeometry,
-				SphereBufferGeometry,
-				TetrahedronBufferGeometry,
-				TextBufferGeometry,
-				TorusBufferGeometry,
-				TorusKnotBufferGeometry,
-				TubeBufferGeometry,
+				ShapeGeometry,
+				SphereGeometry,
+				TetrahedronGeometry,
+				TextGeometry,
+				TorusGeometry,
+				TorusKnotGeometry,
+				TubeGeometry,
 				Vector2,
 				Vector3,
 				WireframeGeometry,
@@ -123,7 +123,7 @@
 
 			const guis = {
 
-				BoxBufferGeometry: function ( mesh ) {
+				BoxGeometry: function ( mesh ) {
 
 					const data = {
 						width: 15,
@@ -137,14 +137,14 @@
 					function generateGeometry() {
 
 						updateGroupGeometry( mesh,
-							new BoxBufferGeometry(
+							new BoxGeometry(
 								data.width, data.height, data.depth, data.widthSegments, data.heightSegments, data.depthSegments
 							)
 						);
 
 					}
 
-					const folder = gui.addFolder( 'THREE.BoxBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.BoxGeometry' );
 
 					folder.add( data, 'width', 1, 30 ).onChange( generateGeometry );
 					folder.add( data, 'height', 1, 30 ).onChange( generateGeometry );
@@ -157,7 +157,7 @@
 
 				},
 
-				CylinderBufferGeometry: function ( mesh ) {
+				CylinderGeometry: function ( mesh ) {
 
 					const data = {
 						radiusTop: 5,
@@ -173,7 +173,7 @@
 					function generateGeometry() {
 
 						updateGroupGeometry( mesh,
-							new CylinderBufferGeometry(
+							new CylinderGeometry(
 								data.radiusTop,
 								data.radiusBottom,
 								data.height,
@@ -187,7 +187,7 @@
 
 					}
 
-					const folder = gui.addFolder( 'THREE.CylinderBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.CylinderGeometry' );
 
 					folder.add( data, 'radiusTop', 0, 30 ).onChange( generateGeometry );
 					folder.add( data, 'radiusBottom', 0, 30 ).onChange( generateGeometry );
@@ -203,7 +203,7 @@
 
 				},
 
-				ConeBufferGeometry: function ( mesh ) {
+				ConeGeometry: function ( mesh ) {
 
 					const data = {
 						radius: 5,
@@ -218,7 +218,7 @@
 					function generateGeometry() {
 
 						updateGroupGeometry( mesh,
-							new ConeBufferGeometry(
+							new ConeGeometry(
 								data.radius,
 								data.height,
 								data.radialSegments,
@@ -231,7 +231,7 @@
 
 					}
 
-					const folder = gui.addFolder( 'THREE.ConeBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.ConeGeometry' );
 
 					folder.add( data, 'radius', 0, 30 ).onChange( generateGeometry );
 					folder.add( data, 'height', 1, 50 ).onChange( generateGeometry );
@@ -246,7 +246,7 @@
 
 				},
 
-				CircleBufferGeometry: function ( mesh ) {
+				CircleGeometry: function ( mesh ) {
 
 					const data = {
 						radius: 10,
@@ -258,14 +258,14 @@
 					function generateGeometry() {
 
 						updateGroupGeometry( mesh,
-							new CircleBufferGeometry(
+							new CircleGeometry(
 								data.radius, data.segments, data.thetaStart, data.thetaLength
 							)
 						);
 
 					}
 
-					const folder = gui.addFolder( 'THREE.CircleBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.CircleGeometry' );
 
 					folder.add( data, 'radius', 1, 20 ).onChange( generateGeometry );
 					folder.add( data, 'segments', 0, 128 ).step( 1 ).onChange( generateGeometry );
@@ -276,7 +276,7 @@
 
 				},
 
-				DodecahedronBufferGeometry: function ( mesh ) {
+				DodecahedronGeometry: function ( mesh ) {
 
 					const data = {
 						radius: 10,
@@ -286,14 +286,14 @@
 					function generateGeometry() {
 
 						updateGroupGeometry( mesh,
-							new DodecahedronBufferGeometry(
+							new DodecahedronGeometry(
 								data.radius, data.detail
 							)
 						);
 
 					}
 
-					const folder = gui.addFolder( 'THREE.DodecahedronBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.DodecahedronGeometry' );
 
 					folder.add( data, 'radius', 1, 20 ).onChange( generateGeometry );
 					folder.add( data, 'detail', 0, 5 ).step( 1 ).onChange( generateGeometry );
@@ -302,7 +302,7 @@
 
 				},
 
-				IcosahedronBufferGeometry: function ( mesh ) {
+				IcosahedronGeometry: function ( mesh ) {
 
 					const data = {
 						radius: 10,
@@ -312,14 +312,14 @@
 					function generateGeometry() {
 
 						updateGroupGeometry( mesh,
-							new IcosahedronBufferGeometry(
+							new IcosahedronGeometry(
 								data.radius, data.detail
 							)
 						);
 
 					}
 
-					const folder = gui.addFolder( 'THREE.IcosahedronBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.IcosahedronGeometry' );
 
 					folder.add( data, 'radius', 1, 20 ).onChange( generateGeometry );
 					folder.add( data, 'detail', 0, 5 ).step( 1 ).onChange( generateGeometry );
@@ -328,7 +328,7 @@
 
 				},
 
-				LatheBufferGeometry: function ( mesh ) {
+				LatheGeometry: function ( mesh ) {
 
 					const points = [];
 
@@ -346,7 +346,7 @@
 
 					function generateGeometry() {
 
-						const geometry = new LatheBufferGeometry(
+						const geometry = new LatheGeometry(
 							points, data.segments, data.phiStart, data.phiLength
 						);
 
@@ -354,7 +354,7 @@
 
 					}
 
-					const folder = gui.addFolder( 'THREE.LatheBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.LatheGeometry' );
 
 					folder.add( data, 'segments', 1, 30 ).step( 1 ).onChange( generateGeometry );
 					folder.add( data, 'phiStart', 0, twoPi ).onChange( generateGeometry );
@@ -364,7 +364,7 @@
 
 				},
 
-				OctahedronBufferGeometry: function ( mesh ) {
+				OctahedronGeometry: function ( mesh ) {
 
 					const data = {
 						radius: 10,
@@ -374,14 +374,14 @@
 					function generateGeometry() {
 
 						updateGroupGeometry( mesh,
-							new OctahedronBufferGeometry(
+							new OctahedronGeometry(
 								data.radius, data.detail
 							)
 						);
 
 					}
 
-					const folder = gui.addFolder( 'THREE.OctahedronBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.OctahedronGeometry' );
 
 					folder.add( data, 'radius', 1, 20 ).onChange( generateGeometry );
 					folder.add( data, 'detail', 0, 5 ).step( 1 ).onChange( generateGeometry );
@@ -390,7 +390,7 @@
 
 				},
 
-				PlaneBufferGeometry: function ( mesh ) {
+				PlaneGeometry: function ( mesh ) {
 
 					const data = {
 						width: 10,
@@ -402,14 +402,14 @@
 					function generateGeometry() {
 
 						updateGroupGeometry( mesh,
-							new PlaneBufferGeometry(
+							new PlaneGeometry(
 								data.width, data.height, data.widthSegments, data.heightSegments
 							)
 						);
 
 					}
 
-					const folder = gui.addFolder( 'THREE.PlaneBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.PlaneGeometry' );
 
 					folder.add( data, 'width', 1, 30 ).onChange( generateGeometry );
 					folder.add( data, 'height', 1, 30 ).onChange( generateGeometry );
@@ -420,7 +420,7 @@
 
 				},
 
-				RingBufferGeometry: function ( mesh ) {
+				RingGeometry: function ( mesh ) {
 
 					const data = {
 						innerRadius: 5,
@@ -434,14 +434,14 @@
 					function generateGeometry() {
 
 						updateGroupGeometry( mesh,
-							new RingBufferGeometry(
+							new RingGeometry(
 								data.innerRadius, data.outerRadius, data.thetaSegments, data.phiSegments, data.thetaStart, data.thetaLength
 							)
 						);
 
 					}
 
-					const folder = gui.addFolder( 'THREE.RingBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.RingGeometry' );
 
 					folder.add( data, 'innerRadius', 1, 30 ).onChange( generateGeometry );
 					folder.add( data, 'outerRadius', 1, 30 ).onChange( generateGeometry );
@@ -454,7 +454,7 @@
 
 				},
 
-				SphereBufferGeometry: function ( mesh ) {
+				SphereGeometry: function ( mesh ) {
 
 					const data = {
 						radius: 15,
@@ -469,14 +469,14 @@
 					function generateGeometry() {
 
 						updateGroupGeometry( mesh,
-							new SphereBufferGeometry(
+							new SphereGeometry(
 								data.radius, data.widthSegments, data.heightSegments, data.phiStart, data.phiLength, data.thetaStart, data.thetaLength
 							)
 						);
 
 					}
 
-					const folder = gui.addFolder( 'THREE.SphereBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.SphereGeometry' );
 
 					folder.add( data, 'radius', 1, 30 ).onChange( generateGeometry );
 					folder.add( data, 'widthSegments', 3, 32 ).step( 1 ).onChange( generateGeometry );
@@ -490,7 +490,7 @@
 
 				},
 
-				TetrahedronBufferGeometry: function ( mesh ) {
+				TetrahedronGeometry: function ( mesh ) {
 
 					const data = {
 						radius: 10,
@@ -500,14 +500,14 @@
 					function generateGeometry() {
 
 						updateGroupGeometry( mesh,
-							new TetrahedronBufferGeometry(
+							new TetrahedronGeometry(
 								data.radius, data.detail
 							)
 						);
 
 					}
 
-					const folder = gui.addFolder( 'THREE.TetrahedronBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.TetrahedronGeometry' );
 
 					folder.add( data, 'radius', 1, 20 ).onChange( generateGeometry );
 					folder.add( data, 'detail', 0, 5 ).step( 1 ).onChange( generateGeometry );
@@ -516,10 +516,10 @@
 
 				},
 
-				TextBufferGeometry: function ( mesh ) {
+				TextGeometry: function ( mesh ) {
 
 					const data = {
-						text: 'TextBufferGeometry',
+						text: 'TextGeometry',
 						size: 5,
 						height: 2,
 						curveSegments: 12,
@@ -548,7 +548,7 @@
 						const loader = new FontLoader();
 						loader.load( '../../examples/fonts/' + data.font + '_' + data.weight + '.typeface.json', function ( font ) {
 
-							const geometry = new TextBufferGeometry( data.text, {
+							const geometry = new TextGeometry( data.text, {
 								font: font,
 								size: data.size,
 								height: data.height,
@@ -570,7 +570,7 @@
 					//Hide the wireframe
 					mesh.children[ 0 ].visible = false;
 
-					const folder = gui.addFolder( 'THREE.TextBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.TextGeometry' );
 
 					folder.add( data, 'text' ).onChange( generateGeometry );
 					folder.add( data, 'size', 1, 30 ).onChange( generateGeometry );
@@ -588,7 +588,7 @@
 
 				},
 
-				TorusBufferGeometry: function ( mesh ) {
+				TorusGeometry: function ( mesh ) {
 
 					const data = {
 						radius: 10,
@@ -601,14 +601,14 @@
 					function generateGeometry() {
 
 						updateGroupGeometry( mesh,
-							new TorusBufferGeometry(
+							new TorusGeometry(
 								data.radius, data.tube, data.radialSegments, data.tubularSegments, data.arc
 							)
 						);
 
 					}
 
-					const folder = gui.addFolder( 'THREE.TorusBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.TorusGeometry' );
 
 					folder.add( data, 'radius', 1, 20 ).onChange( generateGeometry );
 					folder.add( data, 'tube', 0.1, 10 ).onChange( generateGeometry );
@@ -620,7 +620,7 @@
 
 				},
 
-				TorusKnotBufferGeometry: function ( mesh ) {
+				TorusKnotGeometry: function ( mesh ) {
 
 					const data = {
 						radius: 10,
@@ -634,7 +634,7 @@
 					function generateGeometry() {
 
 						updateGroupGeometry( mesh,
-							new TorusKnotBufferGeometry(
+							new TorusKnotGeometry(
 								data.radius, data.tube, data.tubularSegments, data.radialSegments,
 								data.p, data.q
 							)
@@ -642,7 +642,7 @@
 
 					}
 
-					const folder = gui.addFolder( 'THREE.TorusKnotBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.TorusKnotGeometry' );
 
 					folder.add( data, 'radius', 1, 20 ).onChange( generateGeometry );
 					folder.add( data, 'tube', 0.1, 10 ).onChange( generateGeometry );
@@ -655,7 +655,7 @@
 
 				},
 
-				ParametricBufferGeometry: function ( mesh ) {
+				ParametricGeometry: function ( mesh ) {
 
 					const data = {
 						slices: 25,
@@ -665,12 +665,12 @@
 					function generateGeometry() {
 
 						updateGroupGeometry( mesh,
-							new ParametricBufferGeometry( ParametricGeometries.klein, data.slices, data.stacks )
+							new ParametricGeometry( ParametricGeometries.klein, data.slices, data.stacks )
 						);
 
 					}
 
-					const folder = gui.addFolder( 'THREE.ParametricBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.ParametricGeometry' );
 
 					folder.add( data, 'slices', 1, 100 ).step( 1 ).onChange( generateGeometry );
 					folder.add( data, 'stacks', 1, 100 ).step( 1 ).onChange( generateGeometry );
@@ -679,7 +679,7 @@
 
 				},
 
-				TubeBufferGeometry: function ( mesh ) {
+				TubeGeometry: function ( mesh ) {
 
 					const data = {
 						segments: 20,
@@ -692,12 +692,12 @@
 					function generateGeometry() {
 
 						updateGroupGeometry( mesh,
-							new TubeBufferGeometry( path, data.segments, data.radius, data.radialSegments, false )
+							new TubeGeometry( path, data.segments, data.radius, data.radialSegments, false )
 						);
 
 					}
 
-					const folder = gui.addFolder( 'THREE.TubeBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.TubeGeometry' );
 
 					folder.add( data, 'segments', 1, 100 ).step( 1 ).onChange( generateGeometry );
 					folder.add( data, 'radius', 1, 10 ).onChange( generateGeometry );
@@ -707,7 +707,7 @@
 
 				},
 
-				ShapeBufferGeometry: function ( mesh ) {
+				ShapeGeometry: function ( mesh ) {
 
 					const data = {
 						segments: 12
@@ -715,21 +715,21 @@
 
 					function generateGeometry() {
 
-						const geometry = new ShapeBufferGeometry( heartShape, data.segments );
+						const geometry = new ShapeGeometry( heartShape, data.segments );
 						geometry.center();
 
 						updateGroupGeometry( mesh, geometry );
 
 					}
 
-					const folder = gui.addFolder( 'THREE.ShapeBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.ShapeGeometry' );
 					folder.add( data, 'segments', 1, 100 ).step( 1 ).onChange( generateGeometry );
 
 					generateGeometry();
 
 				},
 
-				ExtrudeBufferGeometry: function ( mesh ) {
+				ExtrudeGeometry: function ( mesh ) {
 
 					const data = {
 						steps: 2,
@@ -752,14 +752,14 @@
 
 					function generateGeometry() {
 
-						const geometry = new ExtrudeBufferGeometry( shape, data );
+						const geometry = new ExtrudeGeometry( shape, data );
 						geometry.center();
 
 						updateGroupGeometry( mesh, geometry );
 
 					}
 
-					const folder = gui.addFolder( 'THREE.ExtrudeBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.ExtrudeGeometry' );
 
 					folder.add( data, 'steps', 1, 10 ).step( 1 ).onChange( generateGeometry );
 					folder.add( data, 'depth', 1, 20 ).onChange( generateGeometry );
@@ -776,7 +776,7 @@
 
 			function chooseFromHash( mesh ) {
 
-				const selectedGeometry = window.location.hash.substring( 1 ) || 'TorusBufferGeometry';
+				const selectedGeometry = window.location.hash.substring( 1 ) || 'TorusGeometry';
 
 				if ( guis[ selectedGeometry ] !== undefined ) {
 
@@ -784,7 +784,7 @@
 
 				}
 
-				if ( selectedGeometry === 'TextBufferGeometry' ) {
+				if ( selectedGeometry === 'TextGeometry' ) {
 
 					return { fixed: true };
 

+ 2 - 2
docs/scenes/material-browser.html

@@ -56,7 +56,7 @@
 				RGBFormat,
 				Scene,
 				TextureLoader,
-				TorusKnotBufferGeometry,
+				TorusKnotGeometry,
 				WebGLRenderer
 			} from "../../build/three.module.js";
 
@@ -764,7 +764,7 @@
 
 			guiScene( gui, scene, camera );
 
-			let geometry = new TorusKnotBufferGeometry( 10, 3, 100, 16 );
+			let geometry = new TorusKnotGeometry( 10, 3, 100, 16 );
 			geometry = geometry.toNonIndexed();
 
 			generateVertexColors( geometry );

+ 2 - 16
examples/js/geometries/ConvexGeometry.js

@@ -2,20 +2,6 @@
 
 THREE.ConvexGeometry = function ( points ) {
 
-	THREE.Geometry.call( this );
-
-	this.fromBufferGeometry( new THREE.ConvexBufferGeometry( points ) );
-	this.mergeVertices();
-
-};
-
-THREE.ConvexGeometry.prototype = Object.create( THREE.Geometry.prototype );
-THREE.ConvexGeometry.prototype.constructor = THREE.ConvexGeometry;
-
-// ConvexBufferGeometry
-
-THREE.ConvexBufferGeometry = function ( points ) {
-
 	THREE.BufferGeometry.call( this );
 
 	// buffers
@@ -62,5 +48,5 @@ THREE.ConvexBufferGeometry = function ( points ) {
 
 };
 
-THREE.ConvexBufferGeometry.prototype = Object.create( THREE.BufferGeometry.prototype );
-THREE.ConvexBufferGeometry.prototype.constructor = THREE.ConvexBufferGeometry;
+THREE.ConvexGeometry.prototype = Object.create( THREE.BufferGeometry.prototype );
+THREE.ConvexGeometry.prototype.constructor = THREE.ConvexGeometry;

+ 3 - 3
examples/js/misc/ConvexObjectBreaker.js

@@ -16,7 +16,7 @@
  *  - Vertex normals must be planar (not smoothed)
  *
  *  - The geometry must be convex (this is not checked in the library). You can create convex
- *  geometries with THREE.ConvexBufferGeometry. The BoxBufferGeometry, SphereBufferGeometry and other convex primitives
+ *  geometries with THREE.ConvexGeometry. The BoxBufferGeometry, SphereBufferGeometry and other convex primitives
  *  can also be used.
  *
  * Note: This lib adds member variables to object's userData member (see prepareBreakableObject function)
@@ -418,7 +418,7 @@ THREE.ConvexObjectBreaker.prototype = {
 
 		if ( numPoints1 > 4 ) {
 
-			object1 = new THREE.Mesh( new THREE.ConvexBufferGeometry( points1 ), object.material );
+			object1 = new THREE.Mesh( new THREE.ConvexGeometry( points1 ), object.material );
 			object1.position.copy( this.tempCM1 );
 			object1.quaternion.copy( object.quaternion );
 
@@ -430,7 +430,7 @@ THREE.ConvexObjectBreaker.prototype = {
 
 		if ( numPoints2 > 4 ) {
 
-			object2 = new THREE.Mesh( new THREE.ConvexBufferGeometry( points2 ), object.material );
+			object2 = new THREE.Mesh( new THREE.ConvexGeometry( points2 ), object.material );
 			object2.position.copy( this.tempCM2 );
 			object2.quaternion.copy( object.quaternion );
 

+ 1 - 8
examples/jsm/geometries/ConvexGeometry.d.ts

@@ -1,16 +1,9 @@
 import {
 	BufferGeometry,
-	Geometry,
 	Vector3
 } from '../../../src/Three';
 
-export class ConvexGeometry extends Geometry {
-
-	constructor( points: Vector3[] );
-
-}
-
-export class ConvexBufferGeometry extends BufferGeometry {
+export class ConvexGeometry extends BufferGeometry {
 
 	constructor( points: Vector3[] );
 

+ 4 - 19
examples/jsm/geometries/ConvexGeometry.js

@@ -1,7 +1,6 @@
 import {
 	BufferGeometry,
-	Float32BufferAttribute,
-	Geometry
+	Float32BufferAttribute
 } from '../../../build/three.module.js';
 import { ConvexHull } from '../math/ConvexHull.js';
 
@@ -9,20 +8,6 @@ import { ConvexHull } from '../math/ConvexHull.js';
 
 var ConvexGeometry = function ( points ) {
 
-	Geometry.call( this );
-
-	this.fromBufferGeometry( new ConvexBufferGeometry( points ) );
-	this.mergeVertices();
-
-};
-
-ConvexGeometry.prototype = Object.create( Geometry.prototype );
-ConvexGeometry.prototype.constructor = ConvexGeometry;
-
-// ConvexBufferGeometry
-
-var ConvexBufferGeometry = function ( points ) {
-
 	BufferGeometry.call( this );
 
 	// buffers
@@ -69,7 +54,7 @@ var ConvexBufferGeometry = function ( points ) {
 
 };
 
-ConvexBufferGeometry.prototype = Object.create( BufferGeometry.prototype );
-ConvexBufferGeometry.prototype.constructor = ConvexBufferGeometry;
+ConvexGeometry.prototype = Object.create( BufferGeometry.prototype );
+ConvexGeometry.prototype.constructor = ConvexGeometry;
 
-export { ConvexGeometry, ConvexBufferGeometry };
+export { ConvexGeometry };

+ 4 - 4
examples/jsm/misc/ConvexObjectBreaker.js

@@ -4,7 +4,7 @@ import {
 	Plane,
 	Vector3
 } from '../../../build/three.module.js';
-import { ConvexBufferGeometry } from '../geometries/ConvexGeometry.js';
+import { ConvexGeometry } from '../geometries/ConvexGeometry.js';
 
 /**
  * @fileoverview This class can be used to subdivide a convex Geometry object into pieces.
@@ -24,7 +24,7 @@ import { ConvexBufferGeometry } from '../geometries/ConvexGeometry.js';
  *  - Vertex normals must be planar (not smoothed)
  *
  *  - The geometry must be convex (this is not checked in the library). You can create convex
- *  geometries with ConvexBufferGeometry. The BoxBufferGeometry, SphereBufferGeometry and other convex primitives
+ *  geometries with ConvexGeometry. The BoxBufferGeometry, SphereBufferGeometry and other convex primitives
  *  can also be used.
  *
  * Note: This lib adds member variables to object's userData member (see prepareBreakableObject function)
@@ -426,7 +426,7 @@ ConvexObjectBreaker.prototype = {
 
 		if ( numPoints1 > 4 ) {
 
-			object1 = new Mesh( new ConvexBufferGeometry( points1 ), object.material );
+			object1 = new Mesh( new ConvexGeometry( points1 ), object.material );
 			object1.position.copy( this.tempCM1 );
 			object1.quaternion.copy( object.quaternion );
 
@@ -438,7 +438,7 @@ ConvexObjectBreaker.prototype = {
 
 		if ( numPoints2 > 4 ) {
 
-			object2 = new Mesh( new ConvexBufferGeometry( points2 ), object.material );
+			object2 = new Mesh( new ConvexGeometry( points2 ), object.material );
 			object2.position.copy( this.tempCM2 );
 			object2.quaternion.copy( object.quaternion );
 

+ 2 - 2
examples/jsm/physics/AmmoPhysics.js

@@ -28,7 +28,7 @@ async function AmmoPhysics() {
 
 		// TODO change type to is*
 
-		if ( geometry.type === 'BoxBufferGeometry' ) {
+		if ( geometry.type === 'BoxGeometry' ) {
 
 			const sx = parameters.width !== undefined ? parameters.width / 2 : 0.5;
 			const sy = parameters.height !== undefined ? parameters.height / 2 : 0.5;
@@ -39,7 +39,7 @@ async function AmmoPhysics() {
 
 			return shape;
 
-		} else if ( geometry.type === 'SphereBufferGeometry' || geometry.type === 'IcosahedronBufferGeometry' ) {
+		} else if ( geometry.type === 'SphereGeometry' || geometry.type === 'IcosahedronGeometry' ) {
 
 			const radius = parameters.radius !== undefined ? parameters.radius : 1;
 

+ 2 - 2
examples/physics_ammo_break.html

@@ -24,7 +24,7 @@
 
 		import { OrbitControls } from './jsm/controls/OrbitControls.js';
 		import { ConvexObjectBreaker } from './jsm/misc/ConvexObjectBreaker.js';
-		import { ConvexBufferGeometry } from './jsm/geometries/ConvexGeometry.js';
+		import { ConvexGeometry } from './jsm/geometries/ConvexGeometry.js';
 
 		// - Global variables -
 
@@ -236,7 +236,7 @@
 			mountainPoints.push( new THREE.Vector3( mountainHalfExtents.x, - mountainHalfExtents.y, - mountainHalfExtents.z ) );
 			mountainPoints.push( new THREE.Vector3( - mountainHalfExtents.x, - mountainHalfExtents.y, - mountainHalfExtents.z ) );
 			mountainPoints.push( new THREE.Vector3( 0, mountainHalfExtents.y, 0 ) );
-			const mountain = new THREE.Mesh( new ConvexBufferGeometry( mountainPoints ), createMaterial( 0xB03814 ) );
+			const mountain = new THREE.Mesh( new ConvexGeometry( mountainPoints ), createMaterial( 0xB03814 ) );
 			mountain.position.copy( pos );
 			mountain.quaternion.copy( quat );
 			convexBreaker.prepareBreakableObject( mountain, mountainMass, new THREE.Vector3(), new THREE.Vector3(), true );

+ 2 - 2
examples/webgl_geometry_convex.html

@@ -15,7 +15,7 @@
 			import * as THREE from '../build/three.module.js';
 
 			import { OrbitControls } from './jsm/controls/OrbitControls.js';
-			import { ConvexBufferGeometry } from './jsm/geometries/ConvexGeometry.js';
+			import { ConvexGeometry } from './jsm/geometries/ConvexGeometry.js';
 			import { BufferGeometryUtils } from './jsm/utils/BufferGeometryUtils.js';
 
 			let group, camera, scene, renderer;
@@ -110,7 +110,7 @@
 					transparent: true
 				} );
 
-				const meshGeometry = new ConvexBufferGeometry( vertices );
+				const meshGeometry = new ConvexGeometry( vertices );
 
 				const mesh1 = new THREE.Mesh( meshGeometry, meshMaterial );
 				mesh1.material.side = THREE.BackSide; // back faces

+ 10 - 168
src/Three.Legacy.js

@@ -37,27 +37,9 @@ import { AxesHelper } from './helpers/AxesHelper.js';
 import { BoxHelper } from './helpers/BoxHelper.js';
 import { GridHelper } from './helpers/GridHelper.js';
 import { SkeletonHelper } from './helpers/SkeletonHelper.js';
-import { BoxBufferGeometry } from './geometries/BoxBufferGeometry.js';
-import { CircleBufferGeometry } from './geometries/CircleBufferGeometry.js';
-import { ConeBufferGeometry } from './geometries/ConeBufferGeometry.js';
-import { CylinderBufferGeometry } from './geometries/CylinderBufferGeometry.js';
-import { DodecahedronBufferGeometry } from './geometries/DodecahedronBufferGeometry.js';
 import { EdgesGeometry } from './geometries/EdgesGeometry.js';
-import { ExtrudeBufferGeometry } from './geometries/ExtrudeBufferGeometry.js';
-import { IcosahedronBufferGeometry } from './geometries/IcosahedronBufferGeometry.js';
-import { LatheBufferGeometry } from './geometries/LatheBufferGeometry.js';
-import { OctahedronBufferGeometry } from './geometries/OctahedronBufferGeometry.js';
-import { ParametricBufferGeometry } from './geometries/ParametricBufferGeometry.js';
-import { PlaneBufferGeometry } from './geometries/PlaneBufferGeometry.js';
-import { PolyhedronBufferGeometry } from './geometries/PolyhedronBufferGeometry.js';
-import { RingBufferGeometry } from './geometries/RingBufferGeometry.js';
-import { ShapeBufferGeometry } from './geometries/ShapeBufferGeometry.js';
-import { SphereBufferGeometry } from './geometries/SphereBufferGeometry.js';
-import { TetrahedronBufferGeometry } from './geometries/TetrahedronBufferGeometry.js';
-import { TextBufferGeometry } from './geometries/TextBufferGeometry.js';
-import { TorusBufferGeometry } from './geometries/TorusBufferGeometry.js';
-import { TorusKnotBufferGeometry } from './geometries/TorusKnotBufferGeometry.js';
-import { TubeBufferGeometry } from './geometries/TubeBufferGeometry.js';
+import { ExtrudeGeometry } from './geometries/ExtrudeGeometry.js';
+import { ShapeGeometry } from './geometries/ShapeGeometry.js';
 import { WireframeGeometry } from './geometries/WireframeGeometry.js';
 import { Light } from './lights/Light.js';
 import { Loader } from './loaders/Loader.js';
@@ -853,14 +835,14 @@ Object.assign( Shape.prototype, {
 	},
 	extrude: function ( options ) {
 
-		console.warn( 'THREE.Shape: .extrude() has been removed. Use ExtrudeBufferGeometry() instead.' );
-		return new ExtrudeBufferGeometry( this, options );
+		console.warn( 'THREE.Shape: .extrude() has been removed. Use ExtrudeGeometry() instead.' );
+		return new ExtrudeGeometry( this, options );
 
 	},
 	makeGeometry: function ( options ) {
 
-		console.warn( 'THREE.Shape: .makeGeometry() has been removed. Use ShapeBufferGeometry() instead.' );
-		return new ShapeBufferGeometry( this, options );
+		console.warn( 'THREE.Shape: .makeGeometry() has been removed. Use ShapeGeometry() instead.' );
+		return new ShapeGeometry( this, options );
 
 	}
 
@@ -986,146 +968,6 @@ Object.assign( Geometry.prototype, {
 
 } );
 
-export function BoxGeometry( width, height, depth, widthSegments, heightSegments, depthSegments ) {
-
-	console.warn( 'THREE.BoxGeometry has been removed. Use THREE.BoxBufferGeometry instead.' );
-	return new BoxBufferGeometry( width, height, depth, widthSegments, heightSegments, depthSegments );
-
-}
-
-export function CircleGeometry( radius, segments, thetaStart, thetaLength ) {
-
-	console.warn( 'THREE.CircleGeometry has been removed. Use THREE.CircleBufferGeometry instead.' );
-	return new CircleBufferGeometry( radius, segments, thetaStart, thetaLength );
-
-}
-
-export function ConeGeometry( radius, height, radialSegments, heightSegments, openEnded, thetaStart, thetaLength ) {
-
-	console.warn( 'THREE.CircleGeometry has been removed. Use THREE.ConeBufferGeometry instead.' );
-	return new ConeBufferGeometry( radius, height, radialSegments, heightSegments, openEnded, thetaStart, thetaLength );
-
-}
-
-export function CylinderGeometry( radiusTop, radiusBottom, height, radialSegments, heightSegments, openEnded, thetaStart, thetaLength ) {
-
-	console.warn( 'THREE.CylinderGeometry has been removed. Use THREE.CylinderBufferGeometry instead.' );
-	return new CylinderBufferGeometry( radiusTop, radiusBottom, height, radialSegments, heightSegments, openEnded, thetaStart, thetaLength );
-
-}
-
-export function DodecahedronGeometry( radius, detail ) {
-
-	console.warn( 'THREE.DodecahedronGeometry has been removed. Use THREE.DodecahedronBufferGeometry instead.' );
-	return new DodecahedronBufferGeometry( radius, detail );
-
-}
-
-export function ExtrudeGeometry( shapes, options ) {
-
-	console.warn( 'THREE.ExtrudeGeometry has been removed. Use THREE.ExtrudeBufferGeometry instead.' );
-	return new ExtrudeBufferGeometry( shapes, options );
-
-}
-
-export function IcosahedronGeometry( radius, detail ) {
-
-	console.warn( 'THREE.IcosahedronGeometry has been removed. Use THREE.IcosahedronBufferGeometry instead.' );
-	return new IcosahedronBufferGeometry( radius, detail );
-
-}
-
-export function LatheGeometry( points, segments, phiStart, phiLength ) {
-
-	console.warn( 'THREE.LatheGeometry has been removed. Use THREE.LatheBufferGeometry instead.' );
-	return new LatheBufferGeometry( points, segments, phiStart, phiLength );
-
-}
-
-export function OctahedronGeometry( radius, detail ) {
-
-	console.warn( 'THREE.OctahedronGeometry has been removed. Use THREE.OctahedronBufferGeometry instead.' );
-	return new OctahedronBufferGeometry( radius, detail );
-
-}
-
-export function ParametricGeometry( func, slices, stacks ) {
-
-	console.warn( 'THREE.ParametricGeometry has been removed. Use THREE.ParametricBufferGeometry instead.' );
-	return new ParametricBufferGeometry( func, slices, stacks );
-
-}
-
-export function PlaneGeometry( width, height, widthSegments, heightSegments ) {
-
-	console.warn( 'THREE.PlaneGeometry has been removed. Use THREE.PlaneBufferGeometry instead.' );
-	return new PlaneBufferGeometry( width, height, widthSegments, heightSegments );
-
-}
-
-export function PolyhedronGeometry( vertices, indices, radius, detail ) {
-
-	console.warn( 'THREE.PolyhedronGeometry has been removed. Use THREE.PolyhedronBufferGeometry instead.' );
-	return new PolyhedronBufferGeometry( vertices, indices, radius, detail );
-
-}
-
-export function RingGeometry( innerRadius, outerRadius, thetaSegments, phiSegments, thetaStart, thetaLength ) {
-
-	console.warn( 'THREE.RingGeometry has been removed. Use THREE.RingBufferGeometry instead.' );
-	return new RingBufferGeometry( innerRadius, outerRadius, thetaSegments, phiSegments, thetaStart, thetaLength );
-
-}
-
-export function ShapeGeometry( shapes, curveSegments ) {
-
-	console.warn( 'THREE.ShapeGeometry has been removed. Use THREE.ShapeBufferGeometry instead.' );
-	return new ShapeBufferGeometry( shapes, curveSegments );
-
-}
-
-export function SphereGeometry( radius, widthSegments, heightSegments, phiStart, phiLength, thetaStart, thetaLength ) {
-
-	console.warn( 'THREE.SphereGeometry has been removed. Use THREE.SphereBufferGeometry instead.' );
-	return new SphereBufferGeometry( radius, widthSegments, heightSegments, phiStart, phiLength, thetaStart, thetaLength );
-
-}
-
-export function TetrahedronGeometry( radius, detail ) {
-
-	console.warn( 'THREE.TetrahedronGeometry has been removed. Use THREE.TetrahedronBufferGeometry instead.' );
-	return new TetrahedronBufferGeometry( radius, detail );
-
-}
-
-export function TextGeometry( text, parameters ) {
-
-	console.warn( 'THREE.TextGeometry has been removed. Use THREE.TextBufferGeometry instead.' );
-	return new TextBufferGeometry( text, parameters );
-
-}
-
-export function TorusGeometry( radius, tube, radialSegments, tubularSegments, arc ) {
-
-	console.warn( 'THREE.TorusGeometry has been removed. Use THREE.TorusBufferGeometry instead.' );
-	return new TorusBufferGeometry( radius, tube, radialSegments, tubularSegments, arc );
-
-}
-
-export function TorusKnotGeometry( radius, tube, tubularSegments, radialSegments, p, q, heightScale ) {
-
-	console.warn( 'THREE.TorusKnotGeometry has been removed. Use THREE.TorusKnotBufferGeometry instead.' );
-	return new TorusKnotBufferGeometry( radius, tube, tubularSegments, radialSegments, p, q, heightScale );
-
-}
-
-export function TubeGeometry( path, tubularSegments, radius, radialSegments, closed, taper ) {
-
-	console.warn( 'THREE.TubeGeometry has been removed. Use THREE.TubeBufferGeometry instead.' );
-	return new TubeBufferGeometry( path, tubularSegments, radius, radialSegments, closed, taper );
-
-}
-
 //
 
 Object.assign( Object3D.prototype, {
@@ -1609,23 +1451,23 @@ Object.assign( InterleavedBuffer.prototype, {
 
 //
 
-Object.assign( ExtrudeBufferGeometry.prototype, {
+Object.assign( ExtrudeGeometry.prototype, {
 
 	getArrays: function () {
 
-		console.error( 'THREE.ExtrudeBufferGeometry: .getArrays() has been removed.' );
+		console.error( 'THREE.ExtrudeGeometry: .getArrays() has been removed.' );
 
 	},
 
 	addShapeList: function () {
 
-		console.error( 'THREE.ExtrudeBufferGeometry: .addShapeList() has been removed.' );
+		console.error( 'THREE.ExtrudeGeometry: .addShapeList() has been removed.' );
 
 	},
 
 	addShape: function () {
 
-		console.error( 'THREE.ExtrudeBufferGeometry: .addShape() has been removed.' );
+		console.error( 'THREE.ExtrudeGeometry: .addShape() has been removed.' );
 
 	}
 

+ 4 - 2
src/geometries/BoxBufferGeometry.d.ts → src/geometries/BoxGeometry.d.ts

@@ -1,6 +1,6 @@
 import { BufferGeometry } from '../core/BufferGeometry';
 
-export class BoxBufferGeometry extends BufferGeometry {
+export class BoxGeometry extends BufferGeometry {
 
 	/**
 	 * @param [width=1] — Width of the sides on the X axis.
@@ -20,7 +20,7 @@ export class BoxBufferGeometry extends BufferGeometry {
 	);
 
 	/**
-	 * @default 'BoxBufferGeometry'
+	 * @default 'BoxGeometry'
 	 */
 	type: string;
 
@@ -34,3 +34,5 @@ export class BoxBufferGeometry extends BufferGeometry {
 	};
 
 }
+
+export { BoxGeometry as BoxBufferGeometry };

+ 3 - 3
src/geometries/BoxBufferGeometry.js → src/geometries/BoxGeometry.js

@@ -2,13 +2,13 @@ import { BufferGeometry } from '../core/BufferGeometry.js';
 import { Float32BufferAttribute } from '../core/BufferAttribute.js';
 import { Vector3 } from '../math/Vector3.js';
 
-class BoxBufferGeometry extends BufferGeometry {
+class BoxGeometry extends BufferGeometry {
 
 	constructor( width = 1, height = 1, depth = 1, widthSegments = 1, heightSegments = 1, depthSegments = 1 ) {
 
 		super();
 
-		this.type = 'BoxBufferGeometry';
+		this.type = 'BoxGeometry';
 
 		this.parameters = {
 			width: width,
@@ -161,4 +161,4 @@ class BoxBufferGeometry extends BufferGeometry {
 
 }
 
-export { BoxBufferGeometry };
+export { BoxGeometry, BoxGeometry as BoxBufferGeometry };

Beberapa file tidak ditampilkan karena terlalu banyak file yang berubah dalam diff ini