
Räumliche Primitive
Räumliche Primitive sind einfache Grundformen wie Punkt, Linie, Dreieck, Würfel oder Kugel, aus denen Computer komplizierte dreidimensionale Objekte zusammensetzen. Sie sind die kleinsten Bausteine, mit denen Grafikprogramme, Spiele-Engines und KI-Modelle Raum beschreiben.
Ein Computer kann eine Form nicht einfach ansehen und verstehen. Er braucht eine Beschreibung aus Zahlen. Deshalb zerlegt man jedes räumliche Objekt in sehr einfache Grundformen. Solche Grundformen heißen räumliche Primitive: ein Punkt, eine Linie, ein Dreieck, ein Würfel, eine Kugel, ein Zylinder. Aus vielen dieser Bausteine entsteht dann ein Auto, ein Gesicht oder eine ganze Stadt. Das Prinzip ähnelt Legosteinen: wenige Sorten von Steinen, aber praktisch unbegrenzt viele Bauwerke.
Warum Grafikkarten Dreiecke lieben
Der wichtigste Grund für Primitive ist Geschwindigkeit. Eine beliebige geschwungene Fläche auszurechnen, ist mathematisch aufwendig. Ein Dreieck dagegen ist immer flach und durch drei Punkte vollständig beschrieben. Grafikkarten sind darauf spezialisiert, Millionen solcher Dreiecke pro Sekunde zu zeichnen. Alles andere wird vorher in Dreiecke übersetzt.
Der zweite Grund ist Sparsamkeit beim Speicher. Eine Kugel als Primitiv braucht nur einen Mittelpunkt und einen Radius, also vier Zahlen. Dieselbe Kugel als Netz aus Dreiecken kann tausende Zahlen kosten. Wo es auf Präzision und kleine Dateien ankommt, etwa in Konstruktionsprogrammen für Maschinenbau, arbeitet man deshalb lieber mit exakten Grundkörpern.
Für KI-Systeme kommt ein dritter Grund dazu. Ein Roboter oder ein selbstfahrendes Auto muss blitzschnell wissen, ob es irgendwo anstößt. Prüft man das gegen eine komplizierte Form, dauert es zu lange. Prüft man es gegen eine grobe Hülle aus wenigen Primitiven, geht es in Sekundenbruchteilen.
Vom Baustein zum fertigen Bild
Jedes Primitiv wird durch seine Eckpunkte beschrieben. Ein Eckpunkt ist ein Zahlentripel: wie weit rechts, wie weit oben, wie weit hinten. Verbindet man drei solcher Punkte, entsteht ein Dreieck. Setzt man viele Dreiecke aneinander, bekommt man ein Netz, das die Oberfläche eines Objekts bildet. Fachleute nennen dieses Netz ein Mesh.
Beim Anzeigen läuft das in festen Schritten ab. Zuerst werden alle Eckpunkte gedreht und verschoben, je nachdem, wo die virtuelle Kamera steht. Dann wird jedes Dreieck auf den Bildschirm projiziert. Zuletzt wird ausgerechnet, welche Bildpunkte es bedeckt und welche Farbe sie bekommen. Diesen letzten Schritt nennt man Rasterisierung.
Ein häufiger Irrtum ist, dass mehr Dreiecke automatisch besser aussehen. Ab einer gewissen Dichte sieht das Auge keinen Unterschied mehr, die Rechenlast steigt aber weiter. Spiele nutzen deshalb mehrere Versionen desselben Objekts: eine detaillierte für die Nahansicht, eine grobe für die Ferne. Abzugrenzen sind Primitive außerdem von Voxeln. Voxel sind kleine Würfelchen in einem festen Raster, ähnlich wie Pixel, nur dreidimensional. Primitive dagegen dürfen überall im Raum liegen und beliebig groß sein.
Von Minecraft bis zur Roboterhand
Am sichtbarsten sind Primitive in Computerspielen. Jede Spielfigur, jede Wand und jeder Baum besteht aus Dreiecksnetzen. Moderne Spiele bringen mehrere Millionen Dreiecke pro Einzelbild auf den Schirm, und das sechzigmal in der Sekunde. Auch die 3D-Filter in Videochats und die Effekte in Handy-Apps arbeiten so.
In der Industrie tauchen Primitive überall dort auf, wo etwas gebaut wird. Konstruktionsprogramme setzen Bauteile aus Quadern, Zylindern und Bohrungen zusammen. Ein 3D-Drucker bekommt am Ende fast immer eine Datei mit einem reinen Dreiecksnetz geliefert. Architekturbüros modellieren Gebäude aus einfachen Körpern, bevor Details dazukommen.
In KI-Meldungen begegnet dir der Begriff meist bei Robotik und autonomem Fahren. Dort umgibt man Objekte mit einer Bounding Box, also einem einfachen Quader als Hülle. Auch KI-Systeme, die aus Textbeschreibungen 3D-Modelle erzeugen, liefern das Ergebnis in aller Regel als Dreiecksnetz aus. Wer versteht, was Primitive sind, kann solche Nachrichten deutlich besser einordnen.