Kein Shading trotz Normalen und Lampen in OpenGL?
lima-city → Forum → Programmiersprachen → C/C++ und D
annehmen
array
code
farbe
fehler
gleichen daten
grad
kugel
lampe
machen
nachsehen
objekt
schatten
scheinen
schwarzen hintergrund
url
vergessen
versuchen
werfen
zeigen
-
Ich versuche grad eine Kugel die in einem Vertex Array gespeichert ist in OpenGL unter einfluss von Lampen darzustellen. Durch die Lampen sollte das Objekt ja "geshadet" werden bzw. Reflektionen zeigen was es aber nicht macht.
Die Lampen scheinen aber zu funktionieren da die Objekte die farbe der Lampe annehmen.
Ich schätze mal es liegt daran da die Normalen nicht richtig übergeben werden:
glVertexPointer(3, GL_FLOAT, 0, vertices); glNormalPointer(GL_FLOAT, 0, vertices); glDrawArrays(GL_TRIANGLES, 0, 50);
Was mach ich da falsch???
P.S. als polygonen und normalen nehm ich deswegen die gleichen daten weil der exporter (Blender) bei ecken und normalen die gleichen Daten liefert.
Pic; krisi12345.lima-city.de/Screen-Pics/opengl-fehler.png -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
toolz schrieb:
Hast du OpenGL auch durch
mitgeteilt, dass es überhaupt schattieren soll? Da würde ich zuerst mal nachsehen. Möglicherweise hast du das nämlich vergessen und der Standardwert ist auf aus.glShadeModel(GL_SMOOTH);
Ne, GL_SMOOTH ist schon aktiviert! -
Vergiss nicht, dass du auch eine Fläche brauchst, auf die du den Schatten werfen kannst. Nur einen schwarzen Hintergrund kannst du schlecht schattieren.
Liebe Grüße
- VampireSilence -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage