3
$\begingroup$

Is it possible for the Blender Game Engine to hide any vertices/faces currently not visible to the camera in order to optimize game performance? This would be for parts of meshes specifically.

$\endgroup$
2
$\begingroup$

Yes, it can. This is done by using the Occlude physics type; this makes an object hide all other objects (or parts of objects) behind it. This does, however, mean that it can only be applied to Static (physics type) objects, since an object can't have two physics types, and the Occlude type works like the Static type (i.e. it doesn't move).

Keep in mind that:

  • If the occluders are small and don't hide many objects.
    • In that case, occlusion culling is just dragging your CPU down).
  • If the occluders are large but hides simple objects.
    • In that case you're better off sending the objects to the GPU).

You can read the wiki for more details about performance.

$\endgroup$
1
$\begingroup$

To build on @someonewithpc 's answer;

This is generally used to set up render zones where static doors or walls with occlude enabled hide rooms with complex geometry.

Another way is to parent an occlude to the back of the head of you character; This will hide pretty much everything you can't see.

$\endgroup$
  • $\begingroup$ Could you please elaborate on the second way, which involves parenting an occluding object to the character? $\endgroup$ – Droidge Jan 10 '16 at 14:36
  • $\begingroup$ I'm sorry, I wrote this answer a while ago and more extensive testing shows that the second way does not work. :-( $\endgroup$ – Scalia Jan 11 '16 at 17:55

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.