# {py:mod}`simvx.graphics.renderer.shadow_pass` ```{py:module} simvx.graphics.renderer.shadow_pass ``` ```{autodoc2-docstring} simvx.graphics.renderer.shadow_pass :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`ShadowPass ` - ```{autodoc2-docstring} simvx.graphics.renderer.shadow_pass.ShadowPass :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`__all__ ` - ```{autodoc2-docstring} simvx.graphics.renderer.shadow_pass.__all__ :summary: ``` * - {py:obj}`log ` - ```{autodoc2-docstring} simvx.graphics.renderer.shadow_pass.log :summary: ``` * - {py:obj}`CASCADE_COUNT ` - ```{autodoc2-docstring} simvx.graphics.renderer.shadow_pass.CASCADE_COUNT :summary: ``` * - {py:obj}`SHADOW_MAP_SIZE ` - ```{autodoc2-docstring} simvx.graphics.renderer.shadow_pass.SHADOW_MAP_SIZE :summary: ``` * - {py:obj}`DEPTH_FORMAT ` - ```{autodoc2-docstring} simvx.graphics.renderer.shadow_pass.DEPTH_FORMAT :summary: ``` ```` ### API ````{py:data} __all__ :canonical: simvx.graphics.renderer.shadow_pass.__all__ :value: > ['ShadowPass'] ```{autodoc2-docstring} simvx.graphics.renderer.shadow_pass.__all__ ``` ```` ````{py:data} log :canonical: simvx.graphics.renderer.shadow_pass.log :value: > 'getLogger(...)' ```{autodoc2-docstring} simvx.graphics.renderer.shadow_pass.log ``` ```` ````{py:data} CASCADE_COUNT :canonical: simvx.graphics.renderer.shadow_pass.CASCADE_COUNT :value: > 3 ```{autodoc2-docstring} simvx.graphics.renderer.shadow_pass.CASCADE_COUNT ``` ```` ````{py:data} SHADOW_MAP_SIZE :canonical: simvx.graphics.renderer.shadow_pass.SHADOW_MAP_SIZE :value: > 2048 ```{autodoc2-docstring} simvx.graphics.renderer.shadow_pass.SHADOW_MAP_SIZE ``` ```` ````{py:data} DEPTH_FORMAT :canonical: simvx.graphics.renderer.shadow_pass.DEPTH_FORMAT :value: > None ```{autodoc2-docstring} simvx.graphics.renderer.shadow_pass.DEPTH_FORMAT ``` ```` `````{py:class} ShadowPass(engine: typing.Any) :canonical: simvx.graphics.renderer.shadow_pass.ShadowPass ```{autodoc2-docstring} simvx.graphics.renderer.shadow_pass.ShadowPass ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} simvx.graphics.renderer.shadow_pass.ShadowPass.__init__ ``` ````{py:method} setup(ssbo_layout: typing.Any) -> None :canonical: simvx.graphics.renderer.shadow_pass.ShadowPass.setup ```{autodoc2-docstring} simvx.graphics.renderer.shadow_pass.ShadowPass.setup ``` ```` ````{py:property} shadow_texture_index :canonical: simvx.graphics.renderer.shadow_pass.ShadowPass.shadow_texture_index :type: int ```{autodoc2-docstring} simvx.graphics.renderer.shadow_pass.ShadowPass.shadow_texture_index ``` ```` ````{py:method} compute_cascades(view: numpy.ndarray, proj: numpy.ndarray, light_dir: numpy.ndarray, near: float = 0.0, far: float = 0.0) -> None :canonical: simvx.graphics.renderer.shadow_pass.ShadowPass.compute_cascades ```{autodoc2-docstring} simvx.graphics.renderer.shadow_pass.ShadowPass.compute_cascades ``` ```` ````{py:method} render(cmd: typing.Any, instances: list, ssbo_set: typing.Any, mesh_registry: typing.Any) -> None :canonical: simvx.graphics.renderer.shadow_pass.ShadowPass.render ```{autodoc2-docstring} simvx.graphics.renderer.shadow_pass.ShadowPass.render ``` ```` ````{py:method} cleanup() -> None :canonical: simvx.graphics.renderer.shadow_pass.ShadowPass.cleanup ```{autodoc2-docstring} simvx.graphics.renderer.shadow_pass.ShadowPass.cleanup ``` ```` `````