gdk-graphics 0a0aef92e917cfbac53dffbc32c295e4de914093
Loading...
Searching...
No Matches
gdk::graphics::null_texture_camera Class Referencefinal
Inheritance diagram for gdk::graphics::null_texture_camera:
Collaboration diagram for gdk::graphics::null_texture_camera:

Public Member Functions

 null_texture_camera (const intvector2_type &aSize={1024, 1024})
virtual void set_perspective_projection (const floating_point_type aFieldOfView, const floating_point_type aNear, const floating_point_type aFar, const floating_point_type aAspectRatio) override
 use a perspective projection with the given view volume
virtual void set_perspective_projection (const floating_point_type aFieldOfView, const floating_point_type aNear, const floating_point_type aFar, const floating_point_type aAspectRatio, const vector2_type &aShift) override
 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 vector2_type &aOrthographicSize, const floating_point_type aNear, const floating_point_type aFar, const floating_point_type aAspectRatio) override
 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 matrix4x4_type &aTransform) override
 sets the camera's world and view matrix
virtual void set_transform (const vector3_type &aWorldPos, const quaternion_type &aRotation) override
virtual void set_clear_color (const color &aColor) override
 sets the clear color, used to fill color buffer after it is cleared.
virtual void set_clear_mode (const clear_mode aClearMode) override
 clear mode decides which buffers to clear. see enum
virtual texture_ptr_type color_texture () const override
 the texture the camera draws colour into
virtual texture_ptr_type depth_texture () const override
 the texture the camera draws depth into

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...

Member Function Documentation

◆ color_texture()

virtual texture_ptr_type gdk::graphics::null_texture_camera::color_texture ( ) const
nodiscardoverridevirtual

the texture the camera draws colour into

Implements gdk::graphics::texture_camera.

◆ depth_texture()

virtual texture_ptr_type gdk::graphics::null_texture_camera::depth_texture ( ) const
nodiscardoverridevirtual

the texture the camera draws depth into

Exceptions
gdk::graphics::exceptionwhere the device cannot sample depth

Implements gdk::graphics::texture_camera.

◆ set_clear_color()

virtual void gdk::graphics::null_texture_camera::set_clear_color ( const color & acolor)
overridevirtual

sets the clear color, used to fill color buffer after it is cleared.

Implements gdk::graphics::camera.

◆ set_clear_mode()

virtual void gdk::graphics::null_texture_camera::set_clear_mode ( const clear_mode aClearMode)
overridevirtual

clear mode decides which buffers to clear. see enum

Implements gdk::graphics::camera.

◆ set_orthographic_projection()

virtual void gdk::graphics::null_texture_camera::set_orthographic_projection ( const vector2_type & aOrthographicSize,
const floating_point_type aNearClippingPlane,
const floating_point_type aFarClippingPlane,
const floating_point_type aViewportAspectRatio )
overridevirtual

use an orthographic projection with the given view volume aOrthographicSize is the full extent of the volume, not its half extents

Implements gdk::graphics::camera.

◆ set_perspective_projection() [1/2]

virtual void gdk::graphics::null_texture_camera::set_perspective_projection ( const floating_point_type aFieldOfView,
const floating_point_type aNearClippingPlane,
const floating_point_type aFarClippingPlane,
const floating_point_type aViewportAspectRatio )
overridevirtual

use a perspective projection with the given view volume

Parameters
aFieldOfViewvertical field of view, in radians
aNearClippingPlanedistance to the near plane; must be > 0
aFarClippingPlanedistance to the far plane; must be > aNearClippingPlane
aViewportAspectRatiowidth divided by height

Implements gdk::graphics::camera.

◆ set_perspective_projection() [2/2]

virtual void gdk::graphics::null_texture_camera::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 )
overridevirtual

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

Parameters
aShifthow far the window's centre is from the axis, as a share of the window's half extents: {0, 0} is the symmetric projection above; {0.25, 0} moves the window a quarter of its half width to the right, so what is on the axis is drawn that far left of the centre

Implements gdk::graphics::camera.

◆ set_transform() [1/2]

virtual void gdk::graphics::null_texture_camera::set_transform ( const matrix4x4_type & aMatrix)
overridevirtual

sets the camera's world and view matrix

Implements gdk::graphics::camera.

◆ set_transform() [2/2]

virtual void gdk::graphics::null_texture_camera::set_transform ( const vector3_type & aWorldPos,
const quaternion_type & aRotation )
overridevirtual

Implements gdk::graphics::camera.


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