Hey everyone… I started reworking on my online FPS game again and I was woundering about some questions again…
I have many objects moving around a lot. These objects are not static and will be added and removed a lot (think how a fps game/map looks like). Should I add these items in a group some how so that GPU doesn’t have to work so hard on them(could be about 30 singal objects moving)? Should I stop them from moving if not in range?
Atm, I just have them be remove if they’re not in range of player.
Probably the best way would be to hide() the nodes uneeded when the player is out of range, another serious thing you may consider is LOD (search the forums for examples) on your models, which will increase rendering speed. (because models are lower detail when still in range but far away)
Other than that I doubt 30 moving models will cause problems, are you having any specific speed problems? (P.S. pstats can help teack down speed problems, search for that in the manual)
for close-together moving rigid objects with few vertices each. the rigid body combiner may also be a good choice.
Thanks guys. I’ll keep this in mind when I work. I haven’t be able to check just yet as I’m just now adding/placing the objects into my cubemap server
Another question pop into my mind as I’m rewriting my code here… When I go to reload up models, I have it check to see if a octreefy collision has been made in the same folder as the model. If there is, it loads the octreefy else it makes a octreefy for the model.
This works fine, but when I go remake models, I have to delete the old octreefy so it can reupdate the octreefy collision for the model. So my question is: Is there anyway I can have a current build number in the .bam file/egg to be read and compare so it knows when to reupdate instead of me having to go in and delete the octreefy?
Perhaps you can store the build number in a node tag? You would have to write a script to write the tag syntax into the generated egg file, but once it is there, it would be persistent when the egg is converted to bam, and it would be available to your application.