Plasma Engine  2.0
Loading...
Searching...
No Matches
VertexDeclarationVulkan.h
1
2#pragma once
3
4#include <RendererFoundation/RendererFoundationDLL.h>
5#include <RendererFoundation/Shader/VertexDeclaration.h>
6#include <RendererVulkan/RendererVulkanDLL.h>
7
8#include <vulkan/vulkan.hpp>
9
11{
12public:
13 PL_ALWAYS_INLINE plArrayPtr<const vk::VertexInputAttributeDescription> GetAttributes() const;
14 PL_ALWAYS_INLINE plArrayPtr<const vk::VertexInputBindingDescription> GetBindings() const;
15
16protected:
17 friend class plGALDeviceVulkan;
18 friend class plMemoryUtils;
19
20 virtual plResult InitPlatform(plGALDevice* pDevice) override;
21
22 virtual plResult DeInitPlatform(plGALDevice* pDevice) override;
23
25
27
30};
31
32#include <RendererVulkan/Shader/Implementation/VertexDeclarationVulkan_inl.h>
This class encapsulates an array and it's size. It is recommended to use this class instead of plain ...
Definition ArrayPtr.h:37
The plRenderDevice class is the primary interface for interactions with rendering APIs It contains a ...
Definition Device.h:19
The Vulkan device implementation of the graphics abstraction layer.
Definition DeviceVulkan.h:58
Definition VertexDeclaration.h:8
Definition VertexDeclarationVulkan.h:11
A hybrid array uses in-place storage to handle the first few elements without any allocation....
Definition HybridArray.h:12
This class provides functions to work on raw memory.
Definition MemoryUtils.h:26
Definition Descriptors.h:153
Default enum for returning failure or success, instead of using a bool.
Definition Types.h:54