# {py:mod}`simvx.graphics.renderer.occlusion_cull` ```{py:module} simvx.graphics.renderer.occlusion_cull ``` ```{autodoc2-docstring} simvx.graphics.renderer.occlusion_cull :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`OcclusionTwoPhasePass ` - ```{autodoc2-docstring} simvx.graphics.renderer.occlusion_cull.OcclusionTwoPhasePass :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`__all__ ` - ```{autodoc2-docstring} simvx.graphics.renderer.occlusion_cull.__all__ :summary: ``` * - {py:obj}`log ` - ```{autodoc2-docstring} simvx.graphics.renderer.occlusion_cull.log :summary: ``` ```` ### API ````{py:data} __all__ :canonical: simvx.graphics.renderer.occlusion_cull.__all__ :value: > ['OcclusionTwoPhasePass'] ```{autodoc2-docstring} simvx.graphics.renderer.occlusion_cull.__all__ ``` ```` ````{py:data} log :canonical: simvx.graphics.renderer.occlusion_cull.log :value: > 'getLogger(...)' ```{autodoc2-docstring} simvx.graphics.renderer.occlusion_cull.log ``` ```` `````{py:class} OcclusionTwoPhasePass(engine: typing.Any, max_sets: int = 16) :canonical: simvx.graphics.renderer.occlusion_cull.OcclusionTwoPhasePass ```{autodoc2-docstring} simvx.graphics.renderer.occlusion_cull.OcclusionTwoPhasePass ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} simvx.graphics.renderer.occlusion_cull.OcclusionTwoPhasePass.__init__ ``` ````{py:method} setup() -> None :canonical: simvx.graphics.renderer.occlusion_cull.OcclusionTwoPhasePass.setup ```{autodoc2-docstring} simvx.graphics.renderer.occlusion_cull.OcclusionTwoPhasePass.setup ``` ```` ````{py:method} dispatch(cmd: typing.Any, *, phase: int, skip_cull: bool, indirect_buffer: typing.Any, draw_count: int, transform_buf: typing.Any, aabb_buf: typing.Any, hiz_view: typing.Any, hiz_sampler: typing.Any, vis_prev_buf: typing.Any, vis_next_buf: typing.Any, parity: int, view_proj: numpy.ndarray, base_extent: tuple[int, int], mip_count: int, max_objects: int, host_barrier: bool = False) -> None :canonical: simvx.graphics.renderer.occlusion_cull.OcclusionTwoPhasePass.dispatch ```{autodoc2-docstring} simvx.graphics.renderer.occlusion_cull.OcclusionTwoPhasePass.dispatch ``` ```` ````{py:method} cleanup() -> None :canonical: simvx.graphics.renderer.occlusion_cull.OcclusionTwoPhasePass.cleanup ```{autodoc2-docstring} simvx.graphics.renderer.occlusion_cull.OcclusionTwoPhasePass.cleanup ``` ```` `````