import ReferenceNode from './ReferenceNode.js'; import { addNodeClass } from '../core/Node.js'; import { nodeObject } from '../shadernode/ShaderNode.js'; class RendererReferenceNode extends ReferenceNode { constructor( property, inputType, renderer = null ) { super( property, inputType, renderer ); this.renderer = renderer; } updateReference( state ) { this.reference = this.renderer !== null ? this.renderer : state.renderer; return this.reference; } } export default RendererReferenceNode; export const rendererReference = ( name, type, renderer ) => nodeObject( new RendererReferenceNode( name, type, renderer ) ); addNodeClass( 'RendererReferenceNode', RendererReferenceNode );