• FEATURED

View more

View more

View more

### Image of the Day Submit

IOTD | Top Screenshots

### The latest, straight to your Inbox.

Subscribe to GameDev.net Direct to receive the latest updates and exclusive content.

# Am I on the right track?(my physics engine design)

Old topic!

Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

3 replies to this topic

### #1mrheisenberg  Members

Posted 25 February 2013 - 08:33 PM

Basically my physics engine design is that I have a 3D grid of bounding cubes the size of the scene.Each entity also has it's bounding volume.The grid is in an octree, so it very quickly tests with which of the smallest levels of boxes the bounding volume of each entity intersects.So basically for each entity I get a list of the indexes of all cubes it intersects.For each cube I get a list of indexes for all entities that intersect it.So then in the narrow phase each entity goes trough it's list of intersected cubes and for each of them it loops trough the list of the entities that intersect that cube and tests it against the entity.Is this a decent design or am I going in the wrong direction?I get a decent performance so far, so I was thinking I'd stick to it and start adding optimizations and having the entities have rest/active states, but I guess I wanted a consultation before I carry on.One thing that might give me trouble is integrating terrain collision into it, not sure how that'll work out.

### #2EWClay  Members

Posted 26 February 2013 - 05:08 AM

Sounds fine. Do you need an octree for a grid? I'd have thought you could just look up the cubes directly.

### #3Dirk Gregorius  Members

Posted 26 February 2013 - 12:13 PM

For terrain you simple project your AABB into the plane and detect the quads it overlaps. If your terrain is a triangle mesh you could e.g. use an AABB tree. There are some other options for the broadphase as well. Instead of the octree your could use Sweep and Prune or a dynamic tree. But the octree is totally fine.

Edited by Dirk Gregorius, 26 February 2013 - 12:14 PM.

### #4mrheisenberg  Members

Posted 26 February 2013 - 10:20 PM

Thanks for the input, If understand properly the sweep and prune method is faster, but the octree method is generally better for when you have really fast moving, really varying in size objects?After the narrow phase I have a third phase where I check against a composite shape between the two objects where the composite shape is made of boxes that match some of the bone matrices for the bigger bones, so they're basically hitboxes for the body/limbs of the characters.

Old topic!

Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.