Merge pull request #24568 from Shinryuuji/fix-wrong-texture-array-target
Fix wrong default target for sampler2DArray
This commit is contained in:
commit
d8f0087dc8
3 changed files with 16 additions and 0 deletions
|
@ -1268,7 +1268,14 @@ bool RasterizerSceneGLES3::_setup_material(RasterizerStorageGLES3::Material *p_m
|
||||||
case ShaderLanguage::TYPE_ISAMPLER2DARRAY:
|
case ShaderLanguage::TYPE_ISAMPLER2DARRAY:
|
||||||
case ShaderLanguage::TYPE_USAMPLER2DARRAY:
|
case ShaderLanguage::TYPE_USAMPLER2DARRAY:
|
||||||
case ShaderLanguage::TYPE_SAMPLER2DARRAY: {
|
case ShaderLanguage::TYPE_SAMPLER2DARRAY: {
|
||||||
|
|
||||||
|
target = GL_TEXTURE_2D_ARRAY;
|
||||||
|
tex = storage->resources.white_tex_array;
|
||||||
|
|
||||||
|
//switch (texture_hints[i]) {
|
||||||
// TODO
|
// TODO
|
||||||
|
//}
|
||||||
|
|
||||||
} break;
|
} break;
|
||||||
|
|
||||||
default: {}
|
default: {}
|
||||||
|
|
|
@ -7776,6 +7776,14 @@ void RasterizerStorageGLES3::initialize() {
|
||||||
|
|
||||||
glTexParameteri(GL_TEXTURE_3D, GL_TEXTURE_BASE_LEVEL, 0);
|
glTexParameteri(GL_TEXTURE_3D, GL_TEXTURE_BASE_LEVEL, 0);
|
||||||
glTexParameteri(GL_TEXTURE_3D, GL_TEXTURE_MAX_LEVEL, 0);
|
glTexParameteri(GL_TEXTURE_3D, GL_TEXTURE_MAX_LEVEL, 0);
|
||||||
|
|
||||||
|
glGenTextures(1, &resources.white_tex_array);
|
||||||
|
glActiveTexture(GL_TEXTURE0);
|
||||||
|
glBindTexture(GL_TEXTURE_2D_ARRAY, resources.white_tex_array);
|
||||||
|
glTexImage3D(GL_TEXTURE_2D_ARRAY, 0, GL_RGB, 8, 8, 1, 0, GL_RGB, GL_UNSIGNED_BYTE, NULL);
|
||||||
|
glTexSubImage3D(GL_TEXTURE_2D_ARRAY, 0, 0, 0, 0, 8, 8, 1, GL_RGB, GL_UNSIGNED_BYTE, whitetexdata);
|
||||||
|
glGenerateMipmap(GL_TEXTURE_2D_ARRAY);
|
||||||
|
glBindTexture(GL_TEXTURE_2D, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
glGetIntegerv(GL_MAX_TEXTURE_IMAGE_UNITS, &config.max_texture_image_units);
|
glGetIntegerv(GL_MAX_TEXTURE_IMAGE_UNITS, &config.max_texture_image_units);
|
||||||
|
|
|
@ -133,6 +133,7 @@ public:
|
||||||
GLuint aniso_tex;
|
GLuint aniso_tex;
|
||||||
|
|
||||||
GLuint white_tex_3d;
|
GLuint white_tex_3d;
|
||||||
|
GLuint white_tex_array;
|
||||||
|
|
||||||
GLuint quadie;
|
GLuint quadie;
|
||||||
GLuint quadie_array;
|
GLuint quadie_array;
|
||||||
|
|
Loading…
Reference in a new issue