diff options
| author | 2026-08-26 15:08:16 -0400 | |
|---|---|---|
| committer | 2026-08-26 15:08:16 -0400 | |
| commit | 6094c907b26e21f13373bae6bf3306dbae40af3c (patch) | |
| tree | 981864ddb1ab9749d3e10a81edc782311826e101 /subprojects/packagefiles/libplacebo/no_uniforms_in_vert.diff | |
| parent | da9bddc70ff8544f3294b880d719c4605e87ad97 (diff) | |
| download | camu-6094c907b26e21f13373bae6bf3306dbae40af3c.tar.gz camu-6094c907b26e21f13373bae6bf3306dbae40af3c.tar.bz2 camu-6094c907b26e21f13373bae6bf3306dbae40af3c.zip | |
Update deps, small changes and cleanup
Signed-off-by: Andrew Opalach <andrew@akon.city>
Diffstat (limited to 'subprojects/packagefiles/libplacebo/no_uniforms_in_vert.diff')
| -rw-r--r-- | subprojects/packagefiles/libplacebo/no_uniforms_in_vert.diff | 89 |
1 files changed, 89 insertions, 0 deletions
diff --git a/subprojects/packagefiles/libplacebo/no_uniforms_in_vert.diff b/subprojects/packagefiles/libplacebo/no_uniforms_in_vert.diff new file mode 100644 index 0000000..8797d34 --- /dev/null +++ b/subprojects/packagefiles/libplacebo/no_uniforms_in_vert.diff @@ -0,0 +1,89 @@ +diff --git a/src/dispatch.c b/src/dispatch.c +index 218b556..067efc7 100644 +--- a/src/dispatch.c ++++ b/src/dispatch.c +@@ -29,6 +29,7 @@ + + enum { + TMP_PRELUDE, // GLSL version, global definitions, etc. ++ TMP_UNIFORMS, + TMP_MAIN, // main GLSL shader body + TMP_VERT_HEAD, // vertex shader inputs/outputs + TMP_VERT_BODY, // vertex shader body +@@ -304,15 +305,16 @@ static void generate_shaders(pl_dispatch dp, + pl_str_builder shader_body = sh_finalize_internal(sh); + + pl_str_builder pre = dp->tmp[TMP_PRELUDE]; ++ pl_str_builder uni = dp->tmp[TMP_UNIFORMS]; + ADD(pre, "#version %d%s\n", gpu->glsl.version, + (gpu->glsl.gles && gpu->glsl.version > 100) ? " es" : ""); + if (pass_params->type == PL_PASS_COMPUTE) +- ADD(pre, "#extension GL_ARB_compute_shader : enable\n"); ++ ADD(uni, "#extension GL_ARB_compute_shader : enable\n"); + + // Enable this unconditionally if the GPU supports it, since we have no way + // of knowing whether subgroups are being used or not + if (gpu->glsl.subgroup_size) { +- ADD(pre, "#extension GL_KHR_shader_subgroup_basic : enable \n" ++ ADD(uni, "#extension GL_KHR_shader_subgroup_basic : enable \n" + "#extension GL_KHR_shader_subgroup_vote : enable \n" + "#extension GL_KHR_shader_subgroup_arithmetic : enable \n" + "#extension GL_KHR_shader_subgroup_ballot : enable \n" +@@ -360,24 +362,24 @@ static void generate_shaders(pl_dispatch dp, + } + + if (has_img && !gpu->glsl.gles) +- ADD(pre, "#extension GL_ARB_shader_image_load_store : enable\n"); ++ ADD(uni, "#extension GL_ARB_shader_image_load_store : enable\n"); + if (has_ubo) +- ADD(pre, "#extension GL_ARB_uniform_buffer_object : enable\n"); ++ ADD(uni, "#extension GL_ARB_uniform_buffer_object : enable\n"); + if (has_ssbo) +- ADD(pre, "#extension GL_ARB_shader_storage_buffer_object : enable\n"); ++ ADD(uni, "#extension GL_ARB_shader_storage_buffer_object : enable\n"); + if (has_texel) +- ADD(pre, "#extension GL_ARB_texture_buffer_object : enable\n"); ++ ADD(uni, "#extension GL_ARB_texture_buffer_object : enable\n"); + if (has_ext) { + if (gpu->glsl.version >= 300) { +- ADD(pre, "#extension GL_OES_EGL_image_external_essl3 : enable\n"); ++ ADD(uni, "#extension GL_OES_EGL_image_external_essl3 : enable\n"); + } else { +- ADD(pre, "#extension GL_OES_EGL_image_external : enable\n"); ++ ADD(uni, "#extension GL_OES_EGL_image_external : enable\n"); + } + } + if (has_nofmt) +- ADD(pre, "#extension GL_EXT_shader_image_load_formatted : enable\n"); ++ ADD(uni, "#extension GL_EXT_shader_image_load_formatted : enable\n"); + if (has_gather && !gpu->glsl.gles) +- ADD(pre, "#extension GL_ARB_texture_gather : enable\n"); ++ ADD(uni, "#extension GL_ARB_texture_gather : enable\n"); + + if (gpu->glsl.gles) { + // Use 32-bit precision for floats if possible +@@ -527,12 +529,12 @@ static void generate_shaders(pl_dispatch dp, + + case PL_DESC_BUF_UNIFORM: + if (gpu->glsl.vulkan) { +- ADD(pre, "layout(std140, binding=%d) ", desc->binding); ++ ADD(uni, "layout(std140, binding=%d) ", desc->binding); + } else { +- ADD(pre, "layout(std140) "); ++ ADD(uni, "layout(std140) "); + } +- ADD(pre, "uniform "$" ", sh_ident_unpack(desc->name)); +- add_buffer_vars(dp, tmp, pre, sd->buffer_vars, sd->num_buffer_vars); ++ ADD(uni, "uniform "$" ", sh_ident_unpack(desc->name)); ++ add_buffer_vars(dp, tmp, uni, sd->buffer_vars, sd->num_buffer_vars); + break; + + case PL_DESC_BUF_STORAGE: +@@ -599,6 +601,7 @@ static void generate_shaders(pl_dispatch dp, + + pl_str_builder glsl = dp->tmp[TMP_MAIN]; + ADD_CAT(glsl, pre); ++ ADD_CAT(glsl, uni); + + switch(pass_params->type) { + case PL_PASS_RASTER: { |