Moved glsl structures to common file, added convenience functions for UI elements
parent
eca8f30175
commit
8c793d36c3
@ -0,0 +1,95 @@
|
|||||||
|
struct DrawCommand {
|
||||||
|
uint vertex_count;
|
||||||
|
uint instance_count;
|
||||||
|
uint fist_vertex;
|
||||||
|
uint first_instance;
|
||||||
|
};
|
||||||
|
|
||||||
|
layout(std430, buffer_reference) buffer DrawCommandList {
|
||||||
|
DrawCommand d[];
|
||||||
|
};
|
||||||
|
|
||||||
|
struct DispatchCommand {
|
||||||
|
uint x;
|
||||||
|
uint y;
|
||||||
|
uint z;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct Symbol {
|
||||||
|
int top;
|
||||||
|
uint left;
|
||||||
|
uint width;
|
||||||
|
uint height;
|
||||||
|
uint advance;
|
||||||
|
};
|
||||||
|
|
||||||
|
layout(std430, buffer_reference) buffer SymbolList {
|
||||||
|
Symbol s[];
|
||||||
|
};
|
||||||
|
|
||||||
|
struct Font {
|
||||||
|
SymbolList symbols;
|
||||||
|
uint num_symbols;
|
||||||
|
uint width;
|
||||||
|
uint height;
|
||||||
|
};
|
||||||
|
|
||||||
|
layout(std430, buffer_reference) buffer FontList {
|
||||||
|
Font f[];
|
||||||
|
};
|
||||||
|
|
||||||
|
struct String {
|
||||||
|
vec2 pos;
|
||||||
|
vec4 color;
|
||||||
|
float size;
|
||||||
|
uint offset;
|
||||||
|
uint len;
|
||||||
|
};
|
||||||
|
|
||||||
|
layout(std430, buffer_reference) readonly buffer StringList {
|
||||||
|
String s[];
|
||||||
|
};
|
||||||
|
|
||||||
|
layout(std430, buffer_reference) readonly buffer CodeList {
|
||||||
|
uint c[];
|
||||||
|
};
|
||||||
|
|
||||||
|
struct Drawable {
|
||||||
|
vec2 pos;
|
||||||
|
vec2 size;
|
||||||
|
vec4 color;
|
||||||
|
uint type;
|
||||||
|
uint code;
|
||||||
|
};
|
||||||
|
|
||||||
|
layout(std430, buffer_reference) readonly buffer DrawableList {
|
||||||
|
Drawable d[];
|
||||||
|
};
|
||||||
|
|
||||||
|
layout(std430, buffer_reference) readonly buffer Container {
|
||||||
|
vec2 pos;
|
||||||
|
vec2 size;
|
||||||
|
};
|
||||||
|
|
||||||
|
layout(std430, buffer_reference) readonly buffer Layer {
|
||||||
|
StringList strings;
|
||||||
|
CodeList codes;
|
||||||
|
DrawableList drawables;
|
||||||
|
|
||||||
|
DrawCommand draw;
|
||||||
|
DispatchCommand dispatch;
|
||||||
|
|
||||||
|
uint font_index;
|
||||||
|
uint max_drawables;
|
||||||
|
uint max_codes;
|
||||||
|
uint max_strings;
|
||||||
|
uint num_drawables;
|
||||||
|
|
||||||
|
Container container;
|
||||||
|
};
|
||||||
|
|
||||||
|
layout(std430, buffer_reference) buffer Context {
|
||||||
|
FontList fonts;
|
||||||
|
vec2 screen;
|
||||||
|
vec2 scale;
|
||||||
|
};
|
Loading…
Reference in New Issue