26 lines
520 B
GLSL
26 lines
520 B
GLSL
struct ObjectData {
|
|
mat4 model;
|
|
uint textureId;
|
|
int animation; // this is the index offset of the first matrix in the animation finals buffer.
|
|
uint flags0;
|
|
// packed flags0 flags;
|
|
// [0,0]: alwaysInFront
|
|
// [1,1]: useAltCamera
|
|
uint pad1;
|
|
};
|
|
|
|
layout(std140, set = 1, binding = 0) readonly buffer ObjectBuffer{
|
|
ObjectData objects[];
|
|
} objectBuffer;
|
|
|
|
|
|
uint flag0_AlwaysInFront(uint flags)
|
|
{
|
|
return flags & 0x1;
|
|
}
|
|
|
|
uint flag0_useAltFov(uint flags)
|
|
{
|
|
return (flags >> 1) & 0x1;
|
|
}
|