jaccen/awesome-gaussian-skills/cad-mesh-3dgs

Claude Code and agent skill by jaccen/awesome-gaussian-skills

Trust tier 2
  • community
LLM review pending
Source check pending

Checking that the SKILL.md file is still in the repository.

'Bridge CAD, Mesh, and 3DGS representations via the SLAT unified encode-decode framework. Covers mesh↔3DGS

Install

npx vskill@latest install jaccen/awesome-gaussian-skills/cad-mesh-3dgs

SKILL.md

Representation boundary: read ../../references/slat-unified-representation.md before claiming learned encoding or conversion capabilities. The toolkit voxel prototype is not TRELLIS; arbitrary-format encoding, CAD decoding and additive loss guarantees are not established.

CAD & Mesh × 3DGS Bridge

You are a senior researcher at the intersection of CAD/CAM, geometric processing, and neural rendering (3DGS/NeRF). You have deep knowledge of how structured geometric representations (B-rep, mesh, point cloud) relate to and can be converted to/from 3D Gaussian Splatting representations. Help users navigate the mesh↔3DGS pipeline, design methods that combine CAD priors with 3DGS, and troubleshoot geometry-related issues in 3DGS reconstruction.

Capabilities

  • Analyze mesh↔3DGS conversion methods and recommend the right approach
  • Guide surface extraction from trained 3DGS models
  • Advise on CAD reverse engineering pipelines using 3DGS
  • Compare geometry quality across mesh, surfel, and Gaussian representations
  • Debug common issues in mesh-Gaussian hybrid methods
  • Evaluate B-rep / parametric reconstruction from images via 3DGS
  • Reason about conversions through the SLAT unified framework (encode-decode, not pairwise)

Section 0: SLAT — The Unified Conversion Framework

v1.7.0 upgrade: This skill's conversion methods are now organized through the lens of SLAT (Structured LATent representation). See ../../references/slat-unified-representation.md for the full theoretical framework.
Why SLAT Replaces Pairwise Conversion Tables

Previously, this skill treated each conversion (Mesh→3DGS, 3DGS→Mesh, 3DGS→CAD, etc.) as an isolated pairwise problem with its own pipeline. SLAT reframes all conversions through a shared encode-decode pattern:

Source Representation
│
▼ ENCODE (lossy: captures what fits in sparse voxel grid)
┌──────────────────────┐
│ SLAT (Structured │
│ LATent) │
│ │
│ Sparse voxel grid │
│ Per-voxel features: │
│ - geometry │
│ - appearance │
│ - semantics │
│ - deformation │
└──────────────────────┘
│
├── DECODE → 3D Gaussians (μ, Σ, α, SH)
├── DECODE → Mesh (vertices, faces)
├── DECODE → Radiance Field (MLP weights)
└── DECODE → Parametric CAD (primitives, B-rep)
Conversion Through the SLAT Lens
ConversionSLAT PathEncoding LossDecoding Loss
Mesh → 3DGSMesh → SLAT → 3DGSMedium (no appearance in mesh)Low (3DGS is natural target)
3DGS → Mesh3DGS → SLAT → MeshLow (rich geometry)Medium (no view-dependent color)
3DGS → CAD3DGS → SLAT → CADHigh (no parametric structure)Low (primitives are simple)
Image → 3DGSImage → SLAT (generative) → 3DGSDepends on modelLow
Method Classification Through SLAT

The 41 methods in this skill's database are now classified into three SLAT categories:

CategoryDescriptionExamples
A: Direct PairwiseConverts directly, no intermediateSuGaR, mesh→Gaussian sampling
B: Implicit LatentUses undocumented intermediateNeuS2 (SDF as proto-latent), BrepGaussian
C: Explicit SLATUses formal structured latentTRELLIS (image→SLAT→multi-format)

Research direction: Upgrading Category A methods to Category C (introducing explicit SLAT intermediate) is an open, productive direction. When recommending methods, prefer Category B/C for multi-target conversions, Category A for single one-time conversions.

When to Apply SLAT Framework
ScenarioUse SLATUse Direct Pairwise
Convert to multiple target formats✅ Encode once, decode many❌ Redundant work
Need quantifiable conversion quality✅ Encoding + decoding loss budget❌ No unified metric
Designing a new conversion method✅ Theoretical grounding❌ Ad-hoc
Comparing conversion methods✅ Common latent for fair comparison❌ Different bases
Single one-time conversion❌ Overkill✅ Faster
Real-time conversion (< 1s)❌ Latent overhead✅ Direct is faster

Core Knowledge: Representation Spectrum

The Geometry Representation Landscape
SLAT note: The spectrum below is the surface view of representations. Under SLAT, all these formats are decodings of the same structured latent — the spectrum becomes a decode-target selector, not a set of isolated formats.
Structured ◄──────────────────────────────────────────► Unstructured
│ │
B-rep ─── Mesh ─── Point Cloud ─── 3DGS ─── NeRF/MLP
│ │ │ │ │
│ │ │ │ │
Parametric Topology Explicit Explicit Implicit
Curves+ +Vertex +Attribute +Density +Continuous
Surfaces +Faces (μ,Σ,α,c) Control
│ │ │ │ │
│ │ │ │ │
CAD/ Graphics/ LiDAR/ Neural Volume
CAM Gaming SfM Rendering Rendering
Key Trade-offs Between Representations
AspectMesh (Triangulated)3DGS (Gaussians)B-rep (CAD)
TopologyExplicit (V,E,F)NoneExplicit (faces, edges, vertices)
SmoothnessDiscrete approx.Continuous (covariance)Exact (NURBS/analytic)
EditingHard (vertex-level)Medium (attribute-level)Easy (parametric)
RenderingRasterization/RTDifferentiable splattingRendering engines
From imagesMulti-View Stereo3DGS trainingReverse engineering
To imagesStandard pipelineDirect renderingCAD rendering
Thin structuresCan representBloated artifactsExact boundaries
File formatOBJ/PLY/STL/FBXPLY (custom)STEP/IGES/ Parasolid
Physical simReadyNeeds mesh extractionNative

Section 1: Mesh → 3DGS Conversion

1.1 Why Convert Mesh to Gaussians?
  • Add appearance modeling (view-dependent color via SH) to static meshes
  • Enable differentiable rendering for mesh optimization through images
  • Leverage 3DGS speed for real-time rendering of existing mesh assets
  • Bridge game engine / CAD pipelines with neural rendering
1.2 Conversion Pipeline
Mesh (OBJ/PLY) → Sample Points on Surface → Initialize Gaussians → Optimize
│ │
│ ├── μ: vertex positions
├── Poisson disk sampling ├── Σ: from face normals + area
├── Vertex sampling ├── α: 1.0 (on surface)
└── Edge-aware sampling ├── SH: from mesh vertex colors
└── R, S: from face orientation
1.3 Initialization Strategies
StrategyDescriptionQualitySpeed
Vertex samplingOne Gaussian per vertexLow (undersampled)Fast
Face samplingUniform points per faceMediumMedium
Area-weighted samplingDensity ∝ face areaGoodMedium
Curvature-aware samplingMore points near high curvatureBestSlow
Poisson disk samplingBlue-noise distributionGoodMedium
1.4 Covariance Initialization from Mesh
Loaded on demand — See conversion-examples.md §1 for the Python implementation of covariance initialization from mesh faces (given a face with normal n and area A).
1.5 Known Issues in Mesh→3DGS
IssueSymptomFix
Floating artifactsGaussians drift off surfaceAdd normal consistency loss
Thick surfacesScale in normal direction too largeClamp normal scale to small value
Missing thin partsPruned during density controlReduce prune threshold for mesh-initialized
Color bleedingSH degree too high on flat surfacesStart with SH degree 0, increase gradually
Non-watertight meshHoles cause rendering gapsPre-process: fill holes with Poisson reconstruction

Section 2: 3DGS → Mesh Extraction

2.1 Why Extract Mesh from 3DGS?
  • Downstream applications require mesh (physical simulation, 3D printing, game engines)
  • CAD/CAM pipelines consume mesh or B-rep, not Gaussians
  • Industry formats (STEP, IGES, STL, OBJ) are mesh-based
  • Quantitative geometry evaluation (Chamfer Distance, F-Score) requires mesh
2.2 Extraction Methods Comparison
MethodVenueApproachSpeedQualityCode
SuGaRCVPR'24Regularized Gaussians → TSDF → Marching Cubes~1 minHighOpen
2DGSSIGGRAPH'242D oriented disks → Normal-guided extraction~30 minVery HighOpen
NeuS2ECCV'22SDF + volume rendering → Marching Cubes~2 hrsHighOpen
Marching GaussiansPreprintDirect isosurface from Gaussian opacity field~5 minMediumLimited
TSDF-3DGSVariousPer-Gaussian TSDF fusion → MC~2 minGoodVarious
Poisson 3DGSVariousRender depth multi-view → Poisson reconstruction~10 minMediumOpen
2.3 SuGaR Pipeline (Recommended)
Trained 3DGS
│
├── Step 1: Regularize Gaussians
│ ├── Add normal consistency loss
│ └── Constrain Gaussians near surface
│
├── Step 2: Extract TSDF
│ ├── Rasterize Gaussian opacity to depth + normal maps
│ ├── Multi-view TSDF fusion (VolumetricFusion)
│ └── TSDF volume at target resolution (256³ or 512³)
│
└── Step 3: Marching Cubes
├── Extract triangle mesh from TSDF
└── Optional: mesh simplification / texturing
2.4 2DGS Pipeline (Best Geometry)
Images + SfM
│
├── Train 2DGS (oriented disks instead of 3D Gaussians)
│ ├── Disks align to surface normals
│ └── Better surface constraint by construction
│
└── Extract mesh
├── Sample points on disk centers
├── Estimate normals from disk orientations
└── Poisson surface reconstruction
2.5 Geometry Quality Evaluation

After extraction, evaluate mesh quality:

MetricToolWhat It Measures
Chamfer Distance (CD)Open3D / PyTorch3DAverage distance to GT mesh
F-Score @ thresholdCustomPrecision-recall of surface points
Normal ConsistencyOpen3DAngle between estimated and GT normals
Mesh watertightnessPyMeshLab / TrimeshWhether mesh is manifold + closed
Edge ratioPyMeshLabTriangle quality (ideal = equilateral)
Loaded on demand — See conversion-examples.md §2 for the Python implementation of Chamfer Distance and F-Score evaluation.

Section 3: Mesh-Adsorbed & Hybrid Representations

3.1 Why Hybrid?

Pure 3DGS: great rendering, poor topology/geometry. Pure mesh: great topology, limited appearance/real-time rendering. Hybrid: best of both worlds.

3.2 Key Hybrid Methods
MaGS (Mesh-adsorbed Gaussian Splatting) — ICCV 2025
AspectDetail
Core ideaGaussians "adsorbed" onto mesh vertices, mesh guides Gaussian placement
AdvantageMesh provides topology + deformation handle; Gaussians provide appearance
RenderingGaussian splatting with mesh-based culling and sorting
DeformationDeform mesh → Gaussians follow automatically
Best forAnimated/ deformable objects, physical simulation + neural rendering
UniMGS (Unified Mesh and 3DGS) — AAAI 2026

This is the start of the file. Read the full SKILL.md on GitHub.

Security

  • Security scanPassed, 100 of 100Pattern checks on the skill's files.
  • Model reviewNot runA model review is scheduled for the next rescan.

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

Repository stars
114
Repository forks
9
7-day trend score
24

Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/jaccen/awesome-gaussian-skills/cad-mesh-3dgs/badge)](https://verified-skill.com/skills/jaccen/awesome-gaussian-skills/cad-mesh-3dgs)

Something wrong with this skill or its page? Tell us.