Problem Description
On older ati cards (ones that you can't get a driver for newer than 2010) sprites with non-power of two textures become invisible when you make them smaller.
Attach a Capx
https://dl.dropboxusercontent.com/u/542 ... e_ati.capx
Note: this is a ati driver bug so you likely can't reproduce.
Description of Capx
This just a sprite with a 200x200 texture resized to 50x50. The result on my radeon x1200 series card is the sprite is invisible.
Steps to Reproduce Bug
- Step 1: Create sprite with a non power of two texture size.
- Step 2: Resize the sprite smaller till it fades to invisible
Observed Result
When in the editor and I resize a sprite that has a non-power of two texture, it becomes invisible after shrinking it to a certain size.
Expected Result
I would expect the sprite to not become invisible.
Affected Browsers
N/A, it is a editor issue.
Operating System and Service Pack
Windows vista sp2
Construct 2 Version ID
r205 32bit
Proposed Solution
The bug has been reported a few times before and always has been closed as a driver bug, which is understandable since something like this is near impossible without being able to reproduce it. But recently I was working on something else in opengl where stuff was invisible and found the cause and a solution.
Basically the mipmaps aren't being created when using glGenerateMipmap due to an ati driver bug. Usually the solution is to update the drivers but that is impossible on cards like mine. I then stumbled upon this which gives a solution that worked for what I was working on.
https://www.opengl.org/wiki/Common_Mist ... generation
[quote:xzoylwwc]Warning: It has been reported that on some ATI drivers, glGenerateMipmap(GL_TEXTURE_2D) has no effect unless you precede it with a call to glEnable(GL_TEXTURE_2D) in this particular case. Once again, to be clear, bind the texture, glEnable, then glGenerateMipmap. This is a bug and has been in the ATI drivers for a while. Perhaps by the time you read this, it will have been corrected. (glGenerateMipmap doesn't work on ATI as of 2011)