[{"data":1,"prerenderedAt":352},["ShallowReactive",2],{"navigation":3,"/experiments/fireworks-shader":154,"authors":218},[4],{"title":5,"path":6,"stem":7,"children":8,"page":153},"Experiments","/experiments","experiments",[9,13,17,21,25,29,33,37,41,45,49,53,57,61,65,69,73,77,81,85,89,93,97,101,105,109,113,117,121,125,129,133,137,141,145,149],{"title":10,"path":11,"stem":12},"Array of cameras","/experiments/array-cameras","experiments/array-cameras",{"title":14,"path":15,"stem":16},"Brickelangelo David","/experiments/brickelangelo-david","experiments/brickelangelo-david",{"title":18,"path":19,"stem":20},"Basic Brownian distribution","/experiments/brownian-distribution","experiments/brownian-distribution",{"title":22,"path":23,"stem":24},"Porsche 911 Car Showcase","/experiments/car-showcase","experiments/car-showcase",{"title":26,"path":27,"stem":28},"Coffee Smoke","/experiments/coffee-smoke","experiments/coffee-smoke",{"title":30,"path":31,"stem":32},"Cube Boy Dancefloor","/experiments/cube-boy-dancefloor","experiments/cube-boy-dancefloor",{"title":34,"path":35,"stem":36},"Cult of the lamb 🐑","/experiments/cult-of-the-lamb","experiments/cult-of-the-lamb",{"title":38,"path":39,"stem":40},"Dancing blob","/experiments/dancing-blob","experiments/dancing-blob",{"title":42,"path":43,"stem":44},"Fireworks Shader","/experiments/fireworks-shader","experiments/fireworks-shader",{"title":46,"path":47,"stem":48},"Galaxy Generator 🪐","/experiments/galaxy-generator","experiments/galaxy-generator",{"title":50,"path":51,"stem":52},"Gelatinous Cube","/experiments/gelatinous-cube","experiments/gelatinous-cube",{"title":54,"path":55,"stem":56},"Glass/Plastic Material","/experiments/glass-material","experiments/glass-material",{"title":58,"path":59,"stem":60},"Grainy Liquid Blobs","/experiments/grainy-liquid","experiments/grainy-liquid",{"title":62,"path":63,"stem":64},"Haunted House","/experiments/haunted-house","experiments/haunted-house",{"title":66,"path":67,"stem":68},"Phone with HTML inside","/experiments/html-phone","experiments/html-phone",{"title":70,"path":71,"stem":72},"Low Poly Planet","/experiments/lowpoly-planet","experiments/lowpoly-planet",{"title":74,"path":75,"stem":76},"Magical Marbles","/experiments/magical-marbles","experiments/magical-marbles",{"title":78,"path":79,"stem":80},"Nuxt Stones","/experiments/nuxt-stones","experiments/nuxt-stones",{"title":82,"path":83,"stem":84},"Particle Pumpkin Shader","/experiments/particle-pumpkin","experiments/particle-pumpkin",{"title":86,"path":87,"stem":88},"Particles Morphing","/experiments/particles-morphing","experiments/particles-morphing",{"title":90,"path":91,"stem":92},"Plexus Particles","/experiments/plexus-particles","experiments/plexus-particles",{"title":94,"path":95,"stem":96},"Portal Journey","/experiments/portal-journey","experiments/portal-journey",{"title":98,"path":99,"stem":100},"Wizard's Potion Classroom","/experiments/potions-classroom","experiments/potions-classroom",{"title":102,"path":103,"stem":104},"Rapier Basketball","/experiments/rapier-basketball","experiments/rapier-basketball",{"title":106,"path":107,"stem":108},"Rapier Vehicle","/experiments/rapier-car","experiments/rapier-car",{"title":110,"path":111,"stem":112},"Rapier Object Clump","/experiments/rapier-object-clump","experiments/rapier-object-clump",{"title":114,"path":115,"stem":116},"Rapier Wrecking Ball","/experiments/rapier-wrecking-ball","experiments/rapier-wrecking-ball",{"title":118,"path":119,"stem":120},"Repulsion Effect","/experiments/repulsion-effect","experiments/repulsion-effect",{"title":122,"path":123,"stem":124},"Shadertoy Museum","/experiments/shadertoy-museum","experiments/shadertoy-museum",{"title":126,"path":127,"stem":128},"Space Game","/experiments/space-game","experiments/space-game",{"title":130,"path":131,"stem":132},"Halloween Spooky-saur 🎃","/experiments/spooky-saur","experiments/spooky-saur",{"title":134,"path":135,"stem":136},"Synthwave Landscape","/experiments/synthwave-landscape","experiments/synthwave-landscape",{"title":138,"path":139,"stem":140},"Texture Particle Cursor","/experiments/texture-particle-cursor","experiments/texture-particle-cursor",{"title":142,"path":143,"stem":144},"Vue Fes Japan 2025","/experiments/vuefes-japan-2025","experiments/vuefes-japan-2025",{"title":146,"path":147,"stem":148},"WebGPU","/experiments/webgpu","experiments/webgpu",{"title":150,"path":151,"stem":152},"World Walker","/experiments/world-walker","experiments/world-walker",false,{"id":155,"title":42,"author":156,"body":157,"date":205,"description":206,"extension":207,"featured":153,"lastUpdated":208,"meta":209,"navigation":210,"path":43,"seo":211,"stem":44,"tags":212,"thumbnail":216,"__hash__":217},"experiments/experiments/fireworks-shader.md","alvarosabu",{"type":158,"value":159,"toc":200},"minimark",[160,177,182,191],[161,162,163,164,168,169,176],"p",{},"This experiment recreates the stunning ",[165,166,167],"strong",{},"fireworks shader effect"," from ",[170,171,175],"a",{"href":172,"rel":173},"https://threejs-journey.com/",[174],"nofollow","Bruno Simon's Three.js Journey course",", adapted for TresJS. Experience dynamic particle explosions with custom GLSL shaders that create realistic fireworks bursts complete with physics-based motion and vibrant color variations.",[178,179,181],"h2",{"id":180},"assets","Assets",[161,183,184,185,190],{},"Particle textures downloaded from ",[170,186,189],{"href":187,"rel":188},"https://kenney.nl/assets/particle-pack",[174],"Kenney.nl Particle Pack"," - Creative Commons CC0 (Public Domain).",[161,192,193,194,199],{},"Thanks to ",[170,195,198],{"href":196,"rel":197},"https://kenney.nl",[174],"Kenney.nl"," for so many great free assets!",{"title":201,"searchDepth":202,"depth":202,"links":203},"",2,[204],{"id":180,"depth":202,"text":181},"2025-11-21","Fireworks shader with particles and shaders","md","2025-12-17",{},true,{"title":42,"description":206},[213,214,215],"shaders","glsl","particles","/experiments/fireworks-shader.webp","1ENW13gymSoXwDKKP3KEf7YIDJwZlkdU0Xrqt3MyNLI",[219,234,249,266,282,300,317,335],{"id":220,"title":221,"avatar":222,"body":223,"description":201,"email":227,"extension":207,"github":156,"meta":228,"name":156,"navigation":210,"path":229,"seo":230,"slug":156,"stem":231,"twitter":156,"website":232,"__hash__":233},"authors/authors/alvarosabu.md","Alvarosabu","/avatars/alvarosabu.jpeg",{"type":158,"value":224,"toc":225},[],{"title":201,"searchDepth":202,"depth":202,"links":226},[],"hola@alvarosaburido.dev",{},"/authors/alvarosabu",{"description":201},"authors/alvarosabu","https://alvarosabu.dev","kfjqjiPxKR64avAeoJeNF40fMr5laisoEnPnfgFGN_U",{"id":235,"title":236,"avatar":237,"body":238,"description":201,"email":242,"extension":207,"github":243,"meta":244,"name":243,"navigation":210,"path":245,"seo":246,"slug":243,"stem":247,"twitter":242,"website":242,"__hash__":248},"authors/authors/andretchen0.md","Andretchen0","/avatars/andretchen0.jpg",{"type":158,"value":239,"toc":240},[],{"title":201,"searchDepth":202,"depth":202,"links":241},[],null,"andretchen0",{},"/authors/andretchen0",{"description":201},"authors/andretchen0","rztGS5YNlU7jYv1laE9f863gZy-WUFK5r3uuycyiMLY",{"id":250,"title":251,"avatar":252,"body":253,"description":201,"email":257,"extension":207,"github":258,"meta":259,"name":260,"navigation":210,"path":261,"seo":262,"slug":258,"stem":263,"twitter":264,"website":242,"__hash__":265},"authors/authors/damienmontastier.md","Damienmontastier","/avatars/damienmontastier.jpg",{"type":158,"value":254,"toc":255},[],{"title":201,"searchDepth":202,"depth":202,"links":256},[],"montastier.damien@gmail.com","damienmontastier",{},"Damien Montastier","/authors/damienmontastier",{"description":201},"authors/damienmontastier","dammontastier","FqtKh6r8pBEM29DE6GhT098-LIpM3BL7RXSxFjrcwwY",{"id":267,"title":268,"avatar":269,"body":270,"description":201,"email":242,"extension":207,"github":274,"meta":275,"name":276,"navigation":210,"path":277,"seo":278,"slug":274,"stem":279,"twitter":280,"website":242,"__hash__":281},"authors/authors/franciscohermida.md","Franciscohermida","/avatars/franciscohermida.jpg",{"type":158,"value":271,"toc":272},[],{"title":201,"searchDepth":202,"depth":202,"links":273},[],"franciscohermida",{},"Francisco Hermida","/authors/franciscohermida",{"description":201},"authors/franciscohermida","chicohermida","2dGmaA2uS0w2CaErMR8BexRzx0pCgoEowV5tZcITkus",{"id":283,"title":284,"avatar":285,"body":286,"description":201,"email":290,"extension":207,"github":291,"meta":292,"name":284,"navigation":210,"path":293,"seo":294,"slug":295,"stem":296,"twitter":297,"website":298,"__hash__":299},"authors/authors/jaime-torrealba.md","Jaime Torrealba","/avatars/jaime-torrealba.jpg",{"type":158,"value":287,"toc":288},[],{"title":201,"searchDepth":202,"depth":202,"links":289},[],"solucionesinformaticasjtc@gmail.com","JaimeTorrealba",{},"/authors/jaime-torrealba",{"description":201},"jaime-bboyjt","authors/jaime-torrealba","jaimebboyjt","https://jaimetorrealba.com/","WhkdXnej1NkT__thyZfYEil3qYn8wi7qVoQSMzyfrs4",{"id":301,"title":302,"avatar":303,"body":304,"description":201,"email":308,"extension":207,"github":309,"meta":310,"name":311,"navigation":210,"path":312,"seo":313,"slug":311,"stem":314,"twitter":308,"website":315,"__hash__":316},"authors/authors/luckystriike.md","Luckystriike","/avatars/luckystriike.jpg",{"type":158,"value":305,"toc":306},[],{"title":201,"searchDepth":202,"depth":202,"links":307},[],"none","luckystriike22",{},"luckystriike","/authors/luckystriike",{"description":201},"authors/luckystriike","https://github.com/luckystriike22","vmVaU8HAY_jbVnlvpUQiwh3uPcKxGGr6B5PF9xo17X8",{"id":318,"title":319,"avatar":320,"body":321,"description":201,"email":325,"extension":207,"github":326,"meta":327,"name":328,"navigation":210,"path":329,"seo":330,"slug":326,"stem":331,"twitter":332,"website":333,"__hash__":334},"authors/authors/neoprint3d.md","Neoprint3d","/avatars/neoprint3d.jpg",{"type":158,"value":322,"toc":323},[],{"title":201,"searchDepth":202,"depth":202,"links":324},[],"drew@neoprint3d.dev","neoprint3d",{},"Drew Ronsman","/authors/neoprint3d",{"description":201},"authors/neoprint3d","drew_ronsman","https://dronsman.com","w-8rauWEJDRmX_QOi4s2PI7n9EABybGURQ-R_ss9tzo",{"id":336,"title":337,"avatar":338,"body":339,"description":201,"email":343,"extension":207,"github":344,"meta":345,"name":337,"navigation":210,"path":346,"seo":347,"slug":344,"stem":348,"twitter":349,"website":350,"__hash__":351},"authors/authors/neosoulink.md","Neosoulink","/avatars/neosoulink.jpg",{"type":158,"value":340,"toc":341},[],{"title":201,"searchDepth":202,"depth":202,"links":342},[],"neodarksoulink@gmail.com","neosoulink",{},"/authors/neosoulink",{"description":201},"authors/neosoulink","nsl_nathan","https://github.com/Neosoulink","69eGfzorl4NNNe56pFRh6qK3AhnfjnKUvCHO-_9Pa1Y",1787004690994]