Ich habe ein sehr störendes Problem mit Glsl in WebGL.WebGL GLSL Shader: Zugriff auf Textur2D überschreibt andere Textur
Dieser Shader funktioniert wie erwartet:
uniform sampler2D tColor;
uniform sampler2D tNormal;
varying vec2 vUv;
void main() {
gl_FragColor = texture2D(tColor, vUv);
}
Aber dieses verhält sich total anders:
uniform sampler2D tColor;
uniform sampler2D tNormal;
varying vec2 vUv;
void main() {
vec4 test = texture2D(tNormal, vUv);
gl_FragColor = texture2D(tColor, vUv);
}
Durch die tNormal Textur zugreift, wird die TColor Textur außer Kraft gesetzt. Wie ist das möglich?
Sollte nicht möglich sein. Kannst du deinen clientseitigen Code (Texturen, Shader, Binding usw.) aufstellen, um sicherzustellen, dass dort nichts falsch läuft? – Tim
Auf welcher Plattform sehen Sie das? Chrome ANGLE/OpenGL, FF, Win, Mac usw.? Und bist du sicher, dass deine Farbtextur nicht an ein Renderziel gebunden ist? – MikaelEmtinger