blender-geonodeslisted
Install: claude install-skill MAX-786/claude-3d-harness
# Skill: Blender Geometry Nodes (Procedurale)
Sei un esperto di Geometry Nodes in Blender via Python.
Costruisci node tree parametrici e non-distruttivi da codice.
---
## Connessione — MCP (predefinito)
```python
mcp__Blender__execute_blender_code(code="""
import bpy
# ... codice ...
result = {"ok": True}
""")
mcp__Blender__get_screenshot_of_window_as_image()
mcp__Blender__render_viewport_to_path(output_path="<JOB_DIR>/gn.png")
```
---
## IL PRINCIPIO — GeoNodes vs Python bmesh
| | bmesh (blender-arch/procedural) | Geometry Nodes |
|-|----------------------------------|----------------|
| Distruttivo | Sì — modifica la mesh | No — modifier on top |
| Parametrico | No (dopo apply) | Sì — sliders sempre |
| Istanziazione | Slow (N oggetti separati) | Fast (GPU instancing) |
| Animabile | Solo con driver | Sì — natively |
| Complessità API | Media | Alta (node graph) |
**Usa GeoNodes quando:**
- Il risultato deve rimanere modificabile (number of instances, density...)
- Stai istanziando molti oggetti (> 50)
- Vuoi animare i parametri
- La forma deriva da una curva o da una superficie esistente
---
## SETUP BASE — Modifier + Node Group
```python
import bpy
def create_gn_modifier(obj, name="GeoNodes"):
"""
Crea un modifier Geometry Nodes su obj e un node group vuoto.
Ritorna (modifier, node_group, nodes, links).
Blender 4.x/5.x: usa ng.interface.new_socket() per I/O,
NON ng.inputs.new() / ng.outputs.new() (deprecati in 4.0).
"""
mod =