Tree Generator v1.17.0: Stammfuss am Referenzbaum ausgemessen
Basisring trifft den TreeIt-Baum jetzt fast exakt (r 0.178 vs 0.179, Unrundheit 1.61 vs 1.60). Lappen zentriert moduliert, damit die Lappentiefe nicht mehr den mittleren Radius mit anhebt. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
schema_version = "1.0.0"
|
schema_version = "1.0.0"
|
||||||
|
|
||||||
id = "stylized_tree_generator"
|
id = "stylized_tree_generator"
|
||||||
version = "1.16.0"
|
version = "1.17.0"
|
||||||
name = "Stylized Tree Generator"
|
name = "Stylized Tree Generator"
|
||||||
tagline = "Parametrische Baeume, Palmen, Bueschen mit Wachstums-Stufen"
|
tagline = "Parametrische Baeume, Palmen, Bueschen mit Wachstums-Stufen"
|
||||||
maintainer = "D4rkst3r"
|
maintainer = "D4rkst3r"
|
||||||
|
|||||||
Vendored
+4
-4
@@ -32,7 +32,7 @@
|
|||||||
"id": "stylized_tree_generator",
|
"id": "stylized_tree_generator",
|
||||||
"name": "Stylized Tree Generator",
|
"name": "Stylized Tree Generator",
|
||||||
"tagline": "Parametrische Baeume, Palmen, Bueschen mit Wachstums-Stufen",
|
"tagline": "Parametrische Baeume, Palmen, Bueschen mit Wachstums-Stufen",
|
||||||
"version": "1.16.0",
|
"version": "1.17.0",
|
||||||
"type": "add-on",
|
"type": "add-on",
|
||||||
"maintainer": "D4rkst3r",
|
"maintainer": "D4rkst3r",
|
||||||
"license": [
|
"license": [
|
||||||
@@ -48,9 +48,9 @@
|
|||||||
"Mesh",
|
"Mesh",
|
||||||
"Modeling"
|
"Modeling"
|
||||||
],
|
],
|
||||||
"archive_url": "./stylized_tree_generator-1.16.0.zip",
|
"archive_url": "./stylized_tree_generator-1.17.0.zip",
|
||||||
"archive_size": 16318,
|
"archive_size": 16523,
|
||||||
"archive_hash": "sha256:6bf0522b41a7d78e82f6a525acbcbd8343c53c24ee7005ce2a2829773a5c1adc"
|
"archive_hash": "sha256:49c3e777aa602ba3c63537aacd866bb5b11ac6484dbc0f91b28d26f497f98c00"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
BIN
Binary file not shown.
BIN
Binary file not shown.
@@ -1,7 +1,7 @@
|
|||||||
bl_info = {
|
bl_info = {
|
||||||
"name": "Stylized Tree Generator",
|
"name": "Stylized Tree Generator",
|
||||||
"author": "D4rkst3r",
|
"author": "D4rkst3r",
|
||||||
"version": (1, 16, 0),
|
"version": (1, 17, 0),
|
||||||
"blender": (4, 2, 0),
|
"blender": (4, 2, 0),
|
||||||
"location": "View3D > Sidebar > Tree Gen",
|
"location": "View3D > Sidebar > Tree Gen",
|
||||||
"description": "Parametrischer Baum-/Palmen-/Busch-Generator (Geometry Nodes) mit Wachstums-Stufen",
|
"description": "Parametrischer Baum-/Palmen-/Busch-Generator (Geometry Nodes) mit Wachstums-Stufen",
|
||||||
@@ -59,10 +59,14 @@ DEFAULTS = {
|
|||||||
"Tip Blunt": 0.18, # >0 verhindert Nadelspitzen (0 = spitz, 0.45 = Kaktus)
|
"Tip Blunt": 0.18, # >0 verhindert Nadelspitzen (0 = spitz, 0.45 = Kaktus)
|
||||||
"Crown Taper": 0.35, # >0 kegelfoermig, 0 saeulig, <0 besenfoermig
|
"Crown Taper": 0.35, # >0 kegelfoermig, 0 saeulig, <0 besenfoermig
|
||||||
"Crown Bulge": 0.0, # >0 = Bauch in der Mitte (runde Krone)
|
"Crown Bulge": 0.0, # >0 = Bauch in der Mitte (runde Krone)
|
||||||
"Root Flare": 1.1, # Wurzelanlauf: Stamm verbreitert sich am Fuss
|
"Root Flare": 1.55, # Wurzelanlauf. Ziel ist das TreeIt-Verhaeltnis
|
||||||
|
# Fuss/Stamm ~2.2 (dort 0.179 zu 0.082).
|
||||||
"Root Lobes": 6.0, # Wurzelbretter; sollte in "Sides" aufgehen,
|
"Root Lobes": 6.0, # Wurzelbretter; sollte in "Sides" aufgehen,
|
||||||
# sonst sampelt das Profil die Lappen weg
|
# sonst sampelt das Profil die Lappen weg
|
||||||
"Root Lobe Depth": 1.3, # wie weit die Lappen rausstehen
|
"Root Lobe Depth": 0.65, # wie weit die Lappen rausstehen. Am TreeIt-Baum
|
||||||
|
# gemessen: Unrundheit am Basisring 1.60.
|
||||||
|
# Messfalle: Ringe nicht ueber z-Bereiche mitteln,
|
||||||
|
# sonst mischt man Nachbarringe rein (ergab faelschlich 5.1).
|
||||||
"Root Height": 1.1, # Hoehe (m) des Anlaufs; zu klein -> zu wenige
|
"Root Height": 1.1, # Hoehe (m) des Anlaufs; zu klein -> zu wenige
|
||||||
# Ringe liegen drin und man sieht nichts
|
# Ringe liegen drin und man sieht nichts
|
||||||
"Detail": 0.55, # skaliert alle Resample-Counts = Tri-Budget-Regler
|
"Detail": 0.55, # skaliert alle Resample-Counts = Tri-Budget-Regler
|
||||||
@@ -107,7 +111,7 @@ PRESETS = {
|
|||||||
"Branch Start": 0.3, "Branch End": 0.95,
|
"Branch Start": 0.3, "Branch End": 0.95,
|
||||||
"Crown Taper": -0.15, "Crown Bulge": 0.5,
|
"Crown Taper": -0.15, "Crown Bulge": 0.5,
|
||||||
"Branch Bend": 0.9, "Branch Thickness": 0.24, "Sub Count": 3,
|
"Branch Bend": 0.9, "Branch Thickness": 0.24, "Sub Count": 3,
|
||||||
"Sub Length": 0.8, "Root Flare": 1.6, "Root Lobe Depth": 1.6,
|
"Sub Length": 0.8, "Root Flare": 1.5, "Root Lobe Depth": 0.4,
|
||||||
},
|
},
|
||||||
"birke": { # schlank, hoher Ansatz, feine Zweige
|
"birke": { # schlank, hoher Ansatz, feine Zweige
|
||||||
"Height": 7.5, "Trunk Radius": 0.09, "Bend": 0.7, "Taper": 0.92,
|
"Height": 7.5, "Trunk Radius": 0.09, "Bend": 0.7, "Taper": 0.92,
|
||||||
@@ -818,9 +822,11 @@ def build_group():
|
|||||||
L(fat.outputs[0], fml.inputs[0]); L(V["Root Lobes"], fml.inputs[1])
|
L(fat.outputs[0], fml.inputs[0]); L(V["Root Lobes"], fml.inputs[1])
|
||||||
fco = N("ShaderNodeMath"); fco.location = (5350, 1000); fco.operation = 'COSINE'
|
fco = N("ShaderNodeMath"); fco.location = (5350, 1000); fco.operation = 'COSINE'
|
||||||
L(fml.outputs[0], fco.inputs[0])
|
L(fml.outputs[0], fco.inputs[0])
|
||||||
fno = N("ShaderNodeMath"); fno.location = (5500, 1000); fno.operation = 'MULTIPLY_ADD'
|
# cos direkt verwenden (-1..1), NICHT auf 0..1 heben: sonst druecken die
|
||||||
fno.inputs[1].default_value = 0.5; fno.inputs[2].default_value = 0.5
|
# Lappen nur nach aussen und der MITTLERE Radius waechst mit der Lappentiefe
|
||||||
L(fco.outputs[0], fno.inputs[0])
|
# (gemessen: 0.184 -> 0.224). Zentriert bleibt der Mittelwert konstant und
|
||||||
|
# es entstehen echte Taeler zwischen den Wurzelbrettern.
|
||||||
|
fno = fco
|
||||||
|
|
||||||
# Betrag = RootLobeDepth * Hoehenabfall * Lappen * Stammradius
|
# Betrag = RootLobeDepth * Hoehenabfall * Lappen * Stammradius
|
||||||
fa1 = N("ShaderNodeMath"); fa1.location = (5800, 1150); fa1.operation = 'MULTIPLY'
|
fa1 = N("ShaderNodeMath"); fa1.location = (5800, 1150); fa1.operation = 'MULTIPLY'
|
||||||
|
|||||||
Reference in New Issue
Block a user