Quellcode durchsuchen

WebGPURenderer: Fix 16-bit normalized attributes (#28009)

* fix 16-bit normalized attributes

* cleanup
sunag vor 1 Jahr
Ursprung
Commit
99259ffd7e
1 geänderte Dateien mit 2 neuen und 2 gelöschten Zeilen
  1. 2 2
      examples/jsm/renderers/webgpu/utils/WebGPUAttributeUtils.js

+ 2 - 2
examples/jsm/renderers/webgpu/utils/WebGPUAttributeUtils.js

@@ -47,7 +47,7 @@ class WebGPUAttributeUtils {
 			let array = bufferAttribute.array;
 
 			// patch for INT16 and UINT16
-			if ( array.constructor === Int16Array || array.constructor === Uint16Array ) {
+			if ( attribute.normalized === false && ( array.constructor === Int16Array || array.constructor === Uint16Array ) ) {
 
 				const tempArray = new Uint32Array( array.length );
 				for ( let i = 0; i < array.length; i ++ ) {
@@ -168,7 +168,7 @@ class WebGPUAttributeUtils {
 				}
 
 				// patch for INT16 and UINT16
-				if ( geometryAttribute.array.constructor === Int16Array || geometryAttribute.array.constructor === Uint16Array ) {
+				if ( geometryAttribute.normalized === false && ( geometryAttribute.array.constructor === Int16Array || geometryAttribute.array.constructor === Uint16Array ) ) {
 
 					arrayStride = 4;