Add directional shadow integration coverage
This commit is contained in:
@@ -145,10 +145,13 @@ private:
|
||||
ComPtr<ID3D12DescriptorHeap> m_rtvHeap;
|
||||
ComPtr<ID3D12DescriptorHeap> m_shaderVisibleCbvSrvUavHeap;
|
||||
ComPtr<ID3D12DescriptorHeap> m_shaderVisibleSamplerHeap;
|
||||
std::vector<ComPtr<ID3D12DescriptorHeap>> m_retiredShaderVisibleHeaps;
|
||||
ID3D12Device* m_device = nullptr;
|
||||
CommandQueueType m_type;
|
||||
uint32_t m_shaderVisibleCbvSrvUavHeapCapacity = 0;
|
||||
uint32_t m_shaderVisibleSamplerHeapCapacity = 0;
|
||||
uint32_t m_shaderVisibleCbvSrvUavCursor = 0;
|
||||
uint32_t m_shaderVisibleSamplerCursor = 0;
|
||||
|
||||
std::unordered_map<ID3D12Resource*, ResourceStates> m_resourceStateMap;
|
||||
std::vector<ID3D12Resource*> m_trackedResources;
|
||||
|
||||
@@ -16,6 +16,7 @@ namespace Rendering {
|
||||
|
||||
class RenderSurface;
|
||||
class RenderPipelineAsset;
|
||||
struct RenderContext;
|
||||
|
||||
class CameraRenderer {
|
||||
public:
|
||||
@@ -43,7 +44,12 @@ public:
|
||||
bool Render(const CameraRenderRequest& request);
|
||||
|
||||
private:
|
||||
struct DirectionalShadowSurfaceResources;
|
||||
|
||||
void ResetPipeline(std::unique_ptr<RenderPipeline> pipeline);
|
||||
DirectionalShadowSurfaceResources* AcquireDirectionalShadowSurface(
|
||||
const RenderContext& context,
|
||||
const DirectionalShadowRenderPlan& plan);
|
||||
|
||||
RenderSceneExtractor m_sceneExtractor;
|
||||
std::shared_ptr<const RenderPipelineAsset> m_pipelineAsset;
|
||||
@@ -51,6 +57,7 @@ private:
|
||||
std::unique_ptr<ObjectIdPass> m_objectIdPass;
|
||||
std::unique_ptr<RenderPass> m_depthOnlyPass;
|
||||
std::unique_ptr<RenderPass> m_shadowCasterPass;
|
||||
std::unique_ptr<DirectionalShadowSurfaceResources> m_directionalShadowSurface;
|
||||
};
|
||||
|
||||
} // namespace Rendering
|
||||
|
||||
Reference in New Issue
Block a user