Your method works well for static images but most applications require collision testing of moving imagery, specifically sprites.
Interestingly the same theory still applies.
This is a process called masking which is also used for recording the screen history when an overlayed image is placed and subsequently moved. My understanding is that DBPro uses layers and has no inherent mask, and therein lies the defficiency of it's collision detection system.
I am considering writting a masking system for DBPro but as far as I can see there are two ways to tackle the problem and I cannot decide which is best.
Option One: Have a function to create masks using DBPro commands, this would be a one-off function call performed by the programmer after loading all images and would take some time to process. This would cause a delay during loading, but the results should be fast and the code easy to write using standard DB commands.
Option Two: Work out how to access DBPro display RAM which I don't think is too hard to do, and then peek the displayed image content directly. This method
might be slower in runtime but would be easier for 3rd parties to implement as it would result in a one off command to use whenever collision needs to be tested. Programming this would be more complicated, but requires no pre-processing.
Pneumatic Dryll
