preact
This commit is contained in:
parent
6acf267d48
commit
b7614eb3f8
4794 changed files with 1280808 additions and 1546 deletions
84
frontend/node_modules/three/examples/jsm/nodes/code/CodeNode.js
generated
vendored
Normal file
84
frontend/node_modules/three/examples/jsm/nodes/code/CodeNode.js
generated
vendored
Normal file
|
|
@ -0,0 +1,84 @@
|
|||
import Node, { addNodeClass } from '../core/Node.js';
|
||||
import { nodeProxy } from '../shadernode/ShaderNode.js';
|
||||
|
||||
class CodeNode extends Node {
|
||||
|
||||
constructor( code = '', includes = [], language = '' ) {
|
||||
|
||||
super( 'code' );
|
||||
|
||||
this.isCodeNode = true;
|
||||
|
||||
this.code = code;
|
||||
this.language = language;
|
||||
|
||||
this.includes = includes;
|
||||
|
||||
}
|
||||
|
||||
isGlobal() {
|
||||
|
||||
return true;
|
||||
|
||||
}
|
||||
|
||||
setIncludes( includes ) {
|
||||
|
||||
this.includes = includes;
|
||||
|
||||
return this;
|
||||
|
||||
}
|
||||
|
||||
getIncludes( /*builder*/ ) {
|
||||
|
||||
return this.includes;
|
||||
|
||||
}
|
||||
|
||||
generate( builder ) {
|
||||
|
||||
const includes = this.getIncludes( builder );
|
||||
|
||||
for ( const include of includes ) {
|
||||
|
||||
include.build( builder );
|
||||
|
||||
}
|
||||
|
||||
const nodeCode = builder.getCodeFromNode( this, this.getNodeType( builder ) );
|
||||
nodeCode.code = this.code;
|
||||
|
||||
return nodeCode.code;
|
||||
|
||||
}
|
||||
|
||||
serialize( data ) {
|
||||
|
||||
super.serialize( data );
|
||||
|
||||
data.code = this.code;
|
||||
data.language = this.language;
|
||||
|
||||
}
|
||||
|
||||
deserialize( data ) {
|
||||
|
||||
super.deserialize( data );
|
||||
|
||||
this.code = data.code;
|
||||
this.language = data.language;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
export default CodeNode;
|
||||
|
||||
export const code = nodeProxy( CodeNode );
|
||||
|
||||
export const js = ( src, includes ) => code( src, includes, 'js' );
|
||||
export const wgsl = ( src, includes ) => code( src, includes, 'wgsl' );
|
||||
export const glsl = ( src, includes ) => code( src, includes, 'glsl' );
|
||||
|
||||
addNodeClass( 'CodeNode', CodeNode );
|
||||
Loading…
Add table
Add a link
Reference in a new issue