obs-transitions: Nonlinear SRGB, slide
Switch back for now. Maybe we want CIELUV, but that's expensive.
This commit is contained in:
parent
62bd3854f8
commit
8c826f5bc3
@ -93,26 +93,14 @@ static void slide_callback(void *data, gs_texture_t *a, gs_texture_t *b,
|
||||
vec2_mulf(&tex_a_dir, &tex_a_dir, t);
|
||||
vec2_mulf(&tex_b_dir, &tex_b_dir, 1.0f - t);
|
||||
|
||||
const bool linear_srgb = gs_get_linear_srgb();
|
||||
|
||||
const bool previous = gs_framebuffer_srgb_enabled();
|
||||
gs_enable_framebuffer_srgb(linear_srgb);
|
||||
|
||||
if (linear_srgb) {
|
||||
gs_effect_set_texture_srgb(slide->a_param, a);
|
||||
gs_effect_set_texture_srgb(slide->b_param, b);
|
||||
} else {
|
||||
gs_effect_set_texture(slide->a_param, a);
|
||||
gs_effect_set_texture(slide->b_param, b);
|
||||
}
|
||||
gs_effect_set_texture(slide->a_param, a);
|
||||
gs_effect_set_texture(slide->b_param, b);
|
||||
|
||||
gs_effect_set_vec2(slide->tex_a_dir_param, &tex_a_dir);
|
||||
gs_effect_set_vec2(slide->tex_b_dir_param, &tex_b_dir);
|
||||
|
||||
while (gs_effect_loop(slide->effect, "Slide"))
|
||||
gs_draw_sprite(NULL, 0, cx, cy);
|
||||
|
||||
gs_enable_framebuffer_srgb(previous);
|
||||
}
|
||||
|
||||
void slide_video_render(void *data, gs_effect_t *effect)
|
||||
|
Loading…
x
Reference in New Issue
Block a user