Foray Library
rapid prototyping framework for crossplatform development of vulkan hardware ray tracing applications
|
Manages a device local storage buffer providing material information for rendering. More...
#include <foray_materialmanager.hpp>
Public Member Functions | |
MaterialManager (core::Context *context) | |
std::vector< Material > & | GetVector () |
void | UpdateDeviceLocal () |
Apply changes made to the cpu local buffer to the device local buffer. | |
void | Destroy () |
virtual | ~MaterialManager () |
VkDescriptorBufferInfo | GetVkDescriptorInfo () const |
VkBuffer | GetVkBuffer () const |
![]() | |
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 |
Protected Attributes | |
util::ManagedVectorBuffer< Material > | mBuffer = {} |
![]() | |
Registry * | mRegistry = nullptr |
std::string | mName = "" |
Additional Inherited Members | |
![]() | |
friend | Registry |
![]() | |
virtual void | __makeMePolymorphic () |
Manages a device local storage buffer providing material information for rendering.
|
explicit |
|
inlinevirtual |
void foray::scene::gcomp::MaterialManager::Destroy | ( | ) |
|
inline |
|
inline |
|
inline |
void foray::scene::gcomp::MaterialManager::UpdateDeviceLocal | ( | ) |
Apply changes made to the cpu local buffer to the device local buffer.
|
protected |