How to Use Gaussian Splats in Unity
Turning photos or prompts into explorable 3D worlds is easier than you think when you combine Gaussian splatting workflows with Unity. This guide walks you through a practical, instructor-led path to go from source imagery, through Marble3D's photo- or text-to-3D pipeline, into a working Gaussian splatting scene inside Unity. If you’re a game dev, 3D artist, architect, or indie creator looking to prototype walk-throughs from photos or prompts, you’ll finish with a playable Gaussian-splat scene that can be refined and brought into your existing toolchains. Along the way, you’ll see how Marble3D powers the photo-to-3D workflow and how Unity players and developers can leverage Gaussian splatting for fast, explorable worlds.
gaussian splatting unity is at the core of modern, browser-friendly or engine-based 3D scene creation. Marble3D specializes in turning photos (up to eight views of the same scene, a single image, or a panorama) or a text prompt (up to 2,000 characters) into a navigable 3D world in the browser, with downloadable assets that integrate into major DCCs and engines. This guide demonstrates a practical path to using those Gaussian splats in Unity, while keeping the focus on value-first learning and practical outcomes. The Marble3D playground illustrates the broader idea: you describe or submit imagery, and the system carves a real 3D world you can walk through. For readers new to Marble3D, the service operates on a simple subscription model, with a clear download pathway and assets that drop into common 3D ecosystems. The approach here is designed to help you pair Marble3D’s photo- or text-to-3D pipeline with Unity’s real-time capabilities, with Gaussian splatting as the underlying representation.
Section 1: Prerequisites & Setup

Prerequisite Overview
Before you begin, make sure you have the right setup so you can smoothly move from source to Unity. The focus of this guide is on practical steps you can execute in a typical indie or studio workflow, with Marble3D as the entry point and Unity as the target environment for real-time exploration.
Required tools
- A computer with Unity installed and a basic understanding of Unity’s interface and project structure. If you’re new to Unity, you’ll want to follow a beginner-friendly setup to create your first scene, add a camera, and place a simple player controller. The core goal here is to get a Gaussian splat asset from Marble3D into Unity and render it in a scene that players can walk through.
- Access to Marble3D, including a Marble3D account and an active subscription. Marble3D is an independent product operated by Enception AI and is not affiliated with World Labs or its Marble product, but it provides a browser-based playground that turns photos or prompts into explorable 3D worlds. The platform offers previews and downloads in the playground, including Gaussian-splat scene files (.spz) in three sizes, a collision mesh (.glb), a high-quality mesh, and the panorama image. You can sign in and create worlds in the Marble3D playground for a monthly fee of $10, with up to 20 generated worlds per month. Previews and downloads are free. See the Marble3D homepage for the exact download options. (https://marble3d.ai/)
- A basic understanding of Gaussian splatting concepts and their role in real-time rendering. The Gaussian splatting paradigm is well established in the research and industry community as a way to render complex scenes with many small, conjunctional spherical primitives that approximate a richer surface representation. While there are multiple implementations and toolkits, the core idea is that a cloud of Gaussian spheres can represent geometry and appearance, allowing real-time exploration once rasterized. For Unity, there are open-source and commercial explorations of Gaussian splatting assets and renderers you may leverage. (github.com)
Accounts, licenses, and access
- Marble3D account: essential for generating Gaussian-splat worlds from photos or prompts and for exporting assets into Unity (or other engines). Sign in, subscribe, and you’ll be able to create Worlds in the Marble3D playground. The price is $10 per month, and the playground offers previews and downloads for the generated world, including .spz files in Lightweight, Standard, and Full detail sizes, a collision mesh (.glb), a high-quality mesh, and the panorama image.
- Unity project basics: while you will be importing a Gaussian-splat asset, a working Unity project with a scene, a camera, a light, and a player controller will help you test the walk-through experience early in the process.
Knowledge prerequisites
- A basic grasp of 3D concepts, including geometry, textures, and lighting, will help you understand how Gaussian splats map to a scene’s look and feel.
- Some familiarity with importing external assets into Unity will speed up your workflow, since Marble3D downloads provide several assets that Unity can use.
Section 2: Step-by-Step Instructions
Step 1: Decide on your source material
What to do
- Decide whether you will feed Marble3D a photo (or a handful of related views) or a short text prompt to generate your Gaussian-splat world.
- Prepare a high-quality source image (or a brief prompt) that conveys the key mood, architecture, or landscape you want to explore in Unity.
Why it matters
- Marble3D’s core model carves a world from your input, turning it into geometry you can walk through, with lighting and materials that reflect the input source. The pipeline is designed so that “Bring a photo, or just words” becomes a real navigable environment. This step sets the foundation for the kind of world you’ll bring into Unity and how faithful (or stylized) it will feel in your final scene. (https://marble3d.ai/)
Expected outcome
- A clear choice between a photo-based world or a text-prompt-based world ready for generation in Marble3D.
Common pitfalls to avoid
- Don’t over-promise on photo fidelity from a single image; Marble3D can generate navigable 3D geometry, but the final look will depend on input quality and the model’s carving process.
Step 2: Create your Marble3D world
What to do
- Sign in to Marble3D and start a new session. Input a photo (or a paragraph of text) as your brief.
- Let Marble3D carve the world, refining through chat or by adjusting prompts as needed.
Why it matters
- This is the core creative step: Marble3D converts your input into a geometry-rich 3D world with light, materials, and spatial relationships. By using a real photo (or precise descriptive text), you guide the model toward a specific look and layout that will translate well into Unity. The Marble3D interface explicitly supports this process: input, carving, and walk-through in-browser, with downloads available in the playground. (https://marble3d.ai/)
Expected outcome
- A completed Gaussian-splat world ready for download in assets suitable for Unity.
Common pitfalls to avoid
- If you’re working with a long or highly detailed prompt, consider chunking it into focused phrases or adding constraints to steer the carving toward your intended scene structure.
- If your source image lacks depth cues or clear geometry, you may need to iterate with a different photo or add a descriptive prompt to help guide the model.
Step 3: Export your Marble3D world for Unity
What to do
- From Marble3D, download the Gaussian-splat world assets that fit your Unity workflow: a .spz file (Lightweight, Standard, or Full detail), a collision mesh (.glb), a high-quality mesh, and the panorama image.
- Use the collision mesh and high-quality mesh as needed alongside the .spz world for your Unity workflow.
Why it matters
- Unity can import a variety of formats, and Marble3D provides downloads that are useful for iteration in Unity. This step provides a clean payload for your Gaussian-splat world. The Marble3D page notes the available downloads in the playground and the ability to preview and download them for free. (https://marble3d.ai/)
Expected outcome
- A ready-to-use asset set that you will bring into Unity to build your Gaussian-splat scene.
Common pitfalls to avoid
- If you export in a format not natively supported by your Unity version, you may need to install an importer or convert the asset to a compatible format. Always verify import compatibility in your Unity project before importing.
Step 4: Set up a Unity project for Gaussian splats
What to do
- Create a new Unity project or open an existing one where you want to integrate the Gaussian-splat world.
- Import the Marble3D downloads into your Unity project. Place the assets in a suitable folder and set up a basic scene with a camera, lighting, and a playable character controller or a simple WASD camera rig.
- If you want to render Gaussian splats directly in Unity, explore a Unity plugin or open-source approach that supports rendering Gaussian splats. Aras Pranckevičius’s Unity Gaussian Splatting project is a widely referenced playground for visualizing Gaussian splats inside Unity and can serve as a starting point for your integration. (github.com)
Why it matters
- Unity’s real-time rendering pipeline can host Gaussian-splat geometry, but you’ll need the right renderer to interpret the data or use a mesh-based workflow alongside the .spz download. The collision mesh and high-quality mesh can help you build out the scene for interaction.
Expected outcome
- A Unity scene that contains the imported world assets, with basic lighting, a camera, and a player controller.
Common pitfalls to avoid
- Import compatibility: ensure your Unity version supports the asset format you downloaded from Marble3D, or use a compatible importer/renderer.
- If you use a splat-based workflow, you may need a dedicated Gaussian-splat renderer or plugin in Unity. The Unity Gaussian Splatting playground provides a baseline for how to visualize these assets inside Unity. (github.com)
Step 5: Bring Gaussian splats to life with a Unity renderer What to do
- If you’re using the mesh downloads from Marble3D, you can use Unity’s standard rendering to bring the geometry to life, then refine materials, lighting, and post-processing to achieve the look you desire.
- If you want to work directly with the .spz Gaussian splat data, you can utilize a Unity solution for rendering Gaussian splats. The Unity Gaussian Splatting playground demonstrates a practical approach to real-time splatting within Unity. (github.com)
- For researchers and developers who want a hands-on start, Aras Pranckevičius’s Unity Gaussian Splatting playground demonstrates the core concept of loading a Gaussian-splat asset in Unity and rendering it with a dedicated Gaussian splat renderer. This is a helpful reference implementation if you aim to extend or customize the integration. (github.com)
Why it matters
- Rendering Gaussian splats inside Unity unlocks real-time exploration and interaction with the world derived from Marble3D. This step is where you transition from a static asset into a walkable, explorable experience, with the flexibility to adjust shading, lighting, and interactivity to suit your project.
Expected outcome
- A functioning in-engine representation of your Marble3D world, ready for gameplay testing and tweaks.
Common pitfalls to avoid
- Rendering fidelity vs. performance: Gaussian splats can require significant GPU work at higher detail levels. Start with moderate asset quality and iterate, monitoring FPS in your target hardware. Industry and research references discuss the performance characteristics of Gaussian splatting in Unity and related engines, and it’s sensible to start with a conservative quality setting. (github.com)
Step 6: Build a walk-through experience
What to do
- Add a playable camera or character controller to navigate the Gaussian-splat world. Ensure collision geometry is in place so players don’t clip through surfaces (Marble3D downloads include a collision mesh (.glb) you can use in Unity alongside the world assets).
- Create a simple level objective or a route through the world to demonstrate the exploration. For example, set up a first-person or third-person controller and design a path that showcases key vistas or interactions in the Gaussian-splat scene.
Why it matters
- A walk-through demonstrates the end-to-end pipeline: input (photo/prompt) → Marble3D carving → download → Unity rendering → playable exploration. It also provides a concrete, testable deliverable you can show teammates, clients, or collaborators.
Expected outcome
- A playable Gaussian-splat scene inside Unity that you can walk through, inspect, and adjust.
Common pitfalls to avoid
- Overlooking performance constraints: if your scene becomes choppy, simplify geometry or adjust lighting and shadows to suit the target platform.
- Neglecting user comfort in navigation: ensure you have a comfortable camera speed and collision handling to avoid a disorienting user experience.
Step 7: Polish, test, and finalize
What to do
- Tweak lighting, post-processing, and materials to achieve a visually pleasing look while maintaining performance. Run through the scene several times, testing different paths and viewpoints to identify opportunities to optimize rendering or adjust geometry.
- Validate export readiness: confirm that the final Unity scene can be exported or handed off to teammates, including any required additional assets and documentation.
Why it matters
- The polish step ensures your Gaussian-splat world is not just technically functional but also visually compelling and ready for integration into games, VR experiences, or architectural walkthroughs. The Marble3D approach emphasizes editable 3D worlds that can be downloaded from the playground, supporting a smooth handoff from concept to production. (https://marble3d.ai/)
Expected outcome
- A refined Unity scene featuring a Gaussian-splat world that looks good, runs smoothly, and conveys the intended mood.
Common pitfalls to avoid
- Rushing the polish: take time to adjust color balance, light direction, bloom, and ambient occlusion to get a cohesive look that matches the source imagery.
- Missing assets or documentation: ensure you’ve captured any extra materials that are essential for a faithful reproduction in Unity.
Section 3: Troubleshooting & Tips
Troubleshooting Gaussian Splats in Unity
SPZ loading issues
- What to do: verify that your Gaussian-splat data is correctly formatted and that your Unity project has the appropriate importer or runtime renderer to read the data. If you’re using a dedicated Unity solution for Gaussian splats, consult the documentation for asset loading steps and expected inputs.
- Why it matters: incorrect data formats or missing runtime support can prevent your splats from rendering, halting your workflow.
- Common pitfalls: mismatched data paths, missing metadata files, or incompatible Unity versions.
Export/import glitches
- What to do: double-check the download format chosen in Marble3D and ensure Unity’s import pipeline supports that format. If necessary, re-import using a widely supported asset in your workflow and try again.
- Why it matters: small inconsistencies in export options can lead to missing materials, broken UVs, or misaligned geometry.
- Common pitfalls: mismatched coordinate systems between authoring tools and Unity; scale mismatches causing objects to appear too large or too small.
Lighting and shading oddities
- What to do: experiment with lighting setups (directional lights, ambient light, skybox), and consider adding post-processing to fine-tune mood and realism. Gaussian splat rendering can be sensitive to lighting; subtle adjustments often yield better results.
- Why it matters: lighting dramatically affects perceived depth and material quality in Gaussian-splat environments.
- Common pitfalls: relying on a single light source; neglecting global illumination or reflection probes in the scene.
Performance optimization
- What to do: start with a mid-level asset quality and measure FPS on your target hardware. If necessary, reduce splat density, adjust shader complexity, and optimize LOD or culling settings.
- Why it matters: Gaussian splats are a powerful representation, but rendering many splats can stress GPUs, especially on VR or mobile targets.
- Common pitfalls: assuming higher detail always means better results; sometimes lower density with smarter shading yields a superior, smoother experience.
Pro Tips and Best Practices
- Document your workflow: maintain a short guide describing your steps from Marble3D input to Unity download use, so teammates can reproduce the pipeline consistently.
- Use screenshots in your notes: capture key moments (input, download, Unity import, first walk-through) to create a visual log for future projects.
- Leverage community tooling: explore Unity Gaussian Splatting playgrounds or GitHub projects as reference implementations to accelerate your own workflow. These projects illustrate how to load Gaussian splats in Unity, providing a practical starting point for your pipeline.
Section 4: Next Steps
Advanced Techniques and Extensions
- 4D Gaussian splatting and dynamic scenes: research and industry demonstrations (including 4D Gaussian splatting concepts) hint at time-varying splat representations for dynamic scenes. If you’re curious about temporal extensions, look into related research and demonstrations to understand how time can be embedded into splat representations for moving objects or evolving environments. Some open discussions and papers in the field discuss temporal extensions to Gaussian splatting and related rendering approaches. (openaccess.thecvf.com)
- Browser-to-Unity handoff and web viewers: Marble3D’s output can be used in web contexts or brought into Unity for gameplay experiences. If you want to showcase Gaussian splat worlds to non-Unity audiences, you can create browser-friendly previews or interactive web viewers that complement your Unity builds. The Marble3D playground emphasizes the browser-based exploration of the generated worlds, illustrating the breadth of deployment options for Gaussian splats. (https://marble3d.ai/)
Related resources and further reading
- Unity Gaussian Splatting in practice: open-source Unity projects and tutorials that demonstrate how to render Gaussian splats inside Unity. This community-driven work provides practical implementation details and example scenes to help you adapt for your own projects. (github.com)
- Real-time radiance fields and Gaussian splatting research: SIGGRAPH-era and later work on Gaussian splatting and related rendering techniques provide a theoretical foundation for the practical workflows described in this guide. If you want to dive deeper into the math and hardware considerations, the SIGGRAPH-era papers and modern follow-ups are a solid starting point. (github.com)
- Industry coverage and practical context: technology-focused outlets have discussed Gaussian splatting as a promising approach for photorealistic, real-time 3D scene representations, including browser-based viewers and engine integrations. This provides broader context for where Marble3D’s approach sits within the ecosystem.
Next steps with Marble3D
- If you’re ready to experiment with Gaussian splatting unity workflows, consider starting a Marble3D trial to generate a scene from a photo or prompt, then download the assets and iterate with the steps outlined above. Marble3D’s browser-based workflow—and its downloadable .spz scene files, collision mesh, high-quality mesh, and panorama image—offers a convenient bridge from concept to playable scene. The official Marble3D page provides the exact download options and pricing, ensuring you’re aligned with current capabilities. (https://marble3d.ai/)
Closing
You’ve learned a practical, actionable path to move from a source image or text prompt through Marble3D’s Gaussian splatting workflow and into a playable Gaussian-splat scene inside Unity. By following the prerequisites, downloading smartly, and using Unity’s rendering capabilities (and, when needed, dedicated Gaussian-splat renderers), you can build explorable worlds that flow from a simple input into a rich, interactive experience. As you continue to explore Gaussian splatting unity workflows, Marble3D remains a capable partner for turning photos or prompts into tangible 3D worlds you can walk through and refine.
Aisha Patel
Aisha Patel writes about 3D capture workflows: getting usable scenes out of ordinary phone photos, choosing the right views, and fixing the problems that show up when a photo becomes geometry.