X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fglsl%2Fspirv.cpp;h=20345e20ae0760de48e4bbea923e89fea7d9356b;hb=3fe1aab63922eec99d8bf6fd4fd60bec10df173c;hp=c9062efa12ae7aee7dfb54ca6638d64ca57b3da8;hpb=25629675e83449d986ef8896e830db562a8ae64e;p=libs%2Fgl.git diff --git a/source/glsl/spirv.cpp b/source/glsl/spirv.cpp index c9062efa..20345e20 100644 --- a/source/glsl/spirv.cpp +++ b/source/glsl/spirv.cpp @@ -1717,9 +1717,13 @@ void SpirVGenerator::visit(InterfaceBlock &iface) if(layout_ql) { - auto i = find_member(*layout_ql, string("binding"), &Layout::Qualifier::name); - if(i!=layout_ql->end()) - writer.write_op_decorate(block_id, DECO_BINDING, i->value); + for(const Layout::Qualifier &q: *layout_ql) + { + if(q.name=="set") + writer.write_op_decorate(block_id, DECO_DESCRIPTOR_SET, q.value); + else if(q.name=="binding") + writer.write_op_decorate(block_id, DECO_BINDING, q.value); + } } }