Explorar el Código

UniformArrayNode: Fix `getNodeType()` (#30058)

* fix getNodeType()

* Revert "WebGPURenderer: Shadow fixes (#29991)"

This reverts commit f91fbc3db2d2f8f28882799bd2c340ac1414ea8d.

* Revert "WebGPURenderer: Add `SpotLight.map` support (#29989)"

This reverts commit e2e04d3e93b9a7548c5361871bd7e088c4b0beef.

* cleanup

* Reapply "WebGPURenderer: Add `SpotLight.map` support (#29989)"

This reverts commit 9a2e6c2e829410a24760030594d28f5655eb3fe5.

* Reapply "WebGPURenderer: Shadow fixes (#29991)"

This reverts commit 50c6e1413a1d59640ca52932b00356aca151e9da.
sunag hace 1 año
padre
commit
1b6a70461e
Se han modificado 1 ficheros con 12 adiciones y 4 borrados
  1. 12 4
      src/nodes/accessors/UniformArrayNode.js

+ 12 - 4
src/nodes/accessors/UniformArrayNode.js

@@ -46,6 +46,7 @@ class UniformArrayNode extends BufferNode {
 
 		this.array = value;
 		this.elementType = elementType === null ? getValueType( value[ 0 ] ) : elementType;
+		this.paddedType = this.getPaddedType();
 
 		this.updateType = NodeUpdateType.RENDER;
 
@@ -53,6 +54,12 @@ class UniformArrayNode extends BufferNode {
 
 	}
 
+	getNodeType() {
+
+		return this.paddedType;
+
+	}
+
 	getElementType() {
 
 		return this.elementType;
@@ -61,7 +68,8 @@ class UniformArrayNode extends BufferNode {
 
 	getPaddedType() {
 
-		const elementType = this.getElementType();
+		const elementType = this.elementType;
+
 		let paddedType = 'vec4';
 
 		if ( elementType === 'mat2' ) {
@@ -90,7 +98,7 @@ class UniformArrayNode extends BufferNode {
 
 		const { array, value } = this;
 
-		const elementType = this.getElementType();
+		const elementType = this.elementType;
 
 		if ( elementType === 'float' || elementType === 'int' || elementType === 'uint' ) {
 
@@ -189,11 +197,11 @@ class UniformArrayNode extends BufferNode {
 	setup( builder ) {
 
 		const length = this.array.length;
+		const elementType = this.elementType;
 
-		const elementType = this.getElementType();
 		let arrayType = Float32Array;
 
-		const paddedType = this.getPaddedType();
+		const paddedType = this.paddedType;
 		const paddedElementLength = builder.getTypeLength( paddedType );
 
 		if ( elementType.charAt( 0 ) === 'i' ) arrayType = Int32Array;

粤ICP备19079148号