15#include "effectfactory.h"
16#include "system_shaders/shared.h"
The ShaderServer loads all shaders when created, meaning all shaders in the project must be valid and...
Definition shaderserverbase.h:59
Critical section objects are used to protect a portion of code from parallel execution.
Thread-safe version of Util::Queue.
Definition safequeue.h:27
Nebula's dynamic array class.
Definition array.h:60
Definition vkshaderserver.h:27
void AddPendingImageView(CoreGraphics::TextureId tex, VkImageViewCreateInfo viewCreate, uint32_t bind)
add a pending image view update to the update queue, thread safe
Definition vkshaderserver.cc:120
__DeclareInterfaceSingleton(VkShaderServer)
void Close()
close the shader server
Definition vkshaderserver.cc:58
__DeclareClass(VkShaderServer)
Threading::CriticalSection bindResourceCriticalSection
Definition vkshaderserver.h:50
VkShaderServer()
constructor
Definition vkshaderserver.cc:25
virtual ~VkShaderServer()
destructor
Definition vkshaderserver.cc:33
void UpdateResources()
begin frame
Definition vkshaderserver.cc:74
Threading::SafeQueue< _PendingView > pendingViews
Definition vkshaderserver.h:64
bool Open()
open the shader server
Definition vkshaderserver.cc:42
AnyFX::EffectFactory * factory
Definition vkshaderserver.h:67
Util::Array< _PendingViewDelete > pendingViewDeletes
Definition vkshaderserver.h:65
Implements the shader server used by Vulkan.
Definition cameramanager.h:21
Vulkan implementation of GPU acceleration structure.
Definition vkaccelerationstructure.cc:15
Compile time configuration options for the CoreGraphics subsystem.
texture type
Definition texture.h:25
Definition vkshaderserver.h:59
VkImageView view
Definition vkshaderserver.h:60
uint32_t replaceCounter
Definition vkshaderserver.h:61
Definition vkshaderserver.h:52
uint32_t bind
Definition vkshaderserver.h:55
VkImageViewCreateInfo createInfo
Definition vkshaderserver.h:54
CoreGraphics::TextureId tex
Definition vkshaderserver.h:53