bool TestApplication::Render( unsigned int intervalMilliseconds, const char* location )
{
DoUpdate( intervalMilliseconds, location );
- mCore->Render( mRenderStatus );
+ mCore->Render( mRenderStatus, false );
mFrame++;
bool TestApplication::RenderOnly( )
{
// Update Time values
- mCore->Render( mRenderStatus );
+ mCore->Render( mRenderStatus, false );
mFrame++;
mUseElapsedTimeAfterWait( FALSE ),
mNewSurface( NULL ),
mPostRendering( FALSE ),
- mSurfaceResized( FALSE )
+ mSurfaceResized( FALSE ),
+ mForceClear( FALSE )
{
LOG_EVENT_TRACE;
AddPerformanceMarker( PerformanceInterface::RESUME );
mRunning = TRUE;
+ mForceClear = TRUE;
}
}
Integration::RenderStatus renderStatus;
AddPerformanceMarker( PerformanceInterface::RENDER_START );
- mCore.Render( renderStatus );
+ mCore.Render( renderStatus, mForceClear );
AddPerformanceMarker( PerformanceInterface::RENDER_END );
+ mForceClear = false;
+
if( renderStatus.NeedsPostRender() )
{
mRenderHelper.PostRender( isRenderingToFbo );
volatile unsigned int mPostRendering; ///< Whether post-rendering is taking place (set by the event & render threads, read by the render-thread).
volatile unsigned int mSurfaceResized; ///< Will be set to resize the surface (set by the event-thread, read & cleared by the update-render thread).
+ volatile unsigned int mForceClear; ///< Will be set to clear forcely
};
} // namespace Adaptor