Newton basically handles this for you, by removing objects that are "at rest" from the simulation list.
so the background objects are automatically "forgotten" once they come to a state of equilibirum (at rest), and are only remembered once another object comes in contact with them.
you can also force objects out of the current simulation queue by calling the NDB_NewtonFreezeBody command. this will remove the body from simulation calculations... so when the character leaves an area, you can call this command for all bodies in the area, and they will be ignored until an active object comes in contact with them, or you UnFreexe them.
as for the character, you can make complex shaped by combining multiple boxes and spheres, by using the:
NDB_StartCollisionArray
NDB_AddCollisionToArray
NDB_NewtonMakeCompoundCollision()
some of the docs are incomplete on these commands, please look at demo06 for an example of how to use them. I'll get the docs updated for the next release.
also if you're using a human character, I would recommend looking at the UpVector joint as well...
Go Go Gadget DBPRO!
Athlon XP 2400+ || DDR-SDRAM 1GB || Nvidia GeForce 4 Ti4200 AGP 8x 128MB