فهرست منبع

RoundedBoxBufferGeometry: Ensure different parameters don't produce the same geometry.

Mr.doob 4 سال پیش
والد
کامیت
2d1723fd7e
2فایلهای تغییر یافته به همراه3 افزوده شده و 3 حذف شده
  1. 2 2
      examples/jsm/geometries/RoundedBoxBufferGeometry.js
  2. 1 1
      examples/webgl_loader_texture_lottie.html

+ 2 - 2
examples/jsm/geometries/RoundedBoxBufferGeometry.js

@@ -39,10 +39,10 @@ function getUv( faceDirVector, normal, uvAxis, projectionAxis, radius, sideLengt
 
 class RoundedBoxBufferGeometry extends BoxBufferGeometry {
 
-	constructor( width = 1, height = 1, depth = 1, segments = 4, radius = 0.1 ) {
+	constructor( width = 1, height = 1, depth = 1, segments = 2, radius = 0.1 ) {
 
 		// ensure segments is odd so we have a plane connecting the rounded corners
-		segments = segments % 2 === 0 ? segments + 1 : segments;
+		segments = segments * 2 + 1;
 
 		super( 1, 1, 1, segments, segments, segments );
 

+ 1 - 1
examples/webgl_loader_texture_lottie.html

@@ -44,7 +44,7 @@
 
 					// texture = new THREE.TextureLoader().load( 'textures/uv_grid_directx.jpg' );
 
-					const geometry = new RoundedBoxBufferGeometry( 1, 1, 1, 15, 0.2 );
+					const geometry = new RoundedBoxBufferGeometry( 1, 1, 1, 7, 0.2 );
 					const material = new THREE.MeshStandardMaterial( { roughness: 0.1, map: texture } );
 					mesh = new THREE.Mesh( geometry, material );
 					scene.add( mesh );