![]() |
Murl Engine API
Version 2025.1
|
The ICamera video object interface. More...
#include <murl_video_i_camera.h>
The ICamera video object interface.
This interface represents a camera used for rendering a scene.
Used internally by Graph::Camera.
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... | |
|
pure virtual |
Get the mutable Video::IObject interface.
|
pure virtual |
Get the constant Video::IObject interface.
|
pure virtual |
Enable the camera.
|
pure virtual |
Disable the camera.
Attach the camera to the current GPU program.
| currentProgram | The current GPU program. |
Enable/disable clearing of the render target's color buffer.
| enabled | Set to false to disable color buffer clearing. |
|
pure virtual |
Check if clearing of the render target's color buffer is enabled.
Enable/disable clearing of the render target's depth buffer.
| enabled | Set to false to disable depth buffer clearing. |
|
pure virtual |
Check if clearing of the render target's depth buffer is enabled.
Enable/disable clearing of the render target's stencil buffer.
| enabled | Set to false to disable stencil buffer clearing. |
|
pure virtual |
Check if clearing of the render target's stencil buffer is enabled.
Set the clear color in effect when color buffer clearing is enabled.
| color | The clear color. |
|
pure virtual |
Get the clear color in effect when color buffer clearing is enabled.
Set the clear value in effect when depth buffer clearing is enabled.
| value | The clear value. |
|
pure virtual |
Get the clear value in effect when depth buffer clearing is enabled.
Set the clear value in effect when stencil buffer clearing is enabled.
| value | The clear value. |
|
pure virtual |
Get the clear value in effect when stencil buffer clearing is enabled.
Set the camera's absolute depth order.
| depthOrder | The absolute order of this camera within its view. |
|
pure virtual |
Get the camera's absolute depth order.
|
pure virtual |
Set the camera mask.
| 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. |
|
pure virtual |
Get the camera mask's left border coordinate.
|
pure virtual |
Get the camera mask's right border coordinate.
|
pure virtual |
Get the camera mask's bottom border coordinate.
|
pure virtual |
Get the camera mask's top border coordinate.
|
pure virtual |
Set the winding order for front-facing polygons.
| order | The winding order, either clockwise or counter-clockwise. |
|
pure virtual |
Get the winding order for front-facing polygons.
|
pure virtual |
Set the depth sort mode for geometries within this camera.
| mode | The depth sort mode used for this camera. |
|
pure virtual |
Get the depth sort mode for geometries within this camera.
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.
| offset | The optional view offset matrix. |
|
pure virtual |
Get the current view offset matrix.
Set the camera's current world transform.
| transform | The current world transform. |
|
pure virtual |
Set the camera's projection matrix.
| 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. |
|
pure virtual |
Get the current camera position in world space.
|
pure virtual |
Get the current camera direction in world space.
|
pure virtual |
Get the camera's current world transform.
|
pure virtual |
Get the camera's projection matrix.
|
pure virtual |
Get the camera's current view matrix.
This equals the inverse of the current world transform.
|
pure virtual |
Get the camera's combined current view and projection matrix.
|
pure virtual |
Get the camera's absolute near clipping plane distance.
|
pure virtual |
Get the camera's absolute far clipping plane distance.
|
pure virtual |
Check if the camera's view volume intersects a given sphere.
| boundingSphere | The world-coordinate bounding sphere to check. |
Set the camera view.
| view | The view to use. |
|
pure virtual |
Get the camera view.
|
pure virtual |
Set the view mask.
| 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. |
|
pure virtual |
Get the view mask's left border coordinate.
|
pure virtual |
Get the view mask's right border coordinate.
|
pure virtual |
Get the view mask's bottom border coordinate.
|
pure virtual |
Get the view mask's top border coordinate.