Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kfarr/aframe-gaussian-splatting
Fork of aframe guassian splat to play with new features
https://github.com/kfarr/aframe-gaussian-splatting
Last synced: 2 months ago
JSON representation
Fork of aframe guassian splat to play with new features
- Host: GitHub
- URL: https://github.com/kfarr/aframe-gaussian-splatting
- Owner: kfarr
- License: mit
- Created: 2023-10-04T18:12:03.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2023-11-05T02:06:46.000Z (about 1 year ago)
- Last Synced: 2024-10-04T17:34:34.829Z (3 months ago)
- Language: JavaScript
- Homepage: https://kfarr.github.io/aframe-gaussian-splatting/
- Size: 152 MB
- Stars: 9
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## (fork of) aframe-gaussian-splatting
This is a fork of quadjr's a-frame gaussian splatting viewer component to play with some new ideas. I commit lots of junk in this repo that you probably don't want, so use the original repo for the splatting component: https://github.com/quadjr/aframe-gaussian-splatting
Branches of my WIP experiments:
* Compositing prototype: https://github.com/kfarr/aframe-gaussian-splatting/tree/splat-compositing
* barely working RC car prototype: https://github.com/kfarr/aframe-gaussian-splatting/tree/barely-working-driving****
## normal readme
This component is an A-Frame implementation of real-time rendering for [3D Gaussian Splatting for Real-Time Radiance Field Rendering](https://repo-sam.inria.fr/fungraph/3d-gaussian-splatting/).
This code is derived from the WebGL implementation developed by [antimatter15](https://github.com/antimatter15/splat).### Demo pages
Needs few seconds to load splats.
* Demo: https://quadjr.github.io/aframe-gaussian-splatting/
* Cutout demo: https://quadjr.github.io/aframe-gaussian-splatting/cutout-demo.html### Properties
| Property | Description | Default Value |
| -------- | ----------- | ------------- |
| src | url of splat or ply file | train.splat |
| cutoutEntity | selector to a box primitive that uses scale and position to define the bounds of splat points to render | |
| pixelRatio | Pixel ratio for rendering. Reducing the value decreases the resolution and improves performance. If a negative value is set, the device's native value will be applied. | 1.0 |
| xrPixelRatio | Same as pixelRatio. Applied to XR devices. | 0.5 |### Example custom scan to gaussian splat workflow
* Use a service such as https://lumalabs.ai/ to process a scan into splat (an alternative is https://poly.cam/)
* Go to download dialog and choose Gaussian > Splat (which will download a .zip file with .ply file inside)
* Convert the .ply to .splat in the browser using this site: https://splat-converter.glitch.me/ by @akbartus (repo https://github.com/akbartus/Gaussian-Splatting-WebViewers/tree/main/splat_converter)
* Use resultant .splat in the A-Frame scene with this component### Usage
#### Browser Installation
Install and use by directly including the file.
About the splat file, please refer [antimatter15](https://github.com/antimatter15/splat).```html
```
#### NPM Installation
Install via NPM:
```bash
npm install aframe-gaussian-splatting-component
```Then register and use.
```js
require('aframe');
require('aframe-gaussian-splatting-component');
```