# Texture loading problem PowerVR SGX540... HELP!!!!

**URL:** <https://forums.imgtec.com/t/texture-loading-problem-powervr-sgx540-help/1503>\
**Category:** PowerVR Insider\
**Created:** [August 21, 2012, 12:08am UTC](https://forums.imgtec.com/t/texture-loading-problem-powervr-sgx540-help/1503 "2012-08-21T00:08:44Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![tanali](https://avatars.discourse-cdn.com/v4/letter/t/5daacb/32.png) [@tanali](https://forums.imgtec.com/u/tanali)\
**Post date:** [August 21, 2012, 12:08am UTC](https://forums.imgtec.com/t/texture-loading-problem-powervr-sgx540-help/1503/1 "2012-08-21T00:08:44Z")

</div>

Hi

  

I am working on a 3d game for android and it is currently in the market.

[https://play.google.com/store/apps/details?id=render6d.quake3.activity&nbsp;](http://play.google.com/store/apps/details?id=render6d.quake3.activity%C3%82)

  

It uses compressed ETC textures mostly.&nbsp;

  

My users have have tested this app. on many different devices with Adreno-200, Adreno-205, Mali-400MP, gpus&nbsp;

It is working fine there…

  

But any device using PowerVR SGX540 GPU will not load many textures correctly…

And some textures are loaded completely black while others are loaded correctly…

  

I have made sure that all my textures are power-of-two,

but some are not square and can be rectangular e.g. &nbsp;64\*128.

  

Why am i having this problem, please help!!!

  

I use the following opengl Paramters when loading the textures:  
  
\<pre =“lang-c prettyprint” style="margin-top: 0px; margin-bottom: 10px; padding: 5px; border: 0px; font-size: 14px; vertical-align: line; : rgb238, 238, 238; font-family: Consolas, Menlo, Monaco, ‘Lucida Console’, ‘Liberation Mono’, ‘DejaVu Sans Mono’, ‘Bitstream Vera Sans Mono’, ‘Courier New’, monospace, serif; overflow: auto; width: auto; max-height: 600px; line-height: 18px; "\>`<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">gl<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">.<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">glActiveTexture<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">(<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">GL10<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">.<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">GL_TEXTURE0<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">);<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">               gl<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">.<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">glBindTexture<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">(<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">GL10<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">.<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">GL_TEXTURE_2D<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">,<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; "> glTextureId<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">);<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">gl<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">.<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">glTexParameterf<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">(<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">gl<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">.<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">GL_TEXTURE_2D<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">,<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; "> gl<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">.<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">GL_TEXTURE_MIN_FILTER<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">,<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; "> gl<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">.<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">GL_LINEAR<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">);<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">gl<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">.<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">glTexParameterf<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">(<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">gl<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">.<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">GL_TEXTURE_2D<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">,<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; "> gl<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">.<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">GL_TEXTURE_MAG_FILTER<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">,<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; "> gl<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">.<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">GL_LINEAR<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">);<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; "> gl<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">.<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">glTexParameterf<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">(<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">GL10<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">.<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">GL_TEXTURE_2D<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">,<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; "> GL10<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">.<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">GL_TEXTURE_WRAP_S<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">,<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; "> GL10<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">.<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">GL_CLAMP_TO_EDGE<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">);<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">gl<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">.<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">glTexParameterf<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">(<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">GL10<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">.<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">GL_TEXTURE_2D<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">,<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; "> GL10<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">.<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">GL_TEXTURE_WRAP_T<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">,<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; "> GL10<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">.<span =“pln” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">GL_CLAMP_TO_EDGE<span =“pun” style="margin: 0px; padding: 0px; border: 0px; vertical-align: line; : transparent; ">);`

---

<div class="post-metadata">

**Author:** ![JoeDavis](https://sea1.discourse-cdn.com/flex015/user_avatar/forums.imgtec.com/joedavis/32/71_2.png) [@JoeDavis](https://forums.imgtec.com/u/JoeDavis)\
**Post date:** [September 5, 2012, 7:47am UTC](https://forums.imgtec.com/t/texture-loading-problem-powervr-sgx540-help/1503/2 "2012-09-05T07:47:14Z")

</div>

Hi tanali,  
  
Have you tried testing your application with all textures forced to square power-of-two to see if this resolves the rendering issues? Are you certain that the non-square power-of-two textures are the cause of the problem?  
  
Thanks,  
Joe
