*/
struct ReflectData
{
+ enum
+ {
+ DEFAULT_BLOCK = -1,
+ PUSH_CONSTANT = -2
+ };
+
typedef unsigned LayoutHash;
struct UniformBlockInfo;
unsigned matrix_stride = 0;
DataType type = VOID;
Tag tag;
+ int descriptor_set = 0;
int binding = -1;
};
{
std::string name;
unsigned data_size = 0;
- int bind_point = -1;
+ int descriptor_set = 0;
+ int bind_point = DEFAULT_BLOCK;
std::vector<const UniformInfo *> uniforms;
LayoutHash layout_hash = 0;
struct AttributeInfo
{
std::string name;
- unsigned location = -1;
+ int location = -1;
unsigned array_size = 0;
DataType type = VOID;
};
std::vector<UniformBlockInfo> uniform_blocks;
std::vector<UniformInfo> uniforms;
- LayoutHash layout_hash;
+ LayoutHash layout_hash = 0;
std::vector<AttributeInfo> attributes;
unsigned n_clip_distances = 0;