Meine Frage: Weiss jemand, was mit
Voxelgrafik bei Spielen gemeint
ist (auch programmiertechnisch gesehen)?
Ja, weiß jemand. Voxel ist eine Kontraktion aus „volume pixel“ (wobei das eigentlich Schwachsinn ist; es müßte eher „volel“ von „volume element“ heißen). Im Gegensatz zu Pixeln, die nur 2D sind, besitzen Voxel ein Volumen, sind also 3D.
fuer jedes Wuerfelchen braucht man :vermutlich zwei Byte (Position, Farbe
usw), fuer eine im Bildschirm dargestellte
Szene also vielleicht 1 Gigabyte Speicher
oder sogar noch mehr. Oder habe ich da
jetzt einen Denkfehler drin?
Es kommt alles darauf an, wie Du etwas speicherst. Wenn Du Dir wirklich eine Liste anlegst, in der Du für jedes Voxel die Position und die Farbe speicherst, und die Voxels wirklich klein sind, kommst Du wirklich schnell auf gigantische Datenmengen.
Nirgendwo steht jedoch geschrieben, daß Voxel unbedingt Würfel sein müssen. Oft verwendet man beliebig lange Quader, die eine bestimmte, immer gleiche Grundfläche haben und auf einer gemeinsamen Mindesthöhe beginnen. Dann braucht man nur noch die Länge dieser Quader und ihre Farbe zu speichern. Legt man diese in einem zweidimensionalen Feld an, so braucht man nämlich auch nicht mehr die Position speichern, die ergibt sich nämlich implizit aus der Position im Feld. Trotzdem sind die Datenmengen oft noch sehr groß.
Häufig verwendet man für Objekte, die auf dieser aus Voxeln bestehenden Oberfläche liegen, Polygone und keine Voxel-Modelle mehr. Will man dies trotzdem, so versucht man trotzdem alles, um nicht wirklich Würfel verwenden zu müssen und ein sehr speicherintensives 3D-Feld anlegen zu müssen. Wenn man z. B. von den Quadern den unteren Anfang und das obere Ende speichert, so kann man ebenfalls beliebige 3D-Objekte erzeugen. Problem ist nur, daß dann Ober- und Unterseite quasi identisch eingefärbt sind, da es sich ja um die gleichen Quader handelt. Häufig reicht es aber ja auch, nur die äußeren Voxel zu speichern und die inneren, die eh keiner sieht, auszulassen.
Ich hoffe, dies erklärt einiges. Viel mit Voxeln gearbeitet habe ich selber leider auch noch nicht.
Mathias Ricken
Project Manager – Chaotic Arts
Email [email protected]
Internet www.chaoticarts.de