
Summary
MoodBloom.GS display a therapeutic digital garden captured utilizing Gaussian Splats.
Skills
Creative concept development
Gaussian splatting capture
UX Design
WebXR development (8th Wall) with Typescript
Project Overview
Concept development
Development
GS Capture
Team and role
Two-person collaborative project
Led concept development and creative direction
UX Designer
8th Wall Developer
Gaussian splats capture and cleaning
Timeframe
1 month

Full walkthrough video
Experience Link : https://sylvanshen.8thwall.app/moodbloomgsv2/
*Only the phone version is supported for now, please open the link on your phone
MoodBloom.GS started as our entry for Niantic's Real World Impact Challenge. I've always been fascinated by Gaussian Splats(GS) technology since discovering Luma's interactive scenes. Also after experimenting with WildGaussian and training Gaussian models from scratch using just images for a company project, I was hooked on exploring the possibilities of this rendering technique.
When we decided to pursue the Grand Splat Prize, we asked ourselves: "What can GS do that traditional 3D modeling just can't touch or recreate easily?"
The lightbulb moment hit when we saw how beautifully GS captures environments in different conditions—the way sunshine creates that perfect warm glow, how surfaces glisten after rain, and the soft, dreamy quality of light on cloudy days. This connected perfectly with the facts showing nature's profound impact on mental health and wellbeing.
MoodBloom.GS grew from there—a tool that helps people in urban areas connect with nature in a totally new way through these incredibly realistic captures. We added soothing ambient sounds to complete the sensory experience. It's become this accessible little mindfulness retreat that also helps people appreciate the green spaces we share in our communities.
Inspiration
Key Feature
Integrated Weather System: Smooth transitions between pre-captured Gaussian splat weather states (cloudy, rainy, sunrise, sunny, sunset) with responsive UI elements that lead to each weather scene, including tutorials and open play.
Virtual Tulip Growth: Tulip models with color variations and animations that respond to weather changes.
Ambient Soundscapes: Weather SFX and background music enhances immersion and supports wellness goals.
Dynamic Wildlife: Weather-specific animated creatures.
I used Niantic's Scaniverse app to capture the Gaussian Splats. Finding the perfect location was crucial—not too expansive or confined, but somewhere I could walk a full 360 degrees to capture all the intricate details. After testing several locations, I selected Bernie Spain Garden, a riverside community garden in London. It's near where I live so I could capture with convenience, and it's not usually crowded with people.
What I really appreciated about the Scaniverse app was its cleaning and editing functions. These tools allowed me to remove unwanted artifacts and significantly enhance both the visual quality and performance of the captured environments.
8th Wall Development
3D Assets
All of the 3D tulip models were generated using AI through a two-step process. I first created 2D images using Midjourney, then fed these into GenerateAnything to produce the 3D models. To ensure they performed well in the WebXR framework, I developed a custom Python script that compressed the models significantly without sacrificing visual quality.
Key Takeaways
Scanning is most effective when positioning the location/object on a focal point with a slow, natural pace
Variations make all the difference—capturing the same elements from different distances and angles creates richer data
Gaussian Splats are resource-intensive in WebXR frameworks. Files larger than 30MB can dramatically impact performance, which became a critical consideration when conceptualizing and designing our experience. We learned to be intentional about scope to maintain optimal performance
It was actually my first time using 8th Wall Studio, but I quickly got the hang of it by studying sample projects to understand how scripts are set up and integrated. Despite having limited TypeScript experience, I learned efficiently from examples and soon implemented scene transitions and state machine mechanics. In the 8th Wall environment, scenes are called "spaces," so I set these up and named each space after different weather states to manage transitions between Gaussian Splats.
I later discovered a useful feature that allows certain objects to persist across "spaces" by simply toggling an option. I used this to keep the camera persistent, which preserved the user's previous viewpoint for a more continuous experience.
Overall, as a first-time user, the 8th Wall editor wasn't difficult to learn thanks to its provided sample scenes. However, I recognize that to continue developing WebXR content, I'll need to strengthen my JavaScript/TypeScript foundations.
Result
We didn't receive any awards but I am proud of our idea and the work we've done! The project successfully demonstrated how emerging technologies like Gaussian Splats can be applied to create meaningful wellness experiences, and the process taught me valuable skills in WebXR development and working with photorealistic environmental captures. See our itch.io page.