Hey, I’m trying to do collision dection
I was wondering if people had any suggestions on doing a lot of collision detection. Lets say you have hundreds of sprite objects in a game, dynamically being created and destroyed. Whats the best way to do all of the collision detection. I’ld rather not have to loop through all the objects and check each objects bounding box against all the other bounding boxes. This seems like it might be to much processing and to slow especially with rectangle.intersects(rectangle)
you can only check against objects that are close. (sux if objects move fast I gues)
you can only check against objects that are on a (possible) collision course. (sux if objects change direction often I gues)
you ‘discretalise’ the space and check if the new space is occupied(sux if the space is ‘large’ I gues)
etc. (there are I guess tons of other ways and solutions to shortcomings of the ways mentioned for example the discretization needs not to be homogeneous over the whole space)
there is nothing wrong I guess to stick it in a big loop first and profile it, check if solutions arise / figuring out how big your problem is and move from there. If you can easily swap out code to try out different approaches it should be a sign of well organized code.
You can organize your objects in a quad-tree, that is spatially organize your objects. Fairly simple to implement and a lot faster than O(n2).
If you game is a tile based game and objects are assigned to tiles then it’s a lot simpler to check if your objects collides with any other object in the same tile (if you allow multiple objects on a single tile) or surrounding tiles (which can be defined as many tiles outward as you like).
I’m sorry I don’t got any links for you, but I’m sure Google is your friend 