Plasma Engine  2.0
Loading...
Searching...
No Matches
SimplifiedDataProvider.h
1#pragma once
2
3#include <RendererCore/Declarations.h>
4#include <RendererCore/Pipeline/FrameDataProvider.h>
5#include <RendererCore/Shader/ConstantBufferStorage.h>
6
7struct PL_RENDERERCORE_DLL plSimplifiedDataGPU
8{
9 PL_DISALLOW_COPY_AND_ASSIGN(plSimplifiedDataGPU);
10
11public:
14
15 plUInt32 m_uiSkyIrradianceIndex = 0;
16 plEnum<plCameraUsageHint> m_cameraUsageHint = plCameraUsageHint::Default;
17 plConstantBufferStorageHandle m_hConstantBuffer;
18
19 void BindResources(plRenderContext* pRenderContext);
20};
21
22class PL_RENDERERCORE_DLL plSimplifiedDataProvider : public plFrameDataProvider<plSimplifiedDataGPU>
23{
24 PL_ADD_DYNAMIC_REFLECTION(plSimplifiedDataProvider, plFrameDataProviderBase);
25
26public:
29
30private:
31 virtual void* UpdateData(const plRenderViewContext& renderViewContext, const plExtractedRenderData& extractedData) override;
32
34};
Definition ConstantBufferStorage.h:54
Definition ExtractedRenderData.h:10
Definition FrameDataProvider.h:6
Definition FrameDataProvider.h:26
Definition RenderContext.h:30
Definition SimplifiedDataProvider.h:23
A custom enum implementation that allows to define the underlying storage type to control its memory ...
Definition Enum.h:37
Definition Declarations.h:51
Definition SimplifiedDataProvider.h:8