mirror of
https://github.com/libretro/RetroArch
synced 2025-02-06 09:40:06 +00:00
(D3D) Use d3d_texture_new
This commit is contained in:
parent
ea1c220ea5
commit
82e7112f41
@ -50,10 +50,17 @@ LPDIRECT3DTEXTURE d3d_texture_new(LPDIRECT3DDEVICE dev,
|
||||
HRESULT hr;
|
||||
LPDIRECT3DTEXTURE buf;
|
||||
|
||||
if (!dev)
|
||||
return NULL;
|
||||
|
||||
if (path != NULL)
|
||||
hr = D3DXCreateTextureFromFileExA(dev,
|
||||
path, width, height, miplevels, usage, format,
|
||||
pool, filter, mipfilter, color_key, src_info,
|
||||
palette, &buf);
|
||||
else
|
||||
hr = dev->CreateTexture(width, height, miplevels, usage,
|
||||
format, pool, &buf, NULL);
|
||||
|
||||
if (FAILED(hr))
|
||||
return NULL;
|
||||
|
@ -125,12 +125,15 @@ bool renderchain_set_pass_size(void *data, unsigned pass_index,
|
||||
pass->info.tex_w = width;
|
||||
pass->info.tex_h = height;
|
||||
|
||||
if (FAILED(d3dr->CreateTexture(width, height, 1,
|
||||
pass->tex = (LPDIRECT3DTEXTURE)d3d_texture_new(
|
||||
d3dr, NULL, width, height, 1,
|
||||
D3DUSAGE_RENDERTARGET,
|
||||
chain->passes.back().info.pass->fbo.fp_fbo ?
|
||||
D3DFMT_A32B32G32R32F : D3DFMT_A8R8G8B8,
|
||||
D3DPOOL_DEFAULT,
|
||||
&pass->tex, NULL)))
|
||||
D3DPOOL_DEFAULT, 0, 0, 0,
|
||||
NULL, NULL);
|
||||
|
||||
if (!pass->tex)
|
||||
return false;
|
||||
|
||||
d3d_set_texture(d3dr, 0, pass->tex);
|
||||
@ -164,12 +167,13 @@ bool renderchain_add_pass(void *data, const LinkInfo *info)
|
||||
if (!pass.vertex_buf)
|
||||
return false;
|
||||
|
||||
if (FAILED(d3dr->CreateTexture(info->tex_w, info->tex_h, 1,
|
||||
pass.tex = d3d_texture_new(d3dr, NULL, info->tex_w, info->tex_h, 1,
|
||||
D3DUSAGE_RENDERTARGET,
|
||||
chain->passes.back().info.pass->fbo.fp_fbo
|
||||
? D3DFMT_A32B32G32R32F : D3DFMT_A8R8G8B8,
|
||||
D3DPOOL_DEFAULT,
|
||||
&pass.tex, NULL)))
|
||||
D3DPOOL_DEFAULT, 0, 0, 0, NULL, NULL);
|
||||
|
||||
if (!pass.tex)
|
||||
return false;
|
||||
|
||||
d3d_set_texture(d3dr, 0, pass.tex);
|
||||
@ -367,10 +371,12 @@ bool renderchain_create_first_pass(void *data, const LinkInfo *info,
|
||||
if (!chain->prev.vertex_buf[i])
|
||||
return false;
|
||||
|
||||
if (FAILED(d3dr->CreateTexture(info->tex_w, info->tex_h, 1, 0,
|
||||
chain->prev.tex[i] = (LPDIRECT3DTEXTURE)d3d_texture_new(
|
||||
d3dr, NULL, d3info->tex_w, info->tex_h, 1, 0,
|
||||
fmt == RGB565 ? D3DFMT_R5G6B5 : D3DFMT_X8R8G8B8,
|
||||
D3DPOOL_MANAGED,
|
||||
&chain->prev.tex[i], NULL)))
|
||||
D3DPOOL_MANAGED, 0, 0, 0, NULL, NULL);
|
||||
|
||||
if (!chain->prev.tex[i])
|
||||
return false;
|
||||
|
||||
d3d_set_texture(d3dr, 0, chain->prev.tex[i]);
|
||||
|
Loading…
x
Reference in New Issue
Block a user