The ICamera video object interface. More...
#include "murl_video_i_camera.h"
Inherited by Murl::Video::Camera, and Murl::Video::Vulkan::Camera.
Public Member Functions | |
virtual IObject * | GetObjectInterface ()=0 |
Get the mutable Video::IObject interface. More... | |
virtual const IObject * | GetObjectInterface () const =0 |
Get the constant Video::IObject interface. More... | |
virtual Bool | Enable ()=0 |
Enable the camera. More... | |
virtual Bool | Disable ()=0 |
Disable the camera. More... | |
virtual Bool | Set (IProgram *currentProgram)=0 |
Attach the camera to the current GPU program. More... | |
virtual Bool | SetColorBufferClearingEnabled (Bool enabled)=0 |
Enable/disable clearing of the render target's color buffer. More... | |
virtual Bool | IsColorBufferClearingEnabled () const =0 |
Check if clearing of the render target's color buffer is enabled. More... | |
virtual Bool | SetDepthBufferClearingEnabled (Bool enabled)=0 |
Enable/disable clearing of the render target's depth buffer. More... | |
virtual Bool | IsDepthBufferClearingEnabled () const =0 |
Check if clearing of the render target's depth buffer is enabled. More... | |
virtual Bool | SetStencilBufferClearingEnabled (Bool enabled)=0 |
Enable/disable clearing of the render target's stencil buffer. More... | |
virtual Bool | IsStencilBufferClearingEnabled () const =0 |
Check if clearing of the render target's stencil buffer is enabled. More... | |
virtual Bool | SetColorBufferClearValue (const Color &color)=0 |
Set the clear color in effect when color buffer clearing is enabled. More... | |
virtual Color | GetColorBufferClearValue () const =0 |
Get the clear color in effect when color buffer clearing is enabled. More... | |
virtual Bool | SetDepthBufferClearValue (Real value)=0 |
Set the clear value in effect when depth buffer clearing is enabled. More... | |
virtual Real | GetDepthBufferClearValue () const =0 |
Get the clear value in effect when depth buffer clearing is enabled. More... | |
virtual Bool | SetStencilBufferClearValue (UInt8 value)=0 |
Set the clear value in effect when stencil buffer clearing is enabled. More... | |
virtual UInt8 | GetStencilBufferClearValue () const =0 |
Get the clear value in effect when stencil buffer clearing is enabled. More... | |
virtual Bool | SetDepthOrder (SInt32 depthOrder)=0 |
Set the camera's absolute depth order. More... | |
virtual SInt32 | GetDepthOrder () const =0 |
Get the camera's absolute depth order. More... | |
virtual Bool | SetMask (SInt32 x1, SInt32 x2, SInt32 y1, SInt32 y2)=0 |
Set the camera mask. More... | |
virtual SInt32 | GetMaskX1 () const =0 |
Get the camera mask's left border coordinate. More... | |
virtual SInt32 | GetMaskX2 () const =0 |
Get the camera mask's right border coordinate. More... | |
virtual SInt32 | GetMaskY1 () const =0 |
Get the camera mask's bottom border coordinate. More... | |
virtual SInt32 | GetMaskY2 () const =0 |
Get the camera mask's top border coordinate. More... | |
virtual Bool | SetFrontFacingVertexOrder (IEnums::VertexOrder order)=0 |
Set the winding order for front-facing polygons. More... | |
virtual IEnums::VertexOrder | GetFrontFacingVertexOrder () const =0 |
Get the winding order for front-facing polygons. More... | |
virtual Bool | SetDepthSortMode (IEnums::DepthSortMode mode)=0 |
Set the depth sort mode for geometries within this camera. More... | |
virtual IEnums::DepthSortMode | GetDepthSortMode () const =0 |
Get the depth sort mode for geometries within this camera. More... | |
virtual Bool | SetViewOffsetTransform (const Matrix *offset)=0 |
Set an optional view offset for rendering. More... | |
virtual const Matrix * | GetViewOffsetTransform () const =0 |
Get the current view offset matrix. More... | |
virtual Bool | SetWorldTransform (const Matrix &transform)=0 |
Set the camera's current world transform. More... | |
virtual Bool | SetProjectionTransform (const Matrix &projection, Real nearPlane, Real farPlane, Bool isOrthographic)=0 |
Set the camera's projection matrix. More... | |
virtual const Vector & | GetWorldPosition () const =0 |
Get the current camera position in world space. More... | |
virtual const Vector & | GetWorldDirection () const =0 |
Get the current camera direction in world space. More... | |
virtual const Matrix & | GetWorldTransform () const =0 |
Get the camera's current world transform. More... | |
virtual const Matrix & | GetProjectionTransform () const =0 |
Get the camera's projection matrix. More... | |
virtual const Matrix & | GetViewTransform () const =0 |
Get the camera's current view matrix. More... | |
virtual const Matrix & | GetViewProjectionTransform () const =0 |
Get the camera's combined current view and projection matrix. More... | |
virtual Real | GetNearPlane () const =0 |
Get the camera's absolute near clipping plane distance. More... | |
virtual Real | GetFarPlane () const =0 |
Get the camera's absolute far clipping plane distance. More... | |
virtual Bool | IsIntersecting (const Sphere &boundingSphere) const =0 |
Check if the camera's view volume intersects a given sphere. More... | |
virtual Bool | SetView (IView *view)=0 |
Set the camera view. More... | |
virtual IView * | GetView () const =0 |
Get the camera view. More... | |
virtual void | SetUserMask (SInt32 x1, SInt32 x2, SInt32 y1, SInt32 y2)=0 |
Set the view mask. More... | |
virtual SInt32 | GetUserMaskX1 () const =0 |
Get the view mask's left border coordinate. More... | |
virtual SInt32 | GetUserMaskX2 () const =0 |
Get the view mask's right border coordinate. More... | |
virtual SInt32 | GetUserMaskY1 () const =0 |
Get the view mask's bottom border coordinate. More... | |
virtual SInt32 | GetUserMaskY2 () const =0 |
Get the view mask's top border coordinate. More... | |
Detailed Description
The ICamera video object interface.
This interface represents a camera used for rendering a scene.
Used internally by Graph::Camera.
Member Function Documentation
◆ GetObjectInterface() [1/2]
|
pure virtual |
Get the mutable Video::IObject interface.
- Returns
- The IObject interface.
◆ GetObjectInterface() [2/2]
|
pure virtual |
Get the constant Video::IObject interface.
- Returns
- The IObject interface.
◆ Enable()
|
pure virtual |
Enable the camera.
- Returns
- true if successful.
◆ Disable()
|
pure virtual |
Disable the camera.
- Returns
- true if successful.
◆ Set()
Attach the camera to the current GPU program.
- Parameters
-
currentProgram The current GPU program.
- Returns
- true if successful.
◆ SetColorBufferClearingEnabled()
Enable/disable clearing of the render target's color buffer.
- Parameters
-
enabled Set to false to disable color buffer clearing.
- Returns
- true if successful.
◆ IsColorBufferClearingEnabled()
|
pure virtual |
Check if clearing of the render target's color buffer is enabled.
- Returns
- true if color buffer clearing is enabled.
◆ SetDepthBufferClearingEnabled()
Enable/disable clearing of the render target's depth buffer.
- Parameters
-
enabled Set to false to disable depth buffer clearing.
- Returns
- true if successful.
◆ IsDepthBufferClearingEnabled()
|
pure virtual |
Check if clearing of the render target's depth buffer is enabled.
- Returns
- true if depth buffer clearing is enabled.
◆ SetStencilBufferClearingEnabled()
Enable/disable clearing of the render target's stencil buffer.
- Parameters
-
enabled Set to false to disable stencil buffer clearing.
- Returns
- true if successful.
◆ IsStencilBufferClearingEnabled()
|
pure virtual |
Check if clearing of the render target's stencil buffer is enabled.
- Returns
- true if stencil buffer clearing is enabled.
◆ SetColorBufferClearValue()
Set the clear color in effect when color buffer clearing is enabled.
- Parameters
-
color The clear color.
- Returns
- true if successful.
◆ GetColorBufferClearValue()
|
pure virtual |
Get the clear color in effect when color buffer clearing is enabled.
- Returns
- The clear color.
◆ SetDepthBufferClearValue()
Set the clear value in effect when depth buffer clearing is enabled.
- Parameters
-
value The clear value.
- Returns
- true if successful.
◆ GetDepthBufferClearValue()
|
pure virtual |
Get the clear value in effect when depth buffer clearing is enabled.
- Returns
- The clear value.
◆ SetStencilBufferClearValue()
Set the clear value in effect when stencil buffer clearing is enabled.
- Parameters
-
value The clear value.
- Returns
- true if successful.
◆ GetStencilBufferClearValue()
|
pure virtual |
Get the clear value in effect when stencil buffer clearing is enabled.
- Returns
- The clear value.
◆ SetDepthOrder()
Set the camera's absolute depth order.
- Parameters
-
depthOrder The absolute order of this camera within its view.
- Returns
- true if successful.
◆ GetDepthOrder()
|
pure virtual |
Get the camera's absolute depth order.
- Returns
- The absolute order of this camera within its view.
◆ SetMask()
|
pure virtual |
Set the camera mask.
- Parameters
-
x1 The left mask coordinate in pixels. y1 The bottom mask coordinate in pixels. x2 The right mask coordinate in pixels. y2 The top mask coordinate in pixels.
- Returns
- true if successful.
◆ GetMaskX1()
|
pure virtual |
Get the camera mask's left border coordinate.
- Returns
- The left mask coordinate in pixels.
◆ GetMaskX2()
|
pure virtual |
Get the camera mask's right border coordinate.
- Returns
- The right mask coordinate in pixels.
◆ GetMaskY1()
|
pure virtual |
Get the camera mask's bottom border coordinate.
- Returns
- The bottom mask coordinate in pixels.
◆ GetMaskY2()
|
pure virtual |
Get the camera mask's top border coordinate.
- Returns
- The top mask coordinate in pixels.
◆ SetFrontFacingVertexOrder()
|
pure virtual |
Set the winding order for front-facing polygons.
- Parameters
-
order The winding order, either clockwise or counter-clockwise.
- Returns
- true if successful.
◆ GetFrontFacingVertexOrder()
|
pure virtual |
Get the winding order for front-facing polygons.
- Returns
- The winding order, either clockwise or counter-clockwise.
◆ SetDepthSortMode()
|
pure virtual |
Set the depth sort mode for geometries within this camera.
- Parameters
-
mode The depth sort mode used for this camera.
- Returns
- true if successful.
◆ GetDepthSortMode()
|
pure virtual |
Get the depth sort mode for geometries within this camera.
- Returns
- The depth sort mode used for this camera.
◆ SetViewOffsetTransform()
Set an optional view offset for rendering.
When rendering to a regular 2D frame buffer, the given offset parameter is set to null. When rendering to a cube map frame buffer, the camera gets processed six times (once for each side of the cube map), and the given offset matrix represents a rotation towards the currently active face.
- Parameters
-
offset The optional view offset matrix.
- Returns
- true if successful.
◆ GetViewOffsetTransform()
|
pure virtual |
Get the current view offset matrix.
- Returns
- The view offset matrix, or null if not set.
◆ SetWorldTransform()
Set the camera's current world transform.
- Parameters
-
transform The current world transform.
- Returns
- true if successful.
◆ SetProjectionTransform()
|
pure virtual |
Set the camera's projection matrix.
- Parameters
-
projection The projection matrix. nearPlane The absolute distance of the near clipping plane. farPlane The absolute distance of the far clipping plane. isOrthographic If true, the given matrix represents an orthographic projection.
- Returns
- true if successful.
◆ GetWorldPosition()
|
pure virtual |
Get the current camera position in world space.
- Returns
- The current camera position.
◆ GetWorldDirection()
|
pure virtual |
Get the current camera direction in world space.
- Returns
- The current camera direction.
◆ GetWorldTransform()
|
pure virtual |
Get the camera's current world transform.
- Returns
- The current world transform.
◆ GetProjectionTransform()
|
pure virtual |
Get the camera's projection matrix.
- Returns
- The projection matrix.
◆ GetViewTransform()
|
pure virtual |
Get the camera's current view matrix.
This equals the inverse of the current world transform.
- Returns
- The current view matrix.
◆ GetViewProjectionTransform()
|
pure virtual |
Get the camera's combined current view and projection matrix.
- Returns
- The current view/projection matrix.
◆ GetNearPlane()
|
pure virtual |
Get the camera's absolute near clipping plane distance.
- Returns
- The near plane distance.
◆ GetFarPlane()
|
pure virtual |
Get the camera's absolute far clipping plane distance.
- Returns
- The far plane distance.
◆ IsIntersecting()
|
pure virtual |
Check if the camera's view volume intersects a given sphere.
- Parameters
-
boundingSphere The world-coordinate bounding sphere to check.
- Returns
- true if the bounding sphere intersects the view volume.
◆ SetView()
Set the camera view.
- Parameters
-
view The view to use.
- Returns
- true if successful.
◆ GetView()
|
pure virtual |
Get the camera view.
- Returns
- The view used.
◆ SetUserMask()
|
pure virtual |
Set the view mask.
- Parameters
-
x1 The left mask coordinate in pixels. y1 The bottom mask coordinate in pixels. x2 The right mask coordinate in pixels. y2 The top mask coordinate in pixels.
◆ GetUserMaskX1()
|
pure virtual |
Get the view mask's left border coordinate.
- Returns
- The left mask coordinate in pixels.
◆ GetUserMaskX2()
|
pure virtual |
Get the view mask's right border coordinate.
- Returns
- The right mask coordinate in pixels.
◆ GetUserMaskY1()
|
pure virtual |
Get the view mask's bottom border coordinate.
- Returns
- The bottom mask coordinate in pixels.
◆ GetUserMaskY2()
|
pure virtual |
Get the view mask's top border coordinate.
- Returns
- The top mask coordinate in pixels.
The documentation for this interface was generated from the following file:
- murl_video_i_camera.h