Not sure if this is the right place to announce libraries, but I figure
it’s at least read by about the right set of people.
PMASK (Pixel MASK) is a library that does pixel perfect collisions.
Version 1 can be downloaded from http://ece.wpi.edu/~orz/pmask1.zip
Basically, this offers functionality similar to the BitMask library that
recently showed up in the libraries section on the SDL web page. Among
other minor differences, PMASK has a less restrictive license and is
therefore is suitable for use in non-GPLed progams.
PMASK is written in C, and should compile anywhere, irregardless of
instruction set, endianness, integer size, or pointer size. PMASK can
understand SDL Surfaces and Allegro BITMAPs. By default, it’s configured
to use Allegro and not SDL, but all you have to do to use it with SDL is
edit the .h file, go down to the 10th line or so, comment out “#define
USE_ALLEGRO”, and uncomment “//#define USE_SDL”. You can have it use
both or neither if you want. The allegro-specific portions of the library
have been more thoroughly tested than the sdl-specific portions.
PMASK offers few “extras”, sticking to a spartan level of functionality.
However, PMASK makes an extra effort to be maximally efficient in terms of
cache usage, memory usage, and CPU usage. PMASK includes some minimal
documentation, but no full example programs.