add bilinear filter display option (d3d only)

This commit is contained in:
goyuken 2012-10-01 02:30:25 +00:00
parent 6e7a906cf5
commit 2e70656dde
5 changed files with 261 additions and 236 deletions

View File

@ -245,6 +245,7 @@ namespace BizHawk.MultiClient
public int DispAutoholdx = 0;
public int DispAutoholdy = 0;
public int DispAutoholdanchor = 1;
public bool DispBlurry = false; // make display look ugly
// Sound options
public bool SoundEnabled = true;

File diff suppressed because it is too large Load Diff

View File

@ -1303,6 +1303,7 @@ namespace BizHawk.MultiClient
startPausedToolStripMenuItem.Checked = Global.Config.StartPaused;
saveWindowPositionToolStripMenuItem.Checked = Global.Config.SaveWindowPosition;
forceGDIPPresentationToolStripMenuItem.Checked = Global.Config.DisplayGDI;
blurryToolStripMenuItem.Checked = Global.Config.DispBlurry;
miSuppressGuiLayer.Checked = Global.Config.SuppressGui;
showMenuInFullScreenToolStripMenuItem.Checked = Global.Config.ShowMenuInFullscreen;
runInBackgroundToolStripMenuItem.Checked = Global.Config.RunInBackground;

View File

@ -3790,5 +3790,10 @@ namespace BizHawk.MultiClient
{
LoadTraceLogger();
}
private void blurryToolStripMenuItem_Click(object sender, EventArgs e)
{
Global.Config.DispBlurry ^= true;
}
}
}

View File

@ -493,8 +493,16 @@ namespace BizHawk.MultiClient
SpriteFlags flags = SpriteFlags.None;
if (overlay) flags |= SpriteFlags.AlphaBlend;
Sprite.Begin(flags);
Device.SetSamplerState(0, SamplerState.MagFilter, TextureFilter.Point);
Device.SetSamplerState(0, SamplerState.MinFilter, TextureFilter.Point);
if (Global.Config.DispBlurry)
{
Device.SetSamplerState(0, SamplerState.MagFilter, TextureFilter.Linear);
Device.SetSamplerState(0, SamplerState.MinFilter, TextureFilter.Linear);
}
else
{
Device.SetSamplerState(0, SamplerState.MagFilter, TextureFilter.Point);
Device.SetSamplerState(0, SamplerState.MinFilter, TextureFilter.Point);
}
Sprite.Transform = Matrix.Scaling(finalScale, finalScale, 0f);
Sprite.Draw(Texture.Texture, new Rectangle(0, 0, surface.Width, surface.Height), new Vector3(surface.Width / 2f, surface.Height / 2f, 0), new Vector3(backingControl.Size.Width / 2f / finalScale, backingControl.Size.Height / 2f / finalScale, 0), Color.White);
Sprite.End();