23 lines
857 B
C++
23 lines
857 B
C++
module;
|
|
|
|
#include <cstdint>
|
|
#include <vulkan/vulkan.h>
|
|
|
|
export module Crafter.Graphics:VulkanElement;
|
|
import Crafter.Component;
|
|
|
|
namespace Crafter {
|
|
export class VulkanElement : public Component {
|
|
public:
|
|
VkPipelineLayout pipelineLayout;
|
|
VkDescriptorSet descriptorSet[2];
|
|
VkPipeline pipeline;
|
|
std::uint32_t sizeX;
|
|
std::uint32_t sizeY;
|
|
std::uint32_t sizeZ;
|
|
VulkanElement(VkPipelineLayout pipelineLayout, VkPipeline pipeline);
|
|
VulkanElement(VkPipelineLayout pipelineLayout, VkPipeline pipeline, std::uint32_t sizeX, std::uint32_t sizeY, std::uint32_t sizeZ);
|
|
void WriteDescriptor(VkWriteDescriptorSet* descriptors, std::uint32_t count);
|
|
void WriteDescriptor(std::uint32_t stage, VkDescriptorType type, std::uint32_t binding, VkDescriptorBufferInfo* buffer);
|
|
};
|
|
}
|