34#include <NDEVR/Matrix.h>
35#include <NDEVR/Vector.h>
36#include <NDEVR/UUID.h>
37#include <NDEVR/RGBColor.h>
38#include <NDEVR/Time.h>
65 || !AreSame(
dpi,
object.
dpi)
A core object representing a user view as well as convenience functions for moving this view through ...
GraphicsCameraManager(const GraphicsCameraManager &m_pipeline)
Copy constructor.
GraphicsCameraManager()
Default constructor.
bool m_needs_pipeline_update
Whether the pipeline needs rebuilding.
UUID m_camera
UUID of the managed camera.
bool useCameraMaterial() const
Checks whether the camera material override is active.
bool m_needs_uniform_commit
Whether the uniform buffer needs committing.
virtual ~GraphicsCameraManager()
Destructor.
UUID m_override_material
UUID of the material override (if any).
bool m_uses_origin
Whether origin-based precision is active.
const CameraUniformObject & uniformObject() const
Returns the current camera uniform data.
void setCamera(const UUID &camera)
Sets the camera to manage.
CameraUniformObject m_camera_uniform
Current uniform data for the GPU.
Time m_last_updated_time
Last time the uniform was updated.
virtual void updateUniformBuffer(GraphicsUpdateArguments &args)
Updates the GPU uniform buffer from the current camera state.
bool m_use_anisotropy
Whether anisotropic filtering is enabled.
bool m_use_camera_material
Whether camera-specific material is used.
CameraUniformObject getCameraUniformObject(const Camera &camera, GraphicsUpdateArguments &args) const
Builds a CameraUniformObject from a Camera and update arguments.
UUID overrideMaterial() const
Returns the override material UUID.
Time m_visible_update_time
Last time a visible change was detected.
Options that are used for performing an update on a Graphics Engine call.
Templated logic for doing matrix multiplication.
Represents a color in the RGB space with optional alpha transparency.
Represents a timestamp with utilities for manipulation and conversion.
A universally unique identifier (UUID) is a 128-bit number used to identify information in computer s...
A fixed-size array with N dimensions used as the basis for geometric and mathematical types.
The primary namespace for the NDEVR SDK.
float fltp04
Defines an alias representing a 4 byte floating-point number Bit layout is as follows: -Sign: 1 bit a...
Defines for a given type (such as sint04, fltp08, UUID, etc) a maximum, minimum, and reserved 'invali...