Files
stylized-rock-generator/dist/index.html
T
D4rkst3randClaude Opus 4.8 95ddcb40b3 Tree Gen 1.28.0: Faell-Teile mit exakter Ast-Zuordnung (Punkt 4)
Knopf "Faell-Teile exportieren": Stamm in 2-3 Segmente, jeder Ast als eigenes
Teil SAMT seinen Sub-Aesten und Blatt-Cards, dazu <Name>_Pieces_All.fbx mit
gemeinsamem Ursprung. Je Teil zwei Material-Slots, Pivot am Massenmittelpunkt,
eigene UCX-Huelle.

Die Ast-Zugehoerigkeit ist ein ATTRIBUT, keine Schaetzung - wie von der
UE-Seite vorgeschlagen. Der Generator legt "ast_id" an den Astpunkten ab
(0 = Stamm, 1..N = Aeste). Sub-Aeste erben die ID ihres Astes automatisch, weil
sie aus Punkten auf dessen Kurve entstehen; nachgemessen: bei Sub Count 0 hat
jeder Ast 28 Verts, bei 3 dann 64, der Stamm bleibt konstant bei 156. Beim
Blatt-Streuen wird ast_id am Punkt abgegriffen und auf die Card gespeichert.

Damit ist die Zuordnung exakt nachzaehlbar, und genau das prueft der Test:
Summe der Cards ueber alle Teile == Cards des Stand-Baums. 170 = 170.

Die Falle, die diese Bilanz aufgedeckt hat: die Z-Schnitte am Stamm zerschnitten
anfangs auch Blatt-Cards. Aus einer wurden zwei, die Bilanz stand auf 178 gegen
170 - und die Atlas-UVs der Haelften waeren kaputt gewesen. Eine Card ist ein
unteilbares Billboard; sie wandert jetzt als GANZES in das Segment, in dem ihre
Inselmitte liegt. Nur die Rinde wird geschnitten, ihre Schlagflaechen werden
gedeckelt.

Massenmittelpunkt flaechengewichtet statt Vertex-Mittelwert: wo das Mesh dicht
tesselliert ist (Astansatz), wuerde der Mittelwert den Pivot dorthin ziehen und
das Teil torkelte beim Fallen.

Alles am REIMPORTIERTEN FBX gemessen: 12 Teile (3 Stamm, 9 Ast), UCX 18-32
Verts im Budget, Pivot maximal 16 mm vom Schwerpunkt, 0 non-manifold Kanten,
Gesamtdatei 5.41 m hoch - also volle Baumhoehe und deckungsgleich
rekonstruierbar.

Nebenbei: _deselect fiel ueber None-Eintraege in der Objektliste, die beim
Entfernen von Objekten zwischen den Teilen staendig auftreten.

Neu: tests/test_faell_teile.py. 21 Tests bestehen.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-06 07:40:57 +02:00

67 lines
2.1 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Blender Extensions</title>
</head>
<body>
<p>Blender Extension Listing:</p>
<p>Add-on</p>
<hr>
<table>
<tr>
<th>ID</th>
<th>Name</th>
<th>Description</th>
<th>Website</th>
<th>Blender Versions</th>
<th>Python Versions</th>
<th>Platforms</th>
<th>Size</th>
</tr>
<tr>
<td><tt><a href="./stylized_asset_utils-1.1.0.zip?repository=.%2Findex.json&blender_version_min=4.2.0">stylized_asset_utils-1.1.0</a></tt></td>
<td>Stylized Asset Utils</td>
<td>Handgebaute Assets auf EcoGame-Konvention bringen</td>
<td><a href="https://git.d4rkst3r.de/D4rkst3r/stylized-rock-generator">link</a></td>
<td>4.2.0 - ~</td>
<td>all</td>
<td>all</td>
<td>6.2KB</td>
</tr>
<tr>
<td><tt><a href="./stylized_grass_generator-1.1.0.zip?repository=.%2Findex.json&blender_version_min=4.2.0">stylized_grass_generator-1.1.0</a></tt></td>
<td>Stylized Grass Generator</td>
<td>Gras, Blumen und Farne mit Wind-UV fuer SimpleGrassWind</td>
<td><a href="https://git.d4rkst3r.de/D4rkst3r/stylized-rock-generator">link</a></td>
<td>4.2.0 - ~</td>
<td>all</td>
<td>all</td>
<td>4.9KB</td>
</tr>
<tr>
<td><tt><a href="./stylized_rock_generator-2.19.0.zip?repository=.%2Findex.json&blender_version_min=4.2.0">stylized_rock_generator-2.19.0</a></tt></td>
<td>Stylized Rock Generator</td>
<td>Batch-Generator fuer stylized Rocks mit UE5-Export</td>
<td><a href="https://git.d4rkst3r.de/D4rkst3r/stylized-rock-generator">link</a></td>
<td>4.2.0 - ~</td>
<td>all</td>
<td>all</td>
<td>34.1KB</td>
</tr>
<tr>
<td><tt><a href="./stylized_tree_generator-1.28.0.zip?repository=.%2Findex.json&blender_version_min=4.2.0">stylized_tree_generator-1.28.0</a></tt></td>
<td>Stylized Tree Generator</td>
<td>Parametrische Baeume, Palmen, Bueschen mit Wachstums-Stufen</td>
<td><a href="https://git.d4rkst3r.de/D4rkst3r/stylized-rock-generator">link</a></td>
<td>4.2.0 - ~</td>
<td>all</td>
<td>all</td>
<td>33.0KB</td>
</tr>
</table>
<center><p>Built 2026-08-06, 05:40</p></center>
</body>
</html>