That approach can blow up in your face if you're not careful You'll want to use the pixel vs. pixel comparison in a "granular" collision detection routine since its expensive and use a coarser method for general collision detection (narrow phase collision detection & broad phase collision detection). It makes no sense to do pixel vs. pixel collision detection against an object on the other side of the map
I just use bounding boxes or bounding spheres for my broad phase collision detection and the narrow phase uses a slightly more expensive "polygon" collision detection method (the graphic is enclosed within a polygon). I chose the polygon because its easy to rotate and transform.
Alternatively, you could use a quad tree for your broadphase collisions
Thanks! This approach makes much more since. I've never worked on anything like this before so I'll have to do some messing around with it. Would you happen to know how I would go about using pixel vs pixel comparison in c#? And would I have to use bitmap images?
edit What if I used the Region class and the GetBounds method?
Hey, thanks for the reply. I have minimal programming experience so I get lost in the woods pretty often... After a quick google search to see what Breakpoints do, I added one in at the top of the LoadSound method and everything seems to be working fine until it hits the 3rd assertion. Also, the path variables contain the right sound file name. I'm just not sure where to go from here, but I'll keep tinkering with it tonight.
edit Actually, I take that back. The assertion failed error pops up on the line after the 3rd assertion.
Al.alBufferData(buffer, format, data, size, (int)frequency);
edit Well, now I'm not entirely sure... It doesn't crap out while the 3rd assertion is highlighted, it's when I pass the breakpoint beyond that line. So does that mean the problem is in the next line or the line you're moving the breakpoint from?