{"id":"hologram","version":"1.0.0","title":"Hologram","summary":"A sci-fi hologram hovering over a metal projector: a dot-matrix Earth, a DNA helix or your message, in glowing scan lines. Loops perfectly.","kind":"object","target":"three","collections":["hypnotic-loops","particles"],"tags":["hologram","holographic","sci-fi","futuristic","globe","earth","dna","glitch","scan lines","tech","hud","loop","3d"],"loopable":true,"motion":"procedural","durationSeconds":12,"status":"published","media":{"poster":"https://aipixelwizard.com/media/hologram/1.0.0/poster.webp","preview":"https://aipixelwizard.com/media/hologram/1.0.0/preview.mp4","sample":"https://aipixelwizard.com/media/hologram/1.0.0/sample.mp4","sampleBytes":3991226,"sampleNote":"Pre-rendered with the default settings. Customised settings must be exported locally (npm run render)."},"urls":{"page":"https://aipixelwizard.com/visuals/hologram","manifest":"https://aipixelwizard.com/api/v1/visuals/hologram/versions/1.0.0","agentMd":"https://aipixelwizard.com/registry/hologram/1.0.0/agent.md","files":"https://aipixelwizard.com/registry/hologram/1.0.0/","demo":"https://aipixelwizard.com/registry/hologram/1.0.0/index.html"},"description":"A projection of light floats above a turned metal emitter: drawn in drifting scan lines with a bright rim, lit by a beam rising from the lens with dust floating up through it, and torn sideways now and then by a glitch that splits its colours. Choose the subject: a dot-matrix Earth (real coastlines) with flight paths arcing between cities, a turning DNA double helix, or a message panel with your title and a live signal trace, lettered in a squared sci-fi face. Pick the colour, how often it glitches and flickers, and the room colour. The hologram's light pools on the floor and catches the projector's edges.","role":"Hero object (Three.js 3D): a futuristic hologram for tech, science and sci-fi intros.","useCases":["A tech, AI or cyber-security intro with a global network or a message in light","Science and health explainers: a turning DNA helix as a cutaway","Sci-fi scenes, game trailers and futuristic product launches"],"synonyms":["hologram projection","holographic display","holographic globe","sci-fi hologram","hologram effect","futuristic projection","digital earth","rotating globe hologram","dna hologram","incoming transmission"],"digest":"0fe820b77ccb39eb687be9423e70a9e45c37dff912b19e45c58ffbd716501a52","implementation":{"target":"three","runtime":"browser","language":"javascript","module":"esm","entry":"src/hologram.js","exports":[{"name":"createHologramProjection","signature":"createHologramProjection({ subject?, color?, title?, subtitle?, arcs?, spin?, lift?, seed? }) => { group, uniforms, lift, top, update(time, loopSeconds), dispose() }","description":"The hologram itself (subject, beam, lens glow and rising dust) for a hologram-only scene, with the projector's lens at its origin."},{"name":"createProjector","signature":"createProjector({ color?, metal? }) => { group, lights, lensY, radius, dispose() }","description":"The metal emitter, for the solid scene; its status lights go in the hologram scene."},{"name":"createHologramPass","signature":"createHologramPass(renderer, { width, height, glow?, split?, grain?, exposure? }) => { render({ scene, holoScene, camera, level?, tears?, output? }), dispose() }","description":"Renders the solid scene and the hologram layer, then glows, tears, colour-splits and tone-maps them into the final frame."},{"name":"hologramSignal","signature":"hologramSignal({ loopSeconds, glitch?, flicker?, seed? }) => { level(time), tears(time) }","description":"Seeded flicker and glitches over a loop, as pure functions of time."},{"name":"holoGlyphs","signature":"holoGlyphs(text, { tracking? }) => { width, strokes }","description":"The squared sci-fi lettering as stroke paths, for drawing text in the same face."},{"name":"HOLO_COLORS","signature":"HOLO_COLORS: { cyan, green, amber, red, violet }","description":"Suggested hologram colours."}],"reusable":["src/hologram.js"],"demo":"demo.js","harness":"index.html"},"dependencies":[{"id":"three","version":"0.185.1","scope":"source","reason":"Renderer, geometry and the hologram shaders."},{"id":"chrome-material","version":"1.1.0","scope":"demo","reason":"Studio environment light and the room backdrop."},{"id":"apw-runtime","version":"1.0.0","scope":"demo","reason":"Demo harness."}],"uses":[],"usedBy":[],"params":[{"key":"subject","label":"Subject","type":"select","default":"globe","options":[{"value":"globe","label":"Earth"},{"value":"dna","label":"DNA helix"},{"value":"message","label":"Message"}]},{"key":"color","label":"Hologram colour","type":"color","default":"#43d6ff"},{"key":"title","label":"Message","help":"Shown when the subject is Message, in capitals: letters with accents, numbers and common punctuation.","type":"text","default":"SYSTEM ONLINE","maxLength":28,"sensitive":true},{"key":"subtitle","label":"Small line","help":"Shown above the message.","type":"text","default":"All channels secure","maxLength":40,"sensitive":true},{"key":"arcs","label":"Flight paths on the Earth","type":"boolean","default":true},{"key":"glitch","label":"Glitches","type":"number","min":0,"max":1,"step":0.05,"default":0.35},{"key":"flicker","label":"Flicker","type":"number","min":0,"max":1,"step":0.05,"default":0.3},{"key":"background","label":"Room colour","type":"color","default":"#070b14"},{"key":"seed","label":"Seed","help":"Changes when the glitches and flickers happen.","type":"integer","min":1,"max":999,"step":1,"default":7}],"presets":[{"id":"default","label":"Earth briefing","params":{}},{"id":"dna","label":"DNA lab","params":{"subject":"dna","color":"#4dffb0","background":"#04100c","glitch":0.2}},{"id":"message","label":"Incoming message","params":{"subject":"message","color":"#ffb347","title":"INCOMING TRANSMISSION","subtitle":"Channel 7, encrypted","background":"#110b05","glitch":0.5}},{"id":"alert","label":"Red alert","params":{"color":"#ff4057","background":"#12060a","glitch":0.85,"flicker":0.65,"seed":21}}],"output":{"width":1080,"height":1080,"fps":30,"durationSeconds":12,"posterSeconds":4,"alpha":false,"motion":"procedural","loop":{"seamless":true,"cycleSeconds":12,"method":"The subject turns whole turns, the arcs, dust, scan lines and signal trace repeat a whole number of times, and the glitches and flickers are scheduled round the loop, so the last frame meets the first."},"seed":{"param":"seed","behavior":"Seed picks when the glitches, flickers and dust happen: same seed, same hologram."}},"composition":{"inputs":"Time within the loop; the subject, colour, texts and seed.","outputs":"Two groups: the projector for the solid scene, the hologram for a hologram-only scene; createHologramPass draws both into the final frame.","coordinates":"The projector stands on y = 0 and is 1.93 units across; the hologram's centre floats 1.6 units above the lens and the Earth has a radius of 1.","lighting":"The projector is physical metal and needs scene.environment. The hologram emits light; add a PointLight in its colour above the lens so it lights the floor and the projector.","timing":"update(time, loopSeconds) and the signal are pure functions of time; frames render in any order.","compatibleWith":["kinetic-title","particle-tunnel","orbit-camera"],"notes":["Message texts are treated as private: not stored in shared packs unless you choose to include them.","The lettering is a stroke face built into the code: capital letters with the common accents, digits and punctuation.","Coastlines come from Natural Earth (public domain) at 1° resolution, built into the code."]},"reuse":["Global network intro: the Earth briefing preset with your title over the top of the frame.","Science explainer: the DNA lab preset as a cutaway while you talk.","Sci-fi story beat: the Incoming message preset with your own message, glitches up."],"integration":{"newProject":"Create a solid scene (room, floor, createProjector) and a hologram scene (createHologramProjection), then each frame call update(time, loopSeconds) and createHologramPass(...).render({ scene, holoScene, camera, level, tears }).","existingProject":"Copy src/hologram.js. Put the projection in its own scene above any object of yours, and draw your scene through createHologramPass so the hologram glows and glitches without touching the rest."},"performance":{"notes":"Two scene passes and a small glow chain at full resolution; the Earth is one sphere shaded per pixel. Smooth at 1080p on laptop GPUs.","limits":"Software WebGL (no GPU) renders slowly. Lower the glow chain or the resolution for phones."},"limitations":["The Earth shows land from 1:110m Natural Earth outlines: small islands are missing.","Message lettering covers A–Z with the common accents (á à â ã ä å ç), 0–9 and common punctuation; other characters are skipped."],"license":{"spdx":"MIT","notice":"Copyright (c) 2026 AI Pixel Wizard. Released under the MIT License. See LICENSE in this folder.","thirdParty":[{"name":"three.js","version":"0.185.1","license":"MIT","url":"https://github.com/mrdoob/three.js"},{"name":"Natural Earth 1:110m land","license":"Public domain","url":"https://www.naturalearthdata.com"}]},"rights":{"approvedForPublicRelease":true},"provenance":"Adapted from the owner's threejs-sketches/light-atmosphere/webgpu-hologram (MIT), rebuilt for AI Pixel Wizard in October 2026 in WebGL: a turned metal projector, three subjects (a dot-matrix Earth from Natural Earth coastlines with flight arcs, a DNA helix, a lettered message panel), a lit beam with rising dust, seeded glitches and flicker, and the frame/time contract.","changelog":[{"version":"1.0.0","date":"2026-10-05","notes":"Initial release."}],"verification":{"testedOn":"2026-10-06","inputs":{"hologram@1.0.0":"0fe820b77ccb39eb687be9423e70a9e45c37dff912b19e45c58ffbd716501a52","three@0.185.1":"664ca387e5fab46ff2daaa6895e1d015426850891af5ea5082cbbcc3985b068c","chrome-material@1.1.0":"ecb41776bfc1ee88997604f916a5ffe833f971d7edcc97c855697a5792d6f1dd","apw-runtime@1.0.0":"5be859cdac74823ba0bcc32c6daf06688a871104d24db5d4ceaffffd84d7c40d"},"environment":"Chrome 154.0.8037.97 headless on Linux 7.0.0-38-generic (x64), Node 22.14.0","renderer":"WebGL 2 via SwiftShader (software)","width":1080,"height":1080,"fps":30,"frames":360,"renderSeconds":2345.4,"loopCheck":{"checked":true,"seamless":true,"maxDifference":0,"note":"Frame 0 vs end state (progress 1): mean |Δ| 0.0000, max |Δ| 0 of 255."},"determinism":{"checked":true,"identical":true},"errors":[],"media":{"poster":"/media/hologram/1.0.0/poster.webp","preview":"/media/hologram/1.0.0/preview.mp4","sample":"/media/hologram/1.0.0/sample.mp4","sampleBytes":3991226}},"files":[{"path":"LICENSE","size":1072,"sha256":"8a5f3a96f07e11522ec4bdd0a583356f99bad1245920f9709cee09b995a45153","contentType":"text/plain; charset=utf-8","url":"https://aipixelwizard.com/registry/hologram/1.0.0/LICENSE"},{"path":"asset.json","size":10993,"sha256":"8aa26a88e7df123420efdcf6a4106739746a15fc722de5af5c22234df292d662","contentType":"application/json; charset=utf-8","url":"https://aipixelwizard.com/registry/hologram/1.0.0/asset.json"},{"path":"demo.js","size":3622,"sha256":"e032bf7f11e7c5788e9d225a9405c3d9e4fdbc7c83b7ebe0f6b3f44897e7654f","contentType":"text/javascript; charset=utf-8","url":"https://aipixelwizard.com/registry/hologram/1.0.0/demo.js"},{"path":"index.html","size":522,"sha256":"0c30277fcbae6cf72126c657afdad4d24a9e42ff13bdf0fc497d48de567fb4d5","contentType":"text/html; charset=utf-8","url":"https://aipixelwizard.com/registry/hologram/1.0.0/index.html"},{"path":"src/hologram.js","size":55416,"sha256":"4276f2d85d1dbcf932f2c25922559961ec916ddbbd2f8b3aac77aa9d417eb72a","contentType":"text/javascript; charset=utf-8","url":"https://aipixelwizard.com/registry/hologram/1.0.0/src/hologram.js"}],"warnings":[]}