SparkSplat-Viewer / README.md
Jeprary
fix: change url param to model to avoid vite intercept
4effff3
|
Raw
History Blame Contribute Delete
2.51 kB
metadata
title: SparkSplat
emoji: 🚀
colorFrom: blue
colorTo: purple
sdk: docker
pinned: false
app_port: 7860

SparkSplat

SparkSplat is a fast, interactive, and professional multi-file 3D Gaussian Splatting viewer and sandbox environment.

Unlike traditional static viewers, SparkSplat retains the power of a fully-fledged 3D engine right in your browser. Powered by the incredibly fast Spark engine for high-performance WebGL Gaussian Splat rendering, it comes out-of-the-box with rigid body physics (@react-three/rapier), first-person character controllers, and a robust placement editor for creating dynamic and interactive 3D sandboxes.

Features

  • Universal Format Support: Natively supports uncompressed and compressed Gaussian Splat formats including .ply, .spz, .splat, .ksplat, and .sog.
  • External URL Loading (Cloud Ready): Pass any direct link to a model via the URL query parameter ?url=YOUR_SPLAT_LINK (e.g., from Hugging Face Datasets or AWS S3). SparkSplat will instantly stream and render the remote model with a beautiful download progress UI, bypassing the need for local storage.
  • Drag-and-Drop Local Storage: Simply drag your splat files directly into the window. SparkSplat will automatically save them to your local models/ directory and load them instantly for fast iteration.
  • Interactive Sandbox: Walk through your splats with a built-in character controller, place 3D objects (.glb, .obj), and edit the scene physics dynamically.
  • Standalone and Lightweight: No heavy Python AI generation pipelines required. SparkSplat is fully decoupled and works universally with any valid Gaussian Splat file.

Quickstart

  1. Install dependencies:

    cd app
    npm install
    
  2. Start the local development server:

    npm run dev
    
  3. Open your browser to the local URL (typically http://localhost:5173).

  4. Usage Options:

    • Local: Drag and drop any .ply, .spz, .splat, .ksplat, or .sog file into the window to begin exploring!
    • Remote: Just append ?model=[URL] to load an external model:
https://huggingface.co/spaces/Junyueeeeee/SparkSplat-Viewer?model=https://huggingface.co/datasets/Junyueeeeee/SparkSplat_Model/resolve/main/my_model.ply

License

This project is licensed under the MIT License. See LICENSE.md for the project license, and THIRDPARTY.md for third-party open source notices.