On Mon, Jul 14, 2008 at 02:51:42AM +0400, Victor Eremin wrote:
Converter function supports conversion between most of "unsigned color" argb/xrgb surface formats (like D3DFMT_A8R8G8B8, D3DFMT_A8R3G3B2, and so on), and between "luminosity" color formats (D3DFMT_L8, etc), excluding D3DFMT_A16R16G16B16, D3DFMT_A8P8, D3DFMT_P8 and D3DFMT_A1.
Conversion from rgba to luminosity (and vice versa) is not currently implemented.
The patch removes "Cannot find coverter" FIXMEs from "Ancient Evil" and "Stranded 2" games.
Patch also fixes water glitches in "Stranded 2" game.
I've attached my pixel conversion function which uses the table in utils.c. Hope you find it useful although I haven't really polished it.