33#ifndef DVD_SCENE_SHADER_DATA_H_
34#define DVD_SCENE_SHADER_DATA_H_
48 struct MemoryBarrierCommand;
159 const F32 fState = state ? 1.f : 0.f;
Rough around the edges Adapter pattern abstracting the actual rendering API and access to the GPU.
bool probeData(const U16 index, const vec3< F32 > ¢er, const vec3< F32 > &halfExtents) noexcept
ProbeBufferData _probeData
std::array< ProbeData, GLOBAL_PROBE_COUNT > ProbeBufferData
void fogDetails(const FogDetails &details) noexcept
bool probeState(const U16 index, const bool state) noexcept
SceneShaderBufferData _sceneBufferData
void windDetails(const F32 directionX, const F32 directionY, const F32 directionZ, const F32 speed) noexcept
ShaderBuffer_uptr _probeShaderData
bool waterDetails(const U8 index, const WaterBodyData &data) noexcept
void appData(const U32 elapsedGameTimeMS, const U32 elapsedAppTimeMS, const MaterialDebugFlag materialDebugFlag)
void updateSceneDescriptorSet(GFX::CommandBuffer &bufferInOut, GFX::MemoryBarrierCommand &memCmdInOut)
void sunDetails(const vec3< F32 > &sunDirection, const FColour3 &colour, const F32 altitude, const F32 azimuth) noexcept
ShaderBuffer_uptr _sceneShaderData
Generic scene data that doesn't change per shader.
void fogDensity(F32 density, F32 scatter) noexcept
void set(const T *v) noexcept
set the 4 components of the vector manually using a source pointer to a (large enough) array
FColour4 WHITE
Random stuff added for convenience.
Handle console commands that start with a forward slash.
::value constexpr void CLAMP_01(T &n) noexcept
constexpr F32 to_F32(const T value)
constexpr U16 GLOBAL_PROBE_COUNT
bool COMPARE(T X, U Y) noexcept
constexpr U8 GLOBAL_WATER_BODIES_COUNT
static const vec4< F32 > VECTOR4_ZERO
vec4< F32 > _colourAndDensity
vec4< F32 > _colourSunScatter
vec4< F32 > _sunDirection
WaterBodyData _waterEntities[GLOBAL_WATER_BODIES_COUNT]