diff options
author | Gert Wollny <gert.wollny@collabora.com> | 2022-11-10 16:09:31 +0100 |
---|---|---|
committer | Marge Bot <emma+marge@anholt.net> | 2022-11-10 16:50:04 +0000 |
commit | 2f6aa408882cb12b152c6abb2b71e37251feb8cf (patch) | |
tree | 685c18d1e15747d6b0ef849b2de96dce28cd681a | |
parent | 910320907d5d280fa64dc5dfac2c5195844505db (diff) | |
download | virglrenderer-2f6aa408882cb12b152c6abb2b71e37251feb8cf.tar.gz |
shader: require glsl 1.40 when using a sysvalue UBO
Using an UBO with std140 needs GLSL 1.40
Closes #294
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/virgl/virglrenderer/-/merge_requests/978>
-rw-r--r-- | src/vrend_shader.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/vrend_shader.c b/src/vrend_shader.c index 13569fda..fdcfefcb 100644 --- a/src/vrend_shader.c +++ b/src/vrend_shader.c @@ -7875,6 +7875,10 @@ bool vrend_convert_shader(const struct vrend_context *rctx, if (cfg->use_core_profile && cfg->glsl_version >= 140) ctx.glsl_ver_required = require_glsl_ver(&ctx, 140); + /* If we need a sysvalue UBO then we require GLSL 1.40 */ + if (ctx.glsl_strbufs.required_sysval_uniform_decls) + ctx.glsl_ver_required = require_glsl_ver(&ctx, 140); + if (sinfo->so_info.num_outputs) { ctx.so = &sinfo->so_info; ctx.so_names = calloc(sinfo->so_info.num_outputs, sizeof(char *)); |