Re: [AD] ex_pixelformat broken? |
[ Thread Index |
Date Index
| More lists.liballeg.org/allegro-developers Archives
]
On Thu, 2009-03-12 at 23:40 +0100, Elias Pschernig wrote:
> >
> > I've tracked it down to ogl_lock_region(). I believe after reading the
> > texture data into a memory buffer it's missing a conversion to the
> > format specified in the parameter list.
> >
>
> I see - the formats OpenGL can't convert to directly, we probably should
> do that (not the ones it already can). I'll see if I can fix it.
Ok, many commits later I think ex_pixelformat works now 100% correctly.
There is one problem remaining here when drawing into one of the
following 4 formats using FBO:
ALLEGRO_PIXEL_FORMAT_RGB_555
ALLEGRO_PIXEL_FORMAT_RGBA_5551
ALLEGRO_PIXEL_FORMAT_ARGB_1555
ALLEGRO_PIXEL_FORMAT_BGR_555
Uploading textures in these formats in client memory works correctly
though, and also formats like ALLEGRO_PIXEL_FORMAT_RGB_565 work.
Therefore I believe it's a bug in my OpenGL drivers and not with
ex_pixelformat/Allegro.
Would be interesting if everyone could run ex_pixelformat with OpenGL
and FBO, select ANY to the left, and the above 4 formats to the right,
and report the results.
> Btw., do we really need to support formats like 5551 or 4444? OpenGL
> doesn't seem to have them, and from what I see in DX 10 they also were
> removed (DX 9 has them though).
Well, re-reading the OpenGL specs, I was able to tell it about all those
formats after all. So until we get a DX 10 driver, all formats are
supported now with DX as well as OpenGL.
--
Elias Pschernig <elias@xxxxxxxxxx>