playcanvas/supersplat-viewer
User-friendly, high-performance viewer for 3D Gaussian splats
SuperSplat Viewer – 빠른 개요
설명 – SuperSplat 3D 장면(Gaussian-splatting 포인트 클라우드)을 위한 웹 기반 뷰어입니다. 단일 정적 사이트로 실행되며 PlayCanvas 엔진과 WebGPU 또는 WebGL을 사용하여 렌더링합니다.
중요성 – Gaussian-splatting은 초고밀도 3D 재구성(예: 사진 측량, NeRF 스타일 캡처)을 시각화하는 현대적인 방법입니다. 이 뷰어를 사용하면 개발자와 아티스트가 브라우저에서 직접 장면을 로드, 탐색 및 디버그할 수 있으며 WebGL을 통해 AR/VR을 지원합니다.
핵심 기능 (README 설명 기준)
| 기능 | 세부 정보 |
|---|---|
| 렌더링 백엔드 | WebGPU 사용 가능 시 WebGPU를 사용하며, 그렇지 않으면 WebGL로 대체됩니다. AR/VR에는 WebGL이 필수입니다. |
| 확률적 렌더러 | 실험적인 비정렬 splat 렌더러(WebGPU 전용)로 개발자용 조정 노브(splatSource, variant)를 제공합니다. |
| URL을 통한 UI 제어 | 사용자 지정 설정, 장면 파일, 스카이박스, 충돌 메시를 로드하고 UI 가시성(noui, reticle, ministats, 언어)을 조정합니다. |
| 성능 조정 | 안티앨리어싱(aa), splat 예산, 고정밀 렌더링 토글, 전체 로드 LOD 스트리밍, 포스트 이펙트 토글(nofx). |
| 디버그 및 진단 | 디버그 패널(debug), 복셀 충돌 히트맵 오버레이, 런타임 CPU/GPU 그래프. |
| 임베딩 API | NPM 모듈(@playcanvas/supersplat-viewer)로 패키징되어 프로그래밍 방식 제어를 위한 API 참조를 제공합니다. |
| 로컬 개발 | 간단한 Node 기반 워크플로우(npm install, npm run develop). ENGINE=debug를 통해 PlayCanvas 엔진 디버그 빌드에 연결할 수 있습니다. |
사용 방법
- 데모 실행 – 호스팅된 정적 사이트(또는 로컬에서
npm run develop)를 열고 URL 매개변수를 전달하여 자신의.ply,.sog또는 압축된 장면 파일을 지정합니다. - 사용자 지정 –
settings.json파일, 스카이박스 이미지 또는 충돌 메시를 제공하여 장면을 풍부하게 만듭니다. - 임베딩 – NPM 패키지를 설치하고 문서화된 API(
docs/api.md)를 사용하여 뷰어를 다른 웹 앱에 통합합니다.
추천 대상
- 3D 콘텐츠 제작자:Gaussian-splatting 파이프라인을 사용하며 결과를 빠르게 미리 보아야 하는 분.
- 개발자:고밀도 포인트 클라우드 렌더링이 필요한 웹 기반 AR/VR 경험을 구축하는 분.
- 연구원:사용자 지정 엔진을 작성하지 않고 새로운 렌더링 기술(확률적 splat, LOD 예산)을 테스트하려는 분.
빠른 시작
# 클론 및 로컬 실행
git clone https://github.com/playcanvas/supersplat-viewer.git
cd supersplat-viewer
npm install
npm run develop # http://localhost:3000 열기
그런 다음 URL 매개변수를 추가합니다. 예:
http://localhost:3000?content=./myScene.compressed.ply&skybox=./sky.hdr&webgl
결론 – SuperSplat Viewer는 최첨단 Gaussian-splat 3D 데이터를 브라우저에서 시각화하기 위한 집중적인 오픈 소스 도구로, 유연한 렌더링 옵션과 개발자 친화적인 API를 제공합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트