Okay, ich werde nun nur noch einige wenige Themenbereich beschreiben, da ich schneller durch die Inhalte durchlese als ich hier detailliert Schreiben kann. Inzwischen kann ich sagen, dass die Inhalte anfangen Sinn zu ergeben. Anders gesagt, ich kann einen Mehrwert erkennen die Inhalte zu lernen. Denn viele dieser Themen sind unumgänglich wenn man in Unity […]
Nun geht es endlich um die Beleuchtung (Lightning). Dieser Themenbereich umfässt: Colors, Lightning und Illumination. Das Phong lighting model besteht etwa aus Ambient lighting, Diffuse lighting und Specular lighting. Ambient lighting ist Beleuchtung, die nicht direkt von einer einzigen Lichtquelle kommen sondern Licht, dass von anderen Objekten reflektiert (also eine Art indirekte Beleuchtung). Es wird […]
NDCs sind normalized device coordinates, das heißt dass die x, y und z koordinaten in einer Spanne von -1 bis 1 definiert werden. Alles außerhalb des Bereichs wird von der Kamera nicht mehr erfasst. Die Spanne wird dabei von uns festgelegt, also die Spanne von Koordinaten die innerhalb von -1 bis 1 erfasst werden. Die […]
Als nächstes ist die Funktion glGenTextures verantwortlich für die Erstellung der IDs der Texturen (und die Textur an sich? Eine darauf folgende Funktion generiert nämlich die Textur erst noch…). Man kann in dieser Funktion angeben wie viele Texturen man beabsichtigt zu Erstellung und soviele IDs werden dann in einem Array gespeichert. Auch diese Texture wird […]
Um den geometrischen Figuren mehr Details zu verpassen werden Texturen verwendet (was im Grunde 2D Bilder sind). Der Vorteil soll darin bestehen, dass in einem Bild sehr viele Details eingefügt werden können, sodass die geometrischen Figuren im Endeffekt sehr detaillreich erscheinen ohne dass weitere Eckpunkte hinzugefügt werden müssen. Die Texture wird dann einfach nur über […]
Mit der Definition von gl_Position wird anscheinend automatisch ein Output an den fragment shader definiert. Das ist interessant, da wir für andere Variablen im vertex shader extra das Keyword out angeben müssen. Für die Position jedoch nicht. Wenn man sich zum Beispiel mal folgenden Code anschaut, dann bekommt “ourColor” extra den Keyword out, “gl_Position” jedoch […]
Um die Inhalte zu vertiefen gibt es drei Übungen auf der Seite. In der ersten Übungen sollen zwei Dreiecke nebeneinander mithilfe der Funktion glDrawArrays gezeichnet werden, indem weitere Vertices den Daten hinzugefügt werden. Das ging recht einfach: Und natürlich die Funktion glDrawArrays auf Anzahl sechs geändert, das ist die Angabe für die zu rendernden Vertices: […]
Da ich aktuell keine Zeit hab um entspannt Musik zu machen, habe ich mal das Motto aufgegriffen und versucht in kurzer Zeit nicht-entspannende Musik zu machen. Also das heißt etwas lauter, bisschen schneller und sehr präsent. Irgendwo zwischen “versuchtem Drum and Bass” und “Techno”? Keine Ahnung. Ich hab die Drum-Elemente schnell auf meinem Midi-Keyboard eingespielt, […]
Der letzte Teil besteht noch aus der Thematik über Element Buffer Objects (EBO). Also zu dem Vertex Buffer Object kommt jetzt noch ein Element Buffer dazu. So wie ich es verstehe ist das EBO eine Art “Malen nach Zahlen”. Um eine gewisse Redundanz von Koordinaten-Punkten zu vermeiden, werden einzelne Punkte nur einfach gespeichert und am […]
In dem Shader program werden die shader miteinander verlinkt, sodass der output des einen shaders in den input des anderen läuft. Dies geschieht mit der Funktion glCreateProgram. Die Shader werden an das Programm angehängt und schließlich mit der Funktion glLinkProgram miteinander verlinkt. Nun kann das Programm einfach verwendet werden: glUseProgram(shaderProgram). Der vorletzte Abschnitt besteht nun […]