mRenderObject = new Render::TextureFrameBuffer( mWidth, mHeight, mAttachments );
}
- AddFrameBuffer( mEventThreadServices.GetUpdateManager(), *mRenderObject );
+ OwnerPointer< Render::FrameBuffer > transferOwnership( mRenderObject );
+ AddFrameBuffer( mEventThreadServices.GetUpdateManager(), transferOwnership );
}
void FrameBuffer::AttachColorTexture( TexturePtr texture, uint32_t mipmapLevel, uint32_t layer )
}
}
-void FrameBuffer::SetBackgroundColor( const Vector4& color )
+void FrameBuffer::MarkSurfaceAsInvalid()
+{
+ if ( mIsSurfaceBacked )
+ {
+ Render::SurfaceFrameBuffer* renderObject = static_cast<Render::SurfaceFrameBuffer*>( mRenderObject );
+ renderObject->MarkSurfaceAsInvalid();
+ }
+}
+
+void FrameBuffer::SetPartialUpdateEnabled( bool value )
{
if( mRenderObject->IsSurfaceBacked() )
{
- SetFrameBufferBackgroundColorMessage( mEventThreadServices.GetUpdateManager(), static_cast<Render::SurfaceFrameBuffer*>( mRenderObject ), color );
+ SetFrameBufferPartialUpdateMessage( mEventThreadServices.GetUpdateManager(), static_cast<Render::SurfaceFrameBuffer*>( mRenderObject ), value );
}
}
+
FrameBuffer::~FrameBuffer()
{
if( EventThreadServices::IsCoreRunning() && mRenderObject )