gdk-graphics 0a0aef92e917cfbac53dffbc32c295e4de914093
Loading...
Searching...
No Matches
gdk::graphics::screen_camera Class Referenceabstract

Position, orientation and perspective from which entity(s) are drawn. More...

#include <screen_camera.h>

Inheritance diagram for gdk::graphics::screen_camera:
Collaboration diagram for gdk::graphics::screen_camera:

Public Member Functions

virtual void set_viewport (const float aX, const float aY, const float aWidth, const float aHeight)=0
 sets the normalized size and position of the viewport within the window
virtual void set_scissor (const float aX, const float aY, const float aWidth, const float aHeight)=0
 clip this camera to a rectangle of the window without moving what it draws
virtual void clear_scissor ()=0
Public Member Functions inherited from gdk::graphics::camera
virtual void set_perspective_projection (const floating_point_type aFieldOfView, const floating_point_type aNearClippingPlane, const floating_point_type aFarClippingPlane, const floating_point_type aViewportAspectRatio)=0
 use a perspective projection with the given view volume
virtual void set_perspective_projection (const floating_point_type aFieldOfView, const floating_point_type aNearClippingPlane, const floating_point_type aFarClippingPlane, const floating_point_type aViewportAspectRatio, const vector2_type &aShift)=0
 use a perspective projection whose window is off the view's axis: an asymmetric frustum, as an eye of a stereo pair sees a screen both eyes converge on, or a panel of a tiled display sees its share
virtual void set_orthographic_projection (const gdk::graphics::vector2_type &aOrthographicSize, const floating_point_type aNearClippingPlane, const floating_point_type aFarClippingPlane, const floating_point_type aViewportAspectRatio)=0
 use an orthographic projection with the given view volume aOrthographicSize is the full extent of the volume, not its half extents
virtual void set_transform (const gdk::graphics::matrix4x4_type &aMatrix)=0
 sets the camera's world and view matrix
virtual void set_transform (const gdk::graphics::vector3_type &aWorldPos, const gdk::graphics::quaternion_type &aRotation)=0
virtual void set_clear_color (const gdk::graphics::color &acolor)=0
 sets the clear color, used to fill color buffer after it is cleared.
virtual void set_clear_mode (const clear_mode aClearMode)=0
 clear mode decides which buffers to clear. see enum

Additional Inherited Members

Public Types inherited from gdk::graphics::camera
enum class  clear_mode { nothing , color_and_depth , depth_only }
 controls which buffers in the active frame buffer object to clear More...

Detailed Description

Position, orientation and perspective from which entity(s) are drawn.

Member Function Documentation

◆ set_scissor()

virtual void gdk::graphics::screen_camera::set_scissor ( const float aX,
const float aY,
const float aWidth,
const float aHeight )
pure virtual

clip this camera to a rectangle of the window without moving what it draws

Implemented in gdk::graphics::null_camera.

◆ set_viewport()

virtual void gdk::graphics::screen_camera::set_viewport ( const float aX,
const float aY,
const float aWidth,
const float aHeight )
pure virtual

sets the normalized size and position of the viewport within the window

Viewports that meet share their edge exactly: a pixel is drawn by one of them, never by neither

Implemented in gdk::graphics::null_camera.


The documentation for this class was generated from the following file: