Jump to content
  • entries
    383
  • comments
    1075
  • views
    353747

Collision Detection and Messaging

Sign in to follow this  
Trapper Zoid

65 views

After a brief rant about Nintendo, wii return to message based game architectures...

After considering how a message passing system would integrate with my game, I can see how it will be immensely useful for areas such as artificial intelligence. In fact, it can solve the problem I was stuck on in the original shmup I was designing; how to get enemies to efficiently communicate with each other for pattern based formations. My main concern at the moment, while I'm working with the high-level architecture decisions, is how low-level do most games take messaging?

I'll pick an example and try to think it out as I type. I'll consider 2D collision detection, which is critical for an action game and probably the trickiest part of the logic for my sample shmup game. In a hardcore shmup, there might be about a couple of dozen ships on the screen, and maybe several hundred projectiles. If everyone of those projectiles sent a message every frame to check which other objects it could be colliding with, that would add up to a lot of CPU processing time.

The way I would usually approach a problem like this is to order all the objects in some fashion, such as by sorting the objects by the upper-left corner positions of their bounding boxes, or by segmenting the game world into sectors to lower the number of objects to be compared. I suppose it is still appropriate, but I guess the messaging would be done via the "collision detector" keeping track of all objects, and then messaging them directly if they collide. But do I need to message everything in that fashion? Maybe this needs a rethink.

I also guess I need to research collision detection a bit more thoroughly. Do most shmups have pixel perfect collision detection, or would a simplified bounding geometry work just as well?
Sign in to follow this  


1 Comment


Recommended Comments

Well, for formations most shooters that I've seen just pre-arrange the units in that shape.

I'd use simple bounding geometry, but instead of a message system for collisions just do your traditional O(n^2) search for bullets and ships. You could speed it dramatically up by using a division system (like octrees/quadtrees) but that's just getting a little bit obsessive compulsive.

Share this comment


Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!