SCameraManager

Index

Functions Index

Function Name

Properties Index

Property

Properties

IsLocked

bool IsLocked get

Is the Camera locked?

isCameraLocked = Space.Camera.IsLocked

MainCamera

SGameObject MainCamera get

Note, this property is generally read-only. It's position is driven by internal code.

mainCamera = Space.Camera.MainCamera

ActiveVirtualCamera

SGameObject ActiveVirtualCamera get

The currently active Cinemachine Virtual Camera game object.

currentCamera = Space.Camera.ActiveVirtualCamera

Functions

LockCamera

void LockCamera ()

Calling this function stops the Camera from being controlled by the viewer, and allows us to control it until ReleaseCamera() is called.

Space.Camera.LockCamera()

ReleaseCamera

void ReleaseCamera ()

Calling this function reverses the LockCamera() call and returns control of the Camera to the viewer.

Space.Camera.ReleaseCamera()

SetCameraPositionOrientation

void SetCameraPositionOrientation (SVector position, SQuaternion orientation)

Sets the Camera's position and rotation. This function requires the camera to be locked.

Parameter
Type
Description

position

The World Postion of the camera GameObject.

orientation

The World Rotation of the camera GameObject.

Space.Camera.SetCameraPositionOrientation (Vector.New(0,0,0),Quaternion.Euler(-60,0,0));

ScreenCoordinatesToRay

SRay ScreenCoordinatesToRay (SVector screenCoordinates)

Returns a ray going from camera through a screen point.

Parameter
Type
Description

cameraRay = Space.Camera.ScreenCoordinatesToRay (Vector.New(0,50,0))
 --this script will make this object jump to wherever you right click
--(Example: moving objects with right click )

thisGameObject = Space.Host.ExecutingObject


OnUpdate = function()
  if Space.Input.GetMouseDown(1) then
   clickRay = Space.Camera.ScreenCoordinatesToRay(Space.Input.MousePosition)
  rayCastHit = Space.Physics.RayCastSingle(clickRay.Origin, clickRay.Direction, 50.0)
  thisGameObject.WorldPosition = rayCastHit.Position
  end
end

thisGameObject.SubscribeToEvents()
thisGameObject.OnUpdate(OnUpdate) 

ScreenCoordinatesToWorld

SVector ScreenCoordinatesToWorld (SVector screenCoordinates)

Transforms a point from screen space into world space.

Parameter
Type
Description

obj = Space.Host.ExecutingObject;
Space.Log(Space.Camera.ScreenCoordinatesToWorld(Vector.New(0.5,0.5,0)).ToString());

-- Print 3 worldspace vectors created by screen space point to the console.

WorldCoordinatesToScreen

SVector WorldCoordinatesToScreen (SVector coordinates)

Function Description

Parameter
Type
Description

local trans = Space.Host.ExecutingObject;
Space.Log(Space.Camera.WorldCoordinatesToScreen(trans.WorldPosition).ToString());

-- Print the position created by world space point to the console.

ShakeCamera

void ShakeCamera (float magnitude, float time) void ShakeCamera (float amplitude, float frequency, float time)

Function Description

Parameter
Type
Description

Space.Camera.ShakeCamera(1, 1.0)
--or
Space.Camera.ShakeCamera(2, 1, 1.0)

Last updated

Sinespace® is a registered trademark of Sine Wave Entertainment Ltd, All Rights Reserved.