Plasma Engine
2.0
Loading...
Searching...
No Matches
LensFlareRenderer.h
1
#pragma once
2
3
#include <Core/ResourceManager/ResourceHandle.h>
4
#include <RendererCore/Pipeline/Renderer.h>
5
6
struct
plPerLensFlareData;
7
class
plRenderDataBatch
;
8
using
plShaderResourceHandle
=
plTypedResourceHandle<class plShaderResource>
;
9
11
class
PL_RENDERERCORE_DLL
plLensFlareRenderer
:
public
plRenderer
12
{
13
PL_ADD_DYNAMIC_REFLECTION(
plLensFlareRenderer
,
plRenderer
);
14
PL_DISALLOW_COPY_AND_ASSIGN(
plLensFlareRenderer
);
15
16
public
:
17
plLensFlareRenderer
();
18
~plLensFlareRenderer
();
19
20
// plRenderer implementation
21
virtual
void
GetSupportedRenderDataTypes(
plHybridArray<const plRTTI*, 8>
& ref_types)
const override
;
22
virtual
void
GetSupportedRenderDataCategories(
plHybridArray<plRenderData::Category, 8>
& ref_categories)
const override
;
23
virtual
void
RenderBatch(
24
const
plRenderViewContext
& renderContext,
const
plRenderPipelinePass
* pPass,
const
plRenderDataBatch
& batch)
const override
;
25
26
protected
:
27
plGALBufferHandle
CreateLensFlareDataBuffer(plUInt32 uiBufferSize)
const
;
28
void
DeleteLensFlareDataBuffer(
plGALBufferHandle
hBuffer)
const
;
29
virtual
void
FillLensFlareData(
const
plRenderDataBatch
& batch)
const
;
30
31
plShaderResourceHandle
m_hShader;
32
mutable
plDynamicArray<plPerLensFlareData, plAlignedAllocatorWrapper>
m_LensFlareData;
33
};
plDynamicArray
Definition
DynamicArray.h:81
plGALBufferHandle
Definition
RendererFoundationDLL.h:418
plHybridArray
A hybrid array uses in-place storage to handle the first few elements without any allocation....
Definition
HybridArray.h:12
plLensFlareRenderer
Implements rendering of lens flares.
Definition
LensFlareRenderer.h:12
plRenderDataBatch
Definition
RenderDataBatch.h:6
plRenderPipelinePass
Definition
RenderPipelinePass.h:26
plRenderer
This is the base class for types that handle rendering of different object types.
Definition
Renderer.h:9
plTypedResourceHandle< class plShaderResource >
plRenderViewContext
Definition
Declarations.h:51
Code
Engine
RendererCore
Components
LensFlareRenderer.h
Generated by
1.11.0