If you're seeing this message, it means we're having trouble loading external resources on our website.

Wenn du hinter einem Webfilter bist, stelle sicher, dass die Domänen *. kastatic.org und *. kasandbox.org nicht blockiert sind.

Hauptinhalt

Was sind 3D-Formen?

Dieses Tutorial stammt von  Peter Collingridge  und wurde ursprünglich auf seiner Webseite veröffentlicht.
Wenn du schon hier auf Khan Academy programmiert hast, hast du wahrscheinlich eine Menge 2D-Formen wie Rechtecke und Ellipsen gezeichnet, und dich vielleicht gefragt, wie man 3D-Formen wie Würfel und Kugeln erzeugt.
Also, die ProcessingJS-Bibliothek, die wir hier verwenden, wurde nicht wirklich für 3D-Formen entworfen. Allerdings können wir mit ein bisschen Trigonometrie unseren eigenen 3D-Grafik-Engine schreiben und dabei lernen, wie 3D-Grafiken funktionieren - und aus welchem Grund man Trigonometrie kennen sollte, abgesehen davon, dass es Mathelehrer glücklich macht.
Hier ist ein Beispiel dafür, welche Art von Programmen man schreiben kann - benutze die Maus, um den Donut zu drehen:

Was sind 3D-Grafiken?

Da Computerbildschirme im Grunde zweidimensional sind, handelt es sich bei 3D-Grafiken nur um optische Täuschungen in 2D, die deinem Gehirn vorgaukeln, ein 3D-Objekt zu sehen. Hier ein einfaches Beispiel:
Drei Parallelogramme, die wie ein Würfel aussehen
Ein 3D-Grafik-Engine berechnet die 2D-Formen, die nötig sind, um ein 3D-Objekt auf dem Bildschirm darzustellen. Um also deinen eigenen 3D-Engine zu schreiben, müssen wir wissen, wie man diese Berechnungen durchführt. Unser Programm wird nicht so schnell laufen wie die meisten 3D-Engines, sollte uns aber dabei helfen, ihre Arbeitsweise zu verstehen.

Formen darstellen

Ein 3D-Grafik-Engine nimmt ein 3D-Objekt und konvertiert es in eine 2D-Grafik, aber wie bilden wir ein 3D-Objekt als Code ab?
Ein einziger Punkt im dreidimensionalen Raum kann einfach durch ein Array von drei Zahlen abgebildet werden. Zum Beispiel können wir  [30, 80, 55]  vewenden, um einen Punkt abzubilden, der 30 Pixel auf der horizontalen (x)-Achse, 80 Pixel auf der vertikalen (y)-Achse und 55 Pixel auf der Achse liegt, die in den Bildschirm hinein- und wieder herausläuft. Spiele mit dem folgenden Punkt herum, drehe ihn mit der Maus und verändere die Zahlen:
Eine Linie abzubilden ist auch einfach: Du brauchst nur zwei Punkte zu verbinden. Daher ist eine Möglichkeit, ein Objekt in 3D abzubilden, es in eine Reihe von Linien zu konvertieren. Dies wird Wireframe genannt, weil es aussieht, als wäre das Objekt aus einem Rahmen aus Draht gebaut. Natürlich ist das nicht ideal, um ein massives Objekt abzubilden, aber es ist ein guter Anfang.

Begriffe

Hier kommen einige Begriffe, die wir verwenden, wenn wir über 3D-Formen reden. Anderswo werden möglicherweise andere Begriffe verwendet, aber diese hier sind sehr verbreitet.
  • Knotenpunkt: ein Punkt, der durch drei Koordinaten x, y und z abgebildet wird (kann auch Vertex genannt werden).
  • Kante: eine Linie, die zwei Punkte verbindet.
  • Fläche: eine Oberfläche, die mindestens durch drei Punkte definiert ist.
  • Wireframe: eine Form, die nur aus Knoten und Kanten besteht.

Willst du an der Diskussion teilnehmen?

Verstehst du Englisch? Klick hier, um weitere Diskussionen auf der englischen Khan Academy Seite zu sehen.