node-ejs-renderer/node_modules/three/examples/jsm/renderers/common/nodes/NodeSampledTexture.js

50 lines
767 B
JavaScript
Raw Normal View History

2024-06-09 13:55:01 -04:00
import { SampledTexture } from '../SampledTexture.js';
class NodeSampledTexture extends SampledTexture {
constructor( name, textureNode ) {
super( name, textureNode ? textureNode.value : null );
this.textureNode = textureNode;
}
get needsBindingsUpdate() {
return this.textureNode.value !== this.texture || super.needsBindingsUpdate;
}
update() {
const { textureNode } = this;
if ( this.texture !== textureNode.value ) {
this.texture = textureNode.value;
return true;
}
return super.update();
}
}
class NodeSampledCubeTexture extends NodeSampledTexture {
constructor( name, textureNode ) {
super( name, textureNode );
this.isSampledCubeTexture = true;
}
}
export { NodeSampledTexture, NodeSampledCubeTexture };