← ClaudeAtlas

blender-geonodeslisted

Skill di Geometry Nodes procedurale per Blender. Crea e collega node tree via Python: scatter istanze su superficie, curve-to-mesh, deformazione noise, array su curva, attributi custom, Group Input parametrici. Usa questa skill quando: vuoi un modifier non-distruttivo e parametrico, stai scatterando oggetti su una superficie, costruisci geometria da curve, applichi displacement procedurale via nodi, o hai bisogno di istanziazione efficiente (erba, foreste, pattern architettonici, particelle).
MAX-786/claude-3d-harness · ★ 6 · AI & Automation · score 68
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 =