Post by IsmAvatar on Feb 14, 2006 15:51:03 GMT -5
Thanks to GM_Guru from G-Java for this information (I'm the one who found the links tho, with the exception of the ICO link, which is thanks to lelo707 from the GMC)
GM actually stores its images in BMP format, and then compresses them via ZLib.
Further, I found out that GM also stores its sounds in their respective formats and compresses them with ZLib.
Zlib is a free compression program / dll, which can be found here: www.zlib.net
Once you've clipped the image out, unzip it with Zlib, and you're left with a raw BMP.
BMP is not capable of transparency, thus GM simply remembers that the bottom-left pixel is transparent. In order to get transparency, you may convert the image to gif, png, or ico, or do like GM does and display it straight from memory with transparency added (provided your language supports that).
BMP is not capable of animation, thus GM stores each bmp somewhat separately, as I have documented. In order to get animation, you may convert the image to gif or simply handle the frames yourself, like GM does.
File format documentation of images mentioned here (in case you're too lazy to google them):
BMP: www.fortunecity.com/skyscraper/windows/364/bmpffrmt.html
GIF: www.onicos.com/staff/iz/formats/gif.html
PNG is very complex due to its compression scheme, and thus I have not taken an interest in its file format, but have relied on dll's and such to handle it for me, if need be. See below.
ICO: www.delphipages.com/news/detaildocs.cfm?ID=118
A great program / dll for handling image formats, transparency, conversion, etc, is ImageFree, which is what I rely on for handling PNG images when my language doesn't handle it itself, or when I'm too lazy to program in handling. It can be found here:
freeimage.sourceforge.net/
I have done no research on sound format, since GM stores the sounds as their respective sound type.
GM actually stores its images in BMP format, and then compresses them via ZLib.
Further, I found out that GM also stores its sounds in their respective formats and compresses them with ZLib.
Zlib is a free compression program / dll, which can be found here: www.zlib.net
Once you've clipped the image out, unzip it with Zlib, and you're left with a raw BMP.
BMP is not capable of transparency, thus GM simply remembers that the bottom-left pixel is transparent. In order to get transparency, you may convert the image to gif, png, or ico, or do like GM does and display it straight from memory with transparency added (provided your language supports that).
BMP is not capable of animation, thus GM stores each bmp somewhat separately, as I have documented. In order to get animation, you may convert the image to gif or simply handle the frames yourself, like GM does.
File format documentation of images mentioned here (in case you're too lazy to google them):
BMP: www.fortunecity.com/skyscraper/windows/364/bmpffrmt.html
GIF: www.onicos.com/staff/iz/formats/gif.html
PNG is very complex due to its compression scheme, and thus I have not taken an interest in its file format, but have relied on dll's and such to handle it for me, if need be. See below.
ICO: www.delphipages.com/news/detaildocs.cfm?ID=118
A great program / dll for handling image formats, transparency, conversion, etc, is ImageFree, which is what I rely on for handling PNG images when my language doesn't handle it itself, or when I'm too lazy to program in handling. It can be found here:
freeimage.sourceforge.net/
I have done no research on sound format, since GM stores the sounds as their respective sound type.