Rendu depuis le dépôt source en conservant titres, exemples, code, tableaux, liens et images.
Hard Surface Artist
Production hard surface modeling with manufacturing logic. Readable surfaces. Clean modifier stacks. MCP-first.
When to Use
- Sci-fi consoles, spaceships, industrial equipment
- Weapons, vehicles, robotics, military props
- Mechanical assemblies with panels, vents, bolts
- Any asset requiring crisp edges, booleans, chamfers
Design Principles
- Primary forms first — Silhouette reads at distance
- Manufacturing logic — Panel breaks follow construction seams
- Surface hierarchy — Primary > Secondary > Tertiary > Micro (greebles)
- Functional readability — Every form suggests purpose
- Edge consistency — Uniform bevel widths per detail tier
Workflow
Reference → Scale Blockout → Primary Volumes → Panel Breaks
→ Boolean Cuts → Bevel Pass → Weighted Normals
→ Greebles (instanced) → UV Planning → MaterialsBoolean Workflow
1. Block primary forms (no booleans yet)
2. Create cutter objects on separate collection COL_Booleans
3. Apply scale on all operands
4. Boolean Difference/Union — keep LIVE
5. Fix intersection artifacts with manual cleanup if needed
6. Bevel AFTER boolean in modifier stack
7. Apply booleans only at export prepBoolean rules:
- Cutter objects named
SM_Cutter_[Feature] - Prefer exact solver for mechanical work
- Avoid booleans on curved surfaces without adequate topology
- Duplicate mesh before first boolean as backup
Bevel Workflow
| Detail Tier | Bevel Width | Segments |
|---|---|---|
| Primary edges | 0.005–0.02m | 2–3 |
| Panel lines | 0.001–0.003m | 1–2 |
| Micro detail | 0.0005–0.001m | 1 |
- Use bevel weight or edge marks for selective beveling
- Weighted Normal modifier after bevel (keep sharp: 30°)
- Never bevel entire mesh uniformly on complex assets
Panel Lines
Techniques (prefer non-destructive):
- Inset faces + slight extrude inward
- Knife cuts on flat panels
- Boolean with thin cutter boxes
- Normal map detail for distant panels
Place panel lines at:
- Structural boundaries
- Access hatches, maintenance points
- Material transitions
- Manufacturing seam locations
Greebles
- Instance small detail meshes; never model unique unless hero
- Collection:
COL_Greebles - Keep greebles on separate mesh for easy toggle
- Budget: greebles should not dominate polycount
- Use array + random transform for scatter greebles
Hard Edge Management
Sharp edges → Mark Sharp or Bevel Weight = 1.0
Soft transitions → Bevel Weight = 0.0–0.5
Auto Smooth angle: 30°–45° for hard surface
Weighted Normal modifier: Keep Sharp enabledManufacturing Reference
| Real-World Feature | Modeling Approach |
|---|---|
| Sheet metal bend | Bevel + slight inset |
| Weld seam | Thin raised strip or normal map |
| Bolt pattern | Instanced cylinder, hex inset |
| Vent grille | Boolean cut + array |
| Cable routing | Curve + bevel object or geo nodes |
| Rubber gasket | Separate mesh, slight inset channel |
Vehicle / Spaceship Specifics
Prefer vehicle-artist for cars, ships, aircraft, and mechs. Use this skill when the vehicle is primarily hard-surface sci-fi detailing under a broader HS brief.
- Establish centerline symmetry early (Mirror modifier)
- Flow lines follow aerodynamic/structural logic
- Landing gear, thrusters as separate objects
- LOD: bake panel detail to normal at distance
Weapon Specifics
- Grip pivot at hand contact center
- Sight line alignment verified
- Separate moving parts (slide, magazine) as objects
- First-person: optimize silhouette for viewmodel
MCP Integration
Execute via MCP:
- Create blockout primitives
- Apply mirror/array modifiers
- Execute boolean operations
- Apply bevel and weighted normal
- Instance greeble collections
- Query polycount per phase
Constraints
MUST DO
- Maintain manufacturing plausibility
- Keep modifier stack non-destructive until export
- Use instancing for repeated mechanical detail
- Verify silhouette at 45° increments
- Apply scale before booleans
MUST NOT DO
- Boolean on unsubdivided curved surfaces without support
- Uniform bevel on entire complex mesh
- Model every bolt uniquely
- Skip weighted normals on hard surface
- Exceed polycount budget with micro-detail
Reference Guide
| Topic | Reference | Load When |
|---|---|---|
| Boolean deep dive | references/boolean-workflow.md | Complex cuts |
| Greeble library | references/greeble-patterns.md | Detail pass |
| Pipeline | ../references/asset-pipeline.md | Phase context |
Style Integration
| Style | Adjustment |
|---|---|
| realistic-style | Full bevel + PBR materials |
| lowpoly-style | Skip micro-bevels; large flat panels |
| horror-style | Industrial wear; asymmetric damage |
| stylized-style | Exaggerated panel breaks; bold bevels |

