[{"data":1,"prerenderedAt":1117},["ShallowReactive",2],{"navigation":3,"\u002Fapi\u002Fmaterials\u002Fcustom-shader-material":498,"\u002Fapi\u002Fmaterials\u002Fcustom-shader-material-surround":1112},[4,26],{"title":5,"path":6,"stem":7,"children":8},"Getting Started","\u002Fgetting-started","1.getting-started\u002F1.index",[9,10,14,18,22],{"title":5,"path":6,"stem":7},{"title":11,"path":12,"stem":13},"Installation Guide","\u002Fgetting-started\u002Finstallation","1.getting-started\u002F2.installation",{"title":15,"path":16,"stem":17},"Usage","\u002Fgetting-started\u002Fusage","1.getting-started\u002F3.usage",{"title":19,"path":20,"stem":21},"Loading Models","\u002Fgetting-started\u002Floading-models","1.getting-started\u002F4.loading-models",{"title":23,"path":24,"stem":25},"Upgrade Guide","\u002Fgetting-started\u002Fupgrade-guide","1.getting-started\u002F5.upgrade-guide",{"title":27,"path":28,"stem":29,"children":30},"Api","\u002Fapi","2.api",[31,34,96,126,168,210,308,334,368,418,464],{"title":32,"path":28,"stem":33},"All","2.api\u002Findex",{"title":35,"path":36,"stem":37,"children":38},"Abstractions","\u002Fapi\u002Fabstractions","2.api\u002F1.abstractions\u002Findex",[39,40,44,48,52,56,60,64,68,72,76,80,84,88,92],{"title":35,"path":36,"stem":37},{"title":41,"path":42,"stem":43},"Align","\u002Fapi\u002Fabstractions\u002Falign","2.api\u002F1.abstractions\u002Falign",{"title":45,"path":46,"stem":47},"Billboard","\u002Fapi\u002Fabstractions\u002Fbillboard","2.api\u002F1.abstractions\u002Fbillboard",{"title":49,"path":50,"stem":51},"Camera Shake","\u002Fapi\u002Fabstractions\u002Fcamera-shake","2.api\u002F1.abstractions\u002Fcamera-shake",{"title":53,"path":54,"stem":55},"Decal","\u002Fapi\u002Fabstractions\u002Fdecal","2.api\u002F1.abstractions\u002Fdecal",{"title":57,"path":58,"stem":59},"Edges","\u002Fapi\u002Fabstractions\u002Fedges","2.api\u002F1.abstractions\u002Fedges",{"title":61,"path":62,"stem":63},"Fit","\u002Fapi\u002Fabstractions\u002Ffit","2.api\u002F1.abstractions\u002Ffit",{"title":65,"path":66,"stem":67},"Instances","\u002Fapi\u002Fabstractions\u002Finstances","2.api\u002F1.abstractions\u002Finstances",{"title":69,"path":70,"stem":71},"Levioso (Float)","\u002Fapi\u002Fabstractions\u002Flevioso","2.api\u002F1.abstractions\u002Flevioso",{"title":73,"path":74,"stem":75},"Mask","\u002Fapi\u002Fabstractions\u002Fmask","2.api\u002F1.abstractions\u002Fmask",{"title":77,"path":78,"stem":79},"Merged","\u002Fapi\u002Fabstractions\u002Fmerged","2.api\u002F1.abstractions\u002Fmerged",{"title":81,"path":82,"stem":83},"Outline","\u002Fapi\u002Fabstractions\u002Foutline","2.api\u002F1.abstractions\u002Foutline",{"title":85,"path":86,"stem":87},"Sampler","\u002Fapi\u002Fabstractions\u002Fsampler","2.api\u002F1.abstractions\u002Fsampler",{"title":89,"path":90,"stem":91},"ScreenSizer","\u002Fapi\u002Fabstractions\u002Fscreen-sizer","2.api\u002F1.abstractions\u002Fscreen-sizer",{"title":93,"path":94,"stem":95},"ScreenSpace","\u002Fapi\u002Fabstractions\u002Fscreen-space","2.api\u002F1.abstractions\u002Fscreen-space",{"title":97,"path":98,"stem":99,"children":100},"Controls","\u002Fapi\u002Fcontrols","2.api\u002F2.controls\u002Findex",[101,102,106,110,114,118,122],{"title":97,"path":98,"stem":99},{"title":103,"path":104,"stem":105},"Camera Controls","\u002Fapi\u002Fcontrols\u002Fcamera-controls","2.api\u002F2.controls\u002Fcamera-controls",{"title":107,"path":108,"stem":109},"Keyboard Controls","\u002Fapi\u002Fcontrols\u002Fkeyboard-controls","2.api\u002F2.controls\u002Fkeyboard-controls",{"title":111,"path":112,"stem":113},"Map Controls","\u002Fapi\u002Fcontrols\u002Fmap-controls","2.api\u002F2.controls\u002Fmap-controls",{"title":115,"path":116,"stem":117},"Orbit Controls","\u002Fapi\u002Fcontrols\u002Forbit-controls","2.api\u002F2.controls\u002Forbit-controls",{"title":119,"path":120,"stem":121},"PointerLock Controls","\u002Fapi\u002Fcontrols\u002Fpointer-lock-controls","2.api\u002F2.controls\u002Fpointer-lock-controls",{"title":123,"path":124,"stem":125},"Transform Controls","\u002Fapi\u002Fcontrols\u002Ftransform-controls","2.api\u002F2.controls\u002Ftransform-controls",{"title":127,"path":128,"stem":129,"children":130},"Loaders","\u002Fapi\u002Floaders","2.api\u002F3.loaders\u002Findex",[131,132,136,140,144,148,152,156,160,164],{"title":127,"path":128,"stem":129},{"title":133,"path":134,"stem":135},"useGLTF","\u002Fapi\u002Floaders\u002Fuse-gltf","2.api\u002F3.loaders\u002F1.use-gltf",{"title":137,"path":138,"stem":139},"GLTFModel","\u002Fapi\u002Floaders\u002Fgltf-model","2.api\u002F3.loaders\u002F2.gltf-model",{"title":141,"path":142,"stem":143},"useFBX","\u002Fapi\u002Floaders\u002Fuse-fbx","2.api\u002F3.loaders\u002F3.use-fbx",{"title":145,"path":146,"stem":147},"FBXModel","\u002Fapi\u002Floaders\u002Ffbx-model","2.api\u002F3.loaders\u002F4.fbx-model",{"title":149,"path":150,"stem":151},"useTexture","\u002Fapi\u002Floaders\u002Fuse-texture","2.api\u002F3.loaders\u002F5.use-texture",{"title":153,"path":154,"stem":155},"useTextures","\u002Fapi\u002Floaders\u002Fuse-textures","2.api\u002F3.loaders\u002F6.use-textures",{"title":157,"path":158,"stem":159},"useSVG","\u002Fapi\u002Floaders\u002Fuse-svg","2.api\u002F3.loaders\u002F7.use-svg",{"title":161,"path":162,"stem":163},"useProgress","\u002Fapi\u002Floaders\u002Fuse-progress","2.api\u002F3.loaders\u002Fuse-progress",{"title":165,"path":166,"stem":167},"useVideoTexture","\u002Fapi\u002Floaders\u002Fuse-video-texture","2.api\u002F3.loaders\u002Fuse-video-texture",{"title":169,"path":170,"stem":171,"children":172},"Materials","\u002Fapi\u002Fmaterials","2.api\u002F4.materials\u002Findex",[173,174,178,182,186,190,194,198,202,206],{"title":169,"path":170,"stem":171},{"title":175,"path":176,"stem":177},"Custom Shader Material","\u002Fapi\u002Fmaterials\u002Fcustom-shader-material","2.api\u002F4.materials\u002Fcustom-shader-material",{"title":179,"path":180,"stem":181},"Mesh Glass Material","\u002Fapi\u002Fmaterials\u002Fglass-material","2.api\u002F4.materials\u002Fglass-material",{"title":183,"path":184,"stem":185},"Holographic Material","\u002Fapi\u002Fmaterials\u002Fholographic-material","2.api\u002F4.materials\u002Fholographic-material",{"title":187,"path":188,"stem":189},"Mesh Discard Material","\u002Fapi\u002Fmaterials\u002Fmesh-discard-material","2.api\u002F4.materials\u002Fmesh-discard-material",{"title":191,"path":192,"stem":193},"Mesh Portal Material","\u002Fapi\u002Fmaterials\u002Fmesh-portal-material","2.api\u002F4.materials\u002Fmesh-portal-material",{"title":195,"path":196,"stem":197},"Mesh Reflection Material","\u002Fapi\u002Fmaterials\u002Fmesh-reflection-material","2.api\u002F4.materials\u002Fmesh-reflection-material",{"title":199,"path":200,"stem":201},"Mesh Transmission Material","\u002Fapi\u002Fmaterials\u002Fmesh-transmission-material","2.api\u002F4.materials\u002Fmesh-transmission-material",{"title":203,"path":204,"stem":205},"Point Material","\u002Fapi\u002Fmaterials\u002Fpoint-material","2.api\u002F4.materials\u002Fpoint-material",{"title":207,"path":208,"stem":209},"Wobble Material","\u002Fapi\u002Fmaterials\u002Fwobble-material","2.api\u002F4.materials\u002Fwobble-material",{"title":211,"path":212,"stem":213,"children":214},"Shapes","\u002Fapi\u002Fshapes","2.api\u002F5.shapes\u002Findex",[215,216,220,224,228,232,236,240,244,248,252,256,260,264,268,272,276,280,284,288,292,296,300,304],{"title":211,"path":212,"stem":213},{"title":217,"path":218,"stem":219},"Box","\u002Fapi\u002Fshapes\u002Fbox","2.api\u002F5.shapes\u002Fbox",{"title":221,"path":222,"stem":223},"CatmullRomCurve3","\u002Fapi\u002Fshapes\u002Fcatmullromcurve3","2.api\u002F5.shapes\u002Fcatmullromcurve3",{"title":225,"path":226,"stem":227},"Circle","\u002Fapi\u002Fshapes\u002Fcircle","2.api\u002F5.shapes\u002Fcircle",{"title":229,"path":230,"stem":231},"Cone","\u002Fapi\u002Fshapes\u002Fcone","2.api\u002F5.shapes\u002Fcone",{"title":233,"path":234,"stem":235},"Cubic Bezier Line","\u002Fapi\u002Fshapes\u002Fcubic-bezier-line","2.api\u002F5.shapes\u002Fcubic-bezier-line",{"title":237,"path":238,"stem":239},"Cylinder","\u002Fapi\u002Fshapes\u002Fcylinder","2.api\u002F5.shapes\u002Fcylinder",{"title":241,"path":242,"stem":243},"Dodecahedron","\u002Fapi\u002Fshapes\u002Fdodecahedron","2.api\u002F5.shapes\u002Fdodecahedron",{"title":245,"path":246,"stem":247},"Grid","\u002Fapi\u002Fshapes\u002Fgrid","2.api\u002F5.shapes\u002Fgrid",{"title":249,"path":250,"stem":251},"Icosahedron","\u002Fapi\u002Fshapes\u002Ficosahedron","2.api\u002F5.shapes\u002Ficosahedron",{"title":253,"path":254,"stem":255},"Line2","\u002Fapi\u002Fshapes\u002Fline2","2.api\u002F5.shapes\u002Fline2",{"title":257,"path":258,"stem":259},"Octahedron","\u002Fapi\u002Fshapes\u002Foctahedron","2.api\u002F5.shapes\u002Foctahedron",{"title":261,"path":262,"stem":263},"Plane","\u002Fapi\u002Fshapes\u002Fplane","2.api\u002F5.shapes\u002Fplane",{"title":265,"path":266,"stem":267},"Quadratic Bezier Line","\u002Fapi\u002Fshapes\u002Fquadratic-bezier-line","2.api\u002F5.shapes\u002Fquadratic-bezier-line",{"title":269,"path":270,"stem":271},"Ring","\u002Fapi\u002Fshapes\u002Fring","2.api\u002F5.shapes\u002Fring",{"title":273,"path":274,"stem":275},"Rounded Box","\u002Fapi\u002Fshapes\u002Frounded-box","2.api\u002F5.shapes\u002Frounded-box",{"title":277,"path":278,"stem":279},"Rounded Plane","\u002Fapi\u002Fshapes\u002Frounded-plane","2.api\u002F5.shapes\u002Frounded-plane",{"title":281,"path":282,"stem":283},"Screen Quad","\u002Fapi\u002Fshapes\u002Fscreen-quad","2.api\u002F5.shapes\u002Fscreen-quad",{"title":285,"path":286,"stem":287},"Sphere","\u002Fapi\u002Fshapes\u002Fsphere","2.api\u002F5.shapes\u002Fsphere",{"title":289,"path":290,"stem":291},"Superformula","\u002Fapi\u002Fshapes\u002Fsuperformula","2.api\u002F5.shapes\u002Fsuperformula",{"title":293,"path":294,"stem":295},"Tetrahedron","\u002Fapi\u002Fshapes\u002Ftetrahedron","2.api\u002F5.shapes\u002Ftetrahedron",{"title":297,"path":298,"stem":299},"Torus","\u002Fapi\u002Fshapes\u002Ftorus","2.api\u002F5.shapes\u002Ftorus",{"title":301,"path":302,"stem":303},"Torus Knot","\u002Fapi\u002Fshapes\u002Ftorus-knot","2.api\u002F5.shapes\u002Ftorus-knot",{"title":305,"path":306,"stem":307},"Tube","\u002Fapi\u002Fshapes\u002Ftube","2.api\u002F5.shapes\u002Ftube",{"title":309,"path":310,"stem":311,"children":312},"Debug\u002FPerformance","\u002Fapi\u002Fdebug-performance","2.api\u002F6.debug-performance\u002Findex",[313,314,318,322,326,330],{"title":309,"path":310,"stem":311},{"title":315,"path":316,"stem":317},"Helper","\u002Fapi\u002Fdebug-performance\u002Fhelper","2.api\u002F6.debug-performance\u002Fhelper",{"title":319,"path":320,"stem":321},"LOD","\u002Fapi\u002Fdebug-performance\u002Flod","2.api\u002F6.debug-performance\u002Flod",{"title":323,"path":324,"stem":325},"Stats","\u002Fapi\u002Fdebug-performance\u002Fstats","2.api\u002F6.debug-performance\u002Fstats",{"title":327,"path":328,"stem":329},"StatsGl","\u002Fapi\u002Fdebug-performance\u002Fstats-gl","2.api\u002F6.debug-performance\u002Fstats-gl",{"title":331,"path":332,"stem":333},"useBVH","\u002Fapi\u002Fdebug-performance\u002Fuse-bvh","2.api\u002F6.debug-performance\u002Fuse-bvh",{"title":335,"path":336,"stem":337,"children":338},"Light\u002FShadow","\u002Fapi\u002Flight-shadow","2.api\u002F7.light-shadow\u002Findex",[339,340,344,348,352,356,360,364],{"title":335,"path":336,"stem":337},{"title":341,"path":342,"stem":343},"Accumulative Shadows","\u002Fapi\u002Flight-shadow\u002Faccumulative-shadows","2.api\u002F7.light-shadow\u002Faccumulative-shadows",{"title":345,"path":346,"stem":347},"Bake Shadows","\u002Fapi\u002Flight-shadow\u002Fbake-shadows","2.api\u002F7.light-shadow\u002Fbake-shadows",{"title":349,"path":350,"stem":351},"Circle Shadow","\u002Fapi\u002Flight-shadow\u002Fcircle-shadow","2.api\u002F7.light-shadow\u002Fcircle-shadow",{"title":353,"path":354,"stem":355},"Contact Shadows","\u002Fapi\u002Flight-shadow\u002Fcontact-shadows","2.api\u002F7.light-shadow\u002Fcontact-shadows",{"title":357,"path":358,"stem":359},"Lensflare","\u002Fapi\u002Flight-shadow\u002Flensflare","2.api\u002F7.light-shadow\u002Flensflare",{"title":361,"path":362,"stem":363},"Randomized Lights","\u002Fapi\u002Flight-shadow\u002Frandomized-lights","2.api\u002F7.light-shadow\u002Frandomized-lights",{"title":365,"path":366,"stem":367},"Soft Shadows","\u002Fapi\u002Flight-shadow\u002Fsoft-shadows","2.api\u002F7.light-shadow\u002Fsoft-shadows",{"title":369,"path":370,"stem":371,"children":372},"Staging","\u002Fapi\u002Fstaging","2.api\u002F8.staging\u002Findex",[373,374,378,382,386,390,394,398,402,406,410,414],{"title":369,"path":370,"stem":371},{"title":375,"path":376,"stem":377},"Environment","\u002Fapi\u002Fstaging\u002Fenvironment","2.api\u002F8.staging\u002F1.environment",{"title":379,"path":380,"stem":381},"useEnvironment","\u002Fapi\u002Fstaging\u002Fuse-environment","2.api\u002F8.staging\u002F2.use-environment",{"title":383,"path":384,"stem":385},"Lightformer","\u002Fapi\u002Fstaging\u002Flightformer","2.api\u002F8.staging\u002F3.lightformer",{"title":387,"path":388,"stem":389},"Backdrop","\u002Fapi\u002Fstaging\u002Fbackdrop","2.api\u002F8.staging\u002Fbackdrop",{"title":391,"path":392,"stem":393},"Ocean","\u002Fapi\u002Fstaging\u002Focean","2.api\u002F8.staging\u002Focean",{"title":395,"path":396,"stem":397},"Precipitation","\u002Fapi\u002Fstaging\u002Fprecipitation","2.api\u002F8.staging\u002Fprecipitation",{"title":399,"path":400,"stem":401},"Sky","\u002Fapi\u002Fstaging\u002Fsky","2.api\u002F8.staging\u002Fsky",{"title":403,"path":404,"stem":405},"Smoke","\u002Fapi\u002Fstaging\u002Fsmoke","2.api\u002F8.staging\u002Fsmoke",{"title":407,"path":408,"stem":409},"Sparkles","\u002Fapi\u002Fstaging\u002Fsparkles","2.api\u002F8.staging\u002Fsparkles",{"title":411,"path":412,"stem":413},"Stage","\u002Fapi\u002Fstaging\u002Fstage","2.api\u002F8.staging\u002Fstage",{"title":415,"path":416,"stem":417},"Stars","\u002Fapi\u002Fstaging\u002Fstars","2.api\u002F8.staging\u002Fstars",{"title":419,"path":420,"stem":421,"children":422},"Objects","\u002Fapi\u002Fobjects","2.api\u002F9.objects\u002Findex",[423,424,428,432,436,440,444,448,452,456,460],{"title":419,"path":420,"stem":421},{"title":425,"path":426,"stem":427},"AnimatedSprite","\u002Fapi\u002Fobjects\u002Fanimated-sprite","2.api\u002F9.objects\u002Fanimated-sprite",{"title":429,"path":430,"stem":431},"CubeCamera","\u002Fapi\u002Fobjects\u002Fcube-camera","2.api\u002F9.objects\u002Fcube-camera",{"title":433,"path":434,"stem":435},"Fbo","\u002Fapi\u002Fobjects\u002Ffbo","2.api\u002F9.objects\u002Ffbo",{"title":437,"path":438,"stem":439},"GradientTexture","\u002Fapi\u002Fobjects\u002Fgradient-texture","2.api\u002F9.objects\u002Fgradient-texture",{"title":441,"path":442,"stem":443},"HTML","\u002Fapi\u002Fobjects\u002Fhtml","2.api\u002F9.objects\u002Fhtml",{"title":445,"path":446,"stem":447},"Image","\u002Fapi\u002Fobjects\u002Fimage","2.api\u002F9.objects\u002Fimage",{"title":449,"path":450,"stem":451},"MarchingCubes","\u002Fapi\u002Fobjects\u002Fmarching-cubes","2.api\u002F9.objects\u002Fmarching-cubes",{"title":453,"path":454,"stem":455},"Reflector","\u002Fapi\u002Fobjects\u002Freflector","2.api\u002F9.objects\u002Freflector",{"title":457,"path":458,"stem":459},"Refractor","\u002Fapi\u002Fobjects\u002Frefractor","2.api\u002F9.objects\u002Frefractor",{"title":461,"path":462,"stem":463},"Text3D","\u002Fapi\u002Fobjects\u002Ftext-3d","2.api\u002F9.objects\u002Ftext-3d",{"title":465,"path":466,"stem":467,"children":468},"Miscellaneous","\u002Fapi\u002Fmiscellaneous","2.api\u002Fmiscellaneous\u002Findex",[469,470,474,478,482,486,490,494],{"title":465,"path":466,"stem":467},{"title":471,"path":472,"stem":473},"Bounds","\u002Fapi\u002Fmiscellaneous\u002Fbounds","2.api\u002Fmiscellaneous\u002Fbounds",{"title":475,"path":476,"stem":477},"GlobalAudio","\u002Fapi\u002Fmiscellaneous\u002Fglobal-audio","2.api\u002Fmiscellaneous\u002Fglobal-audio",{"title":479,"path":480,"stem":481},"MouseParallax","\u002Fapi\u002Fmiscellaneous\u002Fmouse-parallax","2.api\u002Fmiscellaneous\u002Fmouse-parallax",{"title":483,"path":484,"stem":485},"PositionalAudio","\u002Fapi\u002Fmiscellaneous\u002Fpositional-audio","2.api\u002Fmiscellaneous\u002Fpositional-audio",{"title":487,"path":488,"stem":489},"useAnimations","\u002Fapi\u002Fmiscellaneous\u002Fuse-animations","2.api\u002Fmiscellaneous\u002Fuse-animations",{"title":491,"path":492,"stem":493},"useGLTFExporter","\u002Fapi\u002Fmiscellaneous\u002Fuse-gltf-exporter","2.api\u002Fmiscellaneous\u002Fuse-gltf-exporter",{"title":495,"path":496,"stem":497},"useIntersect","\u002Fapi\u002Fmiscellaneous\u002Fuse-intersect","2.api\u002Fmiscellaneous\u002Fuse-intersect",{"id":499,"title":175,"body":500,"description":1106,"extension":1107,"links":1108,"meta":1109,"navigation":657,"path":176,"seo":1110,"stem":177,"__hash__":1111},"docs\u002F2.api\u002F4.materials\u002Fcustom-shader-material.md",{"type":501,"value":502,"toc":1102},"minimark",[503,509,537,541,1080,1084,1098],[504,505,506],"scene-wrapper",{},[507,508],"materials-custom-shader-material",{},[510,511,512,513,517,518,521,522,531,532,536],"p",{},"The ",[514,515,516],"code",{},"cientos"," package provides ",[514,519,520],{},"\u003CTresCustomShaderMaterial \u002F>"," component which is a wrapper around the ",[523,524,528],"a",{"href":525,"rel":526},"https:\u002F\u002Fgithub.com\u002FFarazzShaikh\u002FTHREE-CustomShaderMaterial",[527],"nofollow",[514,529,530],{},"three-custom-shader-material"," class. As states in the repo, it ",[533,534,535],"em",{},"\"lets you extend Three.js' material library with your own Vertex and Fragment shaders\"",".",[538,539,15],"h2",{"id":540},"usage",[542,543,565],"pre",{"className":544,"code":545,"highlights":546,"language":563,"meta":564,"style":564},"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003Cscript setup lang=\"ts\">\nimport { TresCustomShaderMaterial } from '@tresjs\u002Fcientos'\nimport { shallowRef } from 'vue'\n\nconst customShaderMaterialRef = shallowRef()\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003CTresCanvas>\n    \u003CTresPerspectiveCamera :position=\"[3, 3, 3]\" \u002F>\n    \u003CTresMesh>\n      \u003CTresBoxGeometry \u002F>\n      \u003CTresCustomShaderMaterial\n        ref=\"customShaderMaterialRef\"\n        :vertex-shader=\"vertexShader\"\n        :fragment-shader=\"fragmentShader\"\n        :uniforms=\"{\n          u_time: { value: 0 },\n          u_color: { value: new THREE.Color(0.2, 0.0, 0.1) },\n          u_resolution: { value: new THREE.Vector2() }\n        }\"\n        :transparent=\"true\"\n        :side=\"THREE.DoubleSide\"\n        base-material=\"MeshLambertMaterial\"\n        silent\n        :map=\"texture\"\n        :color=\"0xff0000\"\n      \u002F>\n    \u003C\u002FTresMesh>\n    \u003CTresAmbientLight \u002F>\n  \u003C\u002FTresCanvas>\n\u003C\u002Ftemplate>\n",[547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562],2,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,"vue","",[514,566,567,602,632,652,659,676,686,691,701,712,755,765,776,784,800,818,835,850,871,911,933,941,959,980,995,1001,1018,1035,1041,1051,1061,1071],{"__ignoreMap":564},[568,569,572,576,580,584,587,590,593,597,599],"span",{"class":570,"line":571},"line",1,[568,573,575],{"class":574},"sMK4o","\u003C",[568,577,579],{"class":578},"swJcz","script",[568,581,583],{"class":582},"spNyl"," setup",[568,585,586],{"class":582}," lang",[568,588,589],{"class":574},"=",[568,591,592],{"class":574},"\"",[568,594,596],{"class":595},"sfazB","ts",[568,598,592],{"class":574},[568,600,601],{"class":574},">\n",[568,603,606,610,613,617,620,623,626,629],{"class":604,"line":547},[570,605],"highlight",[568,607,609],{"class":608},"s7zQu","import",[568,611,612],{"class":574}," {",[568,614,616],{"class":615},"sTEyZ"," TresCustomShaderMaterial",[568,618,619],{"class":574}," }",[568,621,622],{"class":608}," from",[568,624,625],{"class":574}," '",[568,627,628],{"class":595},"@tresjs\u002Fcientos",[568,630,631],{"class":574},"'\n",[568,633,635,637,639,642,644,646,648,650],{"class":570,"line":634},3,[568,636,609],{"class":608},[568,638,612],{"class":574},[568,640,641],{"class":615}," shallowRef",[568,643,619],{"class":574},[568,645,622],{"class":608},[568,647,625],{"class":574},[568,649,563],{"class":595},[568,651,631],{"class":574},[568,653,655],{"class":570,"line":654},4,[568,656,658],{"emptyLinePlaceholder":657},true,"\n",[568,660,662,665,668,670,673],{"class":570,"line":661},5,[568,663,664],{"class":582},"const",[568,666,667],{"class":615}," customShaderMaterialRef ",[568,669,589],{"class":574},[568,671,641],{"class":672},"s2Zo4",[568,674,675],{"class":615},"()\n",[568,677,679,682,684],{"class":570,"line":678},6,[568,680,681],{"class":574},"\u003C\u002F",[568,683,579],{"class":578},[568,685,601],{"class":574},[568,687,689],{"class":570,"line":688},7,[568,690,658],{"emptyLinePlaceholder":657},[568,692,694,696,699],{"class":570,"line":693},8,[568,695,575],{"class":574},[568,697,698],{"class":578},"template",[568,700,601],{"class":574},[568,702,704,707,710],{"class":570,"line":703},9,[568,705,706],{"class":574},"  \u003C",[568,708,709],{"class":578},"TresCanvas",[568,711,601],{"class":574},[568,713,715,718,721,724,727,729,731,734,738,741,743,745,747,750,752],{"class":570,"line":714},10,[568,716,717],{"class":574},"    \u003C",[568,719,720],{"class":578},"TresPerspectiveCamera",[568,722,723],{"class":574}," :",[568,725,726],{"class":582},"position",[568,728,589],{"class":574},[568,730,592],{"class":574},[568,732,733],{"class":574},"[",[568,735,737],{"class":736},"sbssI","3",[568,739,740],{"class":574},", ",[568,742,737],{"class":736},[568,744,740],{"class":574},[568,746,737],{"class":736},[568,748,749],{"class":574},"]",[568,751,592],{"class":574},[568,753,754],{"class":574}," \u002F>\n",[568,756,758,760,763],{"class":570,"line":757},11,[568,759,717],{"class":574},[568,761,762],{"class":578},"TresMesh",[568,764,601],{"class":574},[568,766,768,771,774],{"class":570,"line":767},12,[568,769,770],{"class":574},"      \u003C",[568,772,773],{"class":578},"TresBoxGeometry",[568,775,754],{"class":574},[568,777,779,781],{"class":778,"line":548},[570,605],[568,780,770],{"class":574},[568,782,783],{"class":578},"TresCustomShaderMaterial\n",[568,785,787,790,792,794,797],{"class":786,"line":549},[570,605],[568,788,789],{"class":582},"        ref",[568,791,589],{"class":574},[568,793,592],{"class":574},[568,795,796],{"class":595},"customShaderMaterialRef",[568,798,799],{"class":574},"\"\n",[568,801,803,806,809,811,813,816],{"class":802,"line":550},[570,605],[568,804,805],{"class":574},"        :",[568,807,808],{"class":582},"vertex-shader",[568,810,589],{"class":574},[568,812,592],{"class":574},[568,814,815],{"class":615},"vertexShader",[568,817,799],{"class":574},[568,819,821,823,826,828,830,833],{"class":820,"line":551},[570,605],[568,822,805],{"class":574},[568,824,825],{"class":582},"fragment-shader",[568,827,589],{"class":574},[568,829,592],{"class":574},[568,831,832],{"class":615},"fragmentShader",[568,834,799],{"class":574},[568,836,838,840,843,845,847],{"class":837,"line":552},[570,605],[568,839,805],{"class":574},[568,841,842],{"class":582},"uniforms",[568,844,589],{"class":574},[568,846,592],{"class":574},[568,848,849],{"class":574},"{\n",[568,851,853,856,859,862,865,868],{"class":852,"line":553},[570,605],[568,854,855],{"class":578},"          u_time",[568,857,858],{"class":574},": { ",[568,860,861],{"class":578},"value",[568,863,864],{"class":574},": ",[568,866,867],{"class":736},"0",[568,869,870],{"class":574}," },\n",[568,872,874,877,879,881,884,887,889,892,895,898,900,903,905,908],{"class":873,"line":554},[570,605],[568,875,876],{"class":578},"          u_color",[568,878,858],{"class":574},[568,880,861],{"class":578},[568,882,883],{"class":574},": new ",[568,885,886],{"class":615},"THREE",[568,888,536],{"class":574},[568,890,891],{"class":672},"Color",[568,893,894],{"class":574},"(",[568,896,897],{"class":736},"0.2",[568,899,740],{"class":574},[568,901,902],{"class":736},"0.0",[568,904,740],{"class":574},[568,906,907],{"class":736},"0.1",[568,909,910],{"class":574},") },\n",[568,912,914,917,919,921,923,925,927,930],{"class":913,"line":555},[570,605],[568,915,916],{"class":578},"          u_resolution",[568,918,858],{"class":574},[568,920,861],{"class":578},[568,922,883],{"class":574},[568,924,886],{"class":615},[568,926,536],{"class":574},[568,928,929],{"class":672},"Vector2",[568,931,932],{"class":574},"() }\n",[568,934,936,939],{"class":935,"line":556},[570,605],[568,937,938],{"class":574},"        }",[568,940,799],{"class":574},[568,942,944,946,949,951,953,957],{"class":943,"line":557},[570,605],[568,945,805],{"class":574},[568,947,948],{"class":582},"transparent",[568,950,589],{"class":574},[568,952,592],{"class":574},[568,954,956],{"class":955},"sfNiH","true",[568,958,799],{"class":574},[568,960,962,964,967,969,971,973,975,978],{"class":961,"line":558},[570,605],[568,963,805],{"class":574},[568,965,966],{"class":582},"side",[568,968,589],{"class":574},[568,970,592],{"class":574},[568,972,886],{"class":615},[568,974,536],{"class":574},[568,976,977],{"class":615},"DoubleSide",[568,979,799],{"class":574},[568,981,983,986,988,990,993],{"class":982,"line":559},[570,605],[568,984,985],{"class":582},"        base-material",[568,987,589],{"class":574},[568,989,592],{"class":574},[568,991,992],{"class":595},"MeshLambertMaterial",[568,994,799],{"class":574},[568,996,998],{"class":997,"line":560},[570,605],[568,999,1000],{"class":582},"        silent\n",[568,1002,1004,1006,1009,1011,1013,1016],{"class":1003,"line":561},[570,605],[568,1005,805],{"class":574},[568,1007,1008],{"class":582},"map",[568,1010,589],{"class":574},[568,1012,592],{"class":574},[568,1014,1015],{"class":615},"texture",[568,1017,799],{"class":574},[568,1019,1021,1023,1026,1028,1030,1033],{"class":1020,"line":562},[570,605],[568,1022,805],{"class":574},[568,1024,1025],{"class":582},"color",[568,1027,589],{"class":574},[568,1029,592],{"class":574},[568,1031,1032],{"class":736},"0xff0000",[568,1034,799],{"class":574},[568,1036,1038],{"class":570,"line":1037},28,[568,1039,1040],{"class":574},"      \u002F>\n",[568,1042,1044,1047,1049],{"class":570,"line":1043},29,[568,1045,1046],{"class":574},"    \u003C\u002F",[568,1048,762],{"class":578},[568,1050,601],{"class":574},[568,1052,1054,1056,1059],{"class":570,"line":1053},30,[568,1055,717],{"class":574},[568,1057,1058],{"class":578},"TresAmbientLight",[568,1060,754],{"class":574},[568,1062,1064,1067,1069],{"class":570,"line":1063},31,[568,1065,1066],{"class":574},"  \u003C\u002F",[568,1068,709],{"class":578},[568,1070,601],{"class":574},[568,1072,1074,1076,1078],{"class":570,"line":1073},32,[568,1075,681],{"class":574},[568,1077,698],{"class":578},[568,1079,601],{"class":574},[538,1081,1083],{"id":1082},"props","Props",[510,1085,1086,1087,1090,1091,1093,1094,536],{},"Being a wrapper around the ",[514,1088,1089],{},"CustomShaderMaterial"," class, the ",[514,1092,520],{}," component accepts all the props that the class does. You can find the full list of props in the ",[523,1095,1097],{"href":525,"rel":1096},[527],"official repo",[1099,1100,1101],"style",{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":564,"searchDepth":571,"depth":547,"links":1103},[1104,1105],{"id":540,"depth":547,"text":15},{"id":1082,"depth":547,"text":1083},"Extends Three.js' material library with your own Vertex and Fragment shaders.","md",null,{},{"title":175,"description":1106},"WirW-L7fmUIEqDL1ownbJUS8vqN1Ie6ubq6WxZ9mH-o",[1113,1115],{"title":169,"path":170,"stem":171,"description":1114,"children":-1},"All materials",{"title":179,"path":180,"stem":181,"description":1116,"children":-1},"Makes a geometry look like glass by re-defining the MeshPhysicalMaterial.",1791549573320]