Hacker Newsnew | past | comments | ask | show | jobs | submit | e8bai's commentslogin

Hi HN,

I built a web-based Gaussian Splat viewer that supports camera path recording and deterministic MP4 export.

The viewer loads .ply / .splat scenes and allows users to:

- Record camera keyframes (position + quaternion rotation) - Edit them in a draggable timeline - Scrub preview in real time - Export the animation to MP4

The export system renders offscreen frames using a dedicated WebGLRenderTarget and pipes raw frames to FFmpeg on a Node server.

A few design decisions that might be interesting:

• Keyframes are stored as immutable snapshots (vec3 + normalized quaternion). • Interpolation uses slerp to avoid rotation artifacts. • Paths can be saved to path.json and re-exported to produce identical output. • Export rendering is isolated from the visible canvas to avoid layout thrashing and UI jitter. • Added cancellation + progress reporting without corrupting partially written video files.

One challenge was GPU → CPU readback cost during frame extraction. Another was ensuring deterministic replay when the interactive viewer state differs from export state.

I’d appreciate feedback on: - Cleaner patterns for deterministic rendering in WebGL - Better ways to pipeline frame encoding - Architectural improvements for separating editor vs render state

Repo: https://github.com/iab131/Scene-Gaussian-Splat-Viewer Demo: https://youtu.be/EPXJpeUkBSA


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: