Rock Generator 2.11.0: Quader-Proportionen auf gleiches Volumen normiert
Beim Export von Form C (flache Platte) fiel auf: Fels_C_S war 1.45 m, waehrend Fels_A_S nur 0.85 m misst - dieselbe Klasse, aber deutlich groesser, nur weil eine Achse gestreckt ist. Damit waere die Groessen-Klasse formabhaengig gewesen. Die Proportionen werden jetzt auf geometrisches Mittel 1.0 normiert. "M" bedeutet bei jeder Form dasselbe Volumen; eine Platte ist dann flacher UND breiter, aber nicht schwerer. Dass ihre laengste Kante groesser ausfaellt, ist geometrisch zwangslaeufig und Absicht. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -202,6 +202,10 @@ damit die Raw-URL sie ausliefert.
|
||||
`Proportions-Streuung` — damit entstehen flache **Platten** und langgestreckte
|
||||
**Riegel** statt nur runder Brocken. Gemessen bei Proportion (2.0, 1.5, 0.35):
|
||||
3.43 / 2.56 / 0.79 m — Z also 23 % von X.
|
||||
Die Proportionen werden auf **gleiches Volumen normiert** — „M" bedeutet damit
|
||||
bei jeder Form dasselbe. Eine Platte ist dann flacher UND breiter als ein
|
||||
Wuerfel derselben Klasse, aber nicht schwerer; ihre laengste Kante ist
|
||||
entsprechend groesser (das ist Absicht, kein Fehler).
|
||||
Die Proportionen werden auf die MESH-DATEN angewendet, nicht auf das Objekt:
|
||||
der Displace nutzt globale Texturkoordinaten, eine Objekt-Skalierung wuerde
|
||||
das Rauschen mitverzerren statt die Form zu aendern.
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
schema_version = "1.0.0"
|
||||
|
||||
id = "stylized_rock_generator"
|
||||
version = "2.10.0"
|
||||
version = "2.11.0"
|
||||
name = "Stylized Rock Generator"
|
||||
tagline = "Batch-Generator fuer stylized Rocks mit UE5-Export"
|
||||
maintainer = "D4rkst3r"
|
||||
|
||||
Vendored
+4
-4
@@ -32,7 +32,7 @@
|
||||
"id": "stylized_rock_generator",
|
||||
"name": "Stylized Rock Generator",
|
||||
"tagline": "Batch-Generator fuer stylized Rocks mit UE5-Export",
|
||||
"version": "2.10.0",
|
||||
"version": "2.11.0",
|
||||
"type": "add-on",
|
||||
"maintainer": "D4rkst3r",
|
||||
"license": [
|
||||
@@ -48,9 +48,9 @@
|
||||
"Mesh",
|
||||
"Modeling"
|
||||
],
|
||||
"archive_url": "./stylized_rock_generator-2.10.0.zip",
|
||||
"archive_size": 20241,
|
||||
"archive_hash": "sha256:d092ae0a1cfefed9bdd4fbe1ffcd8160f4fffb00033cec346bbde3d14c755254"
|
||||
"archive_url": "./stylized_rock_generator-2.11.0.zip",
|
||||
"archive_size": 20382,
|
||||
"archive_hash": "sha256:50eeed1d105ad68487e25020fdf28f5e3b8d81e83f9a21b9d33968eaa06aff2d"
|
||||
},
|
||||
{
|
||||
"schema_version": "1.0.0",
|
||||
|
||||
BIN
Binary file not shown.
BIN
Binary file not shown.
@@ -1,7 +1,7 @@
|
||||
bl_info = {
|
||||
"name": "Stylized Rock Generator",
|
||||
"author": "D4rkst3r",
|
||||
"version": (2, 10, 0),
|
||||
"version": (2, 11, 0),
|
||||
"blender": (4, 2, 0),
|
||||
"location": "View3D > Sidebar > Rock Gen",
|
||||
"description": (
|
||||
@@ -310,6 +310,13 @@ def _build_rock_mesh(context, settings, index, location, rng, name=None):
|
||||
# der Displace nutzt globale Texturkoordinaten, eine Objekt-Skalierung
|
||||
# wuerde das Rauschen mitverzerren statt die Form zu aendern.
|
||||
px, py, pz = settings.box_proportions
|
||||
# Auf gleiches Volumen normieren: sonst waere ein Quader bei gleicher
|
||||
# Groessen-Klasse deutlich groesser als ein Wuerfel, nur weil eine
|
||||
# Achse gestreckt ist. So bedeutet "M" bei jeder Form dasselbe -
|
||||
# die Platte ist dann flacher UND breiter, aber nicht schwerer.
|
||||
gmean = (abs(px) * abs(py) * abs(pz)) ** (1.0 / 3.0)
|
||||
if gmean > 1e-6:
|
||||
px, py, pz = px / gmean, py / gmean, pz / gmean
|
||||
v = settings.box_variation
|
||||
if v > 0.0:
|
||||
px *= 1.0 + rng.uniform(-v, v) * 0.5
|
||||
|
||||
Reference in New Issue
Block a user