android - OpenGL ES 3.0 half float (R16F) textures -


can answer me how come line:

gles30.glteximage2d(gles30.gl_texture_2d, 0,  gles30.gl_r16f, width, height, 0,  gles30.gl_red, gles30.gl_half_float, mybuffer); 

works on tegra4 doesn't work on arm mali-t628 mp6?

i not attaching framebuffer way, using read texture. code returned on arm 1280 tegra 'doesn't complain' @ all.

also, know tegra4 got extension half float textures, , specific mali doesn't have extension, since it's opengl es 3.0, shouldn't support such textures?

that call looks valid me. error 1280 gl_invalid_enum, suggests 1 of 3 enum type arguments invalid. each 1 itself, combination of them, spec compliant.

the explanation driver bug. found several es 3.0 drivers have numerous issues, it's not big surprise discover problems.


the section below written under assumption texture used render target (fbo attachment). please ignore if looking direct answer question.


gl_r16f not color-renderable in standard es 3.0.

if pull spec document, can found on www.khronos.org (direct link), table 3.13 on pages 130-132 lists texture formats , properties. r16f not have checkmark in "color-renderable" column, means can not used render target.

correspondingly, r16f listed under "texture-only color formats" in section "required texture formats" on pages 129-130.

this means device needs ext_color_buffer_half_float extension support rendering r16f. still case in es 3.1 well.


Comments

Popular posts from this blog

java - Plugin org.apache.maven.plugins:maven-install-plugin:2.4 or one of its dependencies could not be resolved -

Round ImageView Android -

How can I utilize Yahoo Weather API in android -