mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2024-10-30 07:30:46 +00:00
examples/layer-shell: premultiply alpha
This commit is contained in:
parent
12d84f8c36
commit
0326ceff90
@ -124,9 +124,10 @@ static void draw(void) {
|
|||||||
|
|
||||||
glViewport(0, 0, width, height);
|
glViewport(0, 0, width, height);
|
||||||
if (buttons) {
|
if (buttons) {
|
||||||
glClearColor(1, 1, 1, alpha);
|
glClearColor(alpha, alpha, alpha, alpha);
|
||||||
} else {
|
} else {
|
||||||
glClearColor(demo.color[0], demo.color[1], demo.color[2], alpha);
|
glClearColor(demo.color[0] * alpha, demo.color[1] * alpha,
|
||||||
|
demo.color[2] * alpha, alpha);
|
||||||
}
|
}
|
||||||
glClear(GL_COLOR_BUFFER_BIT);
|
glClear(GL_COLOR_BUFFER_BIT);
|
||||||
|
|
||||||
@ -151,7 +152,8 @@ static void draw_popup(void) {
|
|||||||
|
|
||||||
eglMakeCurrent(egl_display, popup_egl_surface, popup_egl_surface, egl_context);
|
eglMakeCurrent(egl_display, popup_egl_surface, popup_egl_surface, egl_context);
|
||||||
glViewport(0, 0, popup_width, popup_height);
|
glViewport(0, 0, popup_width, popup_height);
|
||||||
glClearColor(popup_red, 0.5f, 0.5f, popup_alpha);
|
glClearColor(popup_red * popup_alpha, 0.5f * popup_alpha,
|
||||||
|
0.5f * popup_alpha, popup_alpha);
|
||||||
popup_alpha += alpha_mod;
|
popup_alpha += alpha_mod;
|
||||||
if (popup_alpha < 0.01 || popup_alpha >= 1.0f) {
|
if (popup_alpha < 0.01 || popup_alpha >= 1.0f) {
|
||||||
alpha_mod *= -1.0;
|
alpha_mod *= -1.0;
|
||||||
|
Loading…
Reference in New Issue
Block a user