Foray Library
rapid prototyping framework for crossplatform development of vulkan hardware ray tracing applications
|
Manages the Camera matrix buffer and maintains a list of cameras in the scene. More...
#include <foray_cameramanager.hpp>
Public Member Functions | |
VkDescriptorBufferInfo | GetVkDescriptorInfo () const |
CameraManager (core::Context *context) | |
virtual void | RefreshCameraList () |
virtual void | SelectCamera (ncomp::Camera *camera) |
virtual | ~CameraManager () |
virtual void | Update (SceneUpdateInfo &updateInfo) override |
virtual int32_t | GetOrder () const override |
void | GetCameras (std::vector< ncomp::Camera * > &cameras) |
![]() | |
virtual Scene * | GetScene () override |
Scene this component is a part of. Casts mRegistry to Scene. | |
virtual Registry * | GetGlobals () override |
Global component registry. Returns mRegistry. | |
virtual core::Context * | GetContext () override |
Vulkan Context. Casts mRegistry to Scene and returns Scene->GetContext() | |
![]() | |
virtual | ~Component () |
Destructor. Provide virtual constructors in inheriting classes, to make sure they get finalized correctly. | |
![]() | |
NoMoveDefaults ()=default | |
NoMoveDefaults (const NoMoveDefaults &other)=delete | |
NoMoveDefaults (NoMoveDefaults &&other)=default | |
NoMoveDefaults & | operator= (const NoMoveDefaults &other)=delete |
![]() | |
virtual void | Update (TArg updateInfo)=0 |
Invoked first each frame. Use for changes to the node hierarchy and transforms. | |
void | Invoke (TArg updateInfo) |
Protected Member Functions | |
void | UpdateUboDescriptorBufferInfos () |
![]() | |
virtual void | __makeMePolymorphic () |
Protected Attributes | |
util::ManagedUbo< CameraUboBlock > | mUbo |
std::unordered_set< ncomp::Camera * > | mCameras |
ncomp::Camera * | mSelectedCamera = nullptr |
![]() | |
Registry * | mRegistry = nullptr |
std::string | mName = "" |
Additional Inherited Members | |
![]() | |
using | TArg = SceneUpdateInfo & |
![]() | |
friend | Registry |
![]() | |
static const bool | ORDERED_EXECUTION = true |
static const int32_t | ORDER_TRANSFORM = 100 |
static const int32_t | ORDER_DEVICEUPLOAD = 200 |
Manages the Camera matrix buffer and maintains a list of cameras in the scene.
foray::scene::gcomp::CameraManager::CameraManager | ( | core::Context * | context | ) |
|
virtual |
void foray::scene::gcomp::CameraManager::GetCameras | ( | std::vector< ncomp::Camera * > & | cameras | ) |
|
inlineoverridevirtual |
Reimplemented from foray::scene::Component::UpdateCallback.
|
inline |
|
virtual |
|
virtual |
|
overridevirtual |
|
protected |
|
protected |
|
protected |
|
protected |