public override void SetViewport( Viewport viewport )
{
if ( viewport != activeViewport || viewport.IsUpdated )
{
RenderTarget target = viewport.Target;
SetRenderTarget( target );
activeViewport = viewport;
int x, y, w, h;
w = viewport.ActualWidth;
h = viewport.ActualHeight;
x = viewport.ActualLeft;
y = viewport.ActualTop;
if ( !target.RequiresTextureFlipping )
{
// Convert "upper-left" corner to "lower-left"
y = target.Height - h - y;
}
OpenGL.Viewport( x, y, w, h );
GLESConfig.GlCheckError( this );
// Configure the viewport clipping
OpenGL.Scissor( x, y, w, h );
GLESConfig.GlCheckError( this );
viewport.IsUpdated = false;
}
}