1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- import { addNodeClass } from '../core/Node.js';
- import AttributeNode from '../core/AttributeNode.js';
- import { nodeObject } from '../shadernode/ShaderNode.js';
- class UVNode extends AttributeNode {
- constructor( index = 0 ) {
- super( null, 'vec2' );
- this.isUVNode = true;
- this.index = index;
- }
- getAttributeName( /*builder*/ ) {
- const index = this.index;
- return 'uv' + ( index > 0 ? index + 1 : '' );
- }
- serialize( data ) {
- super.serialize( data );
- data.index = this.index;
- }
- deserialize( data ) {
- super.deserialize( data );
- this.index = data.index;
- }
- }
- export default UVNode;
- export const uv = ( ...params ) => nodeObject( new UVNode( ...params ) );
- addNodeClass( UVNode );
|