Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Mi Jul 16, 2025 11:56

Foren-Übersicht » Programmierung » OpenGL
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 21 Beiträge ]  Gehe zu Seite Vorherige  1, 2
Autor Nachricht
 Betreff des Beitrags:
BeitragVerfasst: Fr Mär 05, 2004 18:00 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Hallo? Les dir doch mal durch was ich oben geschrieben habe. Da steht ne konkrete Lösung dabei. Ich bin mir ziemlich sicher, das dein vierter Paramter bei der Lichtposition gleich 0 ist, also du eine direktionale Lichtquelle hast. Direktionale Lichtquellen kann man nicht platzieren, dort wird der Positionsvektor als Lichtrichtung interpretiert. Übergib als w-Paramter für GL_POSITION also mal nen Wert > 0 und schon solte sich was ändern.

P.S. : Ich poste nur sehr selten konkreten Quellcode zur Problemlösung. Das verführt zu simplem C&P ohne das sich der Fragensteller Gedanken macht. Aber hier in dem Thread wurden einige konkrete Lösungsansätze gemacht.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mär 06, 2004 09:01 
Offline
DGL Member

Registriert: So Feb 29, 2004 14:15
Beiträge: 11
Ich habe doch meinen Quellcode hochgeladen. Da ist der w-Parameter > 0, der Fehler besteht jedoch weiterhin. Außerdem möchte ich ja auch nicht unbedingt komplett verbesserten Code, sondern nur dass sich jemand mal mein Programm durchschaut und mir sagt, was daran falsch ist.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mär 06, 2004 09:41 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Aug 28, 2002 19:27
Beiträge: 568
Wohnort: Chemnitz / Sachsen
ich dachte, das problem wäre mit meiner und sos's antwort erledigt, wo liegt denn das derzeitige problem ganz genau???

_________________
Aktuelles Projekt :
www.PicPlace.de


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mär 06, 2004 11:13 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Hab jetzt mal in deinen Quellcode geschaut (übrigens fehlt die wichtigste Datei, nämlich die Projektdatei) und glaube dein Problem liegt ganz anders. Du übergibst nämlich nirgendwo Normalvektoren, ohne die die OpenGL-Beleuchtung garnicht funktionieren kann. Normalvektoren werden zur korrekten Berechnung des Lichteinfalls benötigt und müssen daher entweder per-Dreieck oder (besser) per-Polygon übergeben werden.

Zitat aus dem von mir oben erwähnten Redbook-Kapitel das wohl nicht gelesen wurde :
Zitat:
Define Normal Vectors for Each Vertex of All the Objects
An object's normals determine its orientation relative to the light sources. For each vertex, OpenGL uses the assigned normal to determine how much light that particular vertex receives from each light source. In this example, the normals for the sphere are defined as part of the auxSolidSphere() routine. See "Normal Vectors" for more details on how to define normals.


Wie man Normalen berechnet wurde hier im Forum bereits mehrere Male (auch erst vor kurzem) gesagt, nutze dazu also mal die Suchfunktion. Aber wie gesagt wirst du ohne die Normalen anzugeben keine korrekte Beleuchtung hinbekommen, egal ob deine Lichtparameter korrekt sind oder nicht.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mär 06, 2004 15:22 
Offline
DGL Member

Registriert: So Feb 29, 2004 14:15
Beiträge: 11
Vielen Dank, das Kapitel habe ich ehrlich gesagt übersprungen, da ich dachte das wäre nur dafür da um irgendwelche Kanten abzurunden und es realistischer aussehen zu lassen. Jetzt habe ich mir mal den Teil durchgelesen und muss sagen, das ist hardcore-Mathematik von der ich noch absolut keine Ahnung hab. Kennt da vielleicht jemand ein ausführlicheres Tutorial?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mär 06, 2004 17:55 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Dez 13, 2002 12:18
Beiträge: 1063
Ist eigentlich alles hier zu finden - Stichworte:
* Normale einer Fläche/eines Dreiecks bestimmen
* Punktnormale aus Normalen der angrenzenden Flächen interpolieren

Wenn du mal einen kleinen Blick ins Anfängerforum wirfst (oder die Suchfunktion verwendest), hat LarsMiddendorf dort erst kürzlich eine recht ausführliche Anleitung (mit Code) zu genau diesem Problem gegeben...

_________________
Viel Spaß beim Programmieren,
Mars
http://www.basegraph.com/


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 21 Beiträge ]  Gehe zu Seite Vorherige  1, 2
Foren-Übersicht » Programmierung » OpenGL


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.008s | 15 Queries | GZIP : On ]