Blender V4.3
blender::gpu::VKShaderCompiler Class Reference

#include <vk_shader_compiler.hh>

Inherits blender::gpu::ShaderCompiler.

Public Member Functions

 VKShaderCompiler ()
 
virtual ~VKShaderCompiler ()
 
- Public Member Functions inherited from blender::gpu::ShaderCompiler
virtual ~ShaderCompiler ()
 
virtual SpecializationBatchHandle precompile_specializations (Span< ShaderSpecialization >)
 
virtual bool specialization_batch_is_ready (SpecializationBatchHandle &handle)
 
Shadercompile (const shader::ShaderCreateInfo &info, bool is_batch_compilation)
 

Static Public Member Functions

SPIR-V disk cache
static void cache_dir_clear_old ()
 

Compilation

BatchHandle batch_compile (Span< const shader::ShaderCreateInfo * > &infos) override
 
bool batch_is_ready (BatchHandle handle) override
 
Vector< Shader * > batch_finalize (BatchHandle &handle) override
 
static bool compile_module (VKShader &shader, shaderc_shader_kind stage, VKShaderModule &shader_module)
 

Detailed Description

Vulkan shader compiler.

Is used for both single threaded compilation by calling VKShaderCompiler::compile_module or batch based compilation.

Definition at line 29 of file vk_shader_compiler.hh.

Constructor & Destructor Documentation

◆ VKShaderCompiler()

blender::gpu::VKShaderCompiler::VKShaderCompiler ( )

Definition at line 23 of file vk_shader_compiler.cc.

References BLI_task_pool_create(), and TASK_PRIORITY_LOW.

◆ ~VKShaderCompiler()

blender::gpu::VKShaderCompiler::~VKShaderCompiler ( )
virtual

Definition at line 28 of file vk_shader_compiler.cc.

References BLI_task_pool_free(), and BLI_task_pool_work_and_wait().

Member Function Documentation

◆ batch_compile()

◆ batch_finalize()

◆ batch_is_ready()

◆ cache_dir_clear_old()

void blender::gpu::VKShaderCompiler::cache_dir_clear_old ( )
static

◆ compile_module()

bool blender::gpu::VKShaderCompiler::compile_module ( VKShader & shader,
shaderc_shader_kind stage,
VKShaderModule & shader_module )
static

Definition at line 227 of file vk_shader_compiler.cc.

References blender::gpu::compile_ex(), and stage.


The documentation for this class was generated from the following files: