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

Aktuelle Zeit: Fr Jul 18, 2025 08:12

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



Ein neues Thema erstellen Auf das Thema antworten  [ 2 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Cubemaps an den Shader übergeben
BeitragVerfasst: So Dez 12, 2010 20:46 
Offline
DGL Member

Registriert: Mi Mär 08, 2006 17:38
Beiträge: 153
Wohnort: Rümmelsheim (bei Bingen)
Hallo,

ganz einfache Frage, aber ich komm leider nicht auf die Lösung. Habe versucht das Cubemapping mit einem Shader nachzuprogrammieren. Das hat auch soweit geklappt:
Code:
//Laden der Cubemap mittels glBitmap
//Cubemap ist dabei vom Typ GluInt  -- > Ist das korrekt?
 LoadCubemap('opensea_positive_x.tga','opensea_negative_x.tga','opensea_positive_y.tga','opensea_negative_y.tga','opensea_positive_z.tga','opensea_negative_z.tga',Cubemap,false);
//...als nächstes wird die Cubemap gebunden und an den Shader übergeben:
glBindTexture(GL_TEXTURE_CUBE_MAP,Cubemap);
glUniform1i(glGetUniformLocation(Shader, PGLCharARB('Tex')), 0);


Im Shader wird dann einfach folgendes gemacht:
Code:
 
uniform samplerCube Tex ;
//....
gl_FragColor = textureCube(Tex, reflect(v,normal));


Soweit hat alles wunderbar geklappt. Jetzt wollte ich aber noch eine Bumpmap mitgeben und daran scheitere ich:
Code:
 glBindTexture(GL_TEXTURE_2D,Bump) ;
 glUniform1i(glGetUniformLocation(Shader, PGLCharARB('Bump')), 0);


Zur Probe hab ich mal getestet, ob die Bumpmap angekommen ist und habe sie einfach als Textur genutzt. Hat geklappt. Aber meine Cubemap ist jetzt weg.

Das Problem liegt glaube ich an glUniform1i(glGetUniformLocation(Shader, PGLCharARB('Tex')), 0);
Ich verstehe nicht ganz welchen Wert ich hinten übergeben muss. Bisher dachte ich für GL_TEXTURE0 eine 0, für GLTEXTURE1 eine 1 usw.
Was aber für die Cubemap?

Vielen Dank im Vorraus


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: So Dez 12, 2010 22:04 
Offline
DGL Member

Registriert: Mi Mär 08, 2006 17:38
Beiträge: 153
Wohnort: Rümmelsheim (bei Bingen)
Ok, ich glaube ich hab das Problem gelöst:

Anstelle von glBindTexture(GL_TEXTURE_CUBE_MAP,Cubemap); habe ich die Cubemap einfach in eine Normale Texturebene reingeladen. Indiesem falls
glBindTexture(GL_TEXTURE0,Cubemap);


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


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 3 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 ]