OGRE-Next  2.3
Object-Oriented Graphics Rendering Engine
Ogre::LoadAction Namespace Reference

Enumerations

enum  LoadAction { DontCare , Clear , ClearOnTilers , Load }
 

Enumeration Type Documentation

◆ LoadAction

Enumerator
DontCare 

Do not care about the initial contents.

Useful for colour buffers if you intend to cover the whole screen with opaque draws. Not recommended for depth & stencil.

Clear 

Clear the whole resource or a fragment of it depending on viewport settings.

Actual behavior depends on the API used.

ClearOnTilers 

On tilers, will clear the subregion.

On non-tilers, it's the same as LoadAction::Load and assumes the resource is already cleared.

Remarks
This is useful for shadow map atlases. On desktop you probably want to render to a 8192x8192 shadow map in the following way: clear( 0, 0, 8192, 8192 ); foreach( shadowmap in shadowmaps ) render( shadowmap.x, shadowmap.y, shadowmap.width, shadowmap.height );

However this is heavily innefficient for tilers. In tilers you probably want to do the following: foreach( shadowmap in shadowmaps ) clear( shadowmap.x, shadowmap.y, shadowmap.width, shadowmap.height ); render( shadowmap.x, shadowmap.y, shadowmap.width, shadowmap.height );

ClearOnTilers allows you to perform the most efficient shadow map rendering on both tilers & non-tilers using the same compositor script, provided the full clear pass was set to only execute on non-tilers.

Load 

Load the contents that were stored in the texture.