mirror of
https://github.com/libretro/RetroArch
synced 2025-02-06 00:39:53 +00:00
Add SHADER_CTL_GET_FEEDBACK_PASS
This commit is contained in:
parent
fe3c3f5203
commit
7c4b372208
@ -702,8 +702,8 @@ static void gl_init_fbo(gl_t *gl, unsigned fbo_width, unsigned fbo_height)
|
||||
gl->fbo_rect[i].width, gl->fbo_rect[i].height);
|
||||
}
|
||||
|
||||
gl->fbo_feedback_enable =
|
||||
video_shader_driver_get_feedback_pass(&gl->fbo_feedback_pass);
|
||||
gl->fbo_feedback_enable = video_shader_driver_ctl(
|
||||
SHADER_CTL_GET_FEEDBACK_PASS, &gl->fbo_feedback_pass);
|
||||
|
||||
if (gl->fbo_feedback_enable && gl->fbo_feedback_pass
|
||||
< (unsigned)gl->fbo_pass)
|
||||
|
@ -172,13 +172,6 @@ enum gfx_wrap_type video_shader_driver_wrap_type(unsigned index)
|
||||
return current_shader->wrap_type(shader_data, index);
|
||||
}
|
||||
|
||||
bool video_shader_driver_get_feedback_pass(unsigned *pass)
|
||||
{
|
||||
if (!current_shader || !current_shader->get_feedback_pass)
|
||||
return false;
|
||||
return current_shader->get_feedback_pass(shader_data, pass);
|
||||
}
|
||||
|
||||
struct video_shader *video_shader_driver_direct_get_current_shader(void)
|
||||
{
|
||||
if (!current_shader || !current_shader->get_current_shader)
|
||||
@ -225,6 +218,11 @@ bool video_shader_driver_ctl(enum video_shader_driver_ctl_state state, void *dat
|
||||
}
|
||||
}
|
||||
return false;
|
||||
case SHADER_CTL_GET_FEEDBACK_PASS:
|
||||
if (!current_shader || !current_shader->get_feedback_pass)
|
||||
return false;
|
||||
return current_shader->get_feedback_pass(shader_data, (unsigned*)data);
|
||||
break;
|
||||
case SHADER_CTL_NONE:
|
||||
default:
|
||||
break;
|
||||
|
@ -35,7 +35,8 @@ enum video_shader_driver_ctl_state
|
||||
SHADER_CTL_NONE = 0,
|
||||
/* Finds first suitable shader context driver. */
|
||||
SHADER_CTL_INIT_FIRST,
|
||||
SHADER_CTL_SET_PARAMS
|
||||
SHADER_CTL_SET_PARAMS,
|
||||
SHADER_CTL_GET_FEEDBACK_PASS
|
||||
};
|
||||
|
||||
typedef struct shader_backend
|
||||
@ -157,8 +158,6 @@ bool video_shader_driver_filter_type(unsigned index, bool *smooth);
|
||||
|
||||
enum gfx_wrap_type video_shader_driver_wrap_type(unsigned index);
|
||||
|
||||
bool video_shader_driver_get_feedback_pass(unsigned *pass);
|
||||
|
||||
struct video_shader *video_shader_driver_direct_get_current_shader(void);
|
||||
|
||||
bool video_shader_driver_ctl(enum video_shader_driver_ctl_state state, void *data);
|
||||
|
Loading…
x
Reference in New Issue
Block a user