[{"data":1,"prerenderedAt":429},["ShallowReactive",2],{"navigation":3,"/experiments/portal-journey":134,"authors":312},[4],{"title":5,"path":6,"stem":7,"children":8,"page":133},"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],{"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},"Glass/Plastic Material","/experiments/glass-material","experiments/glass-material",{"title":54,"path":55,"stem":56},"Grainy Liquid Blobs","/experiments/grainy-liquid","experiments/grainy-liquid",{"title":58,"path":59,"stem":60},"Haunted House","/experiments/haunted-house","experiments/haunted-house",{"title":62,"path":63,"stem":64},"Phone with HTML inside","/experiments/html-phone","experiments/html-phone",{"title":66,"path":67,"stem":68},"Low Poly Planet","/experiments/lowpoly-planet","experiments/lowpoly-planet",{"title":70,"path":71,"stem":72},"Magical Marbles","/experiments/magical-marbles","experiments/magical-marbles",{"title":74,"path":75,"stem":76},"Nuxt Stones","/experiments/nuxt-stones","experiments/nuxt-stones",{"title":78,"path":79,"stem":80},"Particle Pumpkin Shader","/experiments/particle-pumpkin","experiments/particle-pumpkin",{"title":82,"path":83,"stem":84},"Particles Morphing","/experiments/particles-morphing","experiments/particles-morphing",{"title":86,"path":87,"stem":88},"Portal Journey","/experiments/portal-journey","experiments/portal-journey",{"title":90,"path":91,"stem":92},"Wizard's Potion Classroom","/experiments/potions-classroom","experiments/potions-classroom",{"title":94,"path":95,"stem":96},"Rapier Object Clump","/experiments/rapier-object-clump","experiments/rapier-object-clump",{"title":98,"path":99,"stem":100},"Rapier Wrecking Ball","/experiments/rapier-wrecking-ball","experiments/rapier-wrecking-ball",{"title":102,"path":103,"stem":104},"Repulsion Effect","/experiments/repulsion-effect","experiments/repulsion-effect",{"title":106,"path":107,"stem":108},"Shadertoy Museum","/experiments/shadertoy-museum","experiments/shadertoy-museum",{"title":110,"path":111,"stem":112},"Space Game","/experiments/space-game","experiments/space-game",{"title":114,"path":115,"stem":116},"Halloween Spooky-saur 🎃","/experiments/spooky-saur","experiments/spooky-saur",{"title":118,"path":119,"stem":120},"Synthwave Landscape","/experiments/synthwave-landscape","experiments/synthwave-landscape",{"title":122,"path":123,"stem":124},"Texture Particle Cursor","/experiments/texture-particle-cursor","experiments/texture-particle-cursor",{"title":126,"path":127,"stem":128},"Vue Fes Japan 2025","/experiments/vuefes-japan-2025","experiments/vuefes-japan-2025",{"title":130,"path":131,"stem":132},"WebGPU","/experiments/webgpu","experiments/webgpu",false,{"id":135,"title":86,"author":136,"body":137,"date":297,"description":298,"extension":299,"featured":133,"lastUpdated":300,"meta":301,"navigation":302,"path":87,"seo":303,"stem":88,"tags":304,"thumbnail":310,"__hash__":311},"experiments/experiments/portal-journey.md","alvarosabu",{"type":138,"value":139,"toc":289},"minimark",[140,157,162,165,205,209,212,250,254,286],[141,142,143,144,148,149,156],"p",{},"This experiment recreates the iconic ",[145,146,147],"strong",{},"portal scene"," from ",[150,151,155],"a",{"href":152,"rel":153},"https://threejs-journey.com/",[154],"nofollow","Bruno Simon's famous Three.js Journey course",", featuring a magical portal surrounded by floating fireflies. The scene demonstrates advanced lighting techniques, custom shaders, and atmospheric effects creating an enchanting fantasy environment.",[158,159,161],"h3",{"id":160},"what-youll-see","What You'll See",[141,163,164],{},"A captivating magical scene featuring:",[166,167,168,175,181,187,193,199],"ul",{},[169,170,171,174],"li",{},[145,172,173],{},"Mystical Portal",": Glowing circular portal with swirling energy effects",[169,176,177,180],{},[145,178,179],{},"Floating Fireflies",": Hundreds of animated fireflies with custom particle shaders",[169,182,183,186],{},[145,184,185],{},"Baked Lighting",": Pre-computed lighting for realistic illumination and shadows",[169,188,189,192],{},[145,190,191],{},"Fantasy Environment",": Detailed 3D environment with rocks, grass, and mystical elements",[169,194,195,198],{},[145,196,197],{},"Shader Effects",": Custom GLSL shaders for portal energy and firefly glow",[169,200,201,204],{},[145,202,203],{},"Atmospheric Lighting",": Carefully crafted lighting creating magical ambiance",[158,206,208],{"id":207},"technical-implementation","Technical Implementation",[141,210,211],{},"This experiment showcases advanced 3D rendering techniques:",[166,213,214,220,226,232,238,244],{},[169,215,216,219],{},[145,217,218],{},"Baked Lighting Pipeline",": Pre-calculated lighting stored in textures for performance",[169,221,222,225],{},[145,223,224],{},"Custom Particle Shaders",": GLSL shaders for firefly animation and glow effects",[169,227,228,231],{},[145,229,230],{},"Portal Shader Effects",": Swirling energy patterns using time-based animations",[169,233,234,237],{},[145,235,236],{},"GLTF Scene Loading",": Complex 3D environment loaded efficiently",[169,239,240,243],{},[145,241,242],{},"Texture Management",": Multiple textures for different scene elements",[169,245,246,249],{},[145,247,248],{},"Performance Optimization",": Balanced visual quality with smooth performance",[158,251,253],{"id":252},"visual-design","Visual Design",[166,255,256,262,268,274,280],{},[169,257,258,261],{},[145,259,260],{},"Fantasy Atmosphere",": Magical lighting and effects creating otherworldly mood",[169,263,264,267],{},[145,265,266],{},"Color Harmony",": Warm and cool tones creating visual depth and interest",[169,269,270,273],{},[145,271,272],{},"Particle Animation",": Realistic firefly movement with natural randomness",[169,275,276,279],{},[145,277,278],{},"Environmental Detail",": Rich 3D environment with varied textures and materials",[169,281,282,285],{},[145,283,284],{},"Lighting Drama",": Strategic light placement highlighting key scene elements",[141,287,288],{},"This experiment serves as an excellent reference for creating magical environments and demonstrates how proper lighting and shader effects can transform a simple scene into a captivating fantasy world.",{"title":290,"searchDepth":291,"depth":291,"links":292},"",2,[293,295,296],{"id":160,"depth":294,"text":161},3,{"id":207,"depth":294,"text":208},{"id":252,"depth":294,"text":253},"2023-03-27","Famous Bruno Simon's ThreeJS Journey Portal.","md","2025-06-26",{},true,{"title":86,"description":298},[305,306,307,308,309],"gltf","shaders","useTexture","useGLTF","baked","/experiments/portal-journey.webp","CsEEFjfr3jK1dm9NovXNc6nPJJPFKC2r4rxAwB4U8Ro",[313,328,343,360,376,394,411],{"id":314,"title":315,"avatar":316,"body":317,"description":290,"email":321,"extension":299,"github":136,"meta":322,"name":136,"navigation":302,"path":323,"seo":324,"slug":136,"stem":325,"twitter":136,"website":326,"__hash__":327},"authors/authors/alvarosabu.md","Alvarosabu","/avatars/alvarosabu.jpeg",{"type":138,"value":318,"toc":319},[],{"title":290,"searchDepth":291,"depth":291,"links":320},[],"hola@alvarosaburido.dev",{},"/authors/alvarosabu",{"description":290},"authors/alvarosabu","https://alvarosabu.dev","kfjqjiPxKR64avAeoJeNF40fMr5laisoEnPnfgFGN_U",{"id":329,"title":330,"avatar":331,"body":332,"description":290,"email":336,"extension":299,"github":337,"meta":338,"name":337,"navigation":302,"path":339,"seo":340,"slug":337,"stem":341,"twitter":336,"website":336,"__hash__":342},"authors/authors/andretchen0.md","Andretchen0","/avatars/andretchen0.jpg",{"type":138,"value":333,"toc":334},[],{"title":290,"searchDepth":291,"depth":291,"links":335},[],null,"andretchen0",{},"/authors/andretchen0",{"description":290},"authors/andretchen0","rztGS5YNlU7jYv1laE9f863gZy-WUFK5r3uuycyiMLY",{"id":344,"title":345,"avatar":346,"body":347,"description":290,"email":351,"extension":299,"github":352,"meta":353,"name":354,"navigation":302,"path":355,"seo":356,"slug":352,"stem":357,"twitter":358,"website":336,"__hash__":359},"authors/authors/damienmontastier.md","Damienmontastier","/avatars/damienmontastier.jpg",{"type":138,"value":348,"toc":349},[],{"title":290,"searchDepth":291,"depth":291,"links":350},[],"montastier.damien@gmail.com","damienmontastier",{},"Damien Montastier","/authors/damienmontastier",{"description":290},"authors/damienmontastier","dammontastier","FqtKh6r8pBEM29DE6GhT098-LIpM3BL7RXSxFjrcwwY",{"id":361,"title":362,"avatar":363,"body":364,"description":290,"email":336,"extension":299,"github":368,"meta":369,"name":370,"navigation":302,"path":371,"seo":372,"slug":368,"stem":373,"twitter":374,"website":336,"__hash__":375},"authors/authors/franciscohermida.md","Franciscohermida","/avatars/franciscohermida.jpg",{"type":138,"value":365,"toc":366},[],{"title":290,"searchDepth":291,"depth":291,"links":367},[],"franciscohermida",{},"Francisco Hermida","/authors/franciscohermida",{"description":290},"authors/franciscohermida","chicohermida","2dGmaA2uS0w2CaErMR8BexRzx0pCgoEowV5tZcITkus",{"id":377,"title":378,"avatar":379,"body":380,"description":290,"email":384,"extension":299,"github":385,"meta":386,"name":378,"navigation":302,"path":387,"seo":388,"slug":389,"stem":390,"twitter":391,"website":392,"__hash__":393},"authors/authors/jaime-torrealba.md","Jaime Torrealba","/avatars/jaime-torrealba.jpg",{"type":138,"value":381,"toc":382},[],{"title":290,"searchDepth":291,"depth":291,"links":383},[],"solucionesinformaticasjtc@gmail.com","JaimeTorrealba",{},"/authors/jaime-torrealba",{"description":290},"jaime-bboyjt","authors/jaime-torrealba","jaimebboyjt","https://jaimetorrealba.com/","WhkdXnej1NkT__thyZfYEil3qYn8wi7qVoQSMzyfrs4",{"id":395,"title":396,"avatar":397,"body":398,"description":290,"email":402,"extension":299,"github":403,"meta":404,"name":405,"navigation":302,"path":406,"seo":407,"slug":405,"stem":408,"twitter":402,"website":409,"__hash__":410},"authors/authors/luckystriike.md","Luckystriike","/avatars/luckystriike.jpg",{"type":138,"value":399,"toc":400},[],{"title":290,"searchDepth":291,"depth":291,"links":401},[],"none","luckystriike22",{},"luckystriike","/authors/luckystriike",{"description":290},"authors/luckystriike","https://github.com/luckystriike22","vmVaU8HAY_jbVnlvpUQiwh3uPcKxGGr6B5PF9xo17X8",{"id":412,"title":413,"avatar":414,"body":415,"description":290,"email":419,"extension":299,"github":420,"meta":421,"name":422,"navigation":302,"path":423,"seo":424,"slug":420,"stem":425,"twitter":426,"website":427,"__hash__":428},"authors/authors/neoprint3d.md","Neoprint3d","/avatars/neoprint3d.jpg",{"type":138,"value":416,"toc":417},[],{"title":290,"searchDepth":291,"depth":291,"links":418},[],"drew@neoprint3d.dev","neoprint3d",{},"Drew Ronsman","/authors/neoprint3d",{"description":290},"authors/neoprint3d","drew_ronsman","https://dronsman.com","w-8rauWEJDRmX_QOi4s2PI7n9EABybGURQ-R_ss9tzo",1782052341835]