SparkSplat-Viewer / README.md
Jeprary
fix: change url param to model to avoid vite intercept
4effff3
|
Raw
History Blame Contribute Delete
2.51 kB
---
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](https://github.com/sparkjsdev/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:
```bash
cd app
npm install
```
2. Start the local development server:
```bash
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](LICENSE.md) for the project license, and [THIRDPARTY.md](THIRDPARTY.md) for third-party open source notices.