You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
41 lines
512 B
41 lines
512 B
import AttributeNode from '../core/AttributeNode.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;
|
|
|