(D3D) Go through macros for D3DDevice member functions - will

be needed for XDK compatibility later on
This commit is contained in:
twinaphex 2014-06-07 07:03:36 +02:00
parent 4ad1246fc4
commit 346a341cf8
5 changed files with 40 additions and 40 deletions

View File

@ -618,10 +618,10 @@ static void d3d_overlay_render(void *data, overlay_t *overlay)
// render overlay
d3d->dev->SetTexture(0, overlay->tex);
d3d->dev->SetSamplerState(0, D3DSAMP_ADDRESSU, D3DTADDRESS_BORDER);
d3d->dev->SetSamplerState(0, D3DSAMP_ADDRESSV, D3DTADDRESS_BORDER);
d3d->dev->SetSamplerState(0, D3DSAMP_MINFILTER, D3DTEXF_LINEAR);
d3d->dev->SetSamplerState(0, D3DSAMP_MAGFILTER, D3DTEXF_LINEAR);
D3DDevice_SetSamplerState_AddressU(d3d->dev, 0, D3DTADDRESS_BORDER);
D3DDevice_SetSamplerState_AddressV(d3d->dev, 0, D3DTADDRESS_BORDER);
D3DDevice_SetSamplerState_MinFilter(d3d->dev, 0, D3DTEXF_LINEAR);
D3DDevice_SetSamplerState_MagFilter(d3d->dev, 0, D3DTEXF_LINEAR);
if (SUCCEEDED(d3d->dev->BeginScene()))
{
d3d->dev->DrawPrimitive(D3DPT_TRIANGLESTRIP, 0, 2);

View File

@ -53,6 +53,14 @@
class RenderChain;
#ifndef _XBOX
#define D3DDevice_SetSamplerState_AddressU(dev, sampler, type) dev->SetSamplerState(sampler, D3DSAMP_ADDRESSU, type)
#define D3DDevice_SetSamplerState_AddressV(dev, sampler, type) dev->SetSamplerState(sampler, D3DSAMP_ADDRESSV, type)
#define D3DDevice_SetSamplerState_MinFilter(dev, sampler, type) dev->SetSamplerState(sampler, D3DSAMP_MINFILTER, type)
#define D3DDevice_SetSamplerState_MagFilter(dev, sampler, type) dev->SetSamplerState(sampler, D3DSAMP_MAGFILTER, type)
#endif
typedef struct
{
struct Coords

View File

@ -131,8 +131,8 @@ bool renderchain_set_pass_size(void *data, unsigned pass_index, unsigned width,
return false;
d3dr->SetTexture(0, pass.tex);
d3dr->SetSamplerState(0, D3DSAMP_ADDRESSU, D3DTADDRESS_BORDER);
d3dr->SetSamplerState(0, D3DSAMP_ADDRESSV, D3DTADDRESS_BORDER);
D3DDevice_SetSamplerState_AddressU(d3dr, 0, D3DTADDRESS_BORDER);
D3DDevice_SetSamplerState_AddressV(d3dr, 0, D3DTADDRESS_BORDER);
d3dr->SetTexture(0, NULL);
}
@ -169,8 +169,8 @@ bool renderchain_add_pass(void *data, const LinkInfo *info)
return false;
d3dr->SetTexture(0, pass.tex);
d3dr->SetSamplerState(0, D3DSAMP_ADDRESSU, D3DTADDRESS_BORDER);
d3dr->SetSamplerState(0, D3DSAMP_ADDRESSV, D3DTADDRESS_BORDER);
D3DDevice_SetSamplerState_AddressU(d3dr, 0, D3DTADDRESS_BORDER);
D3DDevice_SetSamplerState_AddressV(d3dr, 0, D3DTADDRESS_BORDER);
d3dr->SetTexture(0, NULL);
chain->passes.push_back(pass);
@ -207,8 +207,8 @@ bool renderchain_add_lut(void *data, const std::string &id,
return false;
d3dr->SetTexture(0, lut);
d3dr->SetSamplerState(0, D3DSAMP_ADDRESSU, D3DTADDRESS_BORDER);
d3dr->SetSamplerState(0, D3DSAMP_ADDRESSV, D3DTADDRESS_BORDER);
D3DDevice_SetSamplerState_AddressU(d3dr, 0, D3DTADDRESS_BORDER);
D3DDevice_SetSamplerState_AddressV(d3dr, 0, D3DTADDRESS_BORDER);
d3dr->SetTexture(0, NULL);
lut_info info = { lut, id, smooth };
@ -368,12 +368,10 @@ bool renderchain_create_first_pass(void *data, const LinkInfo *info, PixelFormat
}
d3dr->SetTexture(0, chain->prev.tex[i]);
d3dr->SetSamplerState(0, D3DSAMP_MINFILTER,
translate_filter(info->pass->filter));
d3dr->SetSamplerState(0, D3DSAMP_MAGFILTER,
translate_filter(info->pass->filter));
d3dr->SetSamplerState(0, D3DSAMP_ADDRESSU, D3DTADDRESS_BORDER);
d3dr->SetSamplerState(0, D3DSAMP_ADDRESSV, D3DTADDRESS_BORDER);
D3DDevice_SetSamplerState_MinFilter(d3dr, 0, translate_filter(info->pass->filter));
D3DDevice_SetSamplerState_MagFilter(d3dr, 0, translate_filter(info->pass->filter));
D3DDevice_SetSamplerState_AddressU(d3dr, 0, D3DTADDRESS_BORDER);
D3DDevice_SetSamplerState_AddressV(d3dr, 0, D3DTADDRESS_BORDER);
d3dr->SetTexture(0, NULL);
}
@ -581,10 +579,8 @@ void renderchain_render_pass(void *data, Pass &pass, unsigned pass_index)
else if(pass.tex)
#endif
d3dr->SetTexture(0, pass.tex);
d3dr->SetSamplerState(0, D3DSAMP_MINFILTER,
translate_filter(pass.info.pass->filter));
d3dr->SetSamplerState(0, D3DSAMP_MAGFILTER,
translate_filter(pass.info.pass->filter));
D3DDevice_SetSamplerState_MinFilter(d3dr, 0, translate_filter(pass.info.pass->filter));
D3DDevice_SetSamplerState_MagFilter(d3dr, 0, translate_filter(pass.info.pass->filter));
#ifdef _XBOX1
d3dr->SetVertexShader(D3DFVF_XYZ | D3DFVF_TEX1);
@ -612,10 +608,8 @@ void renderchain_render_pass(void *data, Pass &pass, unsigned pass_index)
// So we don't render with linear filter into render targets,
// which apparently looked odd (too blurry).
d3dr->SetSamplerState(0, D3DSAMP_MINFILTER,
D3DTEXF_POINT);
d3dr->SetSamplerState(0, D3DSAMP_MAGFILTER,
D3DTEXF_POINT);
D3DDevice_SetSamplerState_MinFilter(d3dr, 0, D3DTEXF_POINT);
D3DDevice_SetSamplerState_MagFilter(d3dr, 0, D3DTEXF_POINT);
renderchain_unbind_all(chain);
}
@ -669,10 +663,8 @@ void renderchain_unbind_all(void *data)
// Render targets hate it when they have filters apparently.
for (unsigned i = 0; i < chain->bound_tex.size(); i++)
{
d3dr->SetSamplerState(chain->bound_tex[i], D3DSAMP_MAGFILTER,
D3DTEXF_POINT);
d3dr->SetSamplerState(chain->bound_tex[i], D3DSAMP_MINFILTER,
D3DTEXF_POINT);
D3DDevice_SetSamplerState_MinFilter(d3dr, chain->bound_tex[i], D3DTEXF_POINT);
D3DDevice_SetSamplerState_MagFilter(d3dr, chain->bound_tex[i], D3DTEXF_POINT);
d3dr->SetTexture(chain->bound_tex[i], NULL);
}

View File

@ -668,10 +668,10 @@ static void render_pass(void *data, const void *frame, unsigned width, unsigned
#endif
RD3DDevice_SetTexture(d3dr, 0, d3d->tex);
RD3DDevice_SetViewport(d3d->dev, &d3d->final_viewport);
RD3DDevice_SetSamplerState_MinFilter(d3dr, 0, g_settings.video.smooth ? D3DTEXF_LINEAR : D3DTEXF_POINT);
RD3DDevice_SetSamplerState_MagFilter(d3dr, 0, g_settings.video.smooth ? D3DTEXF_LINEAR : D3DTEXF_POINT);
RD3DDevice_SetSamplerState_AddressU(d3dr, D3DSAMP_ADDRESSU, D3DTADDRESS_BORDER);
RD3DDevice_SetSamplerState_AddressV(d3dr, D3DSAMP_ADDRESSV, D3DTADDRESS_BORDER);
D3DDevice_SetSamplerState_MinFilter(d3dr, 0, g_settings.video.smooth ? D3DTEXF_LINEAR : D3DTEXF_POINT);
D3DDevice_SetSamplerState_MagFilter(d3dr, 0, g_settings.video.smooth ? D3DTEXF_LINEAR : D3DTEXF_POINT);
D3DDevice_SetSamplerState_AddressU(d3dr, D3DSAMP_ADDRESSU, D3DTADDRESS_BORDER);
D3DDevice_SetSamplerState_AddressV(d3dr, D3DSAMP_ADDRESSV, D3DTADDRESS_BORDER);
#if defined(_XBOX1)
RD3DDevice_SetVertexShader(d3dr, D3DFVF_XYZ | D3DFVF_TEX1);

View File

@ -49,10 +49,10 @@
#define RD3DDevice_Clear(device, Count, pRects, Flags, Color, Z, Stencil) D3DDevice_Clear(Count, pRects, Flags, Color, Z, Stencil)
#define RD3DDevice_SetViewport(device, viewport) D3DDevice_SetViewport(viewport)
#define RD3DDevice_Present(device) D3DDevice_Swap(0)
#define RD3DDevice_SetSamplerState_MinFilter(device, sampler, value) SetSamplerState_function(device, sampler, D3DTSS_MINFILTER, value)
#define RD3DDevice_SetSamplerState_MagFilter(device, sampler, value) SetSamplerState_function(device, sampler, D3DTSS_MAGFILTER, value)
#define RD3DDevice_SetSamplerState_AddressU(device, sampler, value) SetSamplerState_function(device, sampler, D3DTSS_ADDRESSU, value)
#define RD3DDevice_SetSamplerState_AddressV(device, sampler, value) SetSamplerState_function(device, sampler, D3DTSS_ADDRESSV, value)
#define D3DDevice_SetSamplerState_MinFilter(device, sampler, value) SetSamplerState_function(device, sampler, D3DTSS_MINFILTER, value)
#define D3DDevice_SetSamplerState_MagFilter(device, sampler, value) SetSamplerState_function(device, sampler, D3DTSS_MAGFILTER, value)
#define D3DDevice_SetSamplerState_AddressU(device, sampler, value) SetSamplerState_function(device, sampler, D3DTSS_ADDRESSU, value)
#define D3DDevice_SetSamplerState_AddressV(device, sampler, value) SetSamplerState_function(device, sampler, D3DTSS_ADDRESSV, value)
#define D3DLOCK_NOSYSLOCK (0)
@ -91,10 +91,10 @@
#define RD3DDevice_Clear(device, Count, pRects, Flags, Color, Z, Stencil) D3DDevice_Clear(device, Count, pRects, Flags, Color, Z, Stencil, false)
#define RD3DDevice_SetViewport(device, viewport) D3DDevice_SetViewport(device, viewport)
#define RD3DDevice_Present(device) D3DDevice_Present(device)
#define RD3DDevice_SetSamplerState_MinFilter(device, sampler, value) D3DDevice_SetSamplerState_MinFilter(device, sampler, value)
#define RD3DDevice_SetSamplerState_MagFilter(device, sampler, value) D3DDevice_SetSamplerState_MagFilter(device, sampler, value)
#define RD3DDevice_SetSamplerState_AddressU(device, sampler, value) D3DDevice_SetSamplerState_AddressU_Inline(device, sampler, value)
#define RD3DDevice_SetSamplerState_AddressV(device, sampler, value) D3DDevice_SetSamplerState_AddressV_Inline(device, sampler, value)
#define D3DDevice_SetSamplerState_MinFilter(device, sampler, value) D3DDevice_SetSamplerState_MinFilter(device, sampler, value)
#define D3DDevice_SetSamplerState_MagFilter(device, sampler, value) D3DDevice_SetSamplerState_MagFilter(device, sampler, value)
#define D3DDevice_SetSamplerState_AddressU(device, sampler, value) D3DDevice_SetSamplerState_AddressU_Inline(device, sampler, value)
#define D3DDevice_SetSamplerState_AddressV(device, sampler, value) D3DDevice_SetSamplerState_AddressV_Inline(device, sampler, value)
#endif