RenderProbeMgr

Engine/source/renderInstance/renderProbeMgr.h

More...

Private Types

Protected Static Attributes

The current active light manager.

Public Functions

RenderProbeMgr(RenderInstType riType, F32 renderOrder, F32 processAddOrder)
getBestProbes(const Point3F & objPosition, ProbeDataSet * probeDataSet)
bool

Called when the object is added to the sim.

Called when the object is removed from the sim.

Protected Functions

_update4ProbeConsts(const SceneData & sgData, MatrixSet & matSet, ProbeShaderConstants * probeShaderConsts, GFXShaderConstBuffer * shaderConsts)

This helper function sets the shader constansts for the stock 4 light forward lighting code.

Detailed Description

Private Types

typedef RenderBinManager Parent 

Private Attributes

Vector< ProbeRenderInst > mActiveProbes 
GFXTexHandle mBRDFTexture 
ProbeConstantMap mConstantLookup 
U32 mCubeMapCount 
bool mCubeMapSlots [PROBE_MAX_COUNT]
U32 mCubeSlotCount 
ProbeRenderInst * mDefaultSkyLight 
U32 mEffectiveProbeCount 
bool mHasSkylight 
GFXCubemapArrayHandle mIrradianceArray 
ProbeShaderConstants * mLastConstants 
GFXShaderRef mLastShader 
S32 mMipCount 
GFXCubemapArrayHandle mPrefilterArray 
U32 mPrefilterMipLevels 
U32 mPrefilterSize 
SimObjectPtr< PostEffect > mProbeArrayEffect 
ProbeDataSet mProbeData 
bool mProbesDirty 
Vector< ProbeRenderInst * > mRegisteredProbes 
S32 mSkylightCubemapIdx 
bool mUseHDRCaptures 

Prevents us from saving out the cubemaps(for now) but allows us the full HDR range on the in-memory cubemap captures.

Public Static Attributes

const U32 INVALID_CUBE_SLOT 
const U32 PROBE_ARRAY_SLOT_BUFFER_SIZE 
const GFXFormat PROBE_FORMAT 
const U32 PROBE_IRRAD_SIZE 
const U32 PROBE_MAX_COUNT 
const U32 PROBE_MAX_FRAME 
const U32 PROBE_PREFILTER_SIZE 
F32 smMaxProbeDrawDistance 
S32 smMaxProbesPerFrame 
bool smRenderReflectionProbes 

Debug rendering.

Protected Static Attributes

RenderProbeMgr * smProbeManager 

The current active light manager.

Public Functions

RenderProbeMgr()

RenderProbeMgr(RenderInstType riType, F32 renderOrder, F32 processAddOrder)

~RenderProbeMgr()

bakeProbe(ReflectionProbe * probeInfo)

bakeProbes()

DECLARE_CONOBJECT(RenderProbeMgr )

getBestProbes(const Point3F & objPosition, ProbeDataSet * probeDataSet)

getProbeTextureData(ProbeTextureArrayData * probeTextureSet)

getSkylightIndex()

onAdd()

Reimplemented from: SimObject

onRemove()

Reimplemented from: RenderBinManager

registerProbe(ProbeRenderInst * newProbe)

reloadTextures()

setProbeInfo(ProcessedMaterial * pmat, const Material * mat, const SceneData & sgData, const SceneRenderState * state, U32 pass, GFXShaderConstBuffer * shaderConsts)

setupSGData(SceneData & data, const SceneRenderState * state, LightInfo * light)

submitProbe(const ProbeRenderInst & newProbe)

unregisterProbe(U32 probeIdx)

updateProbes()

updateProbeTexture(ProbeRenderInst * probeInfo)

Public Static Functions

_probeScoreCmp(const ProbeRenderInst * a, const ProbeRenderInst * b)

consoleInit()

getProbeManager()

Returns the active LM.

initPersistFields()

Protected Functions

_findNextEmptyCubeSlot()

_setupPerFrameParameters(const SceneRenderState * state)

_setupStaticParameters()

_update4ProbeConsts(const SceneData & sgData, MatrixSet & matSet, ProbeShaderConstants * probeShaderConsts, GFXShaderConstBuffer * shaderConsts)

This helper function sets the shader constansts for the stock 4 light forward lighting code.

addElement(RenderInst * inst)

Reimplemented from: RenderBinManager

getProbeArrayEffect()

getProbeShaderConstants(GFXShaderConstBuffer * buffer)

render(SceneRenderState * state)

Reimplemented from: RenderBinManager