#include <RenderPassExecutor.h>
|
void | prePass (const RenderPassParams ¶ms, const CameraSnapshot &cameraSnapshot, GFX::CommandBuffer &bufferInOut, GFX::MemoryBarrierCommand &memCmdInOut) |
|
void | occlusionPass (PlayerIndex idx, const CameraSnapshot &cameraSnapshot, size_t visibleNodeCount, const RenderTargetID &sourceDepthBuffer, const RenderTargetID &targetHiZBuffer, GFX::CommandBuffer &bufferInOut) const |
|
void | mainPass (const RenderPassParams ¶ms, const CameraSnapshot &cameraSnapshot, RenderTarget &target, bool prePassExecuted, bool hasHiZ, GFX::CommandBuffer &bufferInOut, GFX::MemoryBarrierCommand &memCmdInOut) |
|
void | transparencyPass (const RenderPassParams ¶ms, const CameraSnapshot &cameraSnapshot, GFX::CommandBuffer &bufferInOut, GFX::MemoryBarrierCommand &memCmdInOut) |
|
void | woitPass (const RenderPassParams ¶ms, const CameraSnapshot &cameraSnapshot, GFX::CommandBuffer &bufferInOut, GFX::MemoryBarrierCommand &memCmdInOut) |
|
void | prepareRenderQueues (const RenderPassParams ¶ms, const CameraSnapshot &cameraSnapshot, bool transparencyPass, RenderingOrder renderOrder, GFX::CommandBuffer &bufferInOut, GFX::MemoryBarrierCommand &memCmdInOut) |
|
void | processVisibleNodeTransform (PlayerIndex index, RenderingComponent *rComp) |
|
U16 | processVisibleNodeMaterial (RenderingComponent *rComp, bool &cacheHit) |
|
size_t | buildDrawCommands (PlayerIndex index, const RenderPassParams ¶ms, bool doPrePass, bool doOITPass, GFX::CommandBuffer &bufferInOut, GFX::MemoryBarrierCommand &memCmdInOut) |
|
size_t | prepareNodeData (PlayerIndex index, const RenderPassParams ¶ms, const CameraSnapshot &cameraSnapshot, bool hasInvalidNodes, const bool doPrePass, const bool doOITPass, GFX::CommandBuffer &bufferInOut, GFX::MemoryBarrierCommand &memCmdInOut) |
|
U32 | renderQueueSize () const |
|
void | resolveMainScreenTarget (const RenderPassParams ¶ms, GFX::CommandBuffer &bufferInOut) const |
|
bool | validateNodesForStagePass (RenderStagePass stagePass) |
|
void | parseMaterialRange (RenderBin::SortedQueue &queue, U32 start, U32 end) |
|
Definition at line 60 of file RenderPassExecutor.h.
◆ BufferIndirectionData
◆ NodeIndirectionData
◆ RenderPassExecutor()
◆ buildDrawCommands()
◆ doCustomPass()
◆ mainPass()
◆ occlusionPass()
◆ OnRenderingComponentCreation()
void Divide::RenderPassExecutor::OnRenderingComponentCreation |
( |
RenderingComponent * |
rComp | ) |
|
|
staticprivate |
◆ OnRenderingComponentDestruction()
void Divide::RenderPassExecutor::OnRenderingComponentDestruction |
( |
RenderingComponent * |
rComp | ) |
|
|
staticprivate |
◆ OnShutdown()
void Divide::RenderPassExecutor::OnShutdown |
( |
const GFXDevice & |
gfx | ) |
|
|
static |
◆ OnStartup()
void Divide::RenderPassExecutor::OnStartup |
( |
const GFXDevice & |
gfx | ) |
|
|
static |
◆ parseMaterialRange()
◆ postInit()
◆ postRender()
void Divide::RenderPassExecutor::postRender |
( |
| ) |
|
◆ prepareNodeData()
◆ prepareRenderQueues()
◆ prePass()
◆ processVisibleNodeMaterial()
U16 Divide::RenderPassExecutor::processVisibleNodeMaterial |
( |
RenderingComponent * |
rComp, |
|
|
bool & |
cacheHit |
|
) |
| |
|
private |
◆ processVisibleNodeTransform()
◆ renderQueueSize()
U32 Divide::RenderPassExecutor::renderQueueSize |
( |
| ) |
const |
|
private |
◆ resolveMainScreenTarget()
◆ transparencyPass()
◆ validateNodesForStagePass()
bool Divide::RenderPassExecutor::validateNodesForStagePass |
( |
RenderStagePass |
stagePass | ) |
|
|
private |
◆ woitPass()
◆ RenderingComponent
◆ _cmdBuffer
ShaderBuffer_uptr Divide::RenderPassExecutor::_cmdBuffer |
|
private |
◆ _context
GFXDevice& Divide::RenderPassExecutor::_context |
|
private |
◆ _drawCommands
◆ _indirectionBuffer
◆ _lightsUploaded
bool Divide::RenderPassExecutor::_lightsUploaded = false |
|
private |
◆ _materialBuffer
◆ _parent
◆ _renderQueue
RenderQueue_uptr Divide::RenderPassExecutor::_renderQueue {nullptr} |
|
private |
◆ _renderQueuePackages
◆ _sortedQueues
◆ _stage
◆ _transformBuffer
◆ _visibleNodesCache
◆ g_invalidMaterialIndex
◆ g_invalidTexturesIndex
◆ INVALID_MAT_HASH
constexpr size_t Divide::RenderPassExecutor::INVALID_MAT_HASH = SIZE_MAX |
|
staticconstexpr |
◆ INVALID_TEX_HASH
constexpr size_t Divide::RenderPassExecutor::INVALID_TEX_HASH = SIZE_MAX |
|
staticconstexpr |
◆ MATERIAL_IDX
constexpr U8 Divide::RenderPassExecutor::MATERIAL_IDX = 1u |
|
staticconstexpr |
◆ MAX_INDIRECTION_ENTRIES
constexpr U32 Divide::RenderPassExecutor::MAX_INDIRECTION_ENTRIES = (2 * 1024 * 1024) / sizeof(NodeIndirectionData) |
|
staticconstexpr |
◆ s_globalDataInit
bool Divide::RenderPassExecutor::s_globalDataInit = false |
|
staticprivate |
◆ s_indirectionFreeList
◆ s_indirectionGlobalLock
Mutex Divide::RenderPassExecutor::s_indirectionGlobalLock |
|
staticprivate |
◆ s_OITCompositionMSPipeline
Pipeline * Divide::RenderPassExecutor::s_OITCompositionMSPipeline = nullptr |
|
staticprivate |
◆ s_OITCompositionPipeline
Pipeline * Divide::RenderPassExecutor::s_OITCompositionPipeline = nullptr |
|
staticprivate |
◆ s_ResolveGBufferPipeline
Pipeline * Divide::RenderPassExecutor::s_ResolveGBufferPipeline = nullptr |
|
staticprivate |
◆ SELECTION_FLAG
constexpr U8 Divide::RenderPassExecutor::SELECTION_FLAG = 3u |
|
staticconstexpr |
◆ TEXTURES_IDX
constexpr U8 Divide::RenderPassExecutor::TEXTURES_IDX = 2u |
|
staticconstexpr |
◆ TRANSFORM_IDX
constexpr U8 Divide::RenderPassExecutor::TRANSFORM_IDX = 0u |
|
staticconstexpr |
The documentation for this class was generated from the following files: