@@ -2,9 +2,9 @@ import NodeMaterial from './NodeMaterial.js';
22import { cameraProjectionMatrix } from '../../nodes/accessors/Camera.js' ;
33import { materialRotation } from '../../nodes/accessors/MaterialNode.js' ;
44import { modelViewMatrix , modelWorldMatrix } from '../../nodes/accessors/ModelNode.js' ;
5- import { positionLocal } from '../../nodes/accessors/Position.js' ;
5+ import { positionGeometry , positionLocal } from '../../nodes/accessors/Position.js' ;
66import { rotate } from '../../nodes/utils/RotateNode.js' ;
7- import { float , vec2 , vec3 , vec4 } from '../../nodes/tsl/TSLBase.js' ;
7+ import { float , vec2 , vec4 } from '../../nodes/tsl/TSLBase.js' ;
88
99import { SpriteMaterial } from '../SpriteMaterial.js' ;
1010import { reference } from '../../nodes/accessors/ReferenceBaseNode.js' ;
@@ -38,17 +38,17 @@ class SpriteNodeMaterial extends NodeMaterial {
3838
3939 }
4040
41- setupPosition ( { object, camera, context } ) {
41+ setupPositionView ( builder ) {
42+
43+ const { object, camera } = builder ;
4244
4345 const sizeAttenuation = this . sizeAttenuation ;
4446
4547 // < VERTEX STAGE >
4648
47- const { positionNode, rotationNode, scaleNode } = this ;
48-
49- const vertex = positionLocal ;
49+ const { rotationNode, scaleNode } = this ;
5050
51- let mvPosition = modelViewMatrix . mul ( vec3 ( positionNode || 0 ) ) ;
51+ const mvPosition = modelViewMatrix . mul ( positionLocal ) ;
5252
5353 let scale = vec2 ( modelWorldMatrix [ 0 ] . xyz . length ( ) , modelWorldMatrix [ 1 ] . xyz . length ( ) ) ;
5454
@@ -74,7 +74,7 @@ class SpriteNodeMaterial extends NodeMaterial {
7474
7575 }
7676
77- let alignedPosition = vertex . xy ;
77+ let alignedPosition = positionGeometry . xy ;
7878
7979 if ( object . center && object . center . isVector2 === true ) {
8080
@@ -90,13 +90,7 @@ class SpriteNodeMaterial extends NodeMaterial {
9090
9191 const rotatedPosition = rotate ( alignedPosition , rotation ) ;
9292
93- mvPosition = vec4 ( mvPosition . xy . add ( rotatedPosition ) , mvPosition . zw ) ;
94-
95- const modelViewProjection = cameraProjectionMatrix . mul ( mvPosition ) ;
96-
97- context . vertex = vertex ;
98-
99- return modelViewProjection ;
93+ return vec4 ( mvPosition . xy . add ( rotatedPosition ) , mvPosition . zw ) ;
10094
10195 }
10296
0 commit comments