improvements
This commit is contained in:
@@ -48,6 +48,7 @@ enum EVulkanCommandParameterType
|
||||
|
||||
enum EDependencyMode
|
||||
{
|
||||
|
||||
DEPENDENCY_MODE_SHADER_IMAGE_READ,
|
||||
DEPENDENCY_MODE_SHADER_BUFFER_READ,
|
||||
DEPENDENCY_MODE_SHADER_IMAGE_WRITE,
|
||||
@@ -60,8 +61,11 @@ enum EDependencyMode
|
||||
|
||||
DEPENDENCY_MODE_IMAGE_SOURCE,
|
||||
DEPENDENCY_MODE_IMAGE_DESTINATION,
|
||||
|
||||
DEPENDENCY_MODE_ALL_COMMANDS,
|
||||
DEPENDENCY_MODE_IMAGE_PRESENT,
|
||||
|
||||
DEPENDENCY_MODE_COLOR_CLEAR_DESTINATION,
|
||||
DEPENDENCY_MODE_COUNT,
|
||||
};
|
||||
|
||||
|
||||
@@ -83,7 +87,7 @@ struct VulkanCommandParameter_t
|
||||
abstract_class CVkCommand
|
||||
{
|
||||
public:
|
||||
virtual void Execute( VkCommandBuffer hCommandBuffer ) = 0;
|
||||
virtual void Execute( VkCommandBuffer hCommandBuffer, int iCurrentFrame ) = 0;
|
||||
//virtual const char *GetName();
|
||||
|
||||
CUtlVector<VulkanCommandDepenency_t> m_depedencies;
|
||||
@@ -123,7 +127,7 @@ public:
|
||||
class CVk##name##Command : public CVkCommand \
|
||||
{ \
|
||||
public: \
|
||||
virtual void Execute( VkCommandBuffer hCommandBuffer ) override; \
|
||||
virtual void Execute( VkCommandBuffer hCommandBuffer, int iCurrentFrame ) override; \
|
||||
|
||||
#define END_VULKAN_COMMAND( name ) \
|
||||
}; \
|
||||
@@ -131,7 +135,7 @@ public: \
|
||||
#define DECLARE_VULKAN_COMMAND(name) \
|
||||
CVkCommand *_VulkanCommandCreate_##name() { return new CVk##name##Command; } \
|
||||
CVkCommandRegistry _VulkanCommandRegistry_##name( #name, _VulkanCommandCreate_##name ); \
|
||||
void CVk##name##Command::Execute( VkCommandBuffer hCommandBuffer ) \
|
||||
void CVk##name##Command::Execute( VkCommandBuffer hCommandBuffer, int iCurrentFrame ) \
|
||||
|
||||
#undef __cplusplus
|
||||
#include "vulkan/vk_enum_string_helper.h"
|
||||
@@ -169,6 +173,9 @@ public:
|
||||
VkImage m_image;
|
||||
VkImageView m_imageView;
|
||||
VmaAllocation m_allocation;
|
||||
|
||||
VkImageLayout m_eImageLayout = VK_IMAGE_LAYOUT_UNDEFINED;
|
||||
EDependencyMode m_eLastUsage;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user