Class Camera
- Namespace
- OmegaEngine.Graphics.Cameras
- Assembly
- OmegaEngine.dll
Determines the perspective from which a Scene is displayed.
public abstract class Camera : InputReceiverBase, IInputReceiver, IPositionable
- Inheritance
-
objectCamera
- Implements
- Derived
- Inherited Members
Fields
FloatingOriginCached
protected DoubleVector3 FloatingOriginCached
Field Value
PositionCached
protected DoubleVector3 PositionCached
Field Value
ProjectionDirty
Does OmegaEngine.Graphics.Cameras.Camera._projection need to be recalculated?
protected bool ProjectionDirty
Field Value
SimpleViewCached
protected Matrix SimpleViewCached
Field Value
- Matrix
ViewCached
protected Matrix ViewCached
Field Value
- Matrix
ViewDirty
Does ViewCached need to be recalculated?
protected bool ViewDirty
Field Value
ViewFrustumDirty
Does the view frustum need to be recalculated?
protected bool ViewFrustumDirty
Field Value
Properties
ClipPlane
A custom clip plane behind which all objects are culled
public DoublePlane ClipPlane { get; set; }
Property Value
CylindricalBillboard
A rotation matrix for a faked cylindrical billboard effect
protected Matrix CylindricalBillboard { get; }
Property Value
- Matrix
FarClip
Maximum distance of objects to the camera
public float FarClip { get; set; }
Property Value
FieldOfView
The view angle in degrees
public float FieldOfView { get; set; }
Property Value
FloatingOrigin
The origin used to transform 64-bit positions into 32-bit render coordinates
public DoubleVector3 FloatingOrigin { get; set; }
Property Value
- See Also
-
IFloatingOriginAware
FloatingOriginMaxDistance
The maximum distance FloatingOrigin can have from Position before it is automatically reset
public float FloatingOriginMaxDistance { get; set; }
Property Value
FrustumCulling
Shall the engine use view frustum culling to optimize the rendering performance?
public bool FrustumCulling { get; set; }
Property Value
Name
Text value to make it easier to identify a particular camera
public string? Name { get; set; }
Property Value
NearClip
Minimum distance of objects to the camera
public float NearClip { get; set; }
Property Value
Position
The camera's position in 3D-space
public DoubleVector3 Position { get; set; }
Property Value
SimpleView
A left-handed view matrix with absolutely no translation information
protected Matrix SimpleView { get; }
Property Value
- Matrix
SphericalBillboard
A rotation matrix for a faked spherical billboard effect
protected Matrix SphericalBillboard { get; }
Property Value
- Matrix
View
A left-handed view matrix for the current camera setting
protected Matrix View { get; }
Property Value
- Matrix
ViewInverse
An inverted view matrix for the current camera setting
protected Matrix ViewInverse { get; }
Property Value
- Matrix
ViewInverseTranspose
An inverted and transposed view matrix for the current camera setting
protected Matrix ViewInverseTranspose { get; }
Property Value
- Matrix
ViewTranspose
A transposed view matrix for the current camera setting
protected Matrix ViewTranspose { get; }
Property Value
- Matrix
Methods
AdjustFloatingOrigin()
Adjusts FloatingOrigin if Position is too far away.
protected void AdjustFloatingOrigin()
CacheSpecialMatrices()
Calculate cached versions of special matrices (e.g. ViewInverse calculated from View)
protected virtual void CacheSpecialMatrices()
ToString()
Returns a string that represents the current object.
public override string ToString()
Returns
- string
A string that represents the current object.
UpdateProjection()
Update OmegaEngine.Graphics.Cameras.Camera.Projection if necessary
protected virtual void UpdateProjection()
UpdateView()
Update cached versions of View and related matrices if necessary
protected virtual void UpdateView()