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.
63 lines
1.2 KiB
63 lines
1.2 KiB
import { MeshStandardMaterial } from 'three';
|
|
|
|
class MeshStandardNodeMaterial extends MeshStandardMaterial {
|
|
|
|
constructor( parameters ) {
|
|
|
|
super( parameters );
|
|
|
|
this.colorNode = null;
|
|
this.opacityNode = null;
|
|
|
|
this.alphaTestNode = null;
|
|
|
|
this.normalNode = null;
|
|
|
|
this.emissiveNode = null;
|
|
|
|
this.metalnessNode = null;
|
|
this.roughnessNode = null;
|
|
|
|
this.clearcoatNode = null;
|
|
this.clearcoatRoughnessNode = null;
|
|
|
|
this.envNode = null;
|
|
|
|
this.lightNode = null;
|
|
|
|
this.positionNode = null;
|
|
|
|
}
|
|
|
|
copy( source ) {
|
|
|
|
this.colorNode = source.colorNode;
|
|
this.opacityNode = source.opacityNode;
|
|
|
|
this.alphaTestNode = source.alphaTestNode;
|
|
|
|
this.normalNode = source.normalNode;
|
|
|
|
this.emissiveNode = source.emissiveNode;
|
|
|
|
this.metalnessNode = source.metalnessNode;
|
|
this.roughnessNode = source.roughnessNode;
|
|
|
|
this.clearcoatNode = source.clearcoatNode;
|
|
this.clearcoatRoughnessNode = source.clearcoatRoughnessNode;
|
|
|
|
this.envNode = source.envNode;
|
|
|
|
this.lightNode = source.lightNode;
|
|
|
|
this.positionNode = source.positionNode;
|
|
|
|
return super.copy( source );
|
|
|
|
}
|
|
|
|
}
|
|
|
|
MeshStandardNodeMaterial.prototype.isNodeMaterial = true;
|
|
|
|
export default MeshStandardNodeMaterial;
|
|
|