# Pixel 10 OpenGL bug: cannot read from R32F, R32UI textures via image binding

**URL:** <https://forums.imgtec.com/t/pixel-10-opengl-bug-cannot-read-from-r32f-r32ui-textures-via-image-binding/4235>\
**Category:** PowerVR Insider\
**Created:** [September 23, 2025, 8:43am UTC](https://forums.imgtec.com/t/pixel-10-opengl-bug-cannot-read-from-r32f-r32ui-textures-via-image-binding/4235 "2025-09-23T08:43:28Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![ileben](https://avatars.discourse-cdn.com/v4/letter/i/cdc98d/32.png) [@ileben](https://forums.imgtec.com/u/ileben)\
**Post date:** [September 23, 2025, 8:43am UTC](https://forums.imgtec.com/t/pixel-10-opengl-bug-cannot-read-from-r32f-r32ui-textures-via-image-binding/4235/1 "2025-09-23T08:43:28Z")

</div>

I’ve run into what looks like a driver bug.

Pixel 10 - Android 16 - OpenGL ES 3.2 build 24.3@6660496

When trying to read from a 3D texture with a R32F or R32UI formats via an image binding in a compute shader, the value returned is always 0 (using imageLoad function). If I read from the same texture using a sampler instead (using texelFetch) the value returned as expected. Reading from a texture with RGBA8 format via image binding is also successful.

I have confirmed the above behaviour in an isolated case and have a GLSL shader to reproduce it, but the website doesn’t allow me to upload an attachment.

I do not get any OpenGL errors reported during the texture data upload or the compute dispatch.

Writing via an image binding might also not work, but I have not yet confirmed that in an isolated scenario.

EDIT: just wanted to mention that the same code runs fine on other mobile GPUs.

---

<div class="post-metadata">

**Author:** ![AlejandroC](https://avatars.discourse-cdn.com/v4/letter/a/97f17d/32.png) [@AlejandroC](https://forums.imgtec.com/u/AlejandroC)\
**Post date:** [September 24, 2025, 8:45am UTC](https://forums.imgtec.com/t/pixel-10-opengl-bug-cannot-read-from-r32f-r32ui-textures-via-image-binding/4235/2 "2025-09-24T08:45:51Z")

</div>

Hi ileben,

Thanks for your message and welcome to the PowerVR Developer Forum!

Would it be possible to provide a Development build of an Android application reproducing the issue? You can use our Support email [IMG-InternalSupportDevTechEcosystem@imgtec.com](mailto:IMG-InternalSupportDevTechEcosystem@imgtec.com) in case that makes handling the application easier.

Best regards,  
Alejandro

---

<div class="post-metadata">

**Author:** ![ileben](https://avatars.discourse-cdn.com/v4/letter/i/cdc98d/32.png) [@ileben](https://forums.imgtec.com/u/ileben)\
**Post date:** [September 29, 2025, 8:31am UTC](https://forums.imgtec.com/t/pixel-10-opengl-bug-cannot-read-from-r32f-r32ui-textures-via-image-binding/4235/3 "2025-09-29T08:31:09Z")

</div>

Thanks, Alejandro.

I’ve sent an email with the application to the email address you provided.

For anyone else reading this: I’ve pinpointed the core of the issue - imageLoad fails unless the texture has its min/mag filters set to GL\_NEAREST, even though the sampler state and/or mipmap-completness probably shouldn’t matter for the purpose of imageLoad/Store operations (and other drivers seem to happily ignore it).

---

<div class="post-metadata">

**Author:** ![AlejandroC](https://avatars.discourse-cdn.com/v4/letter/a/97f17d/32.png) [@AlejandroC](https://forums.imgtec.com/u/AlejandroC)\
**Post date:** [October 1, 2025, 2:44pm UTC](https://forums.imgtec.com/t/pixel-10-opengl-bug-cannot-read-from-r32f-r32ui-textures-via-image-binding/4235/4 "2025-10-01T14:44:08Z")

</div>

Thank you ileben,

I already replied internally.

It seems the code must follow the spec, where integer textures do not support linear filtering. GL\_TEXTURE\_MAG\_FILTER must be GL\_NEAREST and GL\_TEXTURE\_MIN\_FILTER either GL\_NEAREST or GL\_NEAREST\_MIPMAP\_NEAREST ( [Texture - OpenGL Wiki](https://wikis.khronos.org/opengl/texture) ). This makes the code work correctly.

Best regards,  
Alejandro
