Cache shaders

This commit is contained in:
korenkonder
2023-12-09 09:41:28 +03:00
parent 6b36ccda9d
commit fd28c4bcf9
2 changed files with 3 additions and 2 deletions
+2 -1
View File
@@ -659,6 +659,7 @@ void shader_glsl_set_data::load(farc* f, bool ignore_cache,
bin_size += align_val(k.length, 0x04);
shader_cache_file->data = force_malloc(bin_size);
shader_cache_file->size = bin_size;
shader_cache_file->compressed = true;
shader_cache_file->data_changed = true;
((uint64_t*)shader_cache_file->data)[0] = vert_data_hash;
@@ -697,7 +698,7 @@ void shader_glsl_set_data::load(farc* f, bool ignore_cache,
free_def(temp_vert);
free_def(temp_frag);
if (shader_cache_changed)
if (!ignore_cache && shader_cache_changed)
shader_cache_farc.write(temp_buf, FARC_FArC, FARC_NONE, false);
this->get_index_by_name_func = get_index_by_name;
+1 -1
View File
@@ -147,7 +147,7 @@ void FASTCALL shader_load_all_shaders() {
{
farc f;
f.read("plugins\\divagl_ft_shaders.farc", true, false);
shaders_ft.load(&f, true, "ft", shader_ft_table, shader_ft_table_size,
shaders_ft.load(&f, false, "ft", shader_ft_table, shader_ft_table_size,
shader_ft_bind_func_table, shader_ft_bind_func_table_size,
shader_ft_get_index_by_name);
}