0028760: Visualization, TKOpenGl - avoid excessive frustum culling traverse within...
authorkgv <kgv@opencascade.com>
Wed, 8 Nov 2017 06:44:27 +0000 (09:44 +0300)
committerkgv <kgv@opencascade.com>
Fri, 10 Nov 2017 04:34:58 +0000 (07:34 +0300)
commit2b8832bb0ebd09520819fa2bc574e1a3e112b132
tree54c6ffc5ef2688b90e5516c2152c09c0747d963c
parentdaf73ab7c996c96a03869b931988b8dd25aef2c2
0028760: Visualization, TKOpenGl - avoid excessive frustum culling traverse within extra OIT rendering pass

Culling traverse is no more called implicitly within OpenGl_Layer::Render().
Instead, all layers are traversed at onces within OpenGl_View::render() beforehand.

OpenGl_BVHTreeSelector methods have been renamed to better reflect their meaning.
Non-persistent culling options has been moved to dedicated structure OpenGl_BVHTreeSelector::CullingContext
so that OpenGl_BVHTreeSelector instance can be used for different Layers without modifying its state.
src/OpenGl/OpenGl_BVHTreeSelector.cxx
src/OpenGl/OpenGl_BVHTreeSelector.hxx
src/OpenGl/OpenGl_Layer.cxx
src/OpenGl/OpenGl_Layer.hxx
src/OpenGl/OpenGl_LayerList.cxx
src/OpenGl/OpenGl_LayerList.hxx
src/OpenGl/OpenGl_Structure.hxx
src/OpenGl/OpenGl_View.hxx
src/OpenGl/OpenGl_View_Redraw.cxx