Original Post
I currently have my game world in a flat scenegraph. Objects are at the highest level, with only a few items beneath that. An actor only describes how an object should act, and its position and speed etc. Below that I insert a model object on the client program, and nothing on the server, since nobody will be viewing the gameworld on the server. When rendering, I go through the entire tree, and concatenate the position/attitude matrices to get the final position/attitude of models and such. However, I'm running into a problem if I want to use this structure for collisiondetection as well. First of all, I'll be concatenating those matrices more than once each frame, which seems a bit overkill. And second, I can't just pick the position/attitude of each model easily to do the collisiondetection with. I'm thinking of creating an additional container object of some kind just for the collision (binary tree/ octtree or something similar). What options have I overlooked?