Re: Textures from SDL upside down
Sven Panne <[email protected]>
| Newsgroups | gmane.comp.lang.haskell.hopengl |
|---|---|
| Message-ID | <[email protected]> |
On Tuesday 06 March 2007 00:25, Bas van Dijk wrote: > I am using HOpenGL in combination with hsSDL > (http://darcs.haskell.org/~lemmih/hsSDL). This works great except for > texture loading. All my textures are mirrored over the v-axis. So the > top of a texture becomes the bottom. I first thought that I got the > texture coordinates wrong. But the textures are also flipped on the GLU > quadrics. IIRC, in SDL the y-coordinate increases when going down the screen, while OpenGL uses the usual mathematical convention of y increasing when going up. Therefore your images are flipped, I guess. > Is there some way to tell (H)OpenGL that a texture is mirrored? I tried > glPixelStore parameters but I don't think it is possible that way. > Perhaps it is possible to change a hsSDL surface before loading the > pixel data. Any advice is welcome. Usually the easiest and most efficient way is to simply flip your t texture coordinate, i.e. use 1-t instead of t. Using pixelStore should be possible, too (using negative offsets etc.), but often this is not really needed. Cheers, S.