Als mentale Übung versuche ich mir vorzustellen, ein beliebiges 4D-Netz auf den Bildschirm zu projizieren (2D).
Ich vermute, ein einzelnes 4D-Dreieck würde immer noch aus nur 3 Punkten bestehen, jedoch würde jeder dieser 3 Punkte durch eine Spalte mit 4 Dimensionen definiert.
Wäre es sinnvoller, zuerst eine Projektionsmatrix zu definieren, um den 4D-Raum dem 3D-Raum zuzuordnen, und dann OpenGL eine eigene Projektion von diesen Daten in den 2D-Raum durchführen zu lassen?
Oder ist es am besten, einfach direkt von 4 auf 2 zu projizieren?
Danke vielmals.
matrix
vector
projection
Bitcruncher
quelle
quelle
Antworten:
Die mehrdimensionale Verallgemeinerung eines Dreiecks ist ein N-Simplex . Hier ist ein Video einer Projektion eines solchen Objekts. Hier ist ein weiteres interessantes Video eines 4D-Hyperwürfels.
Diese Wiki- Seite ist ein guter Ausgangspunkt, wenn Sie mehr über die vierte Dimension und die Visualisierung solcher Objekte erfahren möchten. Es verknüpft auch eine Wiki-Seite mit einer Liste von 4D-Spielen .
Zu Ihrer Frage zur Projektion: In diesem Artikel wird die Mathematik von orthografischen und perspektivischen Projektionsmatrizen für höhere Dimensionen erläutert. Ein weiteres großartiges Papier ist die Vier-Raum-Visualisierung von 4D-Objekten von Steven Richard Hollasch. Insbesondere der Abschnitt "4.1: Überblick über die 4D-zu-2D-Projektion auf hoher Ebene" beantwortet Ihre Projektionsfrage ausführlich und enthält den Quellcode.
Schließlich ist hier ein N-dimensionaler Renderer mit OpenGL, der mit vollständigem Quellcode geliefert wird.
quelle