mirror of
https://github.com/CTCaer/RetroArch.git
synced 2025-03-04 17:39:53 +00:00
Create renderchain_driver_t
This commit is contained in:
parent
ee94ba9a84
commit
a529e8bc44
@ -1432,10 +1432,6 @@ bool renderchain_render(void *chain_data, const void *data,
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
void renderchain_convert_geometry(
|
||||
void *data, const void *info_data,
|
||||
unsigned *out_width, unsigned *out_height,
|
||||
@ -1478,3 +1474,20 @@ void renderchain_convert_geometry(
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
renderchain_driver_t cg_d3d9_renderchain = {
|
||||
renderchain_free,
|
||||
renderchain_new,
|
||||
renderchain_deinit,
|
||||
renderchain_deinit_shader,
|
||||
renderchain_init_shader,
|
||||
renderchain_init_shader_fvf,
|
||||
renderchain_init,
|
||||
renderchain_set_final_viewport,
|
||||
renderchain_add_pass,
|
||||
renderchain_add_lut,
|
||||
renderchain_add_state_tracker,
|
||||
renderchain_render,
|
||||
renderchain_convert_geometry,
|
||||
"cg_d3d9",
|
||||
};
|
||||
|
@ -36,6 +36,39 @@ enum
|
||||
TEXTURESMASK = TEXTURES - 1
|
||||
};
|
||||
|
||||
typedef struct renderchain_driver
|
||||
{
|
||||
void (*chain_free)(void *data);
|
||||
void *(*chain_new)(void);
|
||||
void (*deinit)(void *data);
|
||||
void (*deinit_shader)(void);
|
||||
bool (init_shader)(void *data);
|
||||
bool (*init_shader_fvf)(void *data, void *pass_data);
|
||||
bool (*init)(void *data,
|
||||
const video_info_t *video_info,
|
||||
void *dev_data,
|
||||
const void *final_viewport_data,
|
||||
const void *info_data,
|
||||
unsigned fmt);
|
||||
void (*set_final_viewport)(void *data,
|
||||
void *renderchain_data, const void *viewport_data);
|
||||
bool (*add_pass)(void *data, const void *info_data);
|
||||
bool (*add_lut)(void *data,
|
||||
const char *id, const char *path,
|
||||
bool smooth);
|
||||
void (*add_state_tracker)(void *data, void *tracker_data);
|
||||
bool (*render)(void *chain_data, const void *data,
|
||||
unsigned width, unsigned height, unsigned pitch, unsigned rotation);
|
||||
void (*convert_geometry)(void *data, const void *info_data,
|
||||
unsigned *out_width, unsigned *out_height,
|
||||
unsigned width, unsigned height,
|
||||
D3DVIEWPORT *final_viewport);
|
||||
const char *ident;
|
||||
} renderchain_driver_t;
|
||||
|
||||
renderchain_driver_t cg_d3d9_renderchain;
|
||||
renderchain_driver_t xdk_renderchain;
|
||||
|
||||
void renderchain_free(void *data);
|
||||
|
||||
void *renderchain_new(void);
|
||||
|
@ -358,3 +358,20 @@ bool renderchain_init_shader_fvf(void *data, void *pass_data)
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
renderchain_driver_t xdk_renderchain = {
|
||||
renderchain_free,
|
||||
renderchain_new,
|
||||
renderchain_deinit,
|
||||
renderchain_deinit_shader,
|
||||
renderchain_init_shader,
|
||||
renderchain_init_shader_fvf,
|
||||
renderchain_init,
|
||||
renderchain_set_final_viewport,
|
||||
renderchain_add_pass,
|
||||
renderchain_add_lut,
|
||||
renderchain_add_state_tracker,
|
||||
renderchain_render,
|
||||
renderchain_convert_geometry,
|
||||
"xdk",
|
||||
};
|
||||
|
Loading…
x
Reference in New Issue
Block a user