# {py:mod}`simvx.graphics.renderer.volumetric_fog_pass` ```{py:module} simvx.graphics.renderer.volumetric_fog_pass ``` ```{autodoc2-docstring} simvx.graphics.renderer.volumetric_fog_pass :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`VolumetricFogPass ` - ```{autodoc2-docstring} simvx.graphics.renderer.volumetric_fog_pass.VolumetricFogPass :summary: ``` ```` ### Functions ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`build_volume_ssbo ` - ```{autodoc2-docstring} simvx.graphics.renderer.volumetric_fog_pass.build_volume_ssbo :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`__all__ ` - ```{autodoc2-docstring} simvx.graphics.renderer.volumetric_fog_pass.__all__ :summary: ``` * - {py:obj}`log ` - ```{autodoc2-docstring} simvx.graphics.renderer.volumetric_fog_pass.log :summary: ``` * - {py:obj}`FOG_VOLUME_STRIDE ` - ```{autodoc2-docstring} simvx.graphics.renderer.volumetric_fog_pass.FOG_VOLUME_STRIDE :summary: ``` * - {py:obj}`MAX_FOG_VOLUMES ` - ```{autodoc2-docstring} simvx.graphics.renderer.volumetric_fog_pass.MAX_FOG_VOLUMES :summary: ``` * - {py:obj}`STEP_COUNT ` - ```{autodoc2-docstring} simvx.graphics.renderer.volumetric_fog_pass.STEP_COUNT :summary: ``` ```` ### API ````{py:data} __all__ :canonical: simvx.graphics.renderer.volumetric_fog_pass.__all__ :value: > ['VolumetricFogPass', 'MAX_FOG_VOLUMES', 'FOG_VOLUME_STRIDE', 'build_volume_ssbo'] ```{autodoc2-docstring} simvx.graphics.renderer.volumetric_fog_pass.__all__ ``` ```` ````{py:data} log :canonical: simvx.graphics.renderer.volumetric_fog_pass.log :value: > 'getLogger(...)' ```{autodoc2-docstring} simvx.graphics.renderer.volumetric_fog_pass.log ``` ```` ````{py:data} FOG_VOLUME_STRIDE :canonical: simvx.graphics.renderer.volumetric_fog_pass.FOG_VOLUME_STRIDE :value: > 112 ```{autodoc2-docstring} simvx.graphics.renderer.volumetric_fog_pass.FOG_VOLUME_STRIDE ``` ```` ````{py:data} MAX_FOG_VOLUMES :canonical: simvx.graphics.renderer.volumetric_fog_pass.MAX_FOG_VOLUMES :value: > 64 ```{autodoc2-docstring} simvx.graphics.renderer.volumetric_fog_pass.MAX_FOG_VOLUMES ``` ```` ````{py:data} STEP_COUNT :canonical: simvx.graphics.renderer.volumetric_fog_pass.STEP_COUNT :value: > 32 ```{autodoc2-docstring} simvx.graphics.renderer.volumetric_fog_pass.STEP_COUNT ``` ```` ````{py:function} build_volume_ssbo(volumes: list[typing.Any]) -> tuple[numpy.ndarray, int] :canonical: simvx.graphics.renderer.volumetric_fog_pass.build_volume_ssbo ```{autodoc2-docstring} simvx.graphics.renderer.volumetric_fog_pass.build_volume_ssbo ``` ```` `````{py:class} VolumetricFogPass(engine: typing.Any) :canonical: simvx.graphics.renderer.volumetric_fog_pass.VolumetricFogPass ```{autodoc2-docstring} simvx.graphics.renderer.volumetric_fog_pass.VolumetricFogPass ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} simvx.graphics.renderer.volumetric_fog_pass.VolumetricFogPass.__init__ ``` ````{py:property} output_view :canonical: simvx.graphics.renderer.volumetric_fog_pass.VolumetricFogPass.output_view :type: typing.Any ```{autodoc2-docstring} simvx.graphics.renderer.volumetric_fog_pass.VolumetricFogPass.output_view ``` ```` ````{py:method} setup(width: int, height: int, hdr_view: typing.Any, depth_view: typing.Any, colour_format: int) -> None :canonical: simvx.graphics.renderer.volumetric_fog_pass.VolumetricFogPass.setup ```{autodoc2-docstring} simvx.graphics.renderer.volumetric_fog_pass.VolumetricFogPass.setup ``` ```` ````{py:method} update_hdr_input(hdr_view: typing.Any, depth_view: typing.Any) -> None :canonical: simvx.graphics.renderer.volumetric_fog_pass.VolumetricFogPass.update_hdr_input ```{autodoc2-docstring} simvx.graphics.renderer.volumetric_fog_pass.VolumetricFogPass.update_hdr_input ``` ```` ````{py:method} set_frame_data(view: numpy.ndarray, proj: numpy.ndarray, sun_dir: numpy.ndarray | None, sun_colour: numpy.ndarray | None, sun_intensity: float, volumes: list[typing.Any]) -> None :canonical: simvx.graphics.renderer.volumetric_fog_pass.VolumetricFogPass.set_frame_data ```{autodoc2-docstring} simvx.graphics.renderer.volumetric_fog_pass.VolumetricFogPass.set_frame_data ``` ```` ````{py:method} render(cmd: typing.Any) -> None :canonical: simvx.graphics.renderer.volumetric_fog_pass.VolumetricFogPass.render ```{autodoc2-docstring} simvx.graphics.renderer.volumetric_fog_pass.VolumetricFogPass.render ``` ```` ````{py:method} resize(width: int, height: int, hdr_view: typing.Any, depth_view: typing.Any) -> None :canonical: simvx.graphics.renderer.volumetric_fog_pass.VolumetricFogPass.resize ```{autodoc2-docstring} simvx.graphics.renderer.volumetric_fog_pass.VolumetricFogPass.resize ``` ```` ````{py:method} cleanup() -> None :canonical: simvx.graphics.renderer.volumetric_fog_pass.VolumetricFogPass.cleanup ```{autodoc2-docstring} simvx.graphics.renderer.volumetric_fog_pass.VolumetricFogPass.cleanup ``` ```` `````