X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fcore%2Freflectdata.h;h=2925da146b899b1e62ab642b09403400d8f2b761;hb=8e58fc4da8443cb67fe4cd70d6f68de2be73011d;hp=5041b5796284e2c419f143678f372ac725ac4981;hpb=f82ef715f0d7e1e7d0b93be4b7b89c8ce6bba40b;p=libs%2Fgl.git diff --git a/source/core/reflectdata.h b/source/core/reflectdata.h index 5041b579..2925da14 100644 --- a/source/core/reflectdata.h +++ b/source/core/reflectdata.h @@ -14,6 +14,12 @@ Reflection data for shader programs. */ struct ReflectData { + enum + { + DEFAULT_BLOCK = -1, + PUSH_CONSTANT = -2 + }; + typedef unsigned LayoutHash; struct UniformBlockInfo; @@ -31,6 +37,7 @@ struct ReflectData unsigned matrix_stride = 0; DataType type = VOID; Tag tag; + int descriptor_set = 0; int binding = -1; }; @@ -38,7 +45,8 @@ struct ReflectData { std::string name; unsigned data_size = 0; - int bind_point = -1; + int descriptor_set = 0; + int bind_point = DEFAULT_BLOCK; std::vector uniforms; LayoutHash layout_hash = 0; @@ -49,14 +57,14 @@ struct ReflectData struct AttributeInfo { std::string name; - unsigned location = -1; + int location = -1; unsigned array_size = 0; DataType type = VOID; }; std::vector uniform_blocks; std::vector uniforms; - LayoutHash layout_hash; + LayoutHash layout_hash = 0; std::vector attributes; unsigned n_clip_distances = 0;