diff options
author | Yuri Roubinsky <chaosus89@gmail.com> | 2019-09-23 17:22:55 +0300 |
---|---|---|
committer | Yuri Roubinsky <chaosus89@gmail.com> | 2020-02-11 12:02:02 +0100 |
commit | bfa834a78ab32b967beb5c22c84425da513d7e19 (patch) | |
tree | 535b16d50d1ab92c667ae90016e08980f13ddab7 | |
parent | 123ee5995c989d7c2f0bb320fe94ef1702a48c13 (diff) |
[Vulkan] Implement shader array support for varyings
Remake of #32175
-rw-r--r-- | servers/visual/rasterizer_rd/shader_compiler_rd.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/servers/visual/rasterizer_rd/shader_compiler_rd.cpp b/servers/visual/rasterizer_rd/shader_compiler_rd.cpp index 4572345334..27d6261c40 100644 --- a/servers/visual/rasterizer_rd/shader_compiler_rd.cpp +++ b/servers/visual/rasterizer_rd/shader_compiler_rd.cpp @@ -461,6 +461,11 @@ String ShaderCompilerRD::_dump_node_code(const SL::Node *p_node, int p_level, Ge vcode += _prestr(E->get().precision); vcode += _typestr(E->get().type); vcode += " " + _mkid(E->key()); + if (E->get().array_size > 0) { + vcode += "["; + vcode += itos(E->get().array_size); + vcode += "]"; + } vcode += ";\n"; r_gen_code.vertex_global += "layout(location=" + itos(index) + ") " + interp_mode + "out " + vcode; r_gen_code.fragment_global += "layout(location=" + itos(index) + ") " + interp_mode + "in " + vcode; |