Cycles: Camera frustum space object culling scene simplification
authorSergey Sharybin <sergey.vfx@gmail.com>
Fri, 10 Apr 2015 13:09:58 +0000 (18:09 +0500)
committerSergey Sharybin <sergey.vfx@gmail.com>
Sat, 18 Jul 2015 16:17:22 +0000 (18:17 +0200)
commit92a37993a54f8c9ebb4fa878df5ebe4a76722637
treecf8c73321c37c652c52f85c64725001fc0852940
parent2ccfbf2f81613d44ae853ebcaeaa1af3560a84b6
Cycles: Camera frustum space object culling scene simplification

The idea is to give artists a simplier way to control memory usage in such
scenes as grass fields by doing automatic object culling based on whether
object is visible in the frame or not.

This is controlled on per-object level. In order to use this option few steps
are required:

- Enable Simplify in scene settings

- Enable Camera Cull option in the Simplify panel

- Set camera cull margin (measured in relative value to the render resolution)
  This setting is used to avoid possible flickering caused by changes in shadow
  which are cast by objects outside of the frame.

- Enable Camera Cull for objects which are desired to be culled
  (object culling option could be found in Option panel in object buttons).

There is still room for improvements, but this worked quite well during
Gooseberry open movie project, so think it's useful feature even in it's current
non-ideal state.
intern/cycles/blender/addon/properties.py
intern/cycles/blender/addon/ui.py
intern/cycles/blender/blender_object.cpp
intern/cycles/blender/blender_sync.h