Unnamed Skill
Optimize and post-process GLB/glTF 3D models. Use when compressing models for web delivery, reducing file size, simplifying geometry, inspecting model stats, merging models, or converting textures. Triggers on: optimize GLB, compress model, reduce file size, simplify mesh, draco compression, meshopt, webp textures, inspect model, merge GLB, model optimization.
$ 설치
git clone https://github.com/rawwerks/VibeCAD /tmp/VibeCAD && cp -r /tmp/VibeCAD/plugins/gltf-transform/skills/gltf-transform ~/.claude/skills/VibeCAD// tip: Run this command in your terminal to install the skill
name: gltf-transform description: Optimize and post-process GLB/glTF 3D models. Use when compressing models for web delivery, reducing file size, simplifying geometry, inspecting model stats, merging models, or converting textures. Triggers on: optimize GLB, compress model, reduce file size, simplify mesh, draco compression, meshopt, webp textures, inspect model, merge GLB, model optimization.
glTF Transform
Post-process GLB/glTF files: optimize, compress, inspect, and transform 3D models.
- CLI docs: https://gltf-transform.dev/cli
- GitHub: https://github.com/donmccurdy/glTF-Transform
- npm:
@gltf-transform/cli
Zero-Setup with bunx
No installation required. Run any command with:
bunx @gltf-transform/cli <command> [args]
First run downloads the tool, subsequent runs are instant.
Quick Start
# Inspect model stats first
bunx @gltf-transform/cli inspect model.glb
# One-command optimization (good defaults)
bunx @gltf-transform/cli optimize input.glb output.glb --compress draco --texture-compress webp
CAD Workflow Integration
Typical pipeline after generating models with build123d:
create geometry → export GLB → optimize → verify visually
- build123d exports high-quality CAD geometry
- gltf-transform compresses for web delivery
- render-glb verifies the result
Compression Methods
| Method | Best For | Trade-offs |
|---|---|---|
| Draco | Web delivery, Three.js | Smallest geometry, requires decoder |
| Meshopt | Universal, animations | Good compression + animation support |
| Quantize | Compatibility | No decoder needed, moderate compression |
# Draco - best geometry compression
bunx @gltf-transform/cli draco input.glb output.glb
# Meshopt - geometry + animation compression
bunx @gltf-transform/cli meshopt input.glb output.glb
# Quantize only - no external decoder needed
bunx @gltf-transform/cli quantize input.glb output.glb
Texture Compression
# WebP - good compression, wide browser support
bunx @gltf-transform/cli webp input.glb output.glb
# Resize large textures
bunx @gltf-transform/cli resize input.glb output.glb --width 1024 --height 1024
Common Operations
Inspect Model Stats
bunx @gltf-transform/cli inspect model.glb
Shows vertex count, file size breakdown, texture sizes - helps decide what to optimize.
Simplify Geometry
# Weld duplicate vertices first
bunx @gltf-transform/cli weld input.glb temp.glb
# Then simplify
bunx @gltf-transform/cli simplify temp.glb output.glb --ratio 0.5
Useful for CAD models which often have more detail than needed for web viewing.
Merge Multiple Models
bunx @gltf-transform/cli merge part1.glb part2.glb assembly.glb
Aggressive Optimization
bunx @gltf-transform/cli optimize input.glb output.glb \
--compress draco \
--texture-compress webp \
--simplify true \
--simplify-ratio 0.5
When to Use
| Scenario | Commands |
|---|---|
| Web delivery | optimize --compress draco --texture-compress webp |
| Check model stats | inspect |
| High-poly CAD model | weld then simplify --ratio 0.5 |
| Combine parts | merge |
| Debug issues | inspect then targeted fixes |
Repository
