Split IGL.TexParameter2d into two methods

This commit is contained in:
YoshiRulz 2021-02-13 14:49:27 +10:00 committed by James Groom
parent 6fc43e9c22
commit 7ff70de159
5 changed files with 27 additions and 40 deletions

View File

@ -113,10 +113,9 @@ namespace BizHawk.Bizware.BizwareGL
/// </summary>
BitmapBuffer ResolveTexture2d(Texture2d texture);
/// <summary>
/// Sets a 2d texture parameter
/// </summary>
void TexParameter2d(Texture2d texture, TextureParameterName pname, int param);
void SetMinFilter(Texture2d texture, TextureMinFilter minFilter);
void SetMagFilter(Texture2d texture, TextureMagFilter magFilter);
/// <summary>
/// creates a vertex layout resource

View File

@ -41,15 +41,9 @@ namespace BizHawk.Bizware.BizwareGL
{
}
public void SetMinFilter(TextureMinFilter minFilter)
{
Owner.TexParameter2d(this,TextureParameterName.TextureMinFilter, (int)minFilter);
}
public void SetMinFilter(TextureMinFilter minFilter) => Owner.SetMinFilter(this, minFilter);
public void SetMagFilter(TextureMagFilter magFilter)
{
Owner.TexParameter2d(this, TextureParameterName.TextureMagFilter, (int)magFilter);
}
public void SetMagFilter(TextureMagFilter magFilter) => Owner.SetMagFilter(this, magFilter);
public void SetFilterLinear()
{

View File

@ -649,24 +649,15 @@ namespace BizHawk.Bizware.DirectX
tw.WrapClamp = clamp ? TextureAddress.Clamp : TextureAddress.Wrap;
}
public void TexParameter2d(Texture2d tex, gl.TextureParameterName pName, int param)
{
var tw = (TextureWrapper)tex.Opaque;
public void SetMinFilter(Texture2d texture, gl.TextureMinFilter minFilter)
=> ((TextureWrapper) texture.Opaque).MinFilter = minFilter == gl.TextureMinFilter.Linear
? TextureFilter.Linear
: TextureFilter.Point;
if (pName == gl.TextureParameterName.TextureMinFilter)
{
tw.MinFilter = param == (int)gl.TextureMinFilter.Linear
? TextureFilter.Linear
: TextureFilter.Point;
}
if (pName == gl.TextureParameterName.TextureMagFilter)
{
tw.MagFilter = param == (int)gl.TextureMagFilter.Linear
? TextureFilter.Linear
: TextureFilter.Point;
}
}
public void SetMagFilter(Texture2d texture, gl.TextureMagFilter magFilter)
=> ((TextureWrapper) texture.Opaque).MagFilter = magFilter == gl.TextureMagFilter.Linear
? TextureFilter.Linear
: TextureFilter.Point;
public Texture2d LoadTexture(Bitmap bitmap)
{

View File

@ -135,14 +135,11 @@ namespace BizHawk.Client.EmuHawk
}
public void TexParameter2d(Texture2d tex, TextureParameterName pname, int param)
{
var tw = tex.Opaque as GDIPTextureWrapper;
if (pname == TextureParameterName.TextureMinFilter)
tw.MinFilter = (TextureMinFilter)param;
if (pname == TextureParameterName.TextureMagFilter)
tw.MagFilter = (TextureMagFilter)param;
}
public void SetMinFilter(Texture2d texture, TextureMinFilter minFilter)
=> ((GDIPTextureWrapper) texture.Opaque).MinFilter = minFilter;
public void SetMagFilter(Texture2d texture, TextureMagFilter magFilter)
=> ((GDIPTextureWrapper) texture.Opaque).MagFilter = magFilter;
public Texture2d LoadTexture(Bitmap bitmap)
{

View File

@ -427,10 +427,16 @@ namespace BizHawk.Client.EmuHawk
GL.BindTexture(TextureTarget.Texture2D, (int)tex.Opaque);
}
public void TexParameter2d(Texture2d tex, TextureParameterName pName, int param)
public void SetMinFilter(Texture2d texture, TextureMinFilter minFilter)
{
BindTexture2d(tex);
GL.TexParameter(TextureTarget.Texture2D, pName, param);
BindTexture2d(texture);
GL.TexParameter(TextureTarget.Texture2D, TextureParameterName.TextureMinFilter, (int) minFilter);
}
public void SetMagFilter(Texture2d texture, TextureMagFilter magFilter)
{
BindTexture2d(texture);
GL.TexParameter(TextureTarget.Texture2D, TextureParameterName.TextureMagFilter, (int) magFilter);
}
public Texture2d LoadTexture(sd.Bitmap bitmap)