|
Nebula
|
Implements the shader server used by Vulkan.
Classes | |
| struct | BindlessRegistryCreateInfo |
| class | CameraContext |
| Handles cameras. More... | |
| class | CameraSettings |
| struct | ContextEntityId |
| class | EnvironmentContext |
| The environment context deals with anything related to the sky and atmosphere effects. More... | |
| struct | FrameContext |
| struct | GlobalConstantsCreateInfo |
| class | GraphicsContext |
| struct | GraphicsContextFunctionBundle |
| struct | GraphicsContextState |
| A graphics context is a resource which holds a contextual representation for a graphics entity. More... | |
| struct | GraphicsEntityId |
| The graphics entity is only an Id, to which we can attach GraphicsContexts. More... | |
| class | GraphicsServer |
| The graphics server is the main singleton for the Graphics subsystem. More... | |
| class | LightProbeContext |
| Adds a light probe component to graphics entities. More... | |
| class | Stage |
| A stage contains a list of graphics entities, which can be rendered through a View. More... | |
| class | View |
| A view describes a camera which can observe a Stage. More... | |
Typedefs | |
| typedef uint32_t | BindlessIndex |
| using | ViewIndependentCall = void(*)(const Graphics::FrameContext& ctx) |
| using | ViewDependentCall = void(*)(const Ptr<Graphics::View>& view, const Graphics::FrameContext& ctx) |
Functions | |
| void | CreateBindlessRegistry (const BindlessRegistryCreateInfo &info) |
| Create bindless registry. | |
| void | DestroyBindlessRegistry () |
| Destroy bindless registry. | |
| BindlessIndex | RegisterTexture (const CoreGraphics::TextureId &tex, CoreGraphics::TextureType type, bool depth=false, bool stencil=false) |
| Register texture. | |
| void | ReregisterTexture (const CoreGraphics::TextureId &tex, CoreGraphics::TextureType type, BindlessIndex id, bool depth=false, bool stencil=false) |
| Reregister texture on the same slot. | |
| void | UnregisterTexture (const BindlessIndex id, const CoreGraphics::TextureType type) |
| Unregister texture. | |
| __ImplementContext (CameraContext, CameraContext::cameraAllocator) | |
| __ImplementPluginContext (EnvironmentContext) | |
| Math::vec4 | CalculateZenithLuminanceYxy (float t, float thetaS) |
| void | CalculatePerezDistribution (float t, Math::vec4 &A, Math::vec4 &B, Math::vec4 &C, Math::vec4 &D, Math::vec4 &E) |
| void | CreateGlobalConstants (const GlobalConstantsCreateInfo &info) |
| Create global constants. | |
| void | DestroyGlobalConstants () |
| Destroy global constants. | |
| void | AllocateGlobalConstants () |
| Run when starting frame. | |
| void | UpdateTickParams (const Shared::PerTickParams &tickParams) |
| Set tick params. | |
| void | UpdateViewConstants (const Shared::ViewConstants &viewConstants) |
| Set view params. | |
| void | UpdateShadowConstants (const Shared::ShadowViewConstants &shadowViewConstants) |
| Set camera params. | |
| void | FlushUpdates (const CoreGraphics::CmdBufferId buf, const CoreGraphics::QueueType queue) |
| Flush constants by recording update command to command buffer. | |
| void | GetOffsets (uint64_t &tickOffset, uint64_t &viewOffset, uint64_t &shadowOffset) |
| Get frame constant offsets. | |
| const Shared::PerTickParams & | GetTickParams () |
| Get tick params constant buffer. | |
| const Shared::ViewConstants & | GetViewConstants () |
| Get current view constants. | |
| const Shared::ShadowViewConstants & | GetShadowViewConstants () |
| Get current shadow view constnats. | |
| void | SetGlobalEnvironmentTextures (const CoreGraphics::TextureId &env, const CoreGraphics::TextureId &irr, const SizeT numMips) |
| Set global irradiance and cubemaps. | |
| void | SetupBufferConstants () |
| Setup gbuffer bindings. | |
| const CoreGraphics::ResourceTableId | GetFrameResourceTable (uint32_t bufferIndex) |
| Get per-tick resource table for graphics. | |
| const CoreGraphics::ResourceTableId | GetTickResourceTable (uint32_t bufferIndex) |
| Get per-tick resource table for graphics. | |
| __ImplementClass (Graphics::GraphicsServer, 'GFXS', Core::RefCounted) | |
| __ImplementSingleton (Graphics::GraphicsServer) | |
| static GraphicsEntityId | CreateEntity () |
| static void | DestroyEntity (const GraphicsEntityId id) |
| template<typename ... CONTEXTS> | |
| static void | RegisterEntity (const GraphicsEntityId id) |
| template<typename ... CONTEXTS> | |
| static void | DeregisterEntity (const GraphicsEntityId id) |
| __ImplementClass (Graphics::Stage, 'STAG', Core::RefCounted) | |
| __ImplementClass (Graphics::View, 'VIEW', Core::RefCounted) | |
| __ImplementContext (LightProbeContext, LightProbeContext::lightProbeAllocator) | |
| typedef uint32_t Graphics::BindlessIndex |
| using Graphics::ViewDependentCall = void(*)(const Ptr<Graphics::View>& view, const Graphics::FrameContext& ctx) |
| using Graphics::ViewIndependentCall = void(*)(const Graphics::FrameContext& ctx) |
| Graphics::__ImplementClass | ( | Graphics::GraphicsServer | , |
| 'GFXS' | , | ||
| Core::RefCounted | ) |
| Graphics::__ImplementClass | ( | Graphics::Stage | , |
| 'STAG' | , | ||
| Core::RefCounted | ) |
| Graphics::__ImplementClass | ( | Graphics::View | , |
| 'VIEW' | , | ||
| Core::RefCounted | ) |
| Graphics::__ImplementContext | ( | CameraContext | , |
| CameraContext::cameraAllocator | ) |
| Graphics::__ImplementContext | ( | LightProbeContext | , |
| LightProbeContext::lightProbeAllocator | ) |
| Graphics::__ImplementPluginContext | ( | EnvironmentContext | ) |
| Graphics::__ImplementSingleton | ( | Graphics::GraphicsServer | ) |
| void Graphics::AllocateGlobalConstants | ( | ) |
Run when starting frame.
| void Graphics::CalculatePerezDistribution | ( | float | t, |
| Math::vec4 & | A, | ||
| Math::vec4 & | B, | ||
| Math::vec4 & | C, | ||
| Math::vec4 & | D, | ||
| Math::vec4 & | E ) |
| Math::vec4 Graphics::CalculateZenithLuminanceYxy | ( | float | t, |
| float | thetaS ) |
| void Graphics::CreateBindlessRegistry | ( | const BindlessRegistryCreateInfo & | info | ) |
Create bindless registry.
|
static |
| void Graphics::CreateGlobalConstants | ( | const GlobalConstantsCreateInfo & | info | ) |
Create global constants.
|
static |
| void Graphics::DestroyBindlessRegistry | ( | ) |
Destroy bindless registry.
|
static |
| void Graphics::DestroyGlobalConstants | ( | ) |
Destroy global constants.
| void Graphics::FlushUpdates | ( | const CoreGraphics::CmdBufferId | buf, |
| const CoreGraphics::QueueType | queue ) |
Flush constants by recording update command to command buffer.
| const CoreGraphics::ResourceTableId Graphics::GetFrameResourceTable | ( | uint32_t | bufferIndex | ) |
Get per-tick resource table for graphics.
| void Graphics::GetOffsets | ( | uint64_t & | tickOffset, |
| uint64_t & | viewOffset, | ||
| uint64_t & | shadowOffset ) |
Get frame constant offsets.
| const Shared::ShadowViewConstants & Graphics::GetShadowViewConstants | ( | ) |
Get current shadow view constnats.
| const Shared::PerTickParams & Graphics::GetTickParams | ( | ) |
Get tick params constant buffer.
| const CoreGraphics::ResourceTableId Graphics::GetTickResourceTable | ( | uint32_t | bufferIndex | ) |
Get per-tick resource table for graphics.
| const Shared::ViewConstants & Graphics::GetViewConstants | ( | ) |
Get current view constants.
|
static |
| BindlessIndex Graphics::RegisterTexture | ( | const CoreGraphics::TextureId & | tex, |
| CoreGraphics::TextureType | type, | ||
| bool | depth, | ||
| bool | stencil ) |
Register texture.
| void Graphics::ReregisterTexture | ( | const CoreGraphics::TextureId & | tex, |
| CoreGraphics::TextureType | type, | ||
| BindlessIndex | index, | ||
| bool | depth, | ||
| bool | stencil ) |
Reregister texture on the same slot.
| void Graphics::SetGlobalEnvironmentTextures | ( | const CoreGraphics::TextureId & | env, |
| const CoreGraphics::TextureId & | irr, | ||
| const SizeT | numMips ) |
Set global irradiance and cubemaps.
| void Graphics::SetupBufferConstants | ( | ) |
Setup gbuffer bindings.
| void Graphics::UnregisterTexture | ( | const BindlessIndex | id, |
| const CoreGraphics::TextureType | type ) |
Unregister texture.
| void Graphics::UpdateShadowConstants | ( | const Shared::ShadowViewConstants & | shadowViewConstants | ) |
Set camera params.
| void Graphics::UpdateTickParams | ( | const Shared::PerTickParams & | tickParams | ) |
Set tick params.
| void Graphics::UpdateViewConstants | ( | const Shared::ViewConstants & | viewConstants | ) |
Set view params.
| Threading::CriticalSection Graphics::bindResourceCriticalSection |
| int Graphics::bits |
| Math::vec4 Graphics::bloomColor |
| float Graphics::bloomIntensity |
| bool Graphics::computeDirty |
| CoreGraphics::TextureId Graphics::defaultEnvironmentMap |
| CoreGraphics::TextureId Graphics::defaultIrradianceMap |
| struct { ... } Graphics::envState |
| float Graphics::fadeValue |
| Math::vec4 Graphics::fogColor |
| float Graphics::fogDistances[2] |
| Util::FixedArray<CoreGraphics::ResourceTableId> Graphics::frameResourceTables |
| bool Graphics::graphicsDirty |
| float Graphics::maxEyeLuminance |
| int Graphics::numGlobalEnvironmentMips |
| Core::CVar* Graphics::r_show_env_params |
| float Graphics::saturation |
| uint64_t Graphics::shadowViewCboOffset |
| Shared::ShadowViewConstants Graphics::shadowViewConstants |
| DirtySet Graphics::shadowViewConstantsDirty |
| Graphics::GraphicsEntityId Graphics::skyBoxEntity |
| float Graphics::skyTurbidity |
| struct { ... } Graphics::state |
| Graphics::GraphicsEntityId Graphics::sunEntity |
| CoreGraphics::ResourcePipelineId Graphics::tableLayout |
| Util::FixedPool<uint32_t> Graphics::texturePool |
| uint64_t Graphics::tickCboOffset |
| Shared::PerTickParams Graphics::tickParams |
| DirtySet Graphics::tickParamsDirty |
| Util::FixedArray<CoreGraphics::ResourceTableId> Graphics::tickResourceTables |
| uint64_t Graphics::viewCboOffset |
| Shared::ViewConstants Graphics::viewConstants |
| DirtySet Graphics::viewConstantsDirty |