Переглянути джерело

Remove unneccesary .isBufferGeometry checks (#25490)

* Update Sidebar.Geometry.BufferGeometry.js

* Update MeshSurfaceSampler.js

* Update OutlineEffect.js

* Update ConvexObjectBreaker.js

* Update ObjectLoader.js

* Update BufferGeometryUtils.js
Levi Pesin 2 роки тому
батько
коміт
724575ae82

+ 1 - 1
editor/js/Sidebar.Geometry.BufferGeometry.js

@@ -15,7 +15,7 @@ function SidebarGeometryBufferGeometry( editor ) {
 
 		const geometry = object.geometry;
 
-		if ( geometry && geometry.isBufferGeometry ) {
+		if ( geometry ) {
 
 			container.clear();
 			container.setDisplay( 'block' );

+ 1 - 15
examples/jsm/effects/OutlineEffect.js

@@ -227,21 +227,7 @@ class OutlineEffect {
 		function isCompatible( object ) {
 
 			const geometry = object.geometry;
-			let hasNormals = false;
-
-			if ( object.geometry !== undefined ) {
-
-				if ( geometry.isBufferGeometry ) {
-
-					hasNormals = geometry.attributes.normal !== undefined;
-
-				} else {
-
-					hasNormals = true; // the renderer always produces a normal attribute for Geometry
-
-				}
-
-			}
+			const hasNormals = ( geometry !== undefined ) && ( geometry.attributes.normal !== undefined );
 
 			return ( object.isMesh === true && object.material !== undefined && hasNormals === true );
 

+ 0 - 6
examples/jsm/math/MeshSurfaceSampler.js

@@ -23,12 +23,6 @@ class MeshSurfaceSampler {
 
 		let geometry = mesh.geometry;
 
-		if ( ! geometry.isBufferGeometry || geometry.attributes.position.itemSize !== 3 ) {
-
-			throw new Error( 'THREE.MeshSurfaceSampler: Requires BufferGeometry triangle mesh.' );
-
-		}
-
 		if ( geometry.index ) {
 
 			console.warn( 'THREE.MeshSurfaceSampler: Converting geometry to non-indexed BufferGeometry.' );

+ 2 - 8
examples/jsm/misc/ConvexObjectBreaker.js

@@ -19,7 +19,7 @@ import { ConvexGeometry } from '../geometries/ConvexGeometry.js';
  *
  * Requisites for the object:
  *
- *  - Mesh object must have a BufferGeometry (not Geometry) and a Material
+ *  - Mesh object must have a buffer geometry and a material
  *
  *  - Vertex normals must be planar (not smoothed)
  *
@@ -70,16 +70,10 @@ class ConvexObjectBreaker {
 
 	prepareBreakableObject( object, mass, velocity, angularVelocity, breakable ) {
 
-		// object is a Object3d (normally a Mesh), must have a BufferGeometry, and it must be convex.
+		// object is a Object3d (normally a Mesh), must have a buffer geometry, and it must be convex.
 		// Its material property is propagated to its children (sub-pieces)
 		// mass must be > 0
 
-		if ( ! object.geometry.isBufferGeometry ) {
-
-			console.error( 'THREE.ConvexObjectBreaker.prepareBreakableObject(): Parameter object must have a BufferGeometry.' );
-
-		}
-
 		const userData = object.userData;
 		userData.mass = mass;
 		userData.velocity = velocity.clone();

+ 1 - 8
examples/jsm/utils/BufferGeometryUtils.js

@@ -11,7 +11,7 @@ import {
 	Vector3,
 } from 'three';
 
-function computeTangents() {
+function computeTangents() { // @deprecated, r140
 
 	throw new Error( 'BufferGeometryUtils: computeTangents renamed to computeMikkTSpaceTangents.' );
 
@@ -844,13 +844,6 @@ function toTrianglesDrawMode( geometry, drawMode ) {
  */
 function computeMorphedAttributes( object ) {
 
-	if ( object.geometry.isBufferGeometry !== true ) {
-
-		console.error( 'THREE.BufferGeometryUtils: Geometry is not of type BufferGeometry.' );
-		return null;
-
-	}
-
 	const _vA = new Vector3();
 	const _vB = new Vector3();
 	const _vC = new Vector3();

+ 1 - 1
src/loaders/ObjectLoader.js

@@ -296,7 +296,7 @@ class ObjectLoader extends Loader {
 				geometry.uuid = data.uuid;
 
 				if ( data.name !== undefined ) geometry.name = data.name;
-				if ( geometry.isBufferGeometry === true && data.userData !== undefined ) geometry.userData = data.userData;
+				if ( data.userData !== undefined ) geometry.userData = data.userData;
 
 				geometries[ data.uuid ] = geometry;