Program Listing for File ShaderHelper.hpp

Return to documentation for file (Src/GraphicsEngineVulkan/vulkan_base/ShaderHelper.hpp)

#pragma once
#include <vulkan/vulkan.h>

#include <string>
#include <vector>

#include "vulkan_base/VulkanDevice.hpp"
namespace Kataglyphis {
class ShaderHelper
{
  public:
    ShaderHelper();

    void compileShader(const std::string &shader_src_dir, const std::string &shader_name);
    std::string getShaderSpvDir(const std::string &shader_src_dir, const std::string &shader_name);

    VkShaderModule createShaderModule(VulkanDevice *device, const std::vector<char> &code);

    ~ShaderHelper();

  private:
    std::string target = " --target-env=vulkan1.3 ";
};
}// namespace Kataglyphis