Tôi gặp sự cố rất đáng lo ngại với sự lóa trong WebGL.Trình vẽ WebGL GLSL: truy cập texture2D ghi đè lên kết cấu khác
shader này hoạt động như mong đợi:
uniform sampler2D tColor;
uniform sampler2D tNormal;
varying vec2 vUv;
void main() {
gl_FragColor = texture2D(tColor, vUv);
}
Nhưng, lần này cư xử tổng khác nhau:
uniform sampler2D tColor;
uniform sampler2D tNormal;
varying vec2 vUv;
void main() {
vec4 test = texture2D(tNormal, vUv);
gl_FragColor = texture2D(tColor, vUv);
}
Bằng cách truy cập vào kết cấu tNormal, kết cấu tColor được ghi đè. Sao có thể như thế được?
Không thể thực hiện được. Bạn có thể đặt mã phía khách hàng của bạn (kết cấu, shaders, ràng buộc, vv), để đảm bảo rằng không có gì không chính xác đang xảy ra ở đó? – Tim
Bạn thấy nền tảng này trên nền tảng nào? Chrome ANGLE/OpenGL, FF, Win, Mac, v.v.? Và bạn có chắc rằng kết cấu màu của bạn không bị ràng buộc với mục tiêu hiển thị không? – MikaelEmtinger