protected void ModeUpdate()
{
if ( !ModeUpdateCustom() )
return; // Give Demo first shot at making the update
// 'R' Toggles Render Mode
if ( input.IsKeyPressed( KeyCodes.R ) )
{
switch ( camera.PolygonMode )
{
case PolygonMode.Points:
camera.PolygonMode = PolygonMode.Solid;
break;
case PolygonMode.Solid:
camera.PolygonMode = PolygonMode.Wireframe;
break;
case PolygonMode.Wireframe:
camera.PolygonMode = PolygonMode.Points;
break;
}
HandleUserModeInput( string.Format( "Rendering mode changed to '{0}'.", camera.PolygonMode ) );
}
// 'T' Toggles Texture Settings
if ( input.IsKeyPressed( KeyCodes.T ) )
{
switch ( filtering )
{
case TextureFiltering.Bilinear:
filtering = TextureFiltering.Trilinear;
aniso = 1;
break;
case TextureFiltering.Trilinear:
filtering = TextureFiltering.Anisotropic;
aniso = 8;
break;
case TextureFiltering.Anisotropic:
filtering = TextureFiltering.Bilinear;
aniso = 1;
break;
}
// set the new default texture settings
MaterialManager.Instance.SetDefaultTextureFiltering( filtering );
MaterialManager.Instance.DefaultAnisotropy = aniso;
HandleUserModeInput( string.Format( "Texture Filtering changed to '{0}'.", filtering ) );
}
// Hide/Show Bounding Boxes and Overlays (besides debug overlay)
if ( input.IsKeyPressed( KeyCodes.B ) )
{
scene.ShowBoundingBoxes = !scene.ShowBoundingBoxes;
HandleUserModeInput( string.Format( "Show Bounding Boxes = {0}.", scene.ShowBoundingBoxes ) );
}
if ( input.IsKeyPressed( KeyCodes.F ) )
{
viewport.ShowOverlays = !viewport.ShowOverlays;
HandleUserModeInput( string.Format( "Show Overlays = {0}.", viewport.ShowOverlays ) );
}
#if !(XBOX || XBOX360 )
// 'P' Captures Screenshot (like 'Print' command)
if ( input.IsKeyPressed( KeyCodes.P ) )
{
// Save Screenshot to unique Filename (indexed)
string[] temp = Directory.GetFiles( Environment.CurrentDirectory, "screenshot*.jpg" );
string fileName = string.Format( "screenshot{0}.jpg", temp.Length + 1 );
TakeScreenshot( fileName );
HandleUserModeInput( string.Format( "Wrote screenshot '{0}'.", fileName ) );
}
#endif
} // end ReadUserModeInputs()