Version: alpha
MESSAGE | |
---|---|
set_camera | sets camera properties |
PROPERTIES | |
---|---|
aspect_ratio | float camera aspect ratio |
far_z | float camera far_z |
fov | float camera fov |
near_z | float camera near_z |
orthographic_zoom | float camera orthographic_zoom |
projection | float camera projection |
view | float camera view |
Post this message to a camera-component to set its properties at run-time.
aspect_ratio |
number |
aspect ratio of the screen (width divided by height) |
fov |
number |
field of view of the lens, measured as the angle in radians between the right and left edge |
near_z |
number |
position of the near clipping plane (distance from camera along relative z) |
far_z |
number |
position of the far clipping plane (distance from camera along relative z) |
orthographic_projection |
bool |
set to use an orthographic projection |
orthographic_zoom |
number |
zoom level when the camera is using an orthographic projection |
EXAMPLES
In the examples, it is assumed that the instance of the script has a camera-component with id "camera".msg.post("#camera", "set_camera", {aspect_ratio = 16/9, fov = math.pi * 0.5, near_z = 0.1, far_z = 500})
The ratio between the frustum width and height. Used when calculating the projection of a perspective camera. The type of the property is number.
EXAMPLES
function init(self)
local aspect_ratio = go.get("#camera", "aspect_ratio")
go.set("#camera", "aspect_ratio", 1.2)
end
Camera frustum far plane. The type of the property is float.
EXAMPLES
function init(self)
local far_z = go.get("#camera", "far_z")
go.set("#camera", "far_z", 10)
end
Vertical field of view of the camera. The type of the property is float.
EXAMPLES
function init(self)
local fov = go.get("#camera", "fov")
go.set("#camera", "fov", fov + 0.1)
go.animate("#camera", "fov", go.PLAYBACK_ONCE_PINGPONG, 1.2, go.EASING_LINEAR, 1)
end
Camera frustum near plane. The type of the property is float.
EXAMPLES
function init(self)
local near_z = go.get("#camera", "near_z")
go.set("#camera", "near_z", 10)
end
Zoom level when using an orthographic projection. The type of the property is float.
EXAMPLES
function init(self)
local orthographic_zoom = go.get("#camera", "orthographic_zoom")
go.set("#camera", "orthographic_zoom", 2.0)
go.animate("#camera", "orthographic_zoom", go.PLAYBACK_ONCE_PINGPONG, 0.5, go.EASING_INOUTQUAD, 2)
end
READ ONLY The calculated projection matrix of the camera. The type of the property is matrix4.
EXAMPLES
function init(self)
local projection = go.get("#camera", "projection")
end
READ ONLY The calculated view matrix of the camera. The type of the property is matrix4.
EXAMPLES
function init(self)
local view = go.get("#camera", "view")
end