I’m making game in blender game engine. My layers of the game are seperated so if i make some parts invisible there is no problem. My question is this: Should i make objects invisible instead of lod system in game engine for better performance?
I think visibility toggling is worst for performance taxing then LOD. Built-in LOD is coded in C, so it’s fast enough in any case. Also, I could be wrong, but I think invisible objects don’t get their logic completed.
Visibility isn’t logic culling, Randy. Behaviour is untouched, you just won’t see the object.
Setting a flag for a thousand objects may outperform having half as many with multiple LODs, though I’d argue both cases are undesirable. Ideally you want to deal with as little objects as possible.
Look into loading screens. Basis is you show the user something while the system cleans up and brings things in. So instead of loading the whole game and making all layers but one invisible, you load only the parts the player can interact with right now.
The problem with this is obviously you need to plan out the transitions. And sometimes plant these really tall magic walls everywhere to block the user from seeing the void. News flash, current gen games still do this and most people just don’t notice.
I guess LOD cant change into Invisible objects unless, meshes with no faces at all.
I do however use Invisible Mesh like that with no faces or edges for my terrain, it may not have significant rasterizer effect during real time render, because I use the camera clipping distance to make better performances, but I use this just for editing the blend files because my terrain is very big.
You could have a simple plane, set it to billboard and invert the normal.
That way it will be “invisible” to the camera and you avoid having an object with no vertices
I think you need to set the optimal camera clipping range, set up the LOD models correctly and apply the approximation modifiers to them, and then split the level into parts and load it piece by piece during the game. Enabling object visibility disablement gives an increase in frames in the game, but again, the same increase gives the camera clipping at the desired distance, you can disable visibility from some parts of the object at a distance - but again, LOD will make it easier, I don’t quite understand how you can apply object visibility if there are other systems that work similarly, there are also occluder objects that disable all geometry and physics behind such objects from blocked zones and do not require scripts from the player - this can be a graphical model of the house, behind which you do not see agents, boxes, first aid kits, and also inside the house you do not see objects other than the model of the house itself, but occluders are without physics, so you need a static model to register collisions for such objects. In any case it is up to you to decide I have stated my thoughts