Frage zur Vektor Klasse



  • Wenn ihr eine Vektor Klasse erstellen würdet, würdet ihr dann nur x,y und z darin speichern, oder die homogene Komponente w gleich mit?



  • Man braucht sowohl 2d-, 3d- als auch 4d-Vektoren.
    Es macht zB wenig Sinn, 2d-Texturkoordinaten pauschal als 4d-Vektor abzulegen.



  • Wozu brauch ich denn 4D Vektoren? Wenn dies nur für die Multiplikation mit 4x4 Matrizen ist, dann kann ich doch einfach die w Komponenten ranhängen und nach der Transformation wieder in 3D wandeln. Macht es wirklich Sinn w die ganze Zeit mitzuschleppen?

    Man braucht 2D Vektoren für die Texturen? Ich dachte immer dies seien nur Koordinaten die zusammen mit den Vertex-Normalen, der Vertex-Color und der Position als Vertex zusammengefasst in der Datenstruktur für ein Model abgelegt werden.

    Sorry, ich bin noch neun in 3D.



  • Generell kennt jede Shading-Language ja die Datentypen float, vec2, vec3, vec4 und die moechte man auf C-Seite ja irgendwie abbilden koennen.

    Im einfachsten Fall lassen sich mit einem 4d-Vektor beispielsweise Farben mit Alpha-Kanal darstellen.

    Es ist ganz angenehm wenn fuer alle Vertex-Attribute die gleichen mathematischen Operationen zur Verfuegung stehen. Bei solchen Dinge wie nachtraeglicher Subdivision kommt zB schon mal die Frage auf, welche UV-Koordinate die Mitte des Polygons hat.



  • Ja ok, das macht Sinn.


Anmelden zum Antworten