Table of Contents

Class ArcballCamera

Namespace
OmegaEngine.Graphics.Cameras
Assembly
OmegaEngine.dll

A camera that orbits around a target point. Adjustable yaw, pitch, and roll. Panning the target respects the current yaw and roll.

Useful for building model viewers, character inspection screens, or turntable presentations.
public sealed class ArcballCamera : ZoomCamera, IInputReceiver, IPositionable
Inheritance
object
ArcballCamera
Implements
Inherited Members

Properties

MovementSensitivity

Controls the sensitivity of movement.

[FloatRange(0, 100)]
public double MovementSensitivity { get; set; }

Property Value

double

Pitch

The vertical rotation upwards of the camera around the target in degrees.

public double Pitch { get; set; }

Property Value

double

Roll

The counter-clockwise roll along the view direction in degrees.

public double Roll { get; set; }

Property Value

double

WorldUp

A unit vector describing the direction considered up in the world.

public DoubleVector3 WorldUp { get; set; }

Property Value

DoubleVector3

Yaw

The clockwise horizontal rotation of the camera around the target in degrees.

public double Yaw { get; set; }

Property Value

double

Methods

Navigate(DoubleVector3, DoubleVector3)

Called when the user changes the view perspective.

public override void Navigate(DoubleVector3 translation = default, DoubleVector3 rotation = default)

Parameters

translation DoubleVector3

Movement in screen units. X = pan right, Y = pan up, Z = move forward

rotation DoubleVector3

Rotation in degrees. X = yaw right, Y = pitch up, Z = roll clockwise

UpdateView()

Update cached versions of View and related matrices; abstract, to be overwritten in subclass.

protected override void UpdateView()