mini_arcade_core.engine.render.camera ===================================== .. py:module:: mini_arcade_core.engine.render.camera .. autoapi-nested-parse:: Camera helpers for world-space rendering. Attributes ---------- .. autoapisummary:: mini_arcade_core.engine.render.camera.CAMERA_PACKET_META_KEY Classes ------- .. autoapisummary:: mini_arcade_core.engine.render.camera.Camera2D Functions --------- .. autoapisummary:: mini_arcade_core.engine.render.camera.viewport_transform_for_camera mini_arcade_core.engine.render.camera.camera_from_packet mini_arcade_core.engine.render.camera.viewport_transform_for_packet mini_arcade_core.engine.render.camera.packet_with_camera mini_arcade_core.engine.render.camera.world_to_screen mini_arcade_core.engine.render.camera.screen_to_world Module Contents --------------- .. py:data:: CAMERA_PACKET_META_KEY :value: 'camera_2d' .. py:class:: Camera2D Minimal 2D camera model for world-space rendering. `center` is expressed in virtual/world coordinates and maps to the center of the virtual viewport. `zoom=1.0` means 1:1 virtual scale. .. py:attribute:: center :type: mini_arcade_core.spaces.math.vec2.Vec2 .. py:attribute:: zoom :type: float :value: 1.0 .. py:function:: viewport_transform_for_camera(viewport: mini_arcade_core.engine.render.viewport.ViewportState, camera: Camera2D | None = None) -> mini_arcade_core.backend.viewport.ViewportTransform Build the world-space transform for one viewport/camera pair. .. py:function:: camera_from_packet(packet: mini_arcade_core.engine.render.packet.RenderPacket) -> Camera2D | None Read an attached camera from packet metadata. .. py:function:: viewport_transform_for_packet(viewport: mini_arcade_core.engine.render.viewport.ViewportState, packet: mini_arcade_core.engine.render.packet.RenderPacket) -> mini_arcade_core.backend.viewport.ViewportTransform Build the render transform for one packet, using any attached camera. .. py:function:: packet_with_camera(packet: mini_arcade_core.engine.render.packet.RenderPacket, camera: Camera2D | None) -> mini_arcade_core.engine.render.packet.RenderPacket Return a copy of a packet with camera metadata attached. .. py:function:: world_to_screen(viewport: mini_arcade_core.engine.render.viewport.ViewportState, x: float, y: float, *, camera: Camera2D | None = None) -> tuple[float, float] Convert world coordinates into screen coordinates. .. py:function:: screen_to_world(viewport: mini_arcade_core.engine.render.viewport.ViewportState, x: float, y: float, *, camera: Camera2D | None = None) -> tuple[float, float] Convert screen coordinates into world coordinates.