vkdoom_m/wadsrc/static/shaders/lightmap/binding_viewer.glsl
2025-06-24 21:20:48 +02:00

45 lines
1.3 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
{
vec3 CameraPos;
float ProjX;
vec3 SunDir;
float ProjY;
vec3 SunColor;
float SunIntensity;
vec3 ViewX;
float ResolutionScaleX;
vec3 ViewY;
float ResolutionScaleY;
vec3 ViewZ;
float Unused;
};