Camera

Settings

create! : Settings => Result Camera [LoadErr Str]

Create a new camera. The camera can be used to render a 2D and 3D perspective of the world.

cameraSettings = {
    target: player,
    offset: { x: screenWidth / 2, y: screenHeight / 2 },
    rotation: 0,
    zoom: 1,
}

cameraID = Camera.create! cameraSettings

update! : Camera, Settings => {}

Update a camera's target, offset, rotation, and zoom.

cameraSettings =
    model.cameraSettings
    |> &target model.player
    |> &rotation rotation
    |> &zoom zoom

Camera.update! model.cameraID cameraSettings