MayaFlux 0.5.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ compile_from_spirv_asm()

std::shared_ptr< Core::VKShaderModule > MayaFlux::Portal::Graphics::ShaderFoundry::compile_from_spirv_asm ( const std::string &  spirv_asm,
ShaderStage  stage,
const std::string &  entry_point = "main" 
)
private

Definition at line 250 of file ShaderFoundry.cpp.

254{
255 auto shader = create_shader_module();
256 if (!shader->create_from_spirv_asm(
257 get_device(), spirv_asm, to_vulkan_stage(stage),
258 entry_point, m_config.enable_reflection)) {
260 "Failed to assemble generated SPIR-V");
261 return nullptr;
262 }
263 return shader;
264}
#define MF_ERROR(comp, ctx,...)
vk::Device get_device() const
Get logical device handle.
std::shared_ptr< Core::VKShaderModule > create_shader_module()
static vk::ShaderStageFlagBits to_vulkan_stage(ShaderStage stage)
Convert Portal ShaderStage to Vulkan ShaderStageFlagBits.
@ ShaderCompilation
Shader compilation tasks (Portal::Graphics::ShaderCompiler)
@ Portal
High-level user-facing API layer.
bool enable_reflection
Extract descriptor bindings and metadata.

References create_shader_module(), MayaFlux::Portal::Graphics::ShaderCompilerConfig::enable_reflection, get_device(), m_config, MF_ERROR, MayaFlux::Journal::Portal, MayaFlux::Journal::ShaderCompilation, and to_vulkan_stage().

Referenced by compile().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: