Create video_driver_set_mvp

This commit is contained in:
twinaphex 2017-11-14 21:22:44 +01:00
parent 2878818b34
commit 41daddfe1c
4 changed files with 9 additions and 5 deletions

View File

@ -56,7 +56,7 @@ static void renderchain_set_mvp(void *data, unsigned vp_width,
mvp.data = d3d;
mvp.matrix = NULL;
video_shader_driver_set_mvp(mvp);
video_driver_set_mvp(&mvp);
}
static void hlsl_d3d9_renderchain_clear(void *data)

View File

@ -3444,6 +3444,12 @@ bool video_shader_driver_wrap_type(video_shader_ctx_wrap_t *wrap)
return true;
}
void video_driver_set_mvp(video_shader_ctx_mvp_t *mvp)
{
if (mvp->matrix && current_shader && current_shader->set_mvp)
current_shader->set_mvp(mvp->data, shader_data, mvp->matrix);
}
bool renderchain_d3d_init_first(
const d3d_renderchain_driver_t **renderchain_driver,
void **renderchain_handle)

View File

@ -1283,9 +1283,7 @@ bool video_shader_driver_scale(video_shader_ctx_scale_t *scaler);
bool video_shader_driver_info(video_shader_ctx_info_t *shader_info);
#define video_shader_driver_set_mvp(mvp) \
if (mvp.matrix) \
current_shader->set_mvp(mvp.data, shader_data, mvp.matrix) \
void video_driver_set_mvp(video_shader_ctx_mvp_t *mvp);
bool video_shader_driver_filter_type(video_shader_ctx_filter_t *filter);

View File

@ -145,7 +145,7 @@ static void menu_display_gl_draw(void *data)
mvp.matrix = draw->matrix_data ? (math_matrix_4x4*)draw->matrix_data
: (math_matrix_4x4*)menu_display_gl_get_default_mvp();
video_shader_driver_set_mvp(mvp);
video_driver_set_mvp(&mvp);
glDrawArrays(menu_display_prim_to_gl_enum(
draw->prim_type), 0, draw->coords->vertices);