ezEngine  Milestone 7
ezRenderPipeline Class Reference

Classes

struct  PassData
 
struct  PassTypeData
 
struct  PipelineData
 

Public Member Functions

void ExtractData (const ezView &view)
 
void Render (ezRenderContext *pRenderer)
 
void AddPass (ezUniquePtr< ezRenderPipelinePass > &&pPass)
 
void RemovePass (ezUniquePtr< ezRenderPipelinePass > &&pPass)
 
void Connect (ezNode *pOutputNode, ezTempHashedString sOutputPinName, ezNode *pInputNode, ezTempHashedString sInputPinName)
 
void Rebuild ()
 
template<typename T >
T * CreateRenderData (ezRenderPassType passType, const ezGameObject *pOwner)
 
ezArrayPtr< const ezRenderData
*const > 
GetRenderDataWithPassType (ezRenderPassType passType) const
 
 EZ_DISALLOW_COPY_AND_ASSIGN (ezRenderPipeline)
 

Static Public Member Functions

static ezRenderPassType FindOrRegisterPassType (const char *szPassTypeName)
 
static const char * GetPassTypeName (ezRenderPassType passType)
 
static ezProfilingIdGetPassTypeProfilingID (ezRenderPassType passType)
 

Private Types

enum  { MAX_PASS_TYPES = 32 }
 

Private Member Functions

PipelineDataGetPipelineDataForExtraction ()
 
PipelineDataGetPipelineDataForRendering ()
 
const PipelineDataGetPipelineDataForRendering () const
 

Static Private Member Functions

static void ClearPipelineData (PipelineData *pPipeLineData)
 
static bool IsPipelineDataEmpty (PipelineData *pPipeLineData)
 

Private Attributes

ezThreadID m_CurrentExtractThread
 
ezThreadID m_CurrentRenderThread
 
PipelineData m_Data [2]
 
ezProfilingId m_RenderProfilingID
 
ezUInt32 m_uiLastExtractionFrame
 
ezUInt32 m_uiLastRenderFrame
 
ezDynamicArray< ezUniquePtr
< ezRenderPipelinePass > > 
m_Passes
 

Static Private Attributes

static ezRenderPassType s_uiNextPassType = 0
 
static PassTypeData s_PassTypeData [MAX_PASS_TYPES]
 

Friends

class ezView
 

Class Documentation

struct ezRenderPipeline::PassTypeData
Class Members
ezProfilingId m_ProfilingID
ezHashedString m_sName
struct ezRenderPipeline::PipelineData
Class Members
ezCamera m_Camera
ezHybridArray< PassData, 8 > m_PassData
ezViewData m_ViewData

Member Function Documentation

template<typename T >
T * ezRenderPipeline::CreateRenderData ( ezRenderPassType  passType,
const ezGameObject pOwner 
)
Todo:
implement sorting
void ezRenderPipeline::ExtractData ( const ezView view)
Todo:
use spatial data to do visibility culling etc.

The documentation for this class was generated from the following files: