This commit is contained in:
ZY4N
2025-03-25 15:57:32 +01:00
parent a78be71e34
commit 70893c083b
24 changed files with 78 additions and 64 deletions

View File

@@ -11,15 +11,14 @@ namespace zgl
class shader_program_manager
{
using shader_program_lookup_entry_type = std::pair<
shader_program_metadata,
shader_program_data
>;
public:
void process(
const assets::shader_source_store& shader_sources
);
using metadata_type = shader_program_metadata;
using data_type = shader_program_data;
using handle_type = shader_program_handle;
using entry_type = std::pair<metadata_type, data_type>;
using entry_view_type = std::pair<metadata_type, handle_type>;
void process(const assets::data_stores& stores);
void get_handles(
const assets::shader_source_store& shader_sources,
@@ -29,7 +28,7 @@ public:
);
protected:
std::optional<std::pair<shader_program_metadata, shader_program_handle>> find_shader_program(
std::optional<entry_view_type> find_shader_program(
const shading::shader_program_requirements& requirements
);
@@ -38,10 +37,9 @@ protected:
);
shader_manager m_shader_manager;
std::vector<shader_program_lookup_entry_type> m_shader_program_lookup;
std::vector<entry_type> m_shader_program_lookup;
private:
std::vector<shading::shader_set_requirements> m_shader_requirements_buffer;
std::vector<shader_set_metadata> m_shader_metadata_buffer;
std::vector<shader_handle_set> shader_set_buffer;