Collision Node and proxy
Lately I've been testing the Collision node in my World Trade Center site. I'm looking to increase fps for people visiting it.
I have a complicated building structure inside a Collision node and to optimize fps and lower Collision Detection times, I set Collision to enabled TRUE but with a proxy of a simple wall. Unfortunately, in my tests I don't find that this increases fps or reduces collision detection times.
What I did find to work best is to put the complicated building inside the Collision node with enabled FALSE and no proxy. I then made a new Shape with the simple wall and transparency set to 1 so as to act as an invisible barrier.
Could I be doing something wrong with the Collision node or is this the way it works?
To use a Collision node with enabled FALSE is indeed the most optimal solution, because collision detection consists of two passes. First pass is the WALK/FLY viewer movement, whether the avatar can walk forward and look if there is a wall. And second pass is for the enabled Collision nodes. If you have no enabled Collision nodes, the second pass is omitted.
All collision detection is done on the GPU. This should be very fast, but it requires to read data from the GPU, which must be transferred to the CPU, this process requires to wait for the GPU to have a free moment to send data. Unfortunately this can take some ms, and this can vary between computer systems.