ZFX
ZFX Neu
Home
Community
Neueste Posts
Chat
FAQ
IOTW
Tutorials
Bücher
zfxCON
ZFXCE
Mathlib
ASSIMP
NES
Wir über uns
Impressum
Regeln
Suchen
Mitgliederliste
Membername:
Passwort:
Besucher:
4440734
Jetzt (Chat):
16 (0)
Mitglieder:
5239
Themen:
24223
Nachrichten:
234554
Neuestes Mitglied:
-insane-

ZFX
Coding-Foren
OpenGL API + SDL
Multitexturing VBO GLSL Problem
Normal
AutorThema
wolf_10 Offline
ZFX'ler


Registriert seit:
18.10.2002

Baden-Württemberg
Multitexturing VBO GLSL ProblemNach oben.
Hi,
ich möchte 2 Texturen auf meine Geometrie klatschen. Beide Texturen werden korrekt geladen, hier mal mein Code
Code:
// Textur Layer 0
    glActiveTexture (GL_TEXTURE0);
    glClientActiveTexture(GL_TEXTURE0);
    glEnable(GL_TEXTURE_2D);
    glBindTexture(GL_TEXTURE_2D, [_model texture]);
    
    glEnableClientState(GL_TEXTURE_COORD_ARRAY);
    glBindBuffer(GL_ARRAY_BUFFER, [_model bufferTexCoords]);
       glTexCoordPointer(2, GL_FLOAT, 0, 0);
    
    [_shaderManager sendUniform1Int:@\"texture\" parameter:0];

    // Textur Layer 1
    glActiveTexture (GL_TEXTURE1);
    glClientActiveTexture(GL_TEXTURE1);
    glEnable(GL_TEXTURE_2D);
    glBindTexture(GL_TEXTURE_2D, _glowTexture);
    
    glEnableClientState(GL_TEXTURE_COORD_ARRAY);
    glBindBuffer(GL_ARRAY_BUFFER, [_model bufferTexCoords]);
    glTexCoordPointer(2, GL_FLOAT, 0, 0);
    
    [_shaderManager sendUniform1Int:@\"glowTexture\" parameter:1];


Alles was ich im Fragment-Shader gezeigt bekomme ist die Texture0 (texture), nicht aber meine glowTexture. Der Shader ist ganz simpel:
Code:
uniform sampler2D texture;
uniform sampler2D glowTexture;

void main()
{      
    gl_FragColor = texture2D(glowTexture, gl_TexCoord[0].st);
}


Irgendwie scheint es ein Problem mit der Textureeinheit 1 zu sein.
Jemand einen Tipp?
02.07.2008, 18:46:46 Uhr
Ingrater Offline
ZFX'ler


Registriert seit:
18.04.2007

Baden-Württemberg
Re: Multitexturing VBO GLSL ProblemNach oben.
Hast du die sampler auch richtig initialisiert? Jeder sampler muss mit der Nummer der Textureinheit die er nutzen soll initialisiert werden.

1 Mal gendert, zuletzt am 02.07.2008, 21:55:08 Uhr von Ingrater.
02.07.2008, 21:54:51 Uhr
suke Offline
ZFX'ler


Registriert seit:
18.01.2007

Österreich
Re: Multitexturing VBO GLSL ProblemNach oben.
Hi!

Ich habe schon lange nicht mehr mit OpenGL zu tun gehabt, aber kann es sein, dass bei dir irgendein Aufruf mit Multitextur fehlt?
02.07.2008, 22:57:00 Uhr
wolf_10 Offline
ZFX'ler


Registriert seit:
18.10.2002

Baden-Württemberg
Re: Multitexturing VBO GLSL ProblemNach oben.
Zitat von Ingrater:
Hast du die sampler auch richtig initialisiert? Jeder sampler muss mit der Nummer der Textureinheit die er nutzen soll initialisiert werden.

Ja die sind richtig.
texture wird an 0 gebunden und glowTexture an 1
03.07.2008, 05:43:38 Uhr
wolf_10 Offline
ZFX'ler


Registriert seit:
18.10.2002

Baden-Württemberg
Re: Multitexturing VBO GLSL ProblemNach oben.
Zitat von suke:
Hi!

Ich habe schon lange nicht mehr mit OpenGL zu tun gehabt, aber kann es sein, dass bei dir irgendein Aufruf mit Multitextur fehlt?

Ich rendere mit VBO's.
03.07.2008, 05:45:07 Uhr
Ingrater Offline
ZFX'ler


Registriert seit:
18.04.2007

Baden-Württemberg
Re: Multitexturing VBO GLSL ProblemNach oben.
Wieso setzt du die Texturkoordinaten 2 mal? Ist eigentlich nicht notwenig außer sie unterscheiden sich, da es bei dir aber die gleiche Datenquelle zu sein scheint, ist das 2. mal texturkoordinaten übergeben eigentlich nicht notwendig.
03.07.2008, 06:25:03 Uhr
Stefan Zerbst Offline
Administrator


Registriert seit:
25.02.2002

Deutschland
Re: Multitexturing VBO GLSL ProblemNach oben.
Hi,


  1. ist das Filtering für beide Texturen auf den jeweiligen Stages gesetzt?
  2. ist die Textur-Function gesetzt?
  3. spuckt glIntercept irgendeinen Fehler aus?


Ciao,
Stefan
03.07.2008, 14:09:27 Uhr
ZFX - 3D Entertainment
wolf_10 Offline
ZFX'ler


Registriert seit:
18.10.2002

Baden-Württemberg
Re: Multitexturing VBO GLSL ProblemNach oben.
Zitat von Ingrater:
Wieso setzt du die Texturkoordinaten 2 mal? Ist eigentlich nicht notwenig außer sie unterscheiden sich, da es bei dir aber die gleiche Datenquelle zu sein scheint, ist das 2. mal texturkoordinaten übergeben eigentlich nicht notwendig.


Ja das ist nicht nötig. Auch das einschalten der Texturierung ist nicht nötig (bei Shadern).
Ich bin immer noch am suchen, wie man VBO's mit Mltitexturing nutzt. Ich konnte noch nix dazu finden.

BTW: Es lag an meinem Shadermanager, ich hatte versehentlich, den falschen Shader geladen.

Danke für Eure Mühe
04.07.2008, 07:09:41 Uhr
Normal


ZFX Community Software, Version 0.9.1
Copyright 2002-2003 by Steffen Engel