SCameraManager
Index
Functions Index
| Function Name |
|---|
| void LockCamera (SGameObject owner) |
| void ReleaseCamera () |
| void SetCameraPositionOrientation (SVector position, SQuaternion orientation) |
| SRay ScreenCoordinatesToRay (SVector screenCoordinates) |
| SVector ScreenCoordinatesToWorld (SVector screenCoordinates) |
| SVector WorldCoordinatesToScreen (SVector coordinates) |
void ShakeCamera (float magnitude, float time) |
Properties Index
| Property |
|---|
bool IsLocked get |
SGameObject MainCamera get |
SGameObject ActiveVirtualCamera get |
Properties
IsLocked
bool IsLocked get
Is the Camera locked?
- Lua
isCameraLocked = Space.Camera.IsLocked
MainCamera
SGameObject MainCamera get
Note, this property is generally read-only. It's position is driven by internal code.
- Lua
mainCamera = Space.Camera.MainCamera
ActiveVirtualCamera
SGameObject ActiveVirtualCamera get
The currently active Cinemachine Virtual Camera game object.
- Lua
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.
- Lua
Space.Camera.LockCamera()
ReleaseCamera
void ReleaseCamera ()
Calling this function reverses the LockCamera() call and returns control of the Camera to the viewer.
- Lua
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 | SVector | The World Postion of the camera GameObject. |
| orientation | SQuaternion | The World Rotation of the camera GameObject. |
- Lua
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 |
|---|---|---|
- Lua
cameraRay = Space.Camera.ScreenCoordinatesToRay (Vector.New(0,50,0))
- Lua
--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 |
|---|---|---|
- Lua
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 |
|---|---|---|
- Lua
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 |
|---|---|---|
- Lua
Space.Camera.ShakeCamera(1, 1.0)
--or
Space.Camera.ShakeCamera(2, 1, 1.0)