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

Aktuelle Zeit: Fr Jul 18, 2025 05:26

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



Ein neues Thema erstellen Auf das Thema antworten  [ 5 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Specularmap
BeitragVerfasst: So Apr 17, 2005 13:38 
Offline
DGL Member

Registriert: Mi Aug 28, 2002 17:03
Beiträge: 37
Wohnort: ABG
Hi!
Ich wollte wissen, wie man Specularmaps ohne Shader benutzen kann. Wenn ich eine Dot3 Normalmap benutze, und bei der Textureunit 2 statts wie üblich GL_MODULATE, GL_ADD angebe, sieht das schon etwas danach aus. Jedoch sind doch Specularmaps eher Schwarz/Weiß. Deswegen brauche ich einen Denkanstoß, wie man soetwas realisieren kann. Habe schon in die OGL 2.0 Spec geschaut, um da eine Formel für Shininess zu finden, jedoch vergeblich.

mfg olli

_________________
Programmieren beginnt im Kopf und endet im Compiler


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Apr 17, 2005 16:48 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7810
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Also die Lichtberechnung findest du im Wiki: http://wiki.delphigl.com/index.php/Beleuchtung

So sollte das bei OGL auch gemacht werden.

_________________
Blog: kevin-fleischer.de und fbaingermany.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Apr 17, 2005 16:55 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Dez 28, 2002 11:13
Beiträge: 2244
Die Specular Map so wie bei Doom wird mit dem Specular Licht multipliziert und gibt die Helligkeit und Farbe des Glanzlichtes an. Dabei bleibt der Exponent aber fest. Deshalb sieht da auch alles so ein wenig nach Plastik aus. Man kann natürlich auch noch den Exponent ebenfalls aus einer Texture lesen und so unterschiedlich große bzw. scharfe Glanzlichter erzeugen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Apr 17, 2005 22:46 
Offline
DGL Member

Registriert: Mi Aug 28, 2002 17:03
Beiträge: 37
Wohnort: ABG
Hi!
Danke ersteinmal! Habe nun auch die Formeln in der Spec gefunden.

Bild
Jetzt verstehe ich nicht, was in der Specularmap gespeichert wird. Dachte immer das wären die Specular-Exponenten, aber wenn du sagst, das der Exponent konstant bleibt, frage ich mich, was stattdessen gespeichert wird?

Nach dem obrigen Bild zu urteilen, müsste doch eine Specularmap ebenfalls eine Normalmap sein. Ausgehend davon könnte man dann den Specularanteil für jeden Texel bestimmen. Dieser wird dann über GL_ADD zur 2. Textureunit hinzu addiert. Oder ganz krass, wie schon gesagt wurde, Normalmap und Exponentmap.

Also was mich eben interessiert ist, wie eine Specularmap einbezogen wird, und wenn es Infos gibt, wie dies Quake mit macht(gibt es nicht generell so ne Art technische Referenz zu Quake?).

mfg olli

_________________
Programmieren beginnt im Kopf und endet im Compiler


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Apr 17, 2005 23:48 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Dez 28, 2002 11:13
Beiträge: 2244
Ne die Specularmap ist einfach eine Texture für die Intensität des Glanzlichtes. Man gibt da also an, wo es glänzen soll. So ungefähr.

Normale=texture2D(NormalMap);
Diffuse = dot(Lichtvektor,Normale) * texture2D(Diffusemap);
Specular=dot(HalfVektor,Normale)^SpecularExponent *texture2D(SpecularMap);
Result=Diffuse+Specular


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 5 Beiträge ] 
Foren-Übersicht » Programmierung » OpenGL


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 4 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.006s | 14 Queries | GZIP : On ]