3DGS Compression & Deploy
Compress and optimize 3D Gaussian Splatting models for web, mobile, and edge deployment.
Installation
- Make sure Claude is on your device and in your terminal.
Skills load from
~/.claude/skills/when Claude Code starts up β so you need it on your machine first. If you don't have it yet, install it once with the command below, then runclaudein any terminal to verify.One-time setupnpm i -g @anthropic-ai/claude-codeAlready have it? Skip ahead.
- Paste into Claude Code or into your terminal.
This copies the whole skill folder into
~/.claude/skills/3dgs-compression-deploy-jaccen/β the SKILL.md plus any scripts, reference docs, or templates the skill ships with. Safe default: works for every skill.Faster alternative (instruction-only skills)
Skips the clone and grabs only the SKILL.md file. Don't use this if the skill ships Python scripts, reference markdowns, or asset templates β they won't be downloaded and the skill will fail when it tries to load them.
Quick install (SKILL.md only)Sign up to copy - Restart Claude Code.
Quit and reopen Claude Code (or any other agent that loads from
~/.claude/skills/). New skills are picked up on startup. - Just ask Claude.
Skills auto-activate when your request matches the skill's description β no slash command needed. Trigger phrases live in the skill's own frontmatter; you can read them in the βWhat this skill doesβ section above.
Prefer to read the source first? Open on GitHub.
When Claude uses it
3DGS compression-to-deployment pipeline: quantization (scalar/VQ/mixed-precision), pruning (coreset/adaptive/variational/merge/Bayesian), progressive streaming & LoD, Web/WebGPU/mobile deployment, hardware acceleration (Tensor Core/GEMM/FPGA/ASIC), training-free semantic compression. Covers 53+ methods across 6 compression categories. Use when: compressing 3DGS models, deploying 3DGS to web/mobile/edge, selecting quantization bit-width, designing streaming pipelines, 3DGSεηΌ©/ιε/εͺζ/ι¨η½²/ζ΅εΌδΌ θΎ/η§»ε¨η«―/瑬仢ε ι.
What this skill does
3DGS Compression & Deployment
End-to-end pipeline from raw 3DGS model to deployed application. Covers 6 compression categories + 4 deployment targets + hardware acceleration.
Capabilities
- Analyze 3DGS model attributes (position, SH, opacity, scale, rotation) and recommend compression strategy
- Select quantization method and bit-width per attribute (scalar, VQ, mixed-precision)
- Design pruning pipeline (coreset, adaptive, variational, merge-based)
- Plan VQ codebook architecture and residual coding
- Architect progressive streaming and LoD systems (static and 4D dynamic)
- Guide platform-specific deployment (WebGL, WebGPU, iOS/Android, desktop)
- Evaluate hardware acceleration paths (Tensor Core, GEMM, FPGA, ASIC)
- Estimate compression ratio, quality loss, and rendering speed for each method combination
Compression Pipeline
Raw 3DGS Model
β
βΌ
[Step 1] Analysis ββ attribute profiling, bottleneck identification
β
βΌ
[Step 2] Strategy Selection ββ target platform β compression recipe
β
βΌ
[Step 3] Pruning ββ reduce Gaussian count (coreset / adaptive / variational / merge)
β
βΌ
[Step 4] Quantization ββ reduce per-attribute bit-width (scalar / VQ / mixed-precision)
β
βΌ
[Step 5] Vector Quantization ββ codebook-based attribute compression (optional, replaces/augments Step 4)
β
βΌ
[Step 6] Streaming & LoD ββ progressive loading structure for network delivery
β
βΌ
[Step 7] Deployment ββ platform-specific renderer and runtime
β
βΌ
Deployed Application (Web / Mobile / Desktop / Edge)
Step 1: Analysis
Profile the 3DGS model before selecting compression methods:
| Attribute | FP32 Size | Typical Range | Sensitivity to Quantization |
|---|---|---|---|
| Position (ΞΌ) | 12B/Gaussian | Scene bounds | High β direct geometry impact |
| SH (degree 0β3) | 48B/Gaussian | [-1, 1] per coeff | Medium-High β visual quality driver |
| Opacity (Ξ±) | 4B/Gaussian | [0, 1] | Medium β pruning signal |
| Scale (s) | 12B/Gaussian | [1e-5, 1e2] | Medium β anisotropy sensitive |
| Rotation (q) | 16B/Gaussian | Unit quaternion | Low-Medium β can tolerate 8-bit |
Profiling checklist:
- Total Gaussian count N and file size S
- Target platform constraints (memory budget, bandwidth, GPU capability)
- Quality floor (minimum acceptable PSNR/SSIM)
- Required FPS threshold
- Whether dynamic (4DGS) or static scene
Step 2: Compression Strategy Selection
Decision tree by target platform:
Target Platform?
βββ Web (WebGL/WebGPU)
β βββ Bandwidth-limited β Pruning + VQ + Streaming (CAGS/HGS pipeline)
β βββ Compute-limited β Aggressive pruning + low SH degree + Flux-GS
βββ Mobile (iOS/Android)
β βββ Real-time required β Mobile-GS pipeline (depth-aware OIT + distillation + pruning)
β βββ Quality priority β MesonGS++ (mixed-precision, budget-controlled) + NanoGS merge
βββ Desktop (GPU β₯ RTX 3060)
β βββ Max quality β Light quantization only (8-10 bit, ContextGS entropy coding)
β βββ Large scene β Pruning + Streaming + HiGS hierarchical tiles
βββ Edge / Embedded
βββ FPGA targeted β SpqGS (hardware-friendly quantization) + Axis-Shared Accelerator
βββ Low-power GPU β VEDAL pruning + 4-6 bit quantization + PocketGS on-device
Combined target table:
| Target | Typical Gaussian Budget | Bit-width Range | Streaming | Key Methods |
|---|---|---|---|---|
| Web | 100Kβ500K | 4β8 bit | Required | CAGS, StreamLoD-GS, Spark 2.0 |
| Mobile | 50Kβ200K | 4β8 bit | Optional | Mobile-GS, Flux-GS, PocketGS |
| Desktop | 500Kβ5M | 8β16 bit | For large scenes | MesonGS++, HiGS, gsplat |
| Edge/FPGA | 10Kβ100K | 2β6 bit | Required | SpqGS, VEDAL, GEMM-GS |
Step 3: Quantization
Method Selection
| Method | Type | Venue | Bit-width | Key Feature |
|---|---|---|---|---|
| MesonGS++ | Mixed-precision (post-training) | arXiv 2026 | 4β16 bit per attribute | 0-1 ILP hyperparameter search, 34x compression |
| GETA-3DGS | Joint pruning + quantization | arXiv 2026 | 4β8 bit heterogeneous | Render-aware saliency, QADG dependency graph |
| GSQ | Learned step size | CVPR 2025 | 4β8 bit | Group-wise quantization with learnable step |
| ContextGS | Context-model entropy coding | NeurIPS 2024 | 8β16 bit | Anchor-level context replaces uniform quant |
| SpqGS | Scalable parallel | CVPR 2025 | Hardware-friendly | Parallel bit allocation for FPGA/ASIC |
| SOG-GS | Channel-grouped | CVPR 2025 | Per-channel | Preserves inter-Gaussian correlations |
| ZipGS | Pruning + quant + entropy | CVPR 2025 | Variable | Volumetric entropy coding |
| GaussianCodec | Entropy-constrained | CVPR 2025 | Rate-distortion optimized | Learned codec with ECVQ |
| EAGLES | Quantized embeddings | ECCV 2024 | 8β16 bit | Coarse-to-fine training + pruning |
| TC-GS | Tri-plane representation | IEEE 2026 | Implicit via tri-plane | Replaces per-Gaussian SH with shared tri-plane |
Bit-width Selection Guide
| Attribute | 4β5 bit | 6β8 bit | 8β12 bit | 12β16 bit |
|---|---|---|---|---|
| Position | Edge only β visible artifacts | Mobile/Web acceptable | Desktop recommended | Lossless-range |
| SH (dc) | Not recommended | Edge/mobile | Desktop | High-fidelity |
| SH (rest) | Aggressive mobile | Mobile/Web | Desktop | Unnecessary |
| Opacity | Acceptable (post-sigmoid) | Recommended | Overkill | Overkill |
| Scale | Log-space 4-bit risky | Log-space 6β8 bit | Recommended | Overkill |
| Rotation | 8-bit often sufficient | Standard | Unnecessary | Overkill |
Rule of thumb: Position and SH dominate quality; allocate more bits there. Opacity and rotation tolerate aggressive quantization.
Step 4: Pruning
Strategies
| Strategy | Method | Venue | Compression | Quality Impact |
|---|---|---|---|---|
| Coreset-based | Provable Pruning via Coresets | arXiv 2026 | Theoretical guarantee | Minimal β multiplicative approximation |
| Bayesian | DP-Splat | arXiv 2026 | Automatic complexity control | Minimal β DP prior converges to optimal count |
| Training-free semantic | CoSAG | arXiv 2026 | 37β76Γ over LangSplatV2 | Minimal β zero fine-tuning, leverages CLIP features |
| Importance-based | Prune Wisely (DoG) | CVPR 2026 | 90% reduction | Minimal β DoG avoids false positives |
| Variational | VEDAL | CGI 2026 | 5.2x (0.31 dB drop) | Low β uncertainty-gated async pruning |
| Merge-based | NanoGS | arXiv 2026 | Training-free | Mass-preserving moment matching |
| Global+Local | LightGaussian | NeurIPS 2024 | 15x | SVD distillation compensates |
| Render-aware | GETA-3DGS | arXiv 2026 | ~5x storage | Transmittance-weighted saliency |
| Frequency-aware | FAD-GS | CVPR 2024 | Frequency-separated | Separates low/high freq Gaussians |
| Memory-bounded | Gaussians on a Diet | arXiv 2026 | 80% peak memory | Iterative growth+pruning |
| Hybrid | HybridGS | CVPR 2025 | Explicit+implicit | Neural coding recovers pruned info |
| Budget-controlled | MGS (Matryoshka) | arXiv 2026 | Continuous LoD | Any prefix of ordered set is coherent |
Pruning Decision Flow
Need theoretical guarantees?
βββ Yes β Provable Pruning via Coresets
βββ No
βββ Training-free requirement?
β βββ Yes β NanoGS (merge) or LightGaussian (post-training)
β βββ No
β βββ Can retrain/fine-tune after pruning?
β β βββ Yes β Prune Wisely (DoG) + finetune, or VEDAL
β β βββ No β NanoGS or GETA-3DGS (auto, no per-scene thresholds)
β βββ Need continuous quality levels?
β βββ Yes β MGS (Matryoshka stochastic budget training)
Step 5: Vector Quantization
VQ Pipeline
Gaussian Attributes
β
βΌ
[1] Attribute Grouping ββ group by type (position, SH, scale/rotation)
β
βΌ
[2] Codebook Learning ββ K-means / learned / residual codebook
β
βΌ
[3] Assignment ββ nearest-neighbor lookup per group
β
βΌ
[4] Residual Coding ββ (optional) multi-level residual VQ
β
βΌ
[5] Entropy Coding ββ arithmetic / ANS coding of indices
β
βΌ
Compressed Bitstream
VQ Methods
| Method | Codebook Type | Venue | Compression | Key Feature |
|---|---|---|---|---|
| CompactGS | Learned per-attribute | ECCV 2024 | 10β15x | Simple codebook, minimal overhead |
| VQGS | Residual codebook | CVPR 2025 | High-ratio | Multi-level residual improves quality |
| RDO-Gaussian | ECVQ (entropy-constrained) | ECCV 2024 | 40x+ | Rate-distortion optimized VQ |
| CAGS | VQ + LoD layers | SIGGRAPH 2026 | Adaptive | VQ establishes quality LoDs for streaming |
| CGVQ | Clustered codebook | SIGGRAPH 2026 Poster | 20% bpp reduction | Cluster-guided grouping before quant |
| Sp2403GS | Codebook + pruning | CVPR 2024 | Combined | Importance-based codebook selection |
| HAC | Hash-grid context | ECCV 2024 | ~100x | Context modeling for entropy coding |
| CompGS | Importance-aware | CVPR 2025 | Progressive | Progressive decoding support |
Codebook Design Rules
- Codebook size K: 256 (8-bit index) is standard; 1024 (10-bit) for quality; 64 (6-bit) for extreme compression
- Grouping strategy: Group by attribute type (position separate from SH); within SH, separate DC from higher-order
- Residual levels: 1 level = 10β20x; 2 levels = 20β50x; 3 levels = diminishing returns
- LoD integration: Each residual level can serve as a LoD tier (see Step 6)
Step 6: Streaming & LoD
Static Scene Streaming
| Method | LoD Mechanism | Venue | Latency Reduction | Key Feature |
|---|---|---|---|---|
| StreamLoD-GS | View-dependent LoD levels | arXiv 2026 | Progressive | Bandwidth-adaptive FVV delivery |
| HGS | Hierarchical Gaussian structuring | CVPR 2025 | Progressive | Level-of-detail Gaussian hierarchy |
| GS-Stream | Progressive chunk delivery | CVPR 2025 | Bandwidth-adaptive | Chunk-based 3DGS streaming |
| EvoGS | Evolution Tree (wavelet-inspired) | arXiv 2026 | 2.4x payload reduction | Continuous parent-child refinement |
| MGS | Stochastic budget training | arXiv 2026 | Continuous | Any prefix = coherent render |
| SCube | VoxSplats + hierarchical LOD | NeurIPS 2024 | Hierarchical | Voxelized splat for large-scale |
| CAGS | VQ-based LoD + reference image | SIGGRAPH 2026 | +5β20 dB PSNR | Server-side low-res reference corrects color |
Dynamic (4DGS) Streaming
| Method | Mechanism | Venue | First-frame Latency | Key Feature |
|---|---|---|---|---|
| PD-4DGS | Hierarchical Deformation Decomposition | arXiv 2026 | ~1.7s (from 73β930s) | 3 independent layers: static + global deform + local refine |
| CAGS | VQ LoD + color correction | SIGGRAPH 2026 | Adaptive | Representation-agnostic, works with diverse Gaussian types |
| QUEEN | Quantized streaming encoding | NeurIPS 2024 | Streaming | Dynamic Gaussian free-viewpoint video |
| BlitzGS | Distributed GPU sharding | arXiv 2026 | Parity-based | City-scale distributed rendering + importance scoring |
Streaming Architecture Pattern
Server Client
ββββββββββββ HTTP/HLS/DASH ββββββββββββββββββββ
β 3DGS β ββββ Layer 0 βββββ β Base quality β
β Encoder β ββββ Layer 1 βββββ β + Deformation β
β β ββββ Layer 2 βββββ β + Refinement β
β CAGS/ β β β
β PD-4DGS β βββ Bandwidth ββββ β Quality Feedback β
ββββββββββββ ββββββββββββββββββββ
Step 7: Deployment
Web (WebGL / WebGPU)
| Platform | Renderer | Max Gaussians | Key Feature |
|---|---|---|---|
| Spark 2.0 | WebGPU | 100M+ splats | Chunk streaming, multi-splat sorting, progressive LOD |
| Visionary | WebGPU + ONNX Runtime | Large | 4DGS + neural avatars + generative post-processing |
| SuperSplat | WebGL | ~5M | Editable viewer, selection tools |
| PlayCanvas | WebGL 2.0 | ~2M | Game engine integration |
Web deployment checklist:
- Choose WebGPU (Chrome 113+) for compute shader support; fallback WebGL 2.0 for compatibility
- Chunk Gaussians into 50Kβ200K groups for progressive loading
- Use INT8/FP16 textures for quantized attributes
- Implement front-to-back alpha compositing in fragment shader (WebGL) or compute shader (WebGPU)
- Target 30+ FPS at 1080p for interactive experience
Mobile (iOS / Android)
| Method | Venue | FPS (Mobile) | Key Feature |
|---|---|---|---|
| Mobile-GS | ICLR 2026 | 1000+ FPS (on-device) | Depth-aware OIT + distillation + contribution pruning |
| Flux-GS | ECCV 2026 | Real-time | Monte Carlo specular energy, compact latent SH |
| PocketGS | arXiv 2026 | On-device training | Anisotropic seeding + cached alpha compositing |
Mobile deployment pipeline:
- Train on server β compress (prune + quantize + merge via NanoGS)
- Export to mobile-optimized format (INT8 attributes, fused SH degree β€ 2)
- Use Metal (iOS) / Vulkan (Android) for GPU rasterization
- Apply Mobile-GS depth-aware OIT for correct blending on tile-based GPUs
- Memory budget: stay under 500MB for iOS, 300MB for Android
Desktop
- gsplat (UC Berkeley/NVIDIA): Production-grade CUDA rasterization, 4x VRAM savings
- HiGS (NVIDIA): Hierarchical tiling for 15.8x speedup, exact front-to-back compositing
- GEMM-GS: Tensor Core-compatible blending for 1.42x speedup
Hardware Acceleration
| Method | Hardware | Venue | Speedup | Key Feature |
|---|---|---|---|---|
| GEMM-GS | Tensor Core (GEMM) | arXiv 2026 | 1.42x | Reformulates blending as GEMM ops |
| TensorGS | Tensor Core (FP16 matrix) | arXiv 2026 | 1.65x | Tensorizes rasterization with cross-tile grouping |
| Axis-Shared Accelerator | ASIC (custom) | ISCA 2026 | On-chip real-time | First 3DGS hardware accelerator, order-independent transmittance |
| HiGS | GPU (hierarchical tiles) | NVIDIA 2026 | 15.8x | Macro-tile + fine render tile decoupling |
| LiteGS | GPU (Moore Threads) | SIGGRAPH Asia 2025 | Software-hardware co-opt | Won 3DGS Challenge silver at SIGGRAPH Asia |
| SpqGS | FPGA-friendly | CVPR 2025 | Parallel bit allocation | Hardware-scalable quantization |
| QuadBox | GPU (AABB optimization) | arXiv 2026 | 1.85x | Geometry-aware bounding boxes |
| StereoGS | ASIC (stereoscopic) | 2026 | Dual-eye shared | Energy-efficient stereoscopic GS processor; shared compute + memory bandwidth for VR/AR |
Acceleration Selection
Deployment hardware?
βββ NVIDIA GPU (RTX 30xx+)
β βββ Tensor Core available β GEMM-GS or TensorGS
β βββ Standard CUDA β HiGS + gsplat
βββ Custom ASIC / SoC design
β βββ Axis-Shared Rasterization Accelerator (ISCA 2026)
βββ FPGA
β βββ SpqGS (hardware-friendly quant) + custom rasterizer
βββ Mobile GPU (Mali/Adreno/Apple)
β βββ Mobile-GS depth-aware OIT + Flux-GS Monte Carlo
βββ VR/AR HMD (stereoscopic)
βββ StereoGS (dual-eye shared compute + memory bandwidth)
Methods Quick Reference
| Category | Method | Venue | Compression | Quality | Speed |
|---|---|---|---|---|---|
| Mixed-precision Q | MesonGS++ | arXiv 2026 | 34x | High | Post-training |
| Joint Prune+Q | GETA-3DGS | arXiv 2026 | ~5x | High | Auto |
| Adaptive Prune | Prune Wisely | CVPR 2026 | 90% Gaussians | High | Post-training |
| Variational Prune | VEDAL | CGI 2026 | 5.2x | 0.31 dB drop | 185 FPS |
| Coreset Prune | Provable Coresets | arXiv 2026 | Guaranteed | Theoretical | + finetune |
| Merge Simplify | NanoGS | arXiv 2026 | Training-free | High | Fast (CPU) |
| VQ+LoD Stream | CAGS | SIGGRAPH 2026 | Adaptive | +5β20 dB | Stream |
| VQ Residual | VQGS | CVPR 2025 | High-ratio | Medium | β |
| Tri-plane | TC-GS | IEEE 2026 | Implicit | β | β |
| 4D Stream | PD-4DGS | arXiv 2026 | Progressive | 3-layer | 1.7s first-frame |
| Large-scale Dist | BlitzGS | arXiv 2026 | Parity shards | City-scale | Distributed |
| Mobile | Mobile-GS | ICLR 2026 | 50β100x | Acceptable | 1000+ FPS |
| Mobile | Flux-GS | ECCV 2026 | Parameter reduction | High | Real-time |
| WebGPU | Visionary | arXiv 2025 | Stream | High | WebGPU |
| Web | Spark 2.0 | 2026 | Stream | 100M+ splats | WebGPU |
| Tensor Core | GEMM-GS | arXiv 2026 | β | Negligible loss | 1.42x |
| Tensor Core | TensorGS | arXiv 2026 | β | Negligible loss | 1.65x |
| ASIC | Axis-Shared Accel | ISCA 2026 | β | On-chip | Real-time |
| Hierarchical Tile | HiGS | NVIDIA 2026 | β | Exact compositing | 15.8x |
| Evolution Tree | EvoGS | arXiv 2026 | 2.4x payload | Continuous | Stream |
| Matryoshka LoD | MGS | arXiv 2026 | Continuous | Any prefix | Flexible |
| Hash-grid Context | HAC | ECCV 2024 | ~100x | High | Encoding |
Output Format
When this skill produces a compression-deployment plan, use this template:
# 3DGS Compression & Deployment Plan
## Model Profile
- Gaussian count: N
- File size: S MB
- Scene type: static / dynamic (4DGS)
- Key bottleneck: [storage / bandwidth / compute / memory]
## Target Platform
- Platform: [Web / Mobile / Desktop / Edge]
- Constraints: [memory budget, bandwidth, GPU]
## Compression Recipe
1. Pruning: [method] β target: X% reduction
2. Quantization: [method] β [bit-width per attribute]
3. VQ: [method, codebook size] β (if applicable)
4. Entropy coding: [method]
## Expected Results
- Compression ratio: Xx
- Estimated PSNR: Y dB (drop: Ξ dB)
- Estimated file size: Z MB
- Rendering speed: W FPS on target
## Streaming Architecture (if applicable)
- Layers: [base / deformation / refinement]
- First-frame latency: < T seconds
## Deployment Stack
- Renderer: [gsplat / Spark 2.0 / Mobile-GS / custom]
- Acceleration: [Tensor Core / HiGS / FPGA / none]
- Format: [PLY compressed / chunk stream / custom binary]
Rules
- Always profile before compressing: attribute distribution dictates bit-width allocation, not a fixed recipe
- Pruning before quantization: reducing Gaussian count first lowers total data; then quantize the remaining attributes
- VQ replaces or augments scalar quantization: do not apply both independently to the same attribute group
- Streaming requires LoD structure: flat compression without LoD degrades user experience on slow connections
- Mobile deployment needs Metal/Vulkan: CUDA is not available on mobile; plan the rasterization backend from Step 2
- Quantization-aware finetuning recovers quality: always finetune 1β5k iterations after aggressive (β€6 bit) quantization
- Entropy coding is the last step: apply after all other compression; HAC/ContextGS/GaussianCodec specialize in this
- Cross-reference with knowledge base: load
references/compression-methods.mdfor full method details before making recommendations
Red Lines
- No invented metrics: Never fabricate compression ratios, PSNR values, or FPS numbers. If a value is not in the knowledge base, state "data not available"
- No hallucinated methods: Only reference methods explicitly present in
references/compression-methods.mdor provided by the user - No speculative hardware claims: Do not claim FPGA/ASIC performance numbers without source data
- No silent speculation: Flag uncertain details with
[UNCERTAIN]rather than presenting as fact - No method misattribution: Do not assign compression ratios from one method to another
Related Skills
- 3dgs-engineering-guide β Production deployment decisions, industry verticals, tech stack
- 3dgs-method-compare β Compare compression methods head-to-head on benchmarks
- 3dgs-visualizer β Generate radar charts comparing compression methods
- 3dgs-experiment-planner β Design ablation studies for compression pipelines
- cad-mesh-3dgs β Mesh extraction from compressed 3DGS for BIM/CAD workflows
- 3dgs-mcp-renderer β MCP protocol for compressed 3DGS rendering integration
Guardrail: Do Not Apply From Memory
Do NOT try to apply the method data, compression ratios, technical details, or deployment recommendations described in this skill from memory. Always read the SKILL.md and references/compression-methods.md from disk before producing any output. The knowledge base is updated frequently; stale memory may produce outdated, inaccurate, or fabricated results.
If you cannot find a method, metric, or data point in the loaded files, say so explicitly. Never invent compression ratios, venue acceptances, performance numbers, or technical features not present in the source data.
If you like it, please star this repo https://github.com/jaccen/Awesome-Gaussian-Skills
Related skills
Generative Code Art
anthropics
Create algorithmic art with p5.js using randomness and interactive parameters.
Poster & Visual Design
anthropics
Create original posters and visual art in PNG and PDF formats.
Claude API Helper
anthropics
Build, debug, and optimize Claude API applications with caching and model migration support.
MCP Server Builder
anthropics
Build protocol servers that connect language models to external APIs and services.