diff --git a/examples/js/nodes/THREE.Nodes.js b/examples/js/nodes/THREE.Nodes.js index 74cdfb9bab1d53bb8520b2e1e7e56dc2de21afdd..c146898050eb95a713dbc7c18e3a7e4e0c3fcb11 100644 --- a/examples/js/nodes/THREE.Nodes.js +++ b/examples/js/nodes/THREE.Nodes.js @@ -92,7 +92,7 @@ import { StandardNode, MeshStandardNode, - // utils + // materials NodeMaterial, SpriteNodeMaterial, @@ -200,4 +200,4 @@ THREE.NodeMaterial = NodeMaterial; THREE.SpriteNodeMaterial = SpriteNodeMaterial; THREE.PhongNodeMaterial = PhongNodeMaterial; THREE.StandardNodeMaterial = StandardNodeMaterial; -THREE.MeshStandardNodeMaterial = MeshStandardNodeMaterial; \ No newline at end of file +THREE.MeshStandardNodeMaterial = MeshStandardNodeMaterial; diff --git a/examples/js/nodes/accessors/ColorsNode.js b/examples/js/nodes/accessors/ColorsNode.js index 5c95bf991f4b4e71c8f4f88f491d47f21e404ced..14d3738ed035fbcf45378d33284220275d3c5c8c 100644 --- a/examples/js/nodes/accessors/ColorsNode.js +++ b/examples/js/nodes/accessors/ColorsNode.js @@ -21,7 +21,7 @@ ColorsNode.prototype.constructor = ColorsNode; ColorsNode.prototype.generate = function ( builder, output ) { - builder.material.requires.color[ this.index ] = true; + builder.requires.color[ this.index ] = true; var result = builder.isShader( 'vertex' ) ? vertexDict[ this.index ] : fragmentDict[ this.index ]; diff --git a/examples/js/nodes/materials/NodeMaterial.js b/examples/js/nodes/materials/NodeMaterial.js index f1cabe35784c20423e0290196b60e1ecb82c498d..a6e20ded6c4ba5d4b5b4cb134e5b9162f55ace7a 100644 --- a/examples/js/nodes/materials/NodeMaterial.js +++ b/examples/js/nodes/materials/NodeMaterial.js @@ -3,11 +3,6 @@ */ import { NodeBuilder } from '../core/NodeBuilder.js'; -import { NodeUniform } from '../core/NodeUniform.js'; -import { NodeLib } from '../core/NodeLib.js'; -import { FunctionNode } from '../core/FunctionNode.js'; -import { ConstNode } from '../core/ConstNode.js'; -import { StructNode } from '../core/StructNode.js'; import { ColorNode } from '../inputs/ColorNode.js'; import { PositionNode } from '../accessors/PositionNode.js'; import { RawNode } from './nodes/RawNode.js'; diff --git a/examples/js/nodes/materials/nodes/SpriteNode.js b/examples/js/nodes/materials/nodes/SpriteNode.js index 4ca393ac2500c5b2d81e14398a0576d393faae32..83e49f300afd199607979fedf4f7f1e2d0dab31b 100644 --- a/examples/js/nodes/materials/nodes/SpriteNode.js +++ b/examples/js/nodes/materials/nodes/SpriteNode.js @@ -20,23 +20,22 @@ SpriteNode.prototype.nodeType = "Sprite"; SpriteNode.prototype.build = function ( builder ) { - var material = builder.material; var output, code; - material.define( 'SPRITE' ); + builder.define( 'SPRITE' ); - material.requires.lights = false; - material.requires.transparent = this.alpha != undefined; + builder.requires.lights = false; + builder.requires.transparent = this.alpha != undefined; if ( builder.isShader( 'vertex' ) ) { var transform = this.transform ? this.transform.parseAndBuildCode( builder, 'v3', { cache: 'transform' } ) : undefined; - material.mergeUniform( THREE.UniformsUtils.merge( [ + builder.mergeUniform( THREE.UniformsUtils.merge( [ THREE.UniformsLib[ "fog" ] ] ) ); - material.addVertexPars( [ + builder.addParsCode( [ "#include " ].join( "\n" ) ); @@ -105,13 +104,14 @@ SpriteNode.prototype.build = function ( builder ) { } else { - material.addFragmentPars( [ + builder.addParsCode( [ "#include ", ].join( "\n" ) ); // parse all nodes to reuse generate codes this.color.parse( builder, { slot: 'color' } ); + if ( this.alpha ) this.alpha.parse( builder ); // build code diff --git a/examples/js/nodes/materials/nodes/StandardNode.js b/examples/js/nodes/materials/nodes/StandardNode.js index 26205316ad7f4b10d54ed44a78e3dead669ba534..212513b1952ca6916a141dd426da05abd220bd66 100644 --- a/examples/js/nodes/materials/nodes/StandardNode.js +++ b/examples/js/nodes/materials/nodes/StandardNode.js @@ -43,7 +43,7 @@ StandardNode.prototype.build = function ( builder ) { ] ) ); - builder.addVertexParsCode( [ + builder.addParsCode( [ "varying vec3 vViewPosition;", "#ifndef FLAT_SHADED", @@ -170,9 +170,9 @@ StandardNode.prototype.build = function ( builder ) { var clearCoatEnv = useClearCoat && environment ? this.environment.buildCode( builder, 'c', { cache: 'clearCoat', context: contextEnvironment, slot: 'environment' } ) : undefined; - builder.requires.transparent = alpha != undefined; + builder.requires.transparent = alpha !== undefined; - builder.addFragmentParsCode( [ + builder.addParsCode( [ "varying vec3 vViewPosition;", diff --git a/examples/js/nodes/postprocessing/NodePass.js b/examples/js/nodes/postprocessing/NodePass.js index 77e36c643fb0938b350441701606e6694e7021f6..20d5775b47abbbec8b14efbe40fab56ae54c6e59 100644 --- a/examples/js/nodes/postprocessing/NodePass.js +++ b/examples/js/nodes/postprocessing/NodePass.js @@ -2,6 +2,7 @@ * @author sunag / http://www.sunag.com.br/ */ +import { NodeUtils } from '../core/NodeUtils.js'; import { NodeMaterial } from '../materials/NodeMaterial.js'; import { RawNode } from '../materials/nodes/RawNode.js'; import { ScreenNode } from '../inputs/ScreenNode.js'; @@ -29,7 +30,7 @@ function NodePass() { NodePass.prototype = Object.create( THREE.ShaderPass.prototype ); NodePass.prototype.constructor = NodePass; -NodeMaterial.addShortcuts( NodePass.prototype, 'fragment', [ 'value' ] ); +NodeUtils.addShortcuts( NodePass.prototype, 'fragment', [ 'value' ] ); NodePass.prototype.render = function () { diff --git a/examples/webgl_loader_nodes.html b/examples/webgl_loader_nodes.html index fe7e580acff2869d8fa5ebe3d12d9cf32579c870..c192f21067c1da7f38ae6a5f43405500e2052796 100644 --- a/examples/webgl_loader_nodes.html +++ b/examples/webgl_loader_nodes.html @@ -40,75 +40,10 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -