three-stdlib 2.6.1 → 2.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (56) hide show
  1. package/{Nodes-acab3ca5.js → Nodes-427f68b0.js} +0 -0
  2. package/{Nodes-244507d0.js → Nodes-ec4e1143.js} +0 -0
  3. package/controls/ArcballControls.cjs.js +1 -1
  4. package/controls/ArcballControls.d.ts +164 -0
  5. package/controls/ArcballControls.js +512 -197
  6. package/controls/OrbitControls.cjs.js +1 -1
  7. package/controls/OrbitControls.d.ts +1 -0
  8. package/controls/OrbitControls.js +13 -2
  9. package/geometries/TextGeometry.cjs.js +1 -0
  10. package/geometries/TextGeometry.d.ts +16 -0
  11. package/geometries/TextGeometry.js +26 -0
  12. package/index.cjs.js +1 -1
  13. package/index.d.ts +2 -0
  14. package/index.js +3 -1
  15. package/loaders/AMFLoader.js +1 -3
  16. package/loaders/ColladaLoader.cjs.js +1 -1
  17. package/loaders/ColladaLoader.js +58 -35
  18. package/loaders/EXRLoader.cjs.js +1 -1
  19. package/loaders/EXRLoader.js +197 -262
  20. package/loaders/FBXLoader.cjs.js +1 -1
  21. package/loaders/FBXLoader.js +41 -90
  22. package/loaders/FontLoader.cjs.js +1 -0
  23. package/loaders/FontLoader.d.ts +32 -0
  24. package/loaders/FontLoader.js +139 -0
  25. package/loaders/GLTFLoader.cjs.js +1 -1
  26. package/loaders/GLTFLoader.js +160 -72
  27. package/loaders/HDRCubeTextureLoader.cjs.js +1 -1
  28. package/loaders/HDRCubeTextureLoader.js +2 -10
  29. package/loaders/NodeMaterialLoader.cjs.js +1 -1
  30. package/loaders/RGBELoader.cjs.js +1 -1
  31. package/loaders/RGBELoader.js +11 -25
  32. package/loaders/RGBMLoader.cjs.js +1 -1
  33. package/loaders/RGBMLoader.js +225 -263
  34. package/loaders/SVGLoader.cjs.js +1 -1
  35. package/loaders/SVGLoader.js +46 -30
  36. package/loaders/VRMLLoader.cjs.js +1 -1
  37. package/loaders/VRMLLoader.js +2 -1
  38. package/misc/WebGL.cjs.js +1 -1
  39. package/misc/WebGL.d.ts +5 -7
  40. package/misc/WebGL.js +67 -54
  41. package/nodes/core/NodeBuilder.cjs.js +1 -1
  42. package/nodes/core/NodeBuilder.js +2 -2
  43. package/nodes/inputs/CubeTextureNode.cjs.js +1 -1
  44. package/nodes/inputs/RTTNode.cjs.js +1 -1
  45. package/nodes/inputs/ReflectorNode.cjs.js +1 -1
  46. package/nodes/inputs/ScreenNode.cjs.js +1 -1
  47. package/nodes/inputs/TextureNode.cjs.js +1 -1
  48. package/nodes/materials/BasicNodeMaterial.cjs.js +1 -1
  49. package/nodes/materials/NodeMaterial.cjs.js +1 -1
  50. package/nodes/materials/SpriteNodeMaterial.cjs.js +1 -1
  51. package/nodes/postprocessing/NodePass.cjs.js +1 -1
  52. package/nodes/postprocessing/NodePostProcessing.cjs.js +1 -1
  53. package/nodes/utils/ColorSpaceNode.cjs.js +1 -1
  54. package/nodes/utils/ColorSpaceNode.js +2 -45
  55. package/package.json +1 -1
  56. package/shaders/GammaCorrectionShader.js +1 -2
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three"),t=require("./NodeUniform.cjs.js"),r=require("./NodeUtils.cjs.js"),i=require("./NodeLib.cjs.js"),n=require("./FunctionNode.cjs.js"),s=require("./ConstNode.cjs.js"),o=require("./StructNode.cjs.js"),a=require("../inputs/Vector2Node.cjs.js"),d=require("../inputs/Vector3Node.cjs.js"),c=require("../inputs/Vector4Node.cjs.js"),u=require("../inputs/TextureNode.cjs.js"),h=require("../inputs/CubeTextureNode.cjs.js"),f=require("../misc/TextureCubeNode.cjs.js");require("./TempNode.cjs.js"),require("./Node.cjs.js"),require("./InputNode.cjs.js"),require("../accessors/UVNode.cjs.js"),require("../utils/ColorSpaceNode.cjs.js"),require("../inputs/FloatNode.cjs.js"),require("./ExpressionNode.cjs.js"),require("../accessors/ReflectNode.cjs.js"),require("../accessors/PositionNode.cjs.js"),require("../accessors/NormalNode.cjs.js"),require("../misc/TextureCubeUVNode.cjs.js"),require("./FunctionCallNode.cjs.js"),require("../math/OperatorNode.cjs.js"),require("../math/MathNode.cjs.js");var l=r.NodeUtils.elements,v=["float","vec2","vec3","vec4"],g={float:"f",vec2:"v2",vec3:"v3",vec4:"v4",mat4:"v4",int:"i",bool:"b"},m={t:"sampler2D",tc:"samplerCube",b:"bool",i:"int",f:"float",c:"vec3",v2:"vec2",v3:"vec3",v4:"vec4",m3:"mat3",m4:"mat4"};function C(){this.slots=[],this.caches=[],this.contexts=[],this.keywords={},this.nodeData={},this.requires={uv:[],color:[],lights:!1,fog:!1,transparent:!1,irradiance:!1},this.includes={consts:[],functions:[],structs:[]},this.attributes={},this.prefixCode=["#ifdef TEXTURE_LOD_EXT","\t#define texCube(a, b) textureCube(a, b)","\t#define texCubeBias(a, b, c) textureCubeLodEXT(a, b, c)","\t#define tex2D(a, b) texture2D(a, b)","\t#define tex2DBias(a, b, c) texture2DLodEXT(a, b, c)","#else","\t#define texCube(a, b) textureCube(a, b)","\t#define texCubeBias(a, b, c) textureCube(a, b, c)","\t#define tex2D(a, b) texture2D(a, b)","\t#define tex2DBias(a, b, c) texture2D(a, b, c)","#endif","#include <packing>","#include <common>"].join("\n"),this.parsCode={vertex:"",fragment:""},this.code={vertex:"",fragment:""},this.nodeCode={vertex:"",fragment:""},this.resultCode={vertex:"",fragment:""},this.finalCode={vertex:"",fragment:""},this.inputs={uniforms:{list:[],vertex:[],fragment:[]},vars:{varying:[],vertex:[],fragment:[]}},this.defines={},this.uniforms={},this.extensions={},this.updaters=[],this.nodes=[],this.analyzing=!1}C.prototype={constructor:C,build:function(e,t){this.buildShader("vertex",e),this.buildShader("fragment",t);for(let e=0;e<this.requires.uv.length;e++)if(this.requires.uv[e]){var r=e>0?e+1:"";this.addVaryCode("varying vec2 vUv"+r+";"),e>0&&this.addVertexParsCode("attribute vec2 uv"+r+";"),this.addVertexFinalCode("vUv"+r+" = uv"+r+";")}return this.requires.color[0]&&(this.addVaryCode("varying vec4 vColor;"),this.addVertexParsCode("attribute vec4 color;"),this.addVertexFinalCode("vColor = color;")),this.requires.color[1]&&(this.addVaryCode("varying vec4 vColor2;"),this.addVertexParsCode("attribute vec4 color2;"),this.addVertexFinalCode("vColor2 = color2;")),this.requires.position&&(this.addVaryCode("varying vec3 vPosition;"),this.addVertexFinalCode("vPosition = transformed;")),this.requires.worldPosition&&(this.addVaryCode("varying vec3 vWPosition;"),this.addVertexFinalCode("vWPosition = ( modelMatrix * vec4( transformed, 1.0 ) ).xyz;")),this.requires.normal&&(this.addVaryCode("varying vec3 vObjectNormal;"),this.addVertexFinalCode("vObjectNormal = normal;")),this.requires.worldNormal&&(this.addVaryCode("varying vec3 vWNormal;"),this.addVertexFinalCode("vWNormal = inverseTransformDirection( transformedNormal, viewMatrix ).xyz;")),this},buildShader:function(e,t){this.resultCode[e]=t.build(this.setShader(e),"v4")},setMaterial:function(e,t){return this.material=e,this.renderer=t,this.requires.lights=e.lights,this.requires.fog=e.fog,this.mergeDefines(e.defines),this},addFlow:function(e,t,r){return this.addSlot(e).addCache(t).addContext(r)},removeFlow:function(){return this.removeSlot().removeCache().removeContext()},addCache:function(e){return this.cache=e||"",this.caches.push(this.cache),this},removeCache:function(){return this.caches.pop(),this.cache=this.caches[this.caches.length-1]||"",this},addContext:function(e){return this.context=Object.assign({},this.context,e),this.context.extra=this.context.extra||{},this.contexts.push(this.context),this},removeContext:function(){return this.contexts.pop(),this.context=this.contexts[this.contexts.length-1]||{},this},addSlot:function(e){return this.slot=e||"",this.slots.push(this.slot),this},removeSlot:function(){return this.slots.pop(),this.slot=this.slots[this.slots.length-1]||"",this},addVertexCode:function(e){this.addCode(e,"vertex")},addFragmentCode:function(e){this.addCode(e,"fragment")},addCode:function(e,t){this.code[t||this.shader]+=e+"\n"},addVertexNodeCode:function(e){this.addNodeCode(e,"vertex")},addFragmentNodeCode:function(e){this.addNodeCode(e,"fragment")},addNodeCode:function(e,t){this.nodeCode[t||this.shader]+=e+"\n"},clearNodeCode:function(e){e=e||this.shader;var t=this.nodeCode[e];return this.nodeCode[e]="",t},clearVertexNodeCode:function(){return this.clearNodeCode("vertex")},clearFragmentNodeCode:function(){return this.clearNodeCode("fragment")},addVertexFinalCode:function(e){this.addFinalCode(e,"vertex")},addFragmentFinalCode:function(e){this.addFinalCode(e,"fragment")},addFinalCode:function(e,t){this.finalCode[t||this.shader]+=e+"\n"},addVertexParsCode:function(e){this.addParsCode(e,"vertex")},addFragmentParsCode:function(e){this.addParsCode(e,"fragment")},addParsCode:function(e,t){this.parsCode[t||this.shader]+=e+"\n"},addVaryCode:function(e){this.addVertexParsCode(e),this.addFragmentParsCode(e)},isCache:function(e){return-1!==this.caches.indexOf(e)},isSlot:function(e){return-1!==this.slots.indexOf(e)},define:function(e,t){this.defines[e]=void 0===t?1:t},require:function(e){this.requires[e]=!0},isDefined:function(e){return void 0!==this.defines[e]},getVar:function(e,t,r,i="varying",n="V",s=""){var o=this.getVars(i),a=o[e];if(!a){var d=o.length;a={name:r||"node"+n+d+(s?"_"+s:""),type:t},o.push(a),o[e]=a}return a},getTempVar:function(e,t,r,i){return this.getVar(e,t,r,this.shader,"T",i)},getAttribute:function(e,t){if(!this.attributes[e]){var r=this.getVar(e,t);this.addVertexParsCode("attribute "+t+" "+e+";"),this.addVertexFinalCode(r.name+" = "+e+";"),this.attributes[e]={varying:r,name:e,type:t}}return this.attributes[e]},getCode:function(e){return[this.prefixCode,this.parsCode[e],this.getVarListCode(this.getVars("varying"),"varying"),this.getVarListCode(this.inputs.uniforms[e],"uniform"),this.getIncludesCode("consts",e),this.getIncludesCode("structs",e),this.getIncludesCode("functions",e),"void main() {",this.getVarListCode(this.getVars(e)),this.code[e],this.resultCode[e],this.finalCode[e],"}"].join("\n")},getVarListCode:function(e,t){t=t||"";var r="";for(let a=0,d=e.length;a<d;++a){var i=e[a],n=i.type,s=i.name,o=this.getFormatByType(n);if(void 0===o)throw new Error("Node pars "+o+" not found.");r+=t+" "+o+" "+s+";\n"}return r},getVars:function(e){return this.inputs.vars[e||this.shader]},getNodeData:function(e){var t=e.isNode?e.uuid:e;return this.nodeData[t]=this.nodeData[t]||{}},createUniform:function(e,r,i,n,s,o){var a=this.inputs.uniforms,d=a.list.length,c=new t.NodeUniform({type:r,name:n||"nodeU"+d+(o?"_"+o:""),node:i,needsUpdate:s});return a.list.push(c),a[e].push(c),a[e][c.name]=c,this.uniforms[c.name]=c,c},createVertexUniform:function(e,t,r,i,n){return this.createUniform("vertex",e,t,r,i,n)},createFragmentUniform:function(e,t,r,i,n){return this.createUniform("fragment",e,t,r,i,n)},include:function(e,t,r){var a;if(e="string"==typeof e?i.NodeLib.get(e):e,!1===this.context.include)return e.name;e instanceof n.FunctionNode?a=this.includes.functions:e instanceof s.ConstNode?a=this.includes.consts:e instanceof o.StructNode&&(a=this.includes.structs);var d=a[this.shader]=a[this.shader]||[];if(e){var c=d[e.name];if(c||(c=d[e.name]={node:e,deps:[]},d.push(c),c.src=e.build(this,"source")),e instanceof n.FunctionNode&&t&&d[t.name]&&-1==d[t.name].deps.indexOf(e)&&(d[t.name].deps.push(e),e.includes&&e.includes.length)){var u=0;do{this.include(e.includes[u++],t)}while(u<e.includes.length)}return r&&(c.src=r),e.name}throw new Error("Include not found.")},colorToVectorProperties:function(e){return e.replace("r","x").replace("g","y").replace("b","z").replace("a","w")},colorToVector:function(e){return e.replace(/c/g,"v3")},getIncludes:function(e,t){return this.includes[e][t||this.shader]},getIncludesCode:function(){function e(e,t){return e.deps.length-t.deps.length}return function(t,r){if(!(n=this.getIncludes(t,r)))return"";var i="",n=n.sort(e);for(let e=0;e<n.length;e++)n[e].src&&(i+=n[e].src+"\n");return i}}(),getConstructorFromLength:function(e){return v[e-1]},isTypeMatrix:function(e){return/^m/.test(e)},getTypeLength:function(e){return"f"===e?1:parseInt(this.colorToVector(e).substr(1))},getTypeFromLength:function(e){return 1===e?"f":"v"+e},findNode:function(){for(let t=0;t<arguments.length;t++){var e=arguments[t];if(void 0!==e&&e.isNode)return e}},resolve:function(){for(let r=0;r<arguments.length;r++){var t=arguments[r];if(void 0!==t){if(t.isNode)return t;if(t.isTexture)switch(t.mapping){case e.CubeReflectionMapping:case e.CubeRefractionMapping:return new h.CubeTextureNode(t);case e.CubeUVReflectionMapping:case e.CubeUVRefractionMapping:return new f.TextureCubeNode(new u.TextureNode(t));default:return new u.TextureNode(t)}else{if(t.isVector2)return new a.Vector2Node(t);if(t.isVector3)return new d.Vector3Node(t);if(t.isVector4)return new c.Vector4Node(t)}}}},format:function(e,t,r){switch(this.colorToVector(r+" <- "+t)){case"f <- v2":case"f <- v3":case"f <- v4":return e+".x";case"f <- i":case"f <- b":return"float( "+e+" )";case"v2 <- f":return"vec2( "+e+" )";case"v2 <- v3":case"v2 <- v4":return e+".xy";case"v2 <- i":case"v2 <- b":return"vec2( float( "+e+" ) )";case"v3 <- f":return"vec3( "+e+" )";case"v3 <- v2":return"vec3( "+e+", 0.0 )";case"v3 <- v4":return e+".xyz";case"v3 <- i":case"v3 <- b":return"vec2( float( "+e+" ) )";case"v4 <- f":return"vec4( "+e+" )";case"v4 <- v2":return"vec4( "+e+", 0.0, 1.0 )";case"v4 <- v3":return"vec4( "+e+", 1.0 )";case"v4 <- i":case"v4 <- b":return"vec4( float( "+e+" ) )";case"i <- f":case"i <- b":return"int( "+e+" )";case"i <- v2":case"i <- v3":case"i <- v4":return"int( "+e+".x )";case"b <- f":return"( "+e+" != 0.0 )";case"b <- v2":return"( "+e+" != vec2( 0.0 ) )";case"b <- v3":return"( "+e+" != vec3( 0.0 ) )";case"b <- v4":return"( "+e+" != vec4( 0.0 ) )";case"b <- i":return"( "+e+" != 0 )"}return e},getTypeByFormat:function(e){return g[e]||e},getFormatByType:function(e){return m[e]||e},getUuid:function(e,t){return(t=void 0===t||t)&&this.cache&&(e=this.cache+"-"+e),e},getElementByIndex:function(e){return l[e]},getIndexByElement:function(e){return l.indexOf(e)},isShader:function(e){return this.shader===e},setShader:function(e){return this.shader=e,this},mergeDefines:function(e){for(let t in e)this.defines[t]=e[t];return this.defines},mergeUniform:function(e){for(let t in e)this.uniforms[t]=e[t];return this.uniforms},getTextureEncodingFromMap:function(t){var r;return t?t.isTexture?r=t.encoding:t.isWebGLRenderTarget&&(console.warn("THREE.WebGLPrograms.getTextureEncodingFromMap: don't use render targets as textures. Use their .texture property instead."),r=t.texture.encoding):r=e.LinearEncoding,r===e.LinearEncoding&&this.context.gamma&&(r=e.GammaEncoding),r}},exports.NodeBuilder=C;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three"),t=require("./NodeUniform.cjs.js"),r=require("./NodeUtils.cjs.js"),i=require("./NodeLib.cjs.js"),n=require("./FunctionNode.cjs.js"),s=require("./ConstNode.cjs.js"),o=require("./StructNode.cjs.js"),a=require("../inputs/Vector2Node.cjs.js"),d=require("../inputs/Vector3Node.cjs.js"),c=require("../inputs/Vector4Node.cjs.js"),u=require("../inputs/TextureNode.cjs.js"),h=require("../inputs/CubeTextureNode.cjs.js"),f=require("../misc/TextureCubeNode.cjs.js");require("./TempNode.cjs.js"),require("./Node.cjs.js"),require("./InputNode.cjs.js"),require("../accessors/UVNode.cjs.js"),require("../utils/ColorSpaceNode.cjs.js"),require("./ExpressionNode.cjs.js"),require("../accessors/ReflectNode.cjs.js"),require("../accessors/PositionNode.cjs.js"),require("../accessors/NormalNode.cjs.js"),require("../inputs/FloatNode.cjs.js"),require("../misc/TextureCubeUVNode.cjs.js"),require("./FunctionCallNode.cjs.js"),require("../math/OperatorNode.cjs.js"),require("../math/MathNode.cjs.js");var l=r.NodeUtils.elements,v=["float","vec2","vec3","vec4"],g={float:"f",vec2:"v2",vec3:"v3",vec4:"v4",mat4:"v4",int:"i",bool:"b"},m={t:"sampler2D",tc:"samplerCube",b:"bool",i:"int",f:"float",c:"vec3",v2:"vec2",v3:"vec3",v4:"vec4",m3:"mat3",m4:"mat4"};function C(){this.slots=[],this.caches=[],this.contexts=[],this.keywords={},this.nodeData={},this.requires={uv:[],color:[],lights:!1,fog:!1,transparent:!1,irradiance:!1},this.includes={consts:[],functions:[],structs:[]},this.attributes={},this.prefixCode=["#ifdef TEXTURE_LOD_EXT","\t#define texCube(a, b) textureCube(a, b)","\t#define texCubeBias(a, b, c) textureCubeLodEXT(a, b, c)","\t#define tex2D(a, b) texture2D(a, b)","\t#define tex2DBias(a, b, c) texture2DLodEXT(a, b, c)","#else","\t#define texCube(a, b) textureCube(a, b)","\t#define texCubeBias(a, b, c) textureCube(a, b, c)","\t#define tex2D(a, b) texture2D(a, b)","\t#define tex2DBias(a, b, c) texture2D(a, b, c)","#endif","#include <packing>","#include <common>"].join("\n"),this.parsCode={vertex:"",fragment:""},this.code={vertex:"",fragment:""},this.nodeCode={vertex:"",fragment:""},this.resultCode={vertex:"",fragment:""},this.finalCode={vertex:"",fragment:""},this.inputs={uniforms:{list:[],vertex:[],fragment:[]},vars:{varying:[],vertex:[],fragment:[]}},this.defines={},this.uniforms={},this.extensions={},this.updaters=[],this.nodes=[],this.analyzing=!1}C.prototype={constructor:C,build:function(e,t){this.buildShader("vertex",e),this.buildShader("fragment",t);for(let e=0;e<this.requires.uv.length;e++)if(this.requires.uv[e]){var r=e>0?e+1:"";this.addVaryCode("varying vec2 vUv"+r+";"),e>0&&this.addVertexParsCode("attribute vec2 uv"+r+";"),this.addVertexFinalCode("vUv"+r+" = uv"+r+";")}return this.requires.color[0]&&(this.addVaryCode("varying vec4 vColor;"),this.addVertexParsCode("attribute vec4 color;"),this.addVertexFinalCode("vColor = color;")),this.requires.color[1]&&(this.addVaryCode("varying vec4 vColor2;"),this.addVertexParsCode("attribute vec4 color2;"),this.addVertexFinalCode("vColor2 = color2;")),this.requires.position&&(this.addVaryCode("varying vec3 vPosition;"),this.addVertexFinalCode("vPosition = transformed;")),this.requires.worldPosition&&(this.addVaryCode("varying vec3 vWPosition;"),this.addVertexFinalCode("vWPosition = ( modelMatrix * vec4( transformed, 1.0 ) ).xyz;")),this.requires.normal&&(this.addVaryCode("varying vec3 vObjectNormal;"),this.addVertexFinalCode("vObjectNormal = normal;")),this.requires.worldNormal&&(this.addVaryCode("varying vec3 vWNormal;"),this.addVertexFinalCode("vWNormal = inverseTransformDirection( transformedNormal, viewMatrix ).xyz;")),this},buildShader:function(e,t){this.resultCode[e]=t.build(this.setShader(e),"v4")},setMaterial:function(e,t){return this.material=e,this.renderer=t,this.requires.lights=e.lights,this.requires.fog=e.fog,this.mergeDefines(e.defines),this},addFlow:function(e,t,r){return this.addSlot(e).addCache(t).addContext(r)},removeFlow:function(){return this.removeSlot().removeCache().removeContext()},addCache:function(e){return this.cache=e||"",this.caches.push(this.cache),this},removeCache:function(){return this.caches.pop(),this.cache=this.caches[this.caches.length-1]||"",this},addContext:function(e){return this.context=Object.assign({},this.context,e),this.context.extra=this.context.extra||{},this.contexts.push(this.context),this},removeContext:function(){return this.contexts.pop(),this.context=this.contexts[this.contexts.length-1]||{},this},addSlot:function(e){return this.slot=e||"",this.slots.push(this.slot),this},removeSlot:function(){return this.slots.pop(),this.slot=this.slots[this.slots.length-1]||"",this},addVertexCode:function(e){this.addCode(e,"vertex")},addFragmentCode:function(e){this.addCode(e,"fragment")},addCode:function(e,t){this.code[t||this.shader]+=e+"\n"},addVertexNodeCode:function(e){this.addNodeCode(e,"vertex")},addFragmentNodeCode:function(e){this.addNodeCode(e,"fragment")},addNodeCode:function(e,t){this.nodeCode[t||this.shader]+=e+"\n"},clearNodeCode:function(e){e=e||this.shader;var t=this.nodeCode[e];return this.nodeCode[e]="",t},clearVertexNodeCode:function(){return this.clearNodeCode("vertex")},clearFragmentNodeCode:function(){return this.clearNodeCode("fragment")},addVertexFinalCode:function(e){this.addFinalCode(e,"vertex")},addFragmentFinalCode:function(e){this.addFinalCode(e,"fragment")},addFinalCode:function(e,t){this.finalCode[t||this.shader]+=e+"\n"},addVertexParsCode:function(e){this.addParsCode(e,"vertex")},addFragmentParsCode:function(e){this.addParsCode(e,"fragment")},addParsCode:function(e,t){this.parsCode[t||this.shader]+=e+"\n"},addVaryCode:function(e){this.addVertexParsCode(e),this.addFragmentParsCode(e)},isCache:function(e){return-1!==this.caches.indexOf(e)},isSlot:function(e){return-1!==this.slots.indexOf(e)},define:function(e,t){this.defines[e]=void 0===t?1:t},require:function(e){this.requires[e]=!0},isDefined:function(e){return void 0!==this.defines[e]},getVar:function(e,t,r,i="varying",n="V",s=""){var o=this.getVars(i),a=o[e];if(!a){var d=o.length;a={name:r||"node"+n+d+(s?"_"+s:""),type:t},o.push(a),o[e]=a}return a},getTempVar:function(e,t,r,i){return this.getVar(e,t,r,this.shader,"T",i)},getAttribute:function(e,t){if(!this.attributes[e]){var r=this.getVar(e,t);this.addVertexParsCode("attribute "+t+" "+e+";"),this.addVertexFinalCode(r.name+" = "+e+";"),this.attributes[e]={varying:r,name:e,type:t}}return this.attributes[e]},getCode:function(e){return[this.prefixCode,this.parsCode[e],this.getVarListCode(this.getVars("varying"),"varying"),this.getVarListCode(this.inputs.uniforms[e],"uniform"),this.getIncludesCode("consts",e),this.getIncludesCode("structs",e),this.getIncludesCode("functions",e),"void main() {",this.getVarListCode(this.getVars(e)),this.code[e],this.resultCode[e],this.finalCode[e],"}"].join("\n")},getVarListCode:function(e,t){t=t||"";var r="";for(let a=0,d=e.length;a<d;++a){var i=e[a],n=i.type,s=i.name,o=this.getFormatByType(n);if(void 0===o)throw new Error("Node pars "+o+" not found.");r+=t+" "+o+" "+s+";\n"}return r},getVars:function(e){return this.inputs.vars[e||this.shader]},getNodeData:function(e){var t=e.isNode?e.uuid:e;return this.nodeData[t]=this.nodeData[t]||{}},createUniform:function(e,r,i,n,s,o){var a=this.inputs.uniforms,d=a.list.length,c=new t.NodeUniform({type:r,name:n||"nodeU"+d+(o?"_"+o:""),node:i,needsUpdate:s});return a.list.push(c),a[e].push(c),a[e][c.name]=c,this.uniforms[c.name]=c,c},createVertexUniform:function(e,t,r,i,n){return this.createUniform("vertex",e,t,r,i,n)},createFragmentUniform:function(e,t,r,i,n){return this.createUniform("fragment",e,t,r,i,n)},include:function(e,t,r){var a;if(e="string"==typeof e?i.NodeLib.get(e):e,!1===this.context.include)return e.name;e instanceof n.FunctionNode?a=this.includes.functions:e instanceof s.ConstNode?a=this.includes.consts:e instanceof o.StructNode&&(a=this.includes.structs);var d=a[this.shader]=a[this.shader]||[];if(e){var c=d[e.name];if(c||(c=d[e.name]={node:e,deps:[]},d.push(c),c.src=e.build(this,"source")),e instanceof n.FunctionNode&&t&&d[t.name]&&-1==d[t.name].deps.indexOf(e)&&(d[t.name].deps.push(e),e.includes&&e.includes.length)){var u=0;do{this.include(e.includes[u++],t)}while(u<e.includes.length)}return r&&(c.src=r),e.name}throw new Error("Include not found.")},colorToVectorProperties:function(e){return e.replace("r","x").replace("g","y").replace("b","z").replace("a","w")},colorToVector:function(e){return e.replace(/c/g,"v3")},getIncludes:function(e,t){return this.includes[e][t||this.shader]},getIncludesCode:function(){function e(e,t){return e.deps.length-t.deps.length}return function(t,r){if(!(n=this.getIncludes(t,r)))return"";var i="",n=n.sort(e);for(let e=0;e<n.length;e++)n[e].src&&(i+=n[e].src+"\n");return i}}(),getConstructorFromLength:function(e){return v[e-1]},isTypeMatrix:function(e){return/^m/.test(e)},getTypeLength:function(e){return"f"===e?1:parseInt(this.colorToVector(e).substr(1))},getTypeFromLength:function(e){return 1===e?"f":"v"+e},findNode:function(){for(let t=0;t<arguments.length;t++){var e=arguments[t];if(void 0!==e&&e.isNode)return e}},resolve:function(){for(let r=0;r<arguments.length;r++){var t=arguments[r];if(void 0!==t){if(t.isNode)return t;if(t.isTexture)switch(t.mapping){case e.CubeReflectionMapping:case e.CubeRefractionMapping:return new h.CubeTextureNode(t);case e.CubeUVReflectionMapping:case e.CubeUVRefractionMapping:return new f.TextureCubeNode(new u.TextureNode(t));default:return new u.TextureNode(t)}else{if(t.isVector2)return new a.Vector2Node(t);if(t.isVector3)return new d.Vector3Node(t);if(t.isVector4)return new c.Vector4Node(t)}}}},format:function(e,t,r){switch(this.colorToVector(r+" <- "+t)){case"f <- v2":case"f <- v3":case"f <- v4":return e+".x";case"f <- i":case"f <- b":return"float( "+e+" )";case"v2 <- f":return"vec2( "+e+" )";case"v2 <- v3":case"v2 <- v4":return e+".xy";case"v2 <- i":case"v2 <- b":return"vec2( float( "+e+" ) )";case"v3 <- f":return"vec3( "+e+" )";case"v3 <- v2":return"vec3( "+e+", 0.0 )";case"v3 <- v4":return e+".xyz";case"v3 <- i":case"v3 <- b":return"vec2( float( "+e+" ) )";case"v4 <- f":return"vec4( "+e+" )";case"v4 <- v2":return"vec4( "+e+", 0.0, 1.0 )";case"v4 <- v3":return"vec4( "+e+", 1.0 )";case"v4 <- i":case"v4 <- b":return"vec4( float( "+e+" ) )";case"i <- f":case"i <- b":return"int( "+e+" )";case"i <- v2":case"i <- v3":case"i <- v4":return"int( "+e+".x )";case"b <- f":return"( "+e+" != 0.0 )";case"b <- v2":return"( "+e+" != vec2( 0.0 ) )";case"b <- v3":return"( "+e+" != vec3( 0.0 ) )";case"b <- v4":return"( "+e+" != vec4( 0.0 ) )";case"b <- i":return"( "+e+" != 0 )"}return e},getTypeByFormat:function(e){return g[e]||e},getFormatByType:function(e){return m[e]||e},getUuid:function(e,t){return(t=void 0===t||t)&&this.cache&&(e=this.cache+"-"+e),e},getElementByIndex:function(e){return l[e]},getIndexByElement:function(e){return l.indexOf(e)},isShader:function(e){return this.shader===e},setShader:function(e){return this.shader=e,this},mergeDefines:function(e){for(let t in e)this.defines[t]=e[t];return this.defines},mergeUniform:function(e){for(let t in e)this.uniforms[t]=e[t];return this.uniforms},getTextureEncodingFromMap:function(t){var r;return t?t.isTexture?r=t.encoding:t.isWebGLRenderTarget&&(console.warn("THREE.WebGLPrograms.getTextureEncodingFromMap: don't use render targets as textures. Use their .texture property instead."),r=t.texture.encoding):r=e.LinearEncoding,r===e.LinearEncoding&&this.context.gamma&&(r=e.sRGBEncoding),r}},exports.NodeBuilder=C;
@@ -1,4 +1,4 @@
1
- import { CubeUVRefractionMapping, CubeUVReflectionMapping, CubeRefractionMapping, CubeReflectionMapping, LinearEncoding, GammaEncoding } from 'three';
1
+ import { CubeUVRefractionMapping, CubeUVReflectionMapping, CubeRefractionMapping, CubeReflectionMapping, LinearEncoding, sRGBEncoding } from 'three';
2
2
  import { NodeUniform } from './NodeUniform.js';
3
3
  import { NodeUtils } from './NodeUtils.js';
4
4
  import { NodeLib } from './NodeLib.js';
@@ -621,7 +621,7 @@ NodeBuilder.prototype = {
621
621
  }
622
622
 
623
623
  if (encoding === LinearEncoding && this.context.gamma) {
624
- encoding = GammaEncoding;
624
+ encoding = sRGBEncoding;
625
625
  }
626
626
 
627
627
  return encoding;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../core/InputNode.cjs.js"),t=require("../accessors/ReflectNode.cjs.js"),o=require("../utils/ColorSpaceNode.cjs.js"),r=require("../core/ExpressionNode.cjs.js");function s(o,r,s){e.InputNode.call(this,"v4",{shared:!0}),this.value=o,this.uv=r||new t.ReflectNode,this.bias=s}require("../core/TempNode.cjs.js"),require("three"),require("../core/Node.cjs.js"),require("../accessors/PositionNode.cjs.js"),require("../core/NodeLib.cjs.js"),require("../accessors/NormalNode.cjs.js"),require("../core/ConstNode.cjs.js"),require("./FloatNode.cjs.js"),require("../core/FunctionNode.cjs.js"),s.prototype=Object.create(e.InputNode.prototype),s.prototype.constructor=s,s.prototype.nodeType="CubeTexture",s.prototype.getTexture=function(t,o){return e.InputNode.prototype.generate.call(this,t,o,this.value.uuid,"tc")},s.prototype.generate=function(e,t){if("samplerCube"===t)return this.getTexture(e,t);var s,i=this.getTexture(e,t),u=this.uv.build(e,"v3"),c=this.bias?this.bias.build(e,"f"):void 0;void 0===c&&e.context.bias&&(c=e.context.bias.setTexture(this).build(e,"f")),s=c?"texCubeBias( "+i+", "+u+", "+c+" )":"texCube( "+i+", "+u+" )";var a={include:e.isShader("vertex"),ignoreCache:!0},p=this.getType(e);return e.addContext(a),this.colorSpace=this.colorSpace||new o.ColorSpaceNode(new r.ExpressionNode("",p)),this.colorSpace.fromDecoding(e.getTextureEncodingFromMap(this.value)),this.colorSpace.input.parse(s),s=this.colorSpace.build(e,p),e.removeContext(),e.format(s,p,t)},s.prototype.copy=function(t){return e.InputNode.prototype.copy.call(this,t),t.value&&(this.value=t.value),this.uv=t.uv,t.bias&&(this.bias=t.bias),this},s.prototype.toJSON=function(e){var t=this.getJSONNode(e);return t||((t=this.createJSONNode(e)).value=this.value.uuid,t.uv=this.uv.toJSON(e).uuid,this.bias&&(t.bias=this.bias.toJSON(e).uuid)),t},exports.CubeTextureNode=s;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../core/InputNode.cjs.js"),t=require("../accessors/ReflectNode.cjs.js"),o=require("../utils/ColorSpaceNode.cjs.js"),r=require("../core/ExpressionNode.cjs.js");function s(o,r,s){e.InputNode.call(this,"v4",{shared:!0}),this.value=o,this.uv=r||new t.ReflectNode,this.bias=s}require("../core/TempNode.cjs.js"),require("three"),require("../core/Node.cjs.js"),require("../accessors/PositionNode.cjs.js"),require("../core/NodeLib.cjs.js"),require("../accessors/NormalNode.cjs.js"),require("../core/ConstNode.cjs.js"),require("../core/FunctionNode.cjs.js"),s.prototype=Object.create(e.InputNode.prototype),s.prototype.constructor=s,s.prototype.nodeType="CubeTexture",s.prototype.getTexture=function(t,o){return e.InputNode.prototype.generate.call(this,t,o,this.value.uuid,"tc")},s.prototype.generate=function(e,t){if("samplerCube"===t)return this.getTexture(e,t);var s,i=this.getTexture(e,t),u=this.uv.build(e,"v3"),c=this.bias?this.bias.build(e,"f"):void 0;void 0===c&&e.context.bias&&(c=e.context.bias.setTexture(this).build(e,"f")),s=c?"texCubeBias( "+i+", "+u+", "+c+" )":"texCube( "+i+", "+u+" )";var a={include:e.isShader("vertex"),ignoreCache:!0},p=this.getType(e);return e.addContext(a),this.colorSpace=this.colorSpace||new o.ColorSpaceNode(new r.ExpressionNode("",p)),this.colorSpace.fromDecoding(e.getTextureEncodingFromMap(this.value)),this.colorSpace.input.parse(s),s=this.colorSpace.build(e,p),e.removeContext(),e.format(s,p,t)},s.prototype.copy=function(t){return e.InputNode.prototype.copy.call(this,t),t.value&&(this.value=t.value),this.uv=t.uv,t.bias&&(this.bias=t.bias),this},s.prototype.toJSON=function(e){var t=this.getJSONNode(e);return t||((t=this.createJSONNode(e)).value=this.value.uuid,t.uv=this.uv.toJSON(e).uuid,this.bias&&(t.bias=this.bias.toJSON(e).uuid)),t},exports.CubeTextureNode=s;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three"),r=require("../core/NodeBuilder.cjs.js"),s=require("../materials/NodeMaterial.cjs.js"),t=require("./TextureNode.cjs.js");function o(r,o,i,a){a=a||{},this.input=i,this.clear=void 0===a.clear||a.clear,this.renderTarget=new e.WebGLRenderTarget(r,o,a),this.material=new s.NodeMaterial,this.camera=new e.OrthographicCamera(-1,1,1,-1,0,1),this.scene=new e.Scene,this.quad=new e.Mesh(new e.PlaneGeometry(2,2),this.material),this.quad.frustumCulled=!1,this.scene.add(this.quad),this.render=!0,t.TextureNode.call(this,this.renderTarget.texture)}require("../core/NodeUniform.cjs.js"),require("../core/NodeUtils.cjs.js"),require("../core/NodeLib.cjs.js"),require("../core/FunctionNode.cjs.js"),require("../core/TempNode.cjs.js"),require("../core/Node.cjs.js"),require("../core/ConstNode.cjs.js"),require("../core/StructNode.cjs.js"),require("./Vector2Node.cjs.js"),require("../core/InputNode.cjs.js"),require("./Vector3Node.cjs.js"),require("./Vector4Node.cjs.js"),require("./CubeTextureNode.cjs.js"),require("../accessors/ReflectNode.cjs.js"),require("../accessors/PositionNode.cjs.js"),require("../accessors/NormalNode.cjs.js"),require("../utils/ColorSpaceNode.cjs.js"),require("./FloatNode.cjs.js"),require("../core/ExpressionNode.cjs.js"),require("../misc/TextureCubeNode.cjs.js"),require("../misc/TextureCubeUVNode.cjs.js"),require("../core/FunctionCallNode.cjs.js"),require("../math/OperatorNode.cjs.js"),require("../math/MathNode.cjs.js"),require("../accessors/UVNode.cjs.js"),require("./ColorNode.cjs.js"),require("../materials/nodes/RawNode.cjs.js"),o.prototype=Object.create(t.TextureNode.prototype),o.prototype.constructor=o,o.prototype.nodeType="RTT",o.prototype.build=function(e,s,o){var i=new r.NodeBuilder;return i.nodes=e.nodes,i.updaters=e.updaters,this.material.fragment.value=this.input,this.material.build({builder:i}),t.TextureNode.prototype.build.call(this,e,s,o)},o.prototype.updateFramesaveTo=function(r){if(this.saveTo.render=!1,this.saveTo!==this.saveToCurrent){this.saveToMaterial&&this.saveToMaterial.dispose();var t=new s.NodeMaterial;t.fragment.value=this,t.build();var o=new e.Scene,i=new e.Mesh(new e.PlaneGeometry(2,2),t);i.frustumCulled=!1,o.add(i),this.saveToScene=o,this.saveToMaterial=t}this.saveToCurrent=this.saveTo,r.renderer.setRenderTarget(this.saveTo.renderTarget),this.saveTo.clear&&r.renderer.clear(),r.renderer.render(this.saveToScene,this.camera)},o.prototype.updateFrame=function(e){e.renderer?(this.saveTo&&!1===this.saveTo.render&&this.updateFramesaveTo(e),this.render&&(this.material.uniforms.renderTexture&&(this.material.uniforms.renderTexture.value=e.renderTexture),e.renderer.setRenderTarget(this.renderTarget),this.clear&&e.renderer.clear(),e.renderer.render(this.scene,this.camera)),this.saveTo&&!0===this.saveTo.render&&this.updateFramesaveTo(e)):console.warn("RTTNode need a renderer in NodeFrame")},o.prototype.copy=function(e){return t.TextureNode.prototype.copy.call(this,e),this.saveTo=e.saveTo,this},o.prototype.toJSON=function(e){var r=this.getJSONNode(e);return r||(r=t.TextureNode.prototype.toJSON.call(this,e),this.saveTo&&(r.saveTo=this.saveTo.toJSON(e).uuid)),r},exports.RTTNode=o;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three"),r=require("../core/NodeBuilder.cjs.js"),s=require("../materials/NodeMaterial.cjs.js"),t=require("./TextureNode.cjs.js");function o(r,o,i,a){a=a||{},this.input=i,this.clear=void 0===a.clear||a.clear,this.renderTarget=new e.WebGLRenderTarget(r,o,a),this.material=new s.NodeMaterial,this.camera=new e.OrthographicCamera(-1,1,1,-1,0,1),this.scene=new e.Scene,this.quad=new e.Mesh(new e.PlaneGeometry(2,2),this.material),this.quad.frustumCulled=!1,this.scene.add(this.quad),this.render=!0,t.TextureNode.call(this,this.renderTarget.texture)}require("../core/NodeUniform.cjs.js"),require("../core/NodeUtils.cjs.js"),require("../core/NodeLib.cjs.js"),require("../core/FunctionNode.cjs.js"),require("../core/TempNode.cjs.js"),require("../core/Node.cjs.js"),require("../core/ConstNode.cjs.js"),require("../core/StructNode.cjs.js"),require("./Vector2Node.cjs.js"),require("../core/InputNode.cjs.js"),require("./Vector3Node.cjs.js"),require("./Vector4Node.cjs.js"),require("./CubeTextureNode.cjs.js"),require("../accessors/ReflectNode.cjs.js"),require("../accessors/PositionNode.cjs.js"),require("../accessors/NormalNode.cjs.js"),require("../utils/ColorSpaceNode.cjs.js"),require("../core/ExpressionNode.cjs.js"),require("../misc/TextureCubeNode.cjs.js"),require("./FloatNode.cjs.js"),require("../misc/TextureCubeUVNode.cjs.js"),require("../core/FunctionCallNode.cjs.js"),require("../math/OperatorNode.cjs.js"),require("../math/MathNode.cjs.js"),require("../accessors/UVNode.cjs.js"),require("./ColorNode.cjs.js"),require("../materials/nodes/RawNode.cjs.js"),o.prototype=Object.create(t.TextureNode.prototype),o.prototype.constructor=o,o.prototype.nodeType="RTT",o.prototype.build=function(e,s,o){var i=new r.NodeBuilder;return i.nodes=e.nodes,i.updaters=e.updaters,this.material.fragment.value=this.input,this.material.build({builder:i}),t.TextureNode.prototype.build.call(this,e,s,o)},o.prototype.updateFramesaveTo=function(r){if(this.saveTo.render=!1,this.saveTo!==this.saveToCurrent){this.saveToMaterial&&this.saveToMaterial.dispose();var t=new s.NodeMaterial;t.fragment.value=this,t.build();var o=new e.Scene,i=new e.Mesh(new e.PlaneGeometry(2,2),t);i.frustumCulled=!1,o.add(i),this.saveToScene=o,this.saveToMaterial=t}this.saveToCurrent=this.saveTo,r.renderer.setRenderTarget(this.saveTo.renderTarget),this.saveTo.clear&&r.renderer.clear(),r.renderer.render(this.saveToScene,this.camera)},o.prototype.updateFrame=function(e){e.renderer?(this.saveTo&&!1===this.saveTo.render&&this.updateFramesaveTo(e),this.render&&(this.material.uniforms.renderTexture&&(this.material.uniforms.renderTexture.value=e.renderTexture),e.renderer.setRenderTarget(this.renderTarget),this.clear&&e.renderer.clear(),e.renderer.render(this.scene,this.camera)),this.saveTo&&!0===this.saveTo.render&&this.updateFramesaveTo(e)):console.warn("RTTNode need a renderer in NodeFrame")},o.prototype.copy=function(e){return t.TextureNode.prototype.copy.call(this,e),this.saveTo=e.saveTo,this},o.prototype.toJSON=function(e){var r=this.getJSONNode(e);return r||(r=t.TextureNode.prototype.toJSON.call(this,e),this.saveTo&&(r.saveTo=this.saveTo.toJSON(e).uuid)),r},exports.RTTNode=o;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../core/TempNode.cjs.js"),t=require("../core/InputNode.cjs.js"),r=require("../accessors/PositionNode.cjs.js"),o=require("../math/OperatorNode.cjs.js"),s=require("./TextureNode.cjs.js"),i=require("./Matrix4Node.cjs.js");function u(t){e.TempNode.call(this,"v4"),t&&this.setMirror(t)}require("three"),require("../core/Node.cjs.js"),require("../core/NodeLib.cjs.js"),require("../accessors/UVNode.cjs.js"),require("../utils/ColorSpaceNode.cjs.js"),require("../core/ConstNode.cjs.js"),require("./FloatNode.cjs.js"),require("../core/FunctionNode.cjs.js"),require("../core/ExpressionNode.cjs.js"),u.prototype=Object.create(e.TempNode.prototype),u.prototype.constructor=u,u.prototype.nodeType="Reflector",u.prototype.setMirror=function(e){this.mirror=e,this.textureMatrix=new i.Matrix4Node(this.mirror.material.uniforms.textureMatrix.value),this.localPosition=new r.PositionNode(r.PositionNode.LOCAL),this.uv=new o.OperatorNode(this.textureMatrix,this.localPosition,o.OperatorNode.MUL),this.uvResult=new o.OperatorNode(null,this.uv,o.OperatorNode.ADD),this.texture=new s.TextureNode(this.mirror.material.uniforms.tDiffuse.value,this.uv,null,!0)},u.prototype.generate=function(e,t){return e.isShader("fragment")?(this.uvResult.a=this.offset,this.texture.uv=this.offset?this.uvResult:this.uv,"sampler2D"===t?this.texture.build(e,t):e.format(this.texture.build(e,this.type),this.type,t)):(console.warn("THREE.ReflectorNode is not compatible with "+e.shader+" shader."),e.format("vec4( 0.0 )",this.type,t))},u.prototype.copy=function(e){return t.InputNode.prototype.copy.call(this,e),this.scope.mirror=e.mirror,this},u.prototype.toJSON=function(e){var t=this.getJSONNode(e);return t||((t=this.createJSONNode(e)).mirror=this.mirror.uuid,this.offset&&(t.offset=this.offset.toJSON(e).uuid)),t},exports.ReflectorNode=u;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../core/TempNode.cjs.js"),t=require("../core/InputNode.cjs.js"),r=require("../accessors/PositionNode.cjs.js"),o=require("../math/OperatorNode.cjs.js"),s=require("./TextureNode.cjs.js"),i=require("./Matrix4Node.cjs.js");function u(t){e.TempNode.call(this,"v4"),t&&this.setMirror(t)}require("three"),require("../core/Node.cjs.js"),require("../core/NodeLib.cjs.js"),require("../accessors/UVNode.cjs.js"),require("../utils/ColorSpaceNode.cjs.js"),require("../core/ConstNode.cjs.js"),require("../core/FunctionNode.cjs.js"),require("../core/ExpressionNode.cjs.js"),u.prototype=Object.create(e.TempNode.prototype),u.prototype.constructor=u,u.prototype.nodeType="Reflector",u.prototype.setMirror=function(e){this.mirror=e,this.textureMatrix=new i.Matrix4Node(this.mirror.material.uniforms.textureMatrix.value),this.localPosition=new r.PositionNode(r.PositionNode.LOCAL),this.uv=new o.OperatorNode(this.textureMatrix,this.localPosition,o.OperatorNode.MUL),this.uvResult=new o.OperatorNode(null,this.uv,o.OperatorNode.ADD),this.texture=new s.TextureNode(this.mirror.material.uniforms.tDiffuse.value,this.uv,null,!0)},u.prototype.generate=function(e,t){return e.isShader("fragment")?(this.uvResult.a=this.offset,this.texture.uv=this.offset?this.uvResult:this.uv,"sampler2D"===t?this.texture.build(e,t):e.format(this.texture.build(e,this.type),this.type,t)):(console.warn("THREE.ReflectorNode is not compatible with "+e.shader+" shader."),e.format("vec4( 0.0 )",this.type,t))},u.prototype.copy=function(e){return t.InputNode.prototype.copy.call(this,e),this.scope.mirror=e.mirror,this},u.prototype.toJSON=function(e){var t=this.getJSONNode(e);return t||((t=this.createJSONNode(e)).mirror=this.mirror.uuid,this.offset&&(t.offset=this.offset.toJSON(e).uuid)),t},exports.ReflectorNode=u;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../core/InputNode.cjs.js"),r=require("./TextureNode.cjs.js");function o(e){r.TextureNode.call(this,void 0,e)}require("../core/TempNode.cjs.js"),require("three"),require("../core/Node.cjs.js"),require("../accessors/UVNode.cjs.js"),require("../core/NodeLib.cjs.js"),require("../utils/ColorSpaceNode.cjs.js"),require("../core/ConstNode.cjs.js"),require("./FloatNode.cjs.js"),require("../core/FunctionNode.cjs.js"),require("../core/ExpressionNode.cjs.js"),o.prototype=Object.create(r.TextureNode.prototype),o.prototype.constructor=o,o.prototype.nodeType="Screen",o.prototype.getUnique=function(){return!0},o.prototype.getTexture=function(r,o){return e.InputNode.prototype.generate.call(this,r,o,this.getUuid(),"t","renderTexture")},exports.ScreenNode=o;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../core/InputNode.cjs.js"),r=require("./TextureNode.cjs.js");function o(e){r.TextureNode.call(this,void 0,e)}require("../core/TempNode.cjs.js"),require("three"),require("../core/Node.cjs.js"),require("../accessors/UVNode.cjs.js"),require("../core/NodeLib.cjs.js"),require("../utils/ColorSpaceNode.cjs.js"),require("../core/ConstNode.cjs.js"),require("../core/FunctionNode.cjs.js"),require("../core/ExpressionNode.cjs.js"),o.prototype=Object.create(r.TextureNode.prototype),o.prototype.constructor=o,o.prototype.nodeType="Screen",o.prototype.getUnique=function(){return!0},o.prototype.getTexture=function(r,o){return e.InputNode.prototype.generate.call(this,r,o,this.getUuid(),"t","renderTexture")},exports.ScreenNode=o;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../core/InputNode.cjs.js"),t=require("../accessors/UVNode.cjs.js"),o=require("../utils/ColorSpaceNode.cjs.js"),r=require("../core/ExpressionNode.cjs.js");function i(o,r,i,s){e.InputNode.call(this,"v4",{shared:!0}),this.value=o,this.uv=r||new t.UVNode,this.bias=i,this.project=void 0!==s&&s}require("../core/TempNode.cjs.js"),require("three"),require("../core/Node.cjs.js"),require("../core/NodeLib.cjs.js"),require("../core/ConstNode.cjs.js"),require("./FloatNode.cjs.js"),require("../core/FunctionNode.cjs.js"),i.prototype=Object.create(e.InputNode.prototype),i.prototype.constructor=i,i.prototype.nodeType="Texture",i.prototype.getTexture=function(t,o){return e.InputNode.prototype.generate.call(this,t,o,this.value.uuid,"t")},i.prototype.generate=function(e,t){if("sampler2D"===t)return this.getTexture(e,t);var i,s,u=this.getTexture(e,t),c=this.uv.build(e,this.project?"v4":"v2"),p=this.bias?this.bias.build(e,"f"):void 0;void 0===p&&e.context.bias&&(p=e.context.bias.setTexture(this).build(e,"f")),i=this.project?"texture2DProj":p?"tex2DBias":"tex2D",s=p?i+"( "+u+", "+c+", "+p+" )":i+"( "+u+", "+c+" )";var a={include:e.isShader("vertex"),ignoreCache:!0},n=this.getType(e);return e.addContext(a),this.colorSpace=this.colorSpace||new o.ColorSpaceNode(new r.ExpressionNode("",n)),this.colorSpace.fromDecoding(e.getTextureEncodingFromMap(this.value)),this.colorSpace.input.parse(s),s=this.colorSpace.build(e,n),e.removeContext(),e.format(s,n,t)},i.prototype.copy=function(t){return e.InputNode.prototype.copy.call(this,t),t.value&&(this.value=t.value),this.uv=t.uv,t.bias&&(this.bias=t.bias),void 0!==t.project&&(this.project=t.project),this},i.prototype.toJSON=function(e){var t=this.getJSONNode(e);return t||(t=this.createJSONNode(e),this.value&&(t.value=this.value.uuid),t.uv=this.uv.toJSON(e).uuid,t.project=this.project,this.bias&&(t.bias=this.bias.toJSON(e).uuid)),t},exports.TextureNode=i;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../core/InputNode.cjs.js"),t=require("../accessors/UVNode.cjs.js"),o=require("../utils/ColorSpaceNode.cjs.js"),r=require("../core/ExpressionNode.cjs.js");function i(o,r,i,s){e.InputNode.call(this,"v4",{shared:!0}),this.value=o,this.uv=r||new t.UVNode,this.bias=i,this.project=void 0!==s&&s}require("../core/TempNode.cjs.js"),require("three"),require("../core/Node.cjs.js"),require("../core/NodeLib.cjs.js"),require("../core/ConstNode.cjs.js"),require("../core/FunctionNode.cjs.js"),i.prototype=Object.create(e.InputNode.prototype),i.prototype.constructor=i,i.prototype.nodeType="Texture",i.prototype.getTexture=function(t,o){return e.InputNode.prototype.generate.call(this,t,o,this.value.uuid,"t")},i.prototype.generate=function(e,t){if("sampler2D"===t)return this.getTexture(e,t);var i,s,u=this.getTexture(e,t),c=this.uv.build(e,this.project?"v4":"v2"),p=this.bias?this.bias.build(e,"f"):void 0;void 0===p&&e.context.bias&&(p=e.context.bias.setTexture(this).build(e,"f")),i=this.project?"texture2DProj":p?"tex2DBias":"tex2D",s=p?i+"( "+u+", "+c+", "+p+" )":i+"( "+u+", "+c+" )";var a={include:e.isShader("vertex"),ignoreCache:!0},n=this.getType(e);return e.addContext(a),this.colorSpace=this.colorSpace||new o.ColorSpaceNode(new r.ExpressionNode("",n)),this.colorSpace.fromDecoding(e.getTextureEncodingFromMap(this.value)),this.colorSpace.input.parse(s),s=this.colorSpace.build(e,n),e.removeContext(),e.format(s,n,t)},i.prototype.copy=function(t){return e.InputNode.prototype.copy.call(this,t),t.value&&(this.value=t.value),this.uv=t.uv,t.bias&&(this.bias=t.bias),void 0!==t.project&&(this.project=t.project),this},i.prototype.toJSON=function(e){var t=this.getJSONNode(e);return t||(t=this.createJSONNode(e),this.value&&(t.value=this.value.uuid),t.uv=this.uv.toJSON(e).uuid,t.project=this.project,this.bias&&(t.bias=this.bias.toJSON(e).uuid)),t},exports.TextureNode=i;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./nodes/BasicNode.cjs.js"),r=require("./NodeMaterial.cjs.js"),s=require("../core/NodeUtils.cjs.js");function o(){var s=new e.BasicNode;r.NodeMaterial.call(this,s,s),this.type="BasicNodeMaterial"}require("../core/Node.cjs.js"),require("three"),require("../inputs/ColorNode.cjs.js"),require("../core/InputNode.cjs.js"),require("../core/TempNode.cjs.js"),require("../core/NodeBuilder.cjs.js"),require("../core/NodeUniform.cjs.js"),require("../core/NodeLib.cjs.js"),require("../core/FunctionNode.cjs.js"),require("../core/ConstNode.cjs.js"),require("../core/StructNode.cjs.js"),require("../inputs/Vector2Node.cjs.js"),require("../inputs/Vector3Node.cjs.js"),require("../inputs/Vector4Node.cjs.js"),require("../inputs/TextureNode.cjs.js"),require("../accessors/UVNode.cjs.js"),require("../utils/ColorSpaceNode.cjs.js"),require("../inputs/FloatNode.cjs.js"),require("../core/ExpressionNode.cjs.js"),require("../inputs/CubeTextureNode.cjs.js"),require("../accessors/ReflectNode.cjs.js"),require("../accessors/PositionNode.cjs.js"),require("../accessors/NormalNode.cjs.js"),require("../misc/TextureCubeNode.cjs.js"),require("../misc/TextureCubeUVNode.cjs.js"),require("../core/FunctionCallNode.cjs.js"),require("../math/OperatorNode.cjs.js"),require("../math/MathNode.cjs.js"),require("./nodes/RawNode.cjs.js"),o.prototype=Object.create(r.NodeMaterial.prototype),o.prototype.constructor=o,s.NodeUtils.addShortcuts(o.prototype,"fragment",["color","alpha","mask","position"]),exports.BasicNodeMaterial=o;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./nodes/BasicNode.cjs.js"),r=require("./NodeMaterial.cjs.js"),s=require("../core/NodeUtils.cjs.js");function o(){var s=new e.BasicNode;r.NodeMaterial.call(this,s,s),this.type="BasicNodeMaterial"}require("../core/Node.cjs.js"),require("three"),require("../inputs/ColorNode.cjs.js"),require("../core/InputNode.cjs.js"),require("../core/TempNode.cjs.js"),require("../core/NodeBuilder.cjs.js"),require("../core/NodeUniform.cjs.js"),require("../core/NodeLib.cjs.js"),require("../core/FunctionNode.cjs.js"),require("../core/ConstNode.cjs.js"),require("../core/StructNode.cjs.js"),require("../inputs/Vector2Node.cjs.js"),require("../inputs/Vector3Node.cjs.js"),require("../inputs/Vector4Node.cjs.js"),require("../inputs/TextureNode.cjs.js"),require("../accessors/UVNode.cjs.js"),require("../utils/ColorSpaceNode.cjs.js"),require("../core/ExpressionNode.cjs.js"),require("../inputs/CubeTextureNode.cjs.js"),require("../accessors/ReflectNode.cjs.js"),require("../accessors/PositionNode.cjs.js"),require("../accessors/NormalNode.cjs.js"),require("../misc/TextureCubeNode.cjs.js"),require("../inputs/FloatNode.cjs.js"),require("../misc/TextureCubeUVNode.cjs.js"),require("../core/FunctionCallNode.cjs.js"),require("../math/OperatorNode.cjs.js"),require("../math/MathNode.cjs.js"),require("./nodes/RawNode.cjs.js"),o.prototype=Object.create(r.NodeMaterial.prototype),o.prototype.constructor=o,s.NodeUtils.addShortcuts(o.prototype,"fragment",["color","alpha","mask","position"]),exports.BasicNodeMaterial=o;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three"),t=require("../core/NodeBuilder.cjs.js"),i=require("../inputs/ColorNode.cjs.js"),s=require("../accessors/PositionNode.cjs.js"),r=require("./nodes/RawNode.cjs.js");function o(t,o){e.ShaderMaterial.call(this),this.vertex=t||new r.RawNode(new s.PositionNode(s.PositionNode.PROJECTION)),this.fragment=o||new r.RawNode(new i.ColorNode(16711680)),this.updaters=[]}require("../core/NodeUniform.cjs.js"),require("../core/NodeUtils.cjs.js"),require("../core/NodeLib.cjs.js"),require("../core/FunctionNode.cjs.js"),require("../core/TempNode.cjs.js"),require("../core/Node.cjs.js"),require("../core/ConstNode.cjs.js"),require("../core/StructNode.cjs.js"),require("../inputs/Vector2Node.cjs.js"),require("../core/InputNode.cjs.js"),require("../inputs/Vector3Node.cjs.js"),require("../inputs/Vector4Node.cjs.js"),require("../inputs/TextureNode.cjs.js"),require("../accessors/UVNode.cjs.js"),require("../utils/ColorSpaceNode.cjs.js"),require("../inputs/FloatNode.cjs.js"),require("../core/ExpressionNode.cjs.js"),require("../inputs/CubeTextureNode.cjs.js"),require("../accessors/ReflectNode.cjs.js"),require("../accessors/NormalNode.cjs.js"),require("../misc/TextureCubeNode.cjs.js"),require("../misc/TextureCubeUVNode.cjs.js"),require("../core/FunctionCallNode.cjs.js"),require("../math/OperatorNode.cjs.js"),require("../math/MathNode.cjs.js"),o.prototype=Object.create(e.ShaderMaterial.prototype),o.prototype.constructor=o,o.prototype.type="NodeMaterial",o.prototype.isNodeMaterial=!0,Object.defineProperties(o.prototype,{properties:{get:function(){return this.fragment.properties}},needsUpdate:{set:function(e){!0===e&&this.version++,this.needsCompile=e},get:function(){return this.needsCompile}}}),o.prototype.onBeforeCompile=function(e,t){this.build({renderer:t}),e.defines=this.defines,e.uniforms=this.uniforms,e.vertexShader=this.vertexShader,e.fragmentShader=this.fragmentShader,e.extensionDerivatives=!0===this.extensions.derivatives,e.extensionFragDepth=!0===this.extensions.fragDepth,e.extensionDrawBuffers=!0===this.extensions.drawBuffers,e.extensionShaderTextureLOD=!0===this.extensions.shaderTextureLOD},o.prototype.customProgramCacheKey=function(){return this.getHash()},o.prototype.getHash=function(){var e="{";return e+='"vertex":'+this.vertex.getHash()+",",e+='"fragment":'+this.fragment.getHash(),e+="}"},o.prototype.updateFrame=function(e){for(let t=0;t<this.updaters.length;++t)e.updateNode(this.updaters[t])},o.prototype.build=function(i){var s=(i=i||{}).builder||new t.NodeBuilder;return s.setMaterial(this,i.renderer),s.build(this.vertex,this.fragment),this.vertexShader=s.getCode("vertex"),this.fragmentShader=s.getCode("fragment"),this.defines=s.defines,this.uniforms=s.uniforms,this.extensions=s.extensions,this.updaters=s.updaters,this.fog=s.requires.fog,this.lights=s.requires.lights,this.transparent=s.requires.transparent||this.blending>e.NormalBlending,this},o.prototype.copy=function(e){var t=this.uuid;for(let t in e)this[t]=e[t];return this.uuid=t,void 0!==e.userData&&(this.userData=JSON.parse(JSON.stringify(e.userData))),this},o.prototype.toJSON=function(t){if((void 0===t||"string"==typeof t)&&(t={nodes:{}}),t&&!t.materials&&(t.materials={}),!t.materials[this.uuid]){var i={};i.uuid=this.uuid,i.type=this.type,t.materials[i.uuid]=i,""!==this.name&&(i.name=this.name),void 0!==this.size&&(i.size=this.size),void 0!==this.sizeAttenuation&&(i.sizeAttenuation=this.sizeAttenuation),this.blending!==e.NormalBlending&&(i.blending=this.blending),!0===this.flatShading&&(i.flatShading=this.flatShading),this.side!==e.FrontSide&&(i.side=this.side),this.vertexColors!==e.NoColors&&(i.vertexColors=this.vertexColors),this.depthFunc!==e.LessEqualDepth&&(i.depthFunc=this.depthFunc),!1===this.depthTest&&(i.depthTest=this.depthTest),!1===this.depthWrite&&(i.depthWrite=this.depthWrite),1!==this.linewidth&&(i.linewidth=this.linewidth),void 0!==this.dashSize&&(i.dashSize=this.dashSize),void 0!==this.gapSize&&(i.gapSize=this.gapSize),void 0!==this.scale&&(i.scale=this.scale),!0===this.dithering&&(i.dithering=!0),!0===this.wireframe&&(i.wireframe=this.wireframe),this.wireframeLinewidth>1&&(i.wireframeLinewidth=this.wireframeLinewidth),"round"!==this.wireframeLinecap&&(i.wireframeLinecap=this.wireframeLinecap),"round"!==this.wireframeLinejoin&&(i.wireframeLinejoin=this.wireframeLinejoin),this.alphaTest>0&&(i.alphaTest=this.alphaTest),!0===this.premultipliedAlpha&&(i.premultipliedAlpha=this.premultipliedAlpha),!0===this.morphTargets&&(i.morphTargets=!0),!0===this.skinning&&(i.skinning=!0),!1===this.visible&&(i.visible=!1),"{}"!==JSON.stringify(this.userData)&&(i.userData=this.userData),i.fog=this.fog,i.lights=this.lights,i.vertex=this.vertex.toJSON(t).uuid,i.fragment=this.fragment.toJSON(t).uuid}return t.material=this.uuid,t},exports.NodeMaterial=o;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three"),t=require("../core/NodeBuilder.cjs.js"),i=require("../inputs/ColorNode.cjs.js"),s=require("../accessors/PositionNode.cjs.js"),r=require("./nodes/RawNode.cjs.js");function o(t,o){e.ShaderMaterial.call(this),this.vertex=t||new r.RawNode(new s.PositionNode(s.PositionNode.PROJECTION)),this.fragment=o||new r.RawNode(new i.ColorNode(16711680)),this.updaters=[]}require("../core/NodeUniform.cjs.js"),require("../core/NodeUtils.cjs.js"),require("../core/NodeLib.cjs.js"),require("../core/FunctionNode.cjs.js"),require("../core/TempNode.cjs.js"),require("../core/Node.cjs.js"),require("../core/ConstNode.cjs.js"),require("../core/StructNode.cjs.js"),require("../inputs/Vector2Node.cjs.js"),require("../core/InputNode.cjs.js"),require("../inputs/Vector3Node.cjs.js"),require("../inputs/Vector4Node.cjs.js"),require("../inputs/TextureNode.cjs.js"),require("../accessors/UVNode.cjs.js"),require("../utils/ColorSpaceNode.cjs.js"),require("../core/ExpressionNode.cjs.js"),require("../inputs/CubeTextureNode.cjs.js"),require("../accessors/ReflectNode.cjs.js"),require("../accessors/NormalNode.cjs.js"),require("../misc/TextureCubeNode.cjs.js"),require("../inputs/FloatNode.cjs.js"),require("../misc/TextureCubeUVNode.cjs.js"),require("../core/FunctionCallNode.cjs.js"),require("../math/OperatorNode.cjs.js"),require("../math/MathNode.cjs.js"),o.prototype=Object.create(e.ShaderMaterial.prototype),o.prototype.constructor=o,o.prototype.type="NodeMaterial",o.prototype.isNodeMaterial=!0,Object.defineProperties(o.prototype,{properties:{get:function(){return this.fragment.properties}},needsUpdate:{set:function(e){!0===e&&this.version++,this.needsCompile=e},get:function(){return this.needsCompile}}}),o.prototype.onBeforeCompile=function(e,t){this.build({renderer:t}),e.defines=this.defines,e.uniforms=this.uniforms,e.vertexShader=this.vertexShader,e.fragmentShader=this.fragmentShader,e.extensionDerivatives=!0===this.extensions.derivatives,e.extensionFragDepth=!0===this.extensions.fragDepth,e.extensionDrawBuffers=!0===this.extensions.drawBuffers,e.extensionShaderTextureLOD=!0===this.extensions.shaderTextureLOD},o.prototype.customProgramCacheKey=function(){return this.getHash()},o.prototype.getHash=function(){var e="{";return e+='"vertex":'+this.vertex.getHash()+",",e+='"fragment":'+this.fragment.getHash(),e+="}"},o.prototype.updateFrame=function(e){for(let t=0;t<this.updaters.length;++t)e.updateNode(this.updaters[t])},o.prototype.build=function(i){var s=(i=i||{}).builder||new t.NodeBuilder;return s.setMaterial(this,i.renderer),s.build(this.vertex,this.fragment),this.vertexShader=s.getCode("vertex"),this.fragmentShader=s.getCode("fragment"),this.defines=s.defines,this.uniforms=s.uniforms,this.extensions=s.extensions,this.updaters=s.updaters,this.fog=s.requires.fog,this.lights=s.requires.lights,this.transparent=s.requires.transparent||this.blending>e.NormalBlending,this},o.prototype.copy=function(e){var t=this.uuid;for(let t in e)this[t]=e[t];return this.uuid=t,void 0!==e.userData&&(this.userData=JSON.parse(JSON.stringify(e.userData))),this},o.prototype.toJSON=function(t){if((void 0===t||"string"==typeof t)&&(t={nodes:{}}),t&&!t.materials&&(t.materials={}),!t.materials[this.uuid]){var i={};i.uuid=this.uuid,i.type=this.type,t.materials[i.uuid]=i,""!==this.name&&(i.name=this.name),void 0!==this.size&&(i.size=this.size),void 0!==this.sizeAttenuation&&(i.sizeAttenuation=this.sizeAttenuation),this.blending!==e.NormalBlending&&(i.blending=this.blending),!0===this.flatShading&&(i.flatShading=this.flatShading),this.side!==e.FrontSide&&(i.side=this.side),this.vertexColors!==e.NoColors&&(i.vertexColors=this.vertexColors),this.depthFunc!==e.LessEqualDepth&&(i.depthFunc=this.depthFunc),!1===this.depthTest&&(i.depthTest=this.depthTest),!1===this.depthWrite&&(i.depthWrite=this.depthWrite),1!==this.linewidth&&(i.linewidth=this.linewidth),void 0!==this.dashSize&&(i.dashSize=this.dashSize),void 0!==this.gapSize&&(i.gapSize=this.gapSize),void 0!==this.scale&&(i.scale=this.scale),!0===this.dithering&&(i.dithering=!0),!0===this.wireframe&&(i.wireframe=this.wireframe),this.wireframeLinewidth>1&&(i.wireframeLinewidth=this.wireframeLinewidth),"round"!==this.wireframeLinecap&&(i.wireframeLinecap=this.wireframeLinecap),"round"!==this.wireframeLinejoin&&(i.wireframeLinejoin=this.wireframeLinejoin),this.alphaTest>0&&(i.alphaTest=this.alphaTest),!0===this.premultipliedAlpha&&(i.premultipliedAlpha=this.premultipliedAlpha),!0===this.morphTargets&&(i.morphTargets=!0),!0===this.skinning&&(i.skinning=!0),!1===this.visible&&(i.visible=!1),"{}"!==JSON.stringify(this.userData)&&(i.userData=this.userData),i.fog=this.fog,i.lights=this.lights,i.vertex=this.vertex.toJSON(t).uuid,i.fragment=this.fragment.toJSON(t).uuid}return t.material=this.uuid,t},exports.NodeMaterial=o;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./nodes/SpriteNode.cjs.js"),r=require("./NodeMaterial.cjs.js"),s=require("../core/NodeUtils.cjs.js");function o(){var s=new e.SpriteNode;r.NodeMaterial.call(this,s,s),this.type="SpriteNodeMaterial"}require("three"),require("../core/Node.cjs.js"),require("../inputs/ColorNode.cjs.js"),require("../core/InputNode.cjs.js"),require("../core/TempNode.cjs.js"),require("../core/NodeBuilder.cjs.js"),require("../core/NodeUniform.cjs.js"),require("../core/NodeLib.cjs.js"),require("../core/FunctionNode.cjs.js"),require("../core/ConstNode.cjs.js"),require("../core/StructNode.cjs.js"),require("../inputs/Vector2Node.cjs.js"),require("../inputs/Vector3Node.cjs.js"),require("../inputs/Vector4Node.cjs.js"),require("../inputs/TextureNode.cjs.js"),require("../accessors/UVNode.cjs.js"),require("../utils/ColorSpaceNode.cjs.js"),require("../inputs/FloatNode.cjs.js"),require("../core/ExpressionNode.cjs.js"),require("../inputs/CubeTextureNode.cjs.js"),require("../accessors/ReflectNode.cjs.js"),require("../accessors/PositionNode.cjs.js"),require("../accessors/NormalNode.cjs.js"),require("../misc/TextureCubeNode.cjs.js"),require("../misc/TextureCubeUVNode.cjs.js"),require("../core/FunctionCallNode.cjs.js"),require("../math/OperatorNode.cjs.js"),require("../math/MathNode.cjs.js"),require("./nodes/RawNode.cjs.js"),o.prototype=Object.create(r.NodeMaterial.prototype),o.prototype.constructor=o,s.NodeUtils.addShortcuts(o.prototype,"fragment",["color","alpha","mask","position","spherical"]),exports.SpriteNodeMaterial=o;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./nodes/SpriteNode.cjs.js"),r=require("./NodeMaterial.cjs.js"),s=require("../core/NodeUtils.cjs.js");function o(){var s=new e.SpriteNode;r.NodeMaterial.call(this,s,s),this.type="SpriteNodeMaterial"}require("three"),require("../core/Node.cjs.js"),require("../inputs/ColorNode.cjs.js"),require("../core/InputNode.cjs.js"),require("../core/TempNode.cjs.js"),require("../core/NodeBuilder.cjs.js"),require("../core/NodeUniform.cjs.js"),require("../core/NodeLib.cjs.js"),require("../core/FunctionNode.cjs.js"),require("../core/ConstNode.cjs.js"),require("../core/StructNode.cjs.js"),require("../inputs/Vector2Node.cjs.js"),require("../inputs/Vector3Node.cjs.js"),require("../inputs/Vector4Node.cjs.js"),require("../inputs/TextureNode.cjs.js"),require("../accessors/UVNode.cjs.js"),require("../utils/ColorSpaceNode.cjs.js"),require("../core/ExpressionNode.cjs.js"),require("../inputs/CubeTextureNode.cjs.js"),require("../accessors/ReflectNode.cjs.js"),require("../accessors/PositionNode.cjs.js"),require("../accessors/NormalNode.cjs.js"),require("../misc/TextureCubeNode.cjs.js"),require("../inputs/FloatNode.cjs.js"),require("../misc/TextureCubeUVNode.cjs.js"),require("../core/FunctionCallNode.cjs.js"),require("../math/OperatorNode.cjs.js"),require("../math/MathNode.cjs.js"),require("./nodes/RawNode.cjs.js"),o.prototype=Object.create(r.NodeMaterial.prototype),o.prototype.constructor=o,s.NodeUtils.addShortcuts(o.prototype,"fragment",["color","alpha","mask","position","spherical"]),exports.SpriteNodeMaterial=o;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three"),s=require("../../postprocessing/ShaderPass.cjs.js"),r=require("../materials/NodeMaterial.cjs.js"),t=require("../inputs/ScreenNode.cjs.js");function i(){s.ShaderPass.call(this),this.name="",this.uuid=e.MathUtils.generateUUID(),this.userData={},this.textureID="renderTexture",this.input=new t.ScreenNode,this.material=new r.NodeMaterial,this.needsUpdate=!0}require("@babel/runtime/helpers/defineProperty"),require("../../postprocessing/Pass.cjs.js"),require("../core/NodeBuilder.cjs.js"),require("../core/NodeUniform.cjs.js"),require("../core/NodeUtils.cjs.js"),require("../core/NodeLib.cjs.js"),require("../core/FunctionNode.cjs.js"),require("../core/TempNode.cjs.js"),require("../core/Node.cjs.js"),require("../core/ConstNode.cjs.js"),require("../core/StructNode.cjs.js"),require("../inputs/Vector2Node.cjs.js"),require("../core/InputNode.cjs.js"),require("../inputs/Vector3Node.cjs.js"),require("../inputs/Vector4Node.cjs.js"),require("../inputs/TextureNode.cjs.js"),require("../accessors/UVNode.cjs.js"),require("../utils/ColorSpaceNode.cjs.js"),require("../inputs/FloatNode.cjs.js"),require("../core/ExpressionNode.cjs.js"),require("../inputs/CubeTextureNode.cjs.js"),require("../accessors/ReflectNode.cjs.js"),require("../accessors/PositionNode.cjs.js"),require("../accessors/NormalNode.cjs.js"),require("../misc/TextureCubeNode.cjs.js"),require("../misc/TextureCubeUVNode.cjs.js"),require("../core/FunctionCallNode.cjs.js"),require("../math/OperatorNode.cjs.js"),require("../math/MathNode.cjs.js"),require("../inputs/ColorNode.cjs.js"),require("../materials/nodes/RawNode.cjs.js"),i.prototype=Object.create(s.ShaderPass.prototype),i.prototype.constructor=i,i.prototype.render=function(){this.needsUpdate&&(this.material.dispose(),this.material.fragment.value=this.input,this.needsUpdate=!1),this.uniforms=this.material.uniforms,s.ShaderPass.prototype.render.apply(this,arguments)},i.prototype.copy=function(e){return this.input=e.input,this},i.prototype.toJSON=function(e){if((void 0===e||"string"==typeof e)&&(e={nodes:{}}),e&&!e.passes&&(e.passes={}),!e.passes[this.uuid]){var s={};s.uuid=this.uuid,s.type="NodePass",e.passes[this.uuid]=s,""!==this.name&&(s.name=this.name),"{}"!==JSON.stringify(this.userData)&&(s.userData=this.userData),s.input=this.input.toJSON(e).uuid}return e.pass=this.uuid,e},exports.NodePass=i;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three"),s=require("../../postprocessing/ShaderPass.cjs.js"),r=require("../materials/NodeMaterial.cjs.js"),t=require("../inputs/ScreenNode.cjs.js");function i(){s.ShaderPass.call(this),this.name="",this.uuid=e.MathUtils.generateUUID(),this.userData={},this.textureID="renderTexture",this.input=new t.ScreenNode,this.material=new r.NodeMaterial,this.needsUpdate=!0}require("@babel/runtime/helpers/defineProperty"),require("../../postprocessing/Pass.cjs.js"),require("../core/NodeBuilder.cjs.js"),require("../core/NodeUniform.cjs.js"),require("../core/NodeUtils.cjs.js"),require("../core/NodeLib.cjs.js"),require("../core/FunctionNode.cjs.js"),require("../core/TempNode.cjs.js"),require("../core/Node.cjs.js"),require("../core/ConstNode.cjs.js"),require("../core/StructNode.cjs.js"),require("../inputs/Vector2Node.cjs.js"),require("../core/InputNode.cjs.js"),require("../inputs/Vector3Node.cjs.js"),require("../inputs/Vector4Node.cjs.js"),require("../inputs/TextureNode.cjs.js"),require("../accessors/UVNode.cjs.js"),require("../utils/ColorSpaceNode.cjs.js"),require("../core/ExpressionNode.cjs.js"),require("../inputs/CubeTextureNode.cjs.js"),require("../accessors/ReflectNode.cjs.js"),require("../accessors/PositionNode.cjs.js"),require("../accessors/NormalNode.cjs.js"),require("../misc/TextureCubeNode.cjs.js"),require("../inputs/FloatNode.cjs.js"),require("../misc/TextureCubeUVNode.cjs.js"),require("../core/FunctionCallNode.cjs.js"),require("../math/OperatorNode.cjs.js"),require("../math/MathNode.cjs.js"),require("../inputs/ColorNode.cjs.js"),require("../materials/nodes/RawNode.cjs.js"),i.prototype=Object.create(s.ShaderPass.prototype),i.prototype.constructor=i,i.prototype.render=function(){this.needsUpdate&&(this.material.dispose(),this.material.fragment.value=this.input,this.needsUpdate=!1),this.uniforms=this.material.uniforms,s.ShaderPass.prototype.render.apply(this,arguments)},i.prototype.copy=function(e){return this.input=e.input,this},i.prototype.toJSON=function(e){if((void 0===e||"string"==typeof e)&&(e={nodes:{}}),e&&!e.passes&&(e.passes={}),!e.passes[this.uuid]){var s={};s.uuid=this.uuid,s.type="NodePass",e.passes[this.uuid]=s,""!==this.name&&(s.name=this.name),"{}"!==JSON.stringify(this.userData)&&(s.userData=this.userData),s.input=this.input.toJSON(e).uuid}return e.pass=this.uuid,e},exports.NodePass=i;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three"),r=require("../materials/NodeMaterial.cjs.js"),t=require("../inputs/ScreenNode.cjs.js");function s(s,i){if(void 0===i){var o={minFilter:e.LinearFilter,magFilter:e.LinearFilter,format:e.RGBAFormat},u=s.getDrawingBufferSize(new e.Vector2);i=new e.WebGLRenderTarget(u.width,u.height,o)}this.renderer=s,this.renderTarget=i,this.output=new t.ScreenNode,this.material=new r.NodeMaterial,this.camera=new e.OrthographicCamera(-1,1,1,-1,0,1),this.scene=new e.Scene,this.quad=new e.Mesh(new e.PlaneGeometry(2,2),this.material),this.quad.frustumCulled=!1,this.scene.add(this.quad),this.needsUpdate=!0}require("../core/NodeBuilder.cjs.js"),require("../core/NodeUniform.cjs.js"),require("../core/NodeUtils.cjs.js"),require("../core/NodeLib.cjs.js"),require("../core/FunctionNode.cjs.js"),require("../core/TempNode.cjs.js"),require("../core/Node.cjs.js"),require("../core/ConstNode.cjs.js"),require("../core/StructNode.cjs.js"),require("../inputs/Vector2Node.cjs.js"),require("../core/InputNode.cjs.js"),require("../inputs/Vector3Node.cjs.js"),require("../inputs/Vector4Node.cjs.js"),require("../inputs/TextureNode.cjs.js"),require("../accessors/UVNode.cjs.js"),require("../utils/ColorSpaceNode.cjs.js"),require("../inputs/FloatNode.cjs.js"),require("../core/ExpressionNode.cjs.js"),require("../inputs/CubeTextureNode.cjs.js"),require("../accessors/ReflectNode.cjs.js"),require("../accessors/PositionNode.cjs.js"),require("../accessors/NormalNode.cjs.js"),require("../misc/TextureCubeNode.cjs.js"),require("../misc/TextureCubeUVNode.cjs.js"),require("../core/FunctionCallNode.cjs.js"),require("../math/OperatorNode.cjs.js"),require("../math/MathNode.cjs.js"),require("../inputs/ColorNode.cjs.js"),require("../materials/nodes/RawNode.cjs.js"),s.prototype={constructor:s,render:function(e,r,t){this.needsUpdate&&(this.material.dispose(),this.material.fragment.value=this.output,this.material.build(),this.material.uniforms.renderTexture&&(this.material.uniforms.renderTexture.value=this.renderTarget.texture),this.needsUpdate=!1),t.setRenderer(this.renderer).setRenderTexture(this.renderTarget.texture),this.renderer.setRenderTarget(this.renderTarget),this.renderer.render(e,r),t.updateNode(this.material),this.renderer.setRenderTarget(null),this.renderer.render(this.scene,this.camera)},setPixelRatio:function(r){this.renderer.setPixelRatio(r);var t=this.renderer.getSize(new e.Vector2);this.setSize(t.width,t.height)},setSize:function(e,r){var t=this.renderer.getPixelRatio();this.renderTarget.setSize(e*t,r*t),this.renderer.setSize(e,r)},copy:function(e){return this.output=e.output,this},toJSON:function(e){if((void 0===e||"string"==typeof e)&&(e={nodes:{}}),e&&!e.post&&(e.post={}),!e.post[this.uuid]){var r={};r.uuid=this.uuid,r.type="NodePostProcessing",e.post[this.uuid]=r,""!==this.name&&(r.name=this.name),"{}"!==JSON.stringify(this.userData)&&(r.userData=this.userData),r.output=this.output.toJSON(e).uuid}return e.post=this.uuid,e}},exports.NodePostProcessing=s;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three"),r=require("../materials/NodeMaterial.cjs.js"),t=require("../inputs/ScreenNode.cjs.js");function s(s,i){if(void 0===i){var o={minFilter:e.LinearFilter,magFilter:e.LinearFilter,format:e.RGBAFormat},u=s.getDrawingBufferSize(new e.Vector2);i=new e.WebGLRenderTarget(u.width,u.height,o)}this.renderer=s,this.renderTarget=i,this.output=new t.ScreenNode,this.material=new r.NodeMaterial,this.camera=new e.OrthographicCamera(-1,1,1,-1,0,1),this.scene=new e.Scene,this.quad=new e.Mesh(new e.PlaneGeometry(2,2),this.material),this.quad.frustumCulled=!1,this.scene.add(this.quad),this.needsUpdate=!0}require("../core/NodeBuilder.cjs.js"),require("../core/NodeUniform.cjs.js"),require("../core/NodeUtils.cjs.js"),require("../core/NodeLib.cjs.js"),require("../core/FunctionNode.cjs.js"),require("../core/TempNode.cjs.js"),require("../core/Node.cjs.js"),require("../core/ConstNode.cjs.js"),require("../core/StructNode.cjs.js"),require("../inputs/Vector2Node.cjs.js"),require("../core/InputNode.cjs.js"),require("../inputs/Vector3Node.cjs.js"),require("../inputs/Vector4Node.cjs.js"),require("../inputs/TextureNode.cjs.js"),require("../accessors/UVNode.cjs.js"),require("../utils/ColorSpaceNode.cjs.js"),require("../core/ExpressionNode.cjs.js"),require("../inputs/CubeTextureNode.cjs.js"),require("../accessors/ReflectNode.cjs.js"),require("../accessors/PositionNode.cjs.js"),require("../accessors/NormalNode.cjs.js"),require("../misc/TextureCubeNode.cjs.js"),require("../inputs/FloatNode.cjs.js"),require("../misc/TextureCubeUVNode.cjs.js"),require("../core/FunctionCallNode.cjs.js"),require("../math/OperatorNode.cjs.js"),require("../math/MathNode.cjs.js"),require("../inputs/ColorNode.cjs.js"),require("../materials/nodes/RawNode.cjs.js"),s.prototype={constructor:s,render:function(e,r,t){this.needsUpdate&&(this.material.dispose(),this.material.fragment.value=this.output,this.material.build(),this.material.uniforms.renderTexture&&(this.material.uniforms.renderTexture.value=this.renderTarget.texture),this.needsUpdate=!1),t.setRenderer(this.renderer).setRenderTexture(this.renderTarget.texture),this.renderer.setRenderTarget(this.renderTarget),this.renderer.render(e,r),t.updateNode(this.material),this.renderer.setRenderTarget(null),this.renderer.render(this.scene,this.camera)},setPixelRatio:function(r){this.renderer.setPixelRatio(r);var t=this.renderer.getSize(new e.Vector2);this.setSize(t.width,t.height)},setSize:function(e,r){var t=this.renderer.getPixelRatio();this.renderTarget.setSize(e*t,r*t),this.renderer.setSize(e,r)},copy:function(e){return this.output=e.output,this},toJSON:function(e){if((void 0===e||"string"==typeof e)&&(e={nodes:{}}),e&&!e.post&&(e.post={}),!e.post[this.uuid]){var r={};r.uuid=this.uuid,r.type="NodePostProcessing",e.post[this.uuid]=r,""!==this.name&&(r.name=this.name),"{}"!==JSON.stringify(this.userData)&&(r.userData=this.userData),r.output=this.output.toJSON(e).uuid}return e.post=this.uuid,e}},exports.NodePostProcessing=s;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,n,o,a,t,r,i,c,u,v,l,L,p,s,R=require("three"),m=require("../core/TempNode.cjs.js"),d=require("../core/ConstNode.cjs.js"),T=require("../inputs/FloatNode.cjs.js"),g=require("../core/FunctionNode.cjs.js"),G=require("../core/ExpressionNode.cjs.js");function _(e,n){m.TempNode.call(this,"v4"),this.input=e,this.method=n||_.LINEAR_TO_LINEAR}require("../core/Node.cjs.js"),require("../core/InputNode.cjs.js"),require("../core/NodeLib.cjs.js"),_.Nodes=(e=new g.FunctionNode(["vec4 LinearToLinear( in vec4 value ) {","\treturn value;","}"].join("\n")),n=new g.FunctionNode(["vec4 GammaToLinear( in vec4 value, in float gammaFactor ) {","\treturn vec4( pow( value.xyz, vec3( gammaFactor ) ), value.w );","}"].join("\n")),o=new g.FunctionNode(["vec4 LinearToGamma( in vec4 value, in float gammaFactor ) {","\treturn vec4( pow( value.xyz, vec3( 1.0 / gammaFactor ) ), value.w );","}"].join("\n")),a=new g.FunctionNode(["vec4 sRGBToLinear( in vec4 value ) {","\treturn vec4( mix( pow( value.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), value.rgb * 0.0773993808, vec3( lessThanEqual( value.rgb, vec3( 0.04045 ) ) ) ), value.w );","}"].join("\n")),t=new g.FunctionNode(["vec4 LinearTosRGB( in vec4 value ) {","\treturn vec4( mix( pow( value.rgb, vec3( 0.41666 ) ) * 1.055 - vec3( 0.055 ), value.rgb * 12.92, vec3( lessThanEqual( value.rgb, vec3( 0.0031308 ) ) ) ), value.w );","}"].join("\n")),r=new g.FunctionNode(["vec4 RGBEToLinear( in vec4 value ) {","\treturn vec4( value.rgb * exp2( value.a * 255.0 - 128.0 ), 1.0 );","}"].join("\n")),i=new g.FunctionNode(["vec4 LinearToRGBE( in vec4 value ) {","\tfloat maxComponent = max( max( value.r, value.g ), value.b );","\tfloat fExp = clamp( ceil( log2( maxComponent ) ), -128.0, 127.0 );","\treturn vec4( value.rgb / exp2( fExp ), ( fExp + 128.0 ) / 255.0 );","}"].join("\n")),c=new g.FunctionNode(["vec3 RGBMToLinear( in vec4 value, in float maxRange ) {","\treturn vec4( value.xyz * value.w * maxRange, 1.0 );","}"].join("\n")),u=new g.FunctionNode(["vec3 LinearToRGBM( in vec4 value, in float maxRange ) {","\tfloat maxRGB = max( value.x, max( value.g, value.b ) );","\tfloat M = clamp( maxRGB / maxRange, 0.0, 1.0 );","\tM = ceil( M * 255.0 ) / 255.0;","\treturn vec4( value.rgb / ( M * maxRange ), M );","}"].join("\n")),v=new g.FunctionNode(["vec3 RGBDToLinear( in vec4 value, in float maxRange ) {","\treturn vec4( value.rgb * ( ( maxRange / 255.0 ) / value.a ), 1.0 );","}"].join("\n")),l=new g.FunctionNode(["vec3 LinearToRGBD( in vec4 value, in float maxRange ) {","\tfloat maxRGB = max( value.x, max( value.g, value.b ) );","\tfloat D = max( maxRange / maxRGB, 1.0 );","\tD = clamp( floor( D ) / 255.0, 0.0, 1.0 );","\treturn vec4( value.rgb * ( D * ( 255.0 / maxRange ) ), D );","}"].join("\n")),L=new d.ConstNode("const mat3 cLogLuvM = mat3( 0.2209, 0.3390, 0.4184, 0.1138, 0.6780, 0.7319, 0.0102, 0.1130, 0.2969 );"),p=new g.FunctionNode(["vec4 LinearToLogLuv( in vec4 value ) {","\tvec3 Xp_Y_XYZp = cLogLuvM * value.rgb;","\tXp_Y_XYZp = max(Xp_Y_XYZp, vec3(1e-6, 1e-6, 1e-6));","\tvec4 vResult;","\tvResult.xy = Xp_Y_XYZp.xy / Xp_Y_XYZp.z;","\tfloat Le = 2.0 * log2(Xp_Y_XYZp.y) + 127.0;","\tvResult.w = fract(Le);","\tvResult.z = (Le - (floor(vResult.w*255.0))/255.0)/255.0;","\treturn vResult;","}"].join("\n"),[L]),s=new d.ConstNode("const mat3 cLogLuvInverseM = mat3( 6.0014, -2.7008, -1.7996, -1.3320, 3.1029, -5.7721, 0.3008, -1.0882, 5.6268 );"),{LinearToLinear:e,GammaToLinear:n,LinearToGamma:o,sRGBToLinear:a,LinearTosRGB:t,RGBEToLinear:r,LinearToRGBE:i,RGBMToLinear:c,LinearToRGBM:u,RGBDToLinear:v,LinearToRGBD:l,cLogLuvM:L,LinearToLogLuv:p,cLogLuvInverseM:s,LogLuvToLinear:new g.FunctionNode(["vec4 LogLuvToLinear( in vec4 value ) {","\tfloat Le = value.z * 255.0 + value.w;","\tvec3 Xp_Y_XYZp;","\tXp_Y_XYZp.y = exp2((Le - 127.0) / 2.0);","\tXp_Y_XYZp.z = Xp_Y_XYZp.y / value.y;","\tXp_Y_XYZp.x = value.x * Xp_Y_XYZp.z;","\tvec3 vRGB = cLogLuvInverseM * Xp_Y_XYZp.rgb;","\treturn vec4( max(vRGB, 0.0), 1.0 );","}"].join("\n"),[s])}),_.LINEAR_TO_LINEAR="LinearToLinear",_.GAMMA_TO_LINEAR="GammaToLinear",_.LINEAR_TO_GAMMA="LinearToGamma",_.SRGB_TO_LINEAR="sRGBToLinear",_.LINEAR_TO_SRGB="LinearTosRGB",_.RGBE_TO_LINEAR="RGBEToLinear",_.LINEAR_TO_RGBE="LinearToRGBE",_.RGBM_TO_LINEAR="RGBMToLinear",_.LINEAR_TO_RGBM="LinearToRGBM",_.RGBD_TO_LINEAR="RGBDToLinear",_.LINEAR_TO_RGBD="LinearToRGBD",_.LINEAR_TO_LOG_LUV="LinearToLogLuv",_.LOG_LUV_TO_LINEAR="LogLuvToLinear",_.getEncodingComponents=function(e){switch(e){case R.LinearEncoding:return["Linear"];case R.sRGBEncoding:return["sRGB"];case R.RGBEEncoding:return["RGBE"];case R.RGBM7Encoding:return["RGBM",new T.FloatNode(7).setReadonly(!0)];case R.RGBM16Encoding:return["RGBM",new T.FloatNode(16).setReadonly(!0)];case R.RGBDEncoding:return["RGBD",new T.FloatNode(256).setReadonly(!0)];case R.GammaEncoding:return["Gamma",new G.ExpressionNode("float( GAMMA_FACTOR )","f")]}},_.prototype=Object.create(m.TempNode.prototype),_.prototype.constructor=_,_.prototype.nodeType="ColorSpace",_.prototype.hashProperties=["method"],_.prototype.generate=function(e,n){var o=this.input.build(e,"v4"),a=this.getType(e),t=_.Nodes[this.method],r=e.include(t);if(r===_.LINEAR_TO_LINEAR)return e.format(o,a,n);if(2===t.inputs.length){var i=this.factor.build(e,"f");return e.format(r+"( "+o+", "+i+" )",a,n)}return e.format(r+"( "+o+" )",a,n)},_.prototype.fromEncoding=function(e){var n=_.getEncodingComponents(e);this.method="LinearTo"+n[0],this.factor=n[1]},_.prototype.fromDecoding=function(e){var n=_.getEncodingComponents(e);this.method=n[0]+"ToLinear",this.factor=n[1]},_.prototype.copy=function(e){return m.TempNode.prototype.copy.call(this,e),this.input=e.input,this.method=e.method,this},_.prototype.toJSON=function(e){var n=this.getJSONNode(e);return n||((n=this.createJSONNode(e)).input=this.input.toJSON(e).uuid,n.method=this.method),n},exports.ColorSpaceNode=_;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,o,t,n,r,i,u=require("three"),c=require("../core/TempNode.cjs.js"),a=require("../core/ConstNode.cjs.js"),v=require("../core/FunctionNode.cjs.js");function p(e,o){c.TempNode.call(this,"v4"),this.input=e,this.method=o||p.LINEAR_TO_LINEAR}require("../core/Node.cjs.js"),require("../core/NodeLib.cjs.js"),p.Nodes=(e=new v.FunctionNode(["vec4 LinearToLinear( in vec4 value ) {","\treturn value;","}"].join("\n")),o=new v.FunctionNode(["vec4 sRGBToLinear( in vec4 value ) {","\treturn vec4( mix( pow( value.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), value.rgb * 0.0773993808, vec3( lessThanEqual( value.rgb, vec3( 0.04045 ) ) ) ), value.w );","}"].join("\n")),t=new v.FunctionNode(["vec4 LinearTosRGB( in vec4 value ) {","\treturn vec4( mix( pow( value.rgb, vec3( 0.41666 ) ) * 1.055 - vec3( 0.055 ), value.rgb * 12.92, vec3( lessThanEqual( value.rgb, vec3( 0.0031308 ) ) ) ), value.w );","}"].join("\n")),n=new a.ConstNode("const mat3 cLogLuvM = mat3( 0.2209, 0.3390, 0.4184, 0.1138, 0.6780, 0.7319, 0.0102, 0.1130, 0.2969 );"),r=new v.FunctionNode(["vec4 LinearToLogLuv( in vec4 value ) {","\tvec3 Xp_Y_XYZp = cLogLuvM * value.rgb;","\tXp_Y_XYZp = max(Xp_Y_XYZp, vec3(1e-6, 1e-6, 1e-6));","\tvec4 vResult;","\tvResult.xy = Xp_Y_XYZp.xy / Xp_Y_XYZp.z;","\tfloat Le = 2.0 * log2(Xp_Y_XYZp.y) + 127.0;","\tvResult.w = fract(Le);","\tvResult.z = (Le - (floor(vResult.w*255.0))/255.0)/255.0;","\treturn vResult;","}"].join("\n"),[n]),i=new a.ConstNode("const mat3 cLogLuvInverseM = mat3( 6.0014, -2.7008, -1.7996, -1.3320, 3.1029, -5.7721, 0.3008, -1.0882, 5.6268 );"),{LinearToLinear:e,sRGBToLinear:o,LinearTosRGB:t,cLogLuvM:n,LinearToLogLuv:r,cLogLuvInverseM:i,LogLuvToLinear:new v.FunctionNode(["vec4 LogLuvToLinear( in vec4 value ) {","\tfloat Le = value.z * 255.0 + value.w;","\tvec3 Xp_Y_XYZp;","\tXp_Y_XYZp.y = exp2((Le - 127.0) / 2.0);","\tXp_Y_XYZp.z = Xp_Y_XYZp.y / value.y;","\tXp_Y_XYZp.x = value.x * Xp_Y_XYZp.z;","\tvec3 vRGB = cLogLuvInverseM * Xp_Y_XYZp.rgb;","\treturn vec4( max(vRGB, 0.0), 1.0 );","}"].join("\n"),[i])}),p.LINEAR_TO_LINEAR="LinearToLinear",p.SRGB_TO_LINEAR="sRGBToLinear",p.LINEAR_TO_SRGB="LinearTosRGB",p.RGBE_TO_LINEAR="RGBEToLinear",p.LINEAR_TO_RGBE="LinearToRGBE",p.LINEAR_TO_LOG_LUV="LinearToLogLuv",p.LOG_LUV_TO_LINEAR="LogLuvToLinear",p.getEncodingComponents=function(e){switch(e){case u.LinearEncoding:return["Linear"];case u.sRGBEncoding:return["sRGB"]}},p.prototype=Object.create(c.TempNode.prototype),p.prototype.constructor=p,p.prototype.nodeType="ColorSpace",p.prototype.hashProperties=["method"],p.prototype.generate=function(e,o){var t=this.input.build(e,"v4"),n=this.getType(e),r=p.Nodes[this.method],i=e.include(r);if(i===p.LINEAR_TO_LINEAR)return e.format(t,n,o);if(2===r.inputs.length){var u=this.factor.build(e,"f");return e.format(i+"( "+t+", "+u+" )",n,o)}return e.format(i+"( "+t+" )",n,o)},p.prototype.fromEncoding=function(e){var o=p.getEncodingComponents(e);this.method="LinearTo"+o[0],this.factor=o[1]},p.prototype.fromDecoding=function(e){var o=p.getEncodingComponents(e);this.method=o[0]+"ToLinear",this.factor=o[1]},p.prototype.copy=function(e){return c.TempNode.prototype.copy.call(this,e),this.input=e.input,this.method=e.method,this},p.prototype.toJSON=function(e){var o=this.getJSONNode(e);return o||((o=this.createJSONNode(e)).input=this.input.toJSON(e).uuid,o.method=this.method),o},exports.ColorSpaceNode=p;
@@ -1,9 +1,7 @@
1
- import { GammaEncoding, RGBDEncoding, RGBM16Encoding, RGBM7Encoding, RGBEEncoding, sRGBEncoding, LinearEncoding } from 'three';
1
+ import { sRGBEncoding, LinearEncoding } from 'three';
2
2
  import { TempNode } from '../core/TempNode.js';
3
3
  import { ConstNode } from '../core/ConstNode.js';
4
- import { FloatNode } from '../inputs/FloatNode.js';
5
4
  import { FunctionNode } from '../core/FunctionNode.js';
6
- import { ExpressionNode } from '../core/ExpressionNode.js';
7
5
 
8
6
  function ColorSpaceNode(input, method) {
9
7
  TempNode.call(this, 'v4');
@@ -12,21 +10,9 @@ function ColorSpaceNode(input, method) {
12
10
  }
13
11
 
14
12
  ColorSpaceNode.Nodes = function () {
15
- // For a discussion of what this is, please read this: http://lousodrome.net/blog/light/2013/05/26/gamma-correct-and-hdr-rendering-in-a-32-bits-buffer/
16
13
  var LinearToLinear = new FunctionNode(['vec4 LinearToLinear( in vec4 value ) {', ' return value;', '}'].join('\n'));
17
- var GammaToLinear = new FunctionNode(['vec4 GammaToLinear( in vec4 value, in float gammaFactor ) {', ' return vec4( pow( value.xyz, vec3( gammaFactor ) ), value.w );', '}'].join('\n'));
18
- var LinearToGamma = new FunctionNode(['vec4 LinearToGamma( in vec4 value, in float gammaFactor ) {', ' return vec4( pow( value.xyz, vec3( 1.0 / gammaFactor ) ), value.w );', '}'].join('\n'));
19
14
  var sRGBToLinear = new FunctionNode(['vec4 sRGBToLinear( in vec4 value ) {', ' return vec4( mix( pow( value.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), value.rgb * 0.0773993808, vec3( lessThanEqual( value.rgb, vec3( 0.04045 ) ) ) ), value.w );', '}'].join('\n'));
20
- var LinearTosRGB = new FunctionNode(['vec4 LinearTosRGB( in vec4 value ) {', ' return vec4( mix( pow( value.rgb, vec3( 0.41666 ) ) * 1.055 - vec3( 0.055 ), value.rgb * 12.92, vec3( lessThanEqual( value.rgb, vec3( 0.0031308 ) ) ) ), value.w );', '}'].join('\n'));
21
- var RGBEToLinear = new FunctionNode(['vec4 RGBEToLinear( in vec4 value ) {', ' return vec4( value.rgb * exp2( value.a * 255.0 - 128.0 ), 1.0 );', '}'].join('\n'));
22
- var LinearToRGBE = new FunctionNode(['vec4 LinearToRGBE( in vec4 value ) {', ' float maxComponent = max( max( value.r, value.g ), value.b );', ' float fExp = clamp( ceil( log2( maxComponent ) ), -128.0, 127.0 );', ' return vec4( value.rgb / exp2( fExp ), ( fExp + 128.0 ) / 255.0 );', // return vec4( value.brg, ( 3.0 + 128.0 ) / 256.0 );
23
- '}'].join('\n')); // reference: http://iwasbeingirony.blogspot.ca/2010/06/difference-between-rgbm-and-rgbd.html
24
-
25
- var RGBMToLinear = new FunctionNode(['vec3 RGBMToLinear( in vec4 value, in float maxRange ) {', ' return vec4( value.xyz * value.w * maxRange, 1.0 );', '}'].join('\n'));
26
- var LinearToRGBM = new FunctionNode(['vec3 LinearToRGBM( in vec4 value, in float maxRange ) {', ' float maxRGB = max( value.x, max( value.g, value.b ) );', ' float M = clamp( maxRGB / maxRange, 0.0, 1.0 );', ' M = ceil( M * 255.0 ) / 255.0;', ' return vec4( value.rgb / ( M * maxRange ), M );', '}'].join('\n')); // reference: http://iwasbeingirony.blogspot.ca/2010/06/difference-between-rgbm-and-rgbd.html
27
-
28
- var RGBDToLinear = new FunctionNode(['vec3 RGBDToLinear( in vec4 value, in float maxRange ) {', ' return vec4( value.rgb * ( ( maxRange / 255.0 ) / value.a ), 1.0 );', '}'].join('\n'));
29
- var LinearToRGBD = new FunctionNode(['vec3 LinearToRGBD( in vec4 value, in float maxRange ) {', ' float maxRGB = max( value.x, max( value.g, value.b ) );', ' float D = max( maxRange / maxRGB, 1.0 );', ' D = clamp( floor( D ) / 255.0, 0.0, 1.0 );', ' return vec4( value.rgb * ( D * ( 255.0 / maxRange ) ), D );', '}'].join('\n')); // LogLuv reference: http://graphicrants.blogspot.ca/2009/04/rgbm-color-encoding.html
15
+ var LinearTosRGB = new FunctionNode(['vec4 LinearTosRGB( in vec4 value ) {', ' return vec4( mix( pow( value.rgb, vec3( 0.41666 ) ) * 1.055 - vec3( 0.055 ), value.rgb * 12.92, vec3( lessThanEqual( value.rgb, vec3( 0.0031308 ) ) ) ), value.w );', '}'].join('\n')); // LogLuv reference: http://graphicrants.blogspot.ca/2009/04/rgbm-color-encoding.html
30
16
  // M matrix, for encoding
31
17
 
32
18
  var cLogLuvM = new ConstNode('const mat3 cLogLuvM = mat3( 0.2209, 0.3390, 0.4184, 0.1138, 0.6780, 0.7319, 0.0102, 0.1130, 0.2969 );');
@@ -36,16 +22,8 @@ ColorSpaceNode.Nodes = function () {
36
22
  var LogLuvToLinear = new FunctionNode(['vec4 LogLuvToLinear( in vec4 value ) {', ' float Le = value.z * 255.0 + value.w;', ' vec3 Xp_Y_XYZp;', ' Xp_Y_XYZp.y = exp2((Le - 127.0) / 2.0);', ' Xp_Y_XYZp.z = Xp_Y_XYZp.y / value.y;', ' Xp_Y_XYZp.x = value.x * Xp_Y_XYZp.z;', ' vec3 vRGB = cLogLuvInverseM * Xp_Y_XYZp.rgb;', ' return vec4( max(vRGB, 0.0), 1.0 );', '}'].join('\n'), [cLogLuvInverseM]);
37
23
  return {
38
24
  LinearToLinear: LinearToLinear,
39
- GammaToLinear: GammaToLinear,
40
- LinearToGamma: LinearToGamma,
41
25
  sRGBToLinear: sRGBToLinear,
42
26
  LinearTosRGB: LinearTosRGB,
43
- RGBEToLinear: RGBEToLinear,
44
- LinearToRGBE: LinearToRGBE,
45
- RGBMToLinear: RGBMToLinear,
46
- LinearToRGBM: LinearToRGBM,
47
- RGBDToLinear: RGBDToLinear,
48
- LinearToRGBD: LinearToRGBD,
49
27
  cLogLuvM: cLogLuvM,
50
28
  LinearToLogLuv: LinearToLogLuv,
51
29
  cLogLuvInverseM: cLogLuvInverseM,
@@ -54,16 +32,10 @@ ColorSpaceNode.Nodes = function () {
54
32
  }();
55
33
 
56
34
  ColorSpaceNode.LINEAR_TO_LINEAR = 'LinearToLinear';
57
- ColorSpaceNode.GAMMA_TO_LINEAR = 'GammaToLinear';
58
- ColorSpaceNode.LINEAR_TO_GAMMA = 'LinearToGamma';
59
35
  ColorSpaceNode.SRGB_TO_LINEAR = 'sRGBToLinear';
60
36
  ColorSpaceNode.LINEAR_TO_SRGB = 'LinearTosRGB';
61
37
  ColorSpaceNode.RGBE_TO_LINEAR = 'RGBEToLinear';
62
38
  ColorSpaceNode.LINEAR_TO_RGBE = 'LinearToRGBE';
63
- ColorSpaceNode.RGBM_TO_LINEAR = 'RGBMToLinear';
64
- ColorSpaceNode.LINEAR_TO_RGBM = 'LinearToRGBM';
65
- ColorSpaceNode.RGBD_TO_LINEAR = 'RGBDToLinear';
66
- ColorSpaceNode.LINEAR_TO_RGBD = 'LinearToRGBD';
67
39
  ColorSpaceNode.LINEAR_TO_LOG_LUV = 'LinearToLogLuv';
68
40
  ColorSpaceNode.LOG_LUV_TO_LINEAR = 'LogLuvToLinear';
69
41
 
@@ -74,21 +46,6 @@ ColorSpaceNode.getEncodingComponents = function (encoding) {
74
46
 
75
47
  case sRGBEncoding:
76
48
  return ['sRGB'];
77
-
78
- case RGBEEncoding:
79
- return ['RGBE'];
80
-
81
- case RGBM7Encoding:
82
- return ['RGBM', new FloatNode(7.0).setReadonly(true)];
83
-
84
- case RGBM16Encoding:
85
- return ['RGBM', new FloatNode(16.0).setReadonly(true)];
86
-
87
- case RGBDEncoding:
88
- return ['RGBD', new FloatNode(256.0).setReadonly(true)];
89
-
90
- case GammaEncoding:
91
- return ['Gamma', new ExpressionNode('float( GAMMA_FACTOR )', 'f')];
92
49
  }
93
50
  };
94
51
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "three-stdlib",
3
- "version": "2.6.1",
3
+ "version": "2.7.0",
4
4
  "private": false,
5
5
  "description": "stand-alone library of threejs examples",
6
6
  "main": "index.cjs.js",
@@ -9,8 +9,7 @@ const GammaCorrectionShader = {
9
9
  }
10
10
  },
11
11
  vertexShader: ['varying vec2 vUv;', 'void main() {', ' vUv = uv;', ' gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );', '}'].join('\n'),
12
- fragmentShader: ['uniform sampler2D tDiffuse;', 'varying vec2 vUv;', 'void main() {', ' vec4 tex = texture2D( tDiffuse, vUv );', ' gl_FragColor = LinearTosRGB( tex );', // optional: LinearToGamma( tex, float( GAMMA_FACTOR ) );
13
- '}'].join('\n')
12
+ fragmentShader: ['uniform sampler2D tDiffuse;', 'varying vec2 vUv;', 'void main() {', ' vec4 tex = texture2D( tDiffuse, vUv );', ' gl_FragColor = LinearTosRGB( tex );', '}'].join('\n')
14
13
  };
15
14
 
16
15
  export { GammaCorrectionShader };