vkdoom_m/wadsrc/static/shaders/lightmap/binding_viewer.glsl
2025-01-20 16:45:08 +01:00

40 lines
1.2 KiB
GLSL

#include <shaders/binding_struct_definitions.glsl>
layout(set = 0, binding = 0, std430) buffer readonly SurfaceIndexBuffer { uint surfaceIndices[]; };
layout(set = 0, binding = 1, std430) buffer readonly SurfaceBuffer { SurfaceInfo surfaces[]; };
layout(set = 0, binding = 2, std430) buffer readonly LightBuffer { LightInfo lights[]; };
layout(set = 0, binding = 3, std430) buffer readonly LightIndexBuffer { int lightIndexes[]; };
layout(set = 0, binding = 4, std430) buffer readonly PortalBuffer { PortalInfo portals[]; };
#if defined(USE_RAYQUERY)
layout(set = 0, binding = 5) uniform accelerationStructureEXT acc;
#else
layout(set = 0, binding = 5, std430) buffer readonly NodeBuffer
{
int nodesRoot;
int nodebufferPadding1;
int nodebufferPadding2;
int nodebufferPadding3;
CollisionNode nodes[];
};
#endif
layout(set = 0, binding = 6, std430) buffer readonly VertexBuffer { SurfaceVertex vertices[]; };
layout(set = 0, binding = 7, std430) buffer readonly ElementBuffer { int elements[]; };
layout(set = 1, binding = 0) uniform sampler2D textures[];
layout(push_constant) uniform PushConstants
{
mat4 ViewToWorld;
vec3 CameraPos;
float ProjX;
vec3 SunDir;
float ProjY;
vec3 SunColor;
float SunIntensity;
};