RawmWare Immersive Preview Session Checkpoint
Last updated: September 20, 2026
Where This Session Left Off
The current preview is an immersive RawmWare world built around one floating experiment window. The scene has a rotating glowing green wire grid shaped like the inside of a sphere, a reflective metallic floor, a black space backdrop, starfield styling, zoom controls, and camera drag behavior. The experiment window always faces the camera and can be pulled toward the viewer.
The first live experiment is loaded into the main RawmWare window from the 101.html experiment source workflow. The preview is currently built into:
immersive-window-preview.html
The local preview server file is:
preview-server.cjs
The current local browser URL during the session was:
http://127.0.0.1:4173/
Latest Implemented Features
Live Sky Default
The sky now defaults to a live time-based mode. It asks the browser for location permission and uses the user's current timezone if permission is granted. If location permission is denied or unavailable, it quietly falls back to Eastern Time.
Sky modes include:
- Live sky
- Dawn
- Day
- Sunset
- Night
The live sky transitions smoothly through early morning, day, sunset, and night tones. This is procedural sky color behavior, not Google Maps or Google Earth imagery yet.
Room Controls Window
A second floating window was added and styled to match the experiment window. It is labeled:
RawmWare.OS - room_controls.exe
It controls the room/world settings:
- Grid color picker
- Grid visibility toggle
- Floor color picker
- Floor visibility toggle
- Sky mode selector
- Location retry button
- Blank World quick toggle
The Blank World toggle hides both the grid and floor together. When the floor is hidden, the window reflection is also hidden so the scene does not leave a disconnected reflection behind.
Camera And Interaction
The preview keeps the existing immersive interaction behavior:
- Mouse wheel zoom on desktop
- Pinch zoom on mobile
- Dragging shifts the viewport/camera feel
- Windows keep facing the camera
- Clicking the experiment window pulls it toward the camera
- The 3D world continues moving in the background
Important Files
immersive-world.js- Main world behavior, sky logic, camera movement, WebGL uniforms, room control panel logic, reflection behavior.
immersive-world.css- World styling, experiment window styling, room controls window styling, responsive control panel placement.
experiment-101.js- Loads and manages the first experiment inside the main RawmWare window.
build-immersive-preview.cjs- Rebuilds the final standalone
immersive-window-preview.html.
immersive-window-preview.html- Generated preview output.
experiments/101.original.html- Preserved original experiment source.
Verified State
The latest build was run successfully with:
node build-immersive-preview.cjsJavaScript syntax checks passed for:
node --check immersive-world.js
node --check experiment-101.js
node --check build-immersive-preview.cjsThe browser preview was visually checked after implementation. The default state at the end of the session was:
- Live sky selected
- Grid visible
- Floor visible
- Experiment window visible
- Room controls window visible
- Blank World off
- Green wire grid restored
- Reflective floor restored
Known Notes
The live sky currently uses browser geolocation/timezone plus a procedural sky. The earlier idea of showing the real sky through Google Maps or Google Earth was discussed as a future direction, but it has not been implemented. That would require a separate integration path, credentials/API setup, and careful attribution handling.
The room controls window slightly overlaps the main experiment area on some viewport sizes, but it is usable and matches the current retro-floating window direction.
One browser console error was observed around a MutationObserver.observe call. The main preview and controls continued to work visually. If that becomes a visible bug, the next step is to trace whether it comes from the embedded p5 experiment iframe or another observer in the generated output.
Suggested Next Steps
- Refine room controls placement so the control panel feels intentionally staged beside the experiment window on desktop and mobile.
- Add more experiment windows from the GitHub animation repo.
- Decide whether each experiment window should have its own mini title, controls, and magnet behavior.
- Add saved room presets so the world can remember colors, sky mode, and blank world state.
- Explore the Google Maps or Google Earth live-sky concept as a separate prototype.