mirror of
https://github.com/libretro/RetroArch
synced 2025-04-16 08:43:10 +00:00
(XMB) Set uniform to vertex program and add 'add_prefix' to uniform_info struct
This commit is contained in:
parent
6579b5f3c8
commit
58f145282e
@ -131,6 +131,7 @@ static void gl_cg_set_uniform_parameter(
|
|||||||
|
|
||||||
if (param->lookup.enable)
|
if (param->lookup.enable)
|
||||||
{
|
{
|
||||||
|
char ident[64];
|
||||||
CGprogram prog = 0;
|
CGprogram prog = 0;
|
||||||
|
|
||||||
switch (param->lookup.type)
|
switch (param->lookup.type)
|
||||||
@ -143,7 +144,13 @@ static void gl_cg_set_uniform_parameter(
|
|||||||
prog = cg_data->prg[param->lookup.idx].fprg;
|
prog = cg_data->prg[param->lookup.idx].fprg;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
location = cgGetNamedParameter(prog, param->lookup.ident);
|
|
||||||
|
if (param->lookup.add_prefix)
|
||||||
|
{
|
||||||
|
strlcat(ident, "IN.", sizeof(ident));
|
||||||
|
strlcat(ident, param->lookup.ident, sizeof(ident));
|
||||||
|
}
|
||||||
|
location = cgGetNamedParameter(prog, param->lookup.add_prefix ? ident : param->lookup.ident);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -122,6 +122,7 @@ struct uniform_info
|
|||||||
enum shader_program_type type;
|
enum shader_program_type type;
|
||||||
const char *ident;
|
const char *ident;
|
||||||
uint32_t idx;
|
uint32_t idx;
|
||||||
|
bool add_prefix;
|
||||||
bool enable;
|
bool enable;
|
||||||
} lookup;
|
} lookup;
|
||||||
|
|
||||||
|
@ -1934,11 +1934,13 @@ static void xmb_draw_ribbon(menu_display_ctx_draw_t *draw)
|
|||||||
|
|
||||||
t += 0.01;
|
t += 0.01;
|
||||||
|
|
||||||
uniform_param.lookup.enable = true;
|
uniform_param.lookup.enable = true;
|
||||||
uniform_param.lookup.idx = VIDEO_SHADER_MENU;
|
uniform_param.lookup.add_prefix = true;
|
||||||
uniform_param.lookup.type = SHADER_PROGRAM_FRAGMENT;
|
uniform_param.lookup.idx = VIDEO_SHADER_MENU;
|
||||||
uniform_param.lookup.ident = "time";
|
uniform_param.lookup.type = SHADER_PROGRAM_VERTEX;
|
||||||
uniform_param.result.f.v0 = t;
|
uniform_param.type = UNIFORM_1F;
|
||||||
|
uniform_param.lookup.ident = "time";
|
||||||
|
uniform_param.result.f.v0 = t;
|
||||||
|
|
||||||
video_shader_driver_ctl(SHADER_CTL_SET_PARAMETER, &uniform_param);
|
video_shader_driver_ctl(SHADER_CTL_SET_PARAMETER, &uniform_param);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user