r/GaussianSplatting
Ladybugs on a cut rose stem - macrodiorama
Another in my macro diorama series - this time 3 ladybugs (ladybirds here in the UK), on a cut rose stem. Interactive 3d - https://superspl.at/scene/b2461a1d
Why does my Gaussian Splatting look terrible with LiDAR data?
I’m trying to use Gaussian Splatting with LiDAR-generated data, but the results are honestly pretty bad compared to the same dataset but with computer generated COLMAP data.
I’m using Lumina 3D Light to generate the dataset data on an iPhone 17 Pro Max, but the exact same dataset without the COLMAP data gives a much better and actually usable result, as you can see in the video.
Am I doing something wrong with Lumina 3D Light? Has anyone else experienced this?
PS: the COLMAP data is generated in Postshot, not in RealityCapture.
I trained this indoor Gaussian scene using pure vision only, and the result gave me a whole new perspective on what’s possible with 3DGS.
You can view the Gaussian Splatting result here: https://superspl.at/scene/9d370db9
I built a web viewer that lets you walk through real captured spaces in VR — just by opening a link. No app needed.
You've probably seen Meta's Hyperscape — the app that lets you walk through photorealistic 3D scans of real places. It looks incredible. But it's a closed system. You can only access it through their app. You don't get the files. You can't embed it. You can't share it outside Meta's ecosystem.
https://reddit.com/link/1tj0r6d/video/kgeq2t2m9g2h1/player
I wanted to build something that does the same thing — but open. Any device. Anywhere. Just a link.
What it does:
• Open a link on your Quest → you're standing inside a real captured space
• Walk around with full VR locomotion — not just looking around, actually moving through the space
• Teleport to different points in the scene
• Collision detection — you can't walk through walls or furniture, it feels real
• Snap turning for smooth navigation
• Same link works on your phone, laptop, tablet — any device with a browser
What surprised me:
• Quest browser handles it better than expected — the bottleneck is GPU, not the browser
• The same URL works everywhere — no separate VR build, no "VR version"
• WebXR is solid enough for real experiences, not just demos
How it compares to Hyperscape:
• Hyperscape: Closed ecosystem, app only → This: Open, any browser
• Hyperscape: Quest 3/3S only → This: Any device
• Hyperscape: No access to your files → This: Your files, your server
Try it on your Quest:
- Open the browser on your Quest
- Go to: https://mirador3d.com/en/v/tufia-test
- Click the VR button
- You're standing in a village in Gran Canaria
- Use the controller to teleport and walk around
Same link works on your phone if you don't have a headset handy. Happy to answer questions.
Berries!
I captured a bunch of berries last week. You can download and use them as you wish.
I'm also releasing the COLMAP dataset I used for training. They have an alpha mask, the point cloud was artificially distributed. They are a tricky set to get good reflection / specular (especially the straw / blackberry). If you're working on this, please give it a go! Let me know any tricks. 😁
(Do keep in mind that this set was focus stacked)
Train Splats to be sharper?
My Splats never really come out sharp. Edges are blurry, slight mismatches, etc.
The dataset however, couldnt be any sharper. It is captured with a DJI Avata 360. 8K Spherical images. Even if I capture with my phone in still, careful images, gaussians turn out..not sharp.
Am I doing something wrong?
I am experimenting with Postshot, Brush and Lichtfeld, the results are never really what you see and find on supersplat, where scans are incredibley sharp and clear. With no floaters and noise, etc.
Where do people think Splatting technology will be in 5 -10 years?
Are feed forward models really the future? Are we going to get real time 4DGS training and streaming? Will we have more generative splats?
Seeing how fast this tech is moving is really cool, I’m curious what people think will be the big inflection points for it to get wider consumer adoption.
Let me hear your wildest snd unrealistic takes and hopes and dreams, and any you think are actually grounded in reality.
Currently I’ve been researching into some LiDAR tech, and seeing something like the Ouster Rev8 get released makes me wonder if depth estimation models are going to be used in the future if more LiDAR + RGB cameras get adopted into consumer hardware.
I record frozen-frame scenes from Black Myth: Wukong and then train them into Gaussian Splatting models.
Here is the 3D model view: https://superspl.at/scene/f5142902
GaussFusion: Improving 3D Reconstruction in the Wild with Geometry-Informed Video Generator
research.zhuliyuan.netGaussian splats advanced help
Hey everyone,
Been messing with splats here for a little bit when i can. I want to learn more.
I see people make amazing things on here.
Im wondering what everyone is capturing their splats on and whats the best softwares they’ve been using?
If this list already exists somewhere lmk
Thank you
I built a web-based Gaussian Splatting viewer that runs on a €200 Android phone — here's what I learned
Hey everyone. I've been working on a web-based Gaussian Splatting viewer for the last few months and wanted to share some findings.
Make a viewer that works on any device, including budget phones, without plugins or native apps.
- SparkJS 2.0 for rendering
- Progressive streaming via chunked RAD files
- HTTP Range requests from Cloudflare R2
- Adaptive quality system that detects GPU capabilities in real-time
Real-world results (tested on actual devices):
| Scene | Desktop (RTX 3070) | Xiaomi 15 Ultra | Redmi Note 11 (€200) |
|---|---|---|---|
| Tufia (8.5M splats) | 60 fps | 55 fps | 40 fps |
| XGrids Demo (12M) | 60 fps | 45 fps | 30 fps |
| 50M splats | 60 fps | 25 fps | 15 fps |
| 100M splats | 55 fps | 15 fps | 8 fps |
What I got wrong:
1. Optimized too early. Spent weeks on custom compression before realizing `build-lod --rad-chunked --max-sh=3` already hit the sweet spot. The tooling is better than I expected.
2. Ignored the data problem. Users were uploading raw 500MB PLY files and wondering why nothing loaded. Had to build the conversion step into the workflow.
3. Assumed all phones are equal. They're wildly different. The adaptive quality system exists because of this mistake.
What I learned:
- Streaming > monolithic files. Progressive loading changes the UX entirely.
- `--max-sh=3` is the sweet spot for mobile. Higher SH bands have diminishing returns on small screens.
- The web is underrated as a platform for this. More people can click a link than download an app.
Happy to answer questions about the technical details. Live demo:
https://mirador3d.com/v/penthouse-demo
Yard with trees, 120 spherical video stills done with a insta360 rs 1 inch edition , cut into +/-2000 photos.
One of my first not-too-bad result for such a large scale and limited images. 5 foot perch.
Colmap for tracking and gsplat for training, 50k steps. It gave me 1.2M splats, cleaned to about 500k.
Quick Gaussian Splat Editor 10-9
Quick Gaussian Splat Editor 10-9
1. "Low Mode" Optimization (Performance)
Implemented an aggressive culling engine directly within the Shaders. Activating "LOW" mode forces the pipeline to discard splats falling below specific opacity or scale thresholds. This yields massive frame-rate improvements in heavy scenes while maintaining the integrity of the core structural geometry.
2. Per-Layer Opacity Control
Integrated individualized opacity sliders per layer. Blending calculations are processed in real-time on the GPU, enabling surgical precision when cross-fading or mixing distinct splat models.
3. Clone & Print (Experimental)
- Clone: A selection-based duplication tool designed to isolate and extract specific regions of a model into dedicated layers.
- Anchor System (A, B, C, D): Establishes a spatial reference surface/plane.
- Print Surface: A topographic deformation algorithm. It translates the source geometry toward the anchors while preserving high-frequency scan details.
- Print Sliders: Provides full control over the deformation influence and falloff gradient configuration (intensity and distance) to smoothly interpolate the edges of the deformed zone.
4. Restorer Section
A new dedicated module for data recovery and texture mapping. This feature allows users to "paint-restore" corrupted or deleted areas, or project external imagery directly onto the point cloud/splat structure.
5. Projection
- Projection: An attribute transfer system (color and position) utilizing local planar projection from the anchors onto the splat surfaces.
6. SOG Export
- New SOG (Splat Object Group) Format: A proprietary export format that encapsulates all layers, anchors, and project metadata, ensuring seamless session state recovery.
I shouldn't be allowed around technology. Gaussian Splat Selfie
I did a quick 1min scan of myself using my Revopoint Pop 4 beta unit. I was wondering what would happen if I stared directly at the RGB camera while scanning. Can't say I'm disappointed.
Lumina 3D 2.2 Update - iPad Pro Support - 4K Capture
Available May 20 at 1am UTC +2 Berlin
What’s new:
• 4K ARKit Image Support
Higher quality image capture for cleaner datasets and better reconstruction results.
• Tracking Recovery Guide
Helps recover AR tracking by guiding users back to the last stable scan position instead of restarting the scan.
• Experimental 20 Meter Depth Range
Extended LiDAR range for larger outdoor and indoor environments. Still experimental and being improved.
• Faster Capture + Saving
Reduced processing delays for a smoother scanning workflow.
• UI & Workflow Improvements
General usability, stability and capture workflow refinements.
• iPad Pro Support (M1 / 2021+)
Optimized support for newer iPad Pro devices.
Download:
Lumina 3D: https://3d.deluva.de/index.php?lumina_app=1
Lumina 3D Light: https://apps.apple.com/de/app/lumina-3d-light/id6767272286
Upcoming:
• RealityScan Export Support
Direct CSV + LAS export pipeline with ARKit camera poses.
• External Photogrammetry Integration
Use Lumina scans as a spatial base for DSLR and drone image alignment workflows.
• Auto Magic Capture Mode
Lumina automatically analyzes the scene, calibrates the camera for optimal scan quality and locks settings such as:
• shutter speed
• ISO
• white balance / Kelvin
• exposure behavior
This helps create more stable and photogrammetry-friendly datasets directly from mobile capture.
Long term goal:
Making high quality LiDAR + photogrammetry workflows accessible directly from mobile devices while remaining compatible with professional reconstruction pipelines.
Big thanks to everyone testing the app, sharing feedback, reporting issues and helping improve Lumina 3D
Question About PortalCam
I know many apps can read LCC format, but is it possible to export a PLY file that can be read by other apps?
Gaussian Splatting meets psychotherapy - is my approach possible?
Hi!
I’m a cognitive behavioral psychotherapist working with VR exposure therapy for anxiety disorders since 2019. Until now I created custom 360° exposure videos for treatment purposes. I'm following this sub for quite a while now as I see a lot of potential in gaussian splatting for this matter but I have never tried a workflow myself.
My current Goal:
Create a VR exposure scene for emetophobia (fear of vomiting):
real 360° bathroom environment (just regular 360 capture or maybe a gaussian splat?)
AI-generated person vomiting into a toilet (no gore)
exported as a VR-compatible 360° video/ splat
viewed on Meta Quest 3 and/or HP Reverb G2
Current setup:
Hardware
Insta360 X4
MSI Raider A18 HX A9WIG-080 (Amd processor, nvidia 5080, 64GB Ram)
Quest 3
HP Reverb G2
Software
Adobe Premiere Pro / Insta 360 Studio
Maybe:
klingai.com?
runwayml.com?
Planned workflow:
Record a real 360° bathroom scene with the Insta360 X4
Generate the vomiting person using AI video tools
Remove the AI video background
Composite the AI character into the 360° footage in Premiere Pro using VR Plane to Sphere
Export as a VR-ready 360° video/splat for Quest 3 / PCVR
My question:
Does this workflow seem solid enough? Is it even possible to put an animated person into a gaussian splat - or are there better approaches currently available?
I'd be happy for any advice!
If my post violates sub rules please let me know and I will delete it asap.
Linked two Gaussian Splat scenes with a walk-through portal — no teleport, you just walk between worlds
I wanted to see if you could connect two Gaussian Splat scenes through a portal you can physically walk through — no teleport, no cut, just continuous motion between two captured environments. Turns out it works pretty cleanly.
Runs entirely in the browser (WebGL2 / WebGPU), built in PlayCanvas.
Try it live: https://engine-8q342hfzj-playcanvas.vercel.app/#/gaussian-splatting/splat-portal
A few things I liked about how it came together:
- Two LOD-streamed splat scenes (a Roman parish + a skatepark), seen through a stone archway acting as the portal.
- Crossing the portal plane swaps which world you're "in" — and the same physics works symmetrically from either side, so you can walk back the way you came.
- The world you're in stays fully visible around you; the other one only shows inside the portal opening, with a proper "window" feel (no peek-around clipping).
- Subtle translucent glass inside the opening picks up specular highlights from the environment.
- The skatepark side has its own weather — procedural snow that's only visible while you're actually there (or peeking through).
Source for the example (PlayCanvas engine repo): https://github.com/playcanvas/engine/pull/8738
First-person + third-person walking demos inside a Gaussian Splat scene (PlayCanvas, runs in the browser)
I just landed two new examples in the PlayCanvas engine that let you walk around *inside* a real Gaussian Splat scan — both first-person and third-person, with proper collision against the scene.
### Try them yourself
- 🚶 First-person walk: https://engine-cmbu8r47z-playcanvas.vercel.app/#/gaussian-splatting/first-person
- 🕺 Third-person with animated character (press **Q** to dance): https://engine-cmbu8r47z-playcanvas.vercel.app/#/gaussian-splatting/third-person
Controls: **WASD** to move, **Shift** to sprint, **Space** to jump, **Mouse** to look / orbit, **Scroll wheel** to zoom (third-person only).
### What's in it
- A new reusable **third-person camera controller** (`scripts/esm/third-person-controller.mjs`) modelled after the existing FPS controller. Handles:
- Orbit camera with mouse + gamepad + touch
- Wall-collision avoidance via raycast, smoothed so it doesn't pop
- Scroll-wheel zoom (smoothed, clamped)
- Configurable initial pitch, min height above character, look invert, sensitivity, damping for every axis
- Fires `speed` (0/1/2 → idle/walk/jog) and `jump` events that consumers wire into an anim state graph — no coupling to the anim system
- First-person example: capsule character + `FirstPersonController`, jumps, sprints, walks the gsplat
- Third-person example: bitmoji character, full anim state machine (idle / walk / jog / jump / dance) driven by the controller events, env-atlas IBL ambient (skybox layer disabled so the splat is the visible background), shadow catcher that follows the character on the ground via a downward raycast
### How the collision works
The "ground" is the Gaussian Splat (visual only), and physics happens against a hidden mesh GLB loaded alongside it:
- The collision mesh was **generated directly from the splat** using **splat-transform**.
- Then simplified down to **~1 MB** with https://polyforge.xyz/optimize so Ammo's BVH builder can handle it (huge meshes will OOM the WASM heap).
### Credits
Huge thanks to **zeitgeistarchivescans** for the gorgeous *Sunnyvale Heritage Park Museum* scan (CC BY 4.0):
https://superspl.at/scene/d5d397aa
### Source / PR