# {py:mod}`simvx.graphics.renderer.web3d` ```{py:module} simvx.graphics.renderer.web3d ``` ```{autodoc2-docstring} simvx.graphics.renderer.web3d :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`WebRenderer3D ` - ```{autodoc2-docstring} simvx.graphics.renderer.web3d.WebRenderer3D :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`log ` - ```{autodoc2-docstring} simvx.graphics.renderer.web3d.log :summary: ``` * - {py:obj}`__all__ ` - ```{autodoc2-docstring} simvx.graphics.renderer.web3d.__all__ :summary: ``` ```` ### API ````{py:data} log :canonical: simvx.graphics.renderer.web3d.log :value: > 'getLogger(...)' ```{autodoc2-docstring} simvx.graphics.renderer.web3d.log ``` ```` ````{py:data} __all__ :canonical: simvx.graphics.renderer.web3d.__all__ :value: > ['WebRenderer3D'] ```{autodoc2-docstring} simvx.graphics.renderer.web3d.__all__ ``` ```` `````{py:class} WebRenderer3D(width: int, height: int) :canonical: simvx.graphics.renderer.web3d.WebRenderer3D Bases: {py:obj}`simvx.graphics.renderer._base.Renderer` ```{autodoc2-docstring} simvx.graphics.renderer.web3d.WebRenderer3D ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} simvx.graphics.renderer.web3d.WebRenderer3D.__init__ ``` ````{py:method} begin_frame() -> None :canonical: simvx.graphics.renderer.web3d.WebRenderer3D.begin_frame ```` ````{py:method} pre_render(cmd: typing.Any) -> None :canonical: simvx.graphics.renderer.web3d.WebRenderer3D.pre_render ```` ````{py:method} render(cmd: typing.Any) -> None :canonical: simvx.graphics.renderer.web3d.WebRenderer3D.render ```` ````{py:method} resize(width: int, height: int) -> None :canonical: simvx.graphics.renderer.web3d.WebRenderer3D.resize ```` ````{py:method} destroy() -> None :canonical: simvx.graphics.renderer.web3d.WebRenderer3D.destroy ```` ````{py:method} submit_instance(mesh_handle: simvx.graphics._types.MeshHandle, transform: numpy.ndarray, material_id: int = 0, viewport_id: int = 0) -> None :canonical: simvx.graphics.renderer.web3d.WebRenderer3D.submit_instance ```` ````{py:method} submit_multimesh(mesh_handle: simvx.graphics._types.MeshHandle, transforms: numpy.ndarray, material_id: int = 0, material_ids: numpy.ndarray | None = None, viewport_id: int = 0, count: int = 0) -> None :canonical: simvx.graphics.renderer.web3d.WebRenderer3D.submit_multimesh ```` ````{py:method} submit_skinned_instance(mesh_handle: simvx.graphics._types.MeshHandle, transform: numpy.ndarray, material_id: int, joint_matrices: numpy.ndarray) -> None :canonical: simvx.graphics.renderer.web3d.WebRenderer3D.submit_skinned_instance ```` ````{py:method} set_materials(materials: numpy.ndarray) -> None :canonical: simvx.graphics.renderer.web3d.WebRenderer3D.set_materials ```` ````{py:method} set_lights(lights: numpy.ndarray) -> None :canonical: simvx.graphics.renderer.web3d.WebRenderer3D.set_lights ```` ````{py:method} submit_text(text: str, x: float, y: float, size: float, colour: tuple[float, float, float, float], **kwargs: typing.Any) -> None :canonical: simvx.graphics.renderer.web3d.WebRenderer3D.submit_text ```` ````{py:method} submit_particles(particle_data: numpy.ndarray) -> None :canonical: simvx.graphics.renderer.web3d.WebRenderer3D.submit_particles ```` ````{py:method} submit_light2d(**kwargs: typing.Any) -> None :canonical: simvx.graphics.renderer.web3d.WebRenderer3D.submit_light2d ```` ````{py:method} set_post_process(bloom_enabled: bool = False, bloom_threshold: float = 1.0, bloom_intensity: float = 0.8, bloom_soft_knee: float = 0.5) -> None :canonical: simvx.graphics.renderer.web3d.WebRenderer3D.set_post_process ```{autodoc2-docstring} simvx.graphics.renderer.web3d.WebRenderer3D.set_post_process ``` ```` ````{py:method} register_mesh(vertices: numpy.ndarray, indices: numpy.ndarray) -> simvx.graphics._types.MeshHandle :canonical: simvx.graphics.renderer.web3d.WebRenderer3D.register_mesh ```` ````{py:method} register_texture(pixels: numpy.ndarray, width: int, height: int) -> int :canonical: simvx.graphics.renderer.web3d.WebRenderer3D.register_texture ```` ````{py:method} capture_frame() -> numpy.ndarray :canonical: simvx.graphics.renderer.web3d.WebRenderer3D.capture_frame ```` ````{py:method} serialize_frame() -> bytes :canonical: simvx.graphics.renderer.web3d.WebRenderer3D.serialize_frame ```{autodoc2-docstring} simvx.graphics.renderer.web3d.WebRenderer3D.serialize_frame ``` ```` ````{py:attribute} __slots__ :canonical: simvx.graphics.renderer.web3d.WebRenderer3D.__slots__ :value: > () ```` `````