(Menu) Use a scale factor, fix shader color

This commit is contained in:
Jean-André Santoni 2014-10-12 19:22:01 +02:00
parent d15d7c9e8f
commit 16c9cf2698
3 changed files with 47 additions and 105 deletions

View File

@ -150,6 +150,8 @@ static void glui_render_background(bool force_transparency)
glEnable(GL_BLEND);
glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
glDisable(GL_BLEND);
gl->coords.color = gl->white_color_ptr;
}
static void glui_get_message(const char *message)

View File

@ -199,6 +199,8 @@ void lakka_draw_background(bool force_transparency)
glEnable(GL_BLEND);
glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
glDisable(GL_BLEND);
gl->coords.color = gl->white_color_ptr;
}
static void lakka_draw_icon(lakka_handle_t *lakka,
@ -1168,77 +1170,45 @@ static void *lakka_init(void)
lakka->active_item_factor = 2.75;
lakka->under_item_offset = 4.0;
float scale_factor;
if (gl->win_width >= 3840)
{
lakka->icon_size = 256;
lakka->hspacing = 400;
lakka->vspacing = 128;
lakka->margin_left = 672.0;
lakka->margin_top = 512;
lakka->title_margin_left = 20.0;
lakka->title_margin_top = 50.0;
lakka->label_margin_left = 192;
lakka->label_margin_top = 15;
lakka->setting_margin_left = 1200;
scale_factor = 2.0;
strlcpy(lakka->icon_dir, "256", sizeof(lakka->icon_dir));
}
else if (gl->win_width >= 2560)
{
lakka->icon_size = 192;
lakka->hspacing = 300;
lakka->vspacing = 96;
lakka->margin_left = 448.0;
lakka->margin_top = 384;
lakka->title_margin_left = 15.0;
lakka->title_margin_top = 40.0;
lakka->label_margin_left = 144;
lakka->label_margin_top = 11.0;
lakka->setting_margin_left = 800;
scale_factor = 1.5;
strlcpy(lakka->icon_dir, "192", sizeof(lakka->icon_dir));
}
else if (gl->win_width >= 1920)
{
lakka->icon_size = 128;
lakka->hspacing = 200.0;
lakka->vspacing = 64.0;
lakka->margin_left = 336.0;
lakka->margin_top = 256;
lakka->title_margin_left = 15.0;
lakka->title_margin_top = 35.0;
lakka->label_margin_left = 85;
lakka->label_margin_top = 8.0;
lakka->setting_margin_left = 600;
scale_factor = 1.0;
strlcpy(lakka->icon_dir, "128", sizeof(lakka->icon_dir));
}
else if (gl->win_width <= 640)
{
lakka->icon_size = 64;
lakka->hspacing = 100.0;
lakka->vspacing = 32.0;
lakka->margin_left = 60.0;
lakka->margin_top = 128.0;
lakka->title_margin_left = 10.0;
lakka->title_margin_top = 24.0;
lakka->label_margin_left = 48;
lakka->label_margin_top = 6.0;
lakka->setting_margin_left = 250;
scale_factor = 0.5;
strlcpy(lakka->icon_dir, "64", sizeof(lakka->icon_dir));
}
else
{
lakka->icon_size = 96;
lakka->hspacing = 150.0;
lakka->vspacing = 48.0;
lakka->margin_left = 224;
lakka->margin_top = 192;
lakka->title_margin_left = 15.0;
lakka->title_margin_top = 30.0;
lakka->label_margin_left = 64;
lakka->label_margin_top = 6.0;
lakka->setting_margin_left = 400;
scale_factor = 3.0f/4.0f;
strlcpy(lakka->icon_dir, "96", sizeof(lakka->icon_dir));
}
lakka->icon_size = 128.0 * scale_factor;
lakka->hspacing = 200.0 * scale_factor;
lakka->vspacing = 64.0 * scale_factor;
lakka->margin_left = 336.0 * scale_factor;
lakka->margin_top = 256 * scale_factor;
lakka->title_margin_left = 15.0 * scale_factor;
lakka->title_margin_top = 20.0 * scale_factor + g_settings.video.font_size/3.0;
lakka->label_margin_left = 85.0 * scale_factor;
lakka->label_margin_top = g_settings.video.font_size/3.0;
lakka->setting_margin_left = 600.0 * scale_factor;
lakka->depth = 0;
lakka->menu_active_category = 0;
lakka->all_categories_x = 0;

View File

@ -300,6 +300,8 @@ static void xmb_render_background(bool force_transparency)
glEnable(GL_BLEND);
glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
glDisable(GL_BLEND);
gl->coords.color = gl->white_color_ptr;
}
static void xmb_get_message(const char *message)
@ -450,7 +452,7 @@ static void xmb_frame(void)
snprintf(title_msg, sizeof(title_msg), "%s - %s %s", PACKAGE_VERSION,
core_name, core_version);
xmb_draw_text(title_msg, xmb->title_margin_left,
gl->win_height - xmb->title_margin_top, 1, 1);
gl->win_height - xmb->title_margin_top/2, 1, 1);
end = file_list_get_size(driver.menu->selection_buf);
@ -574,10 +576,10 @@ static void *xmb_init(void)
if (!xmb)
return NULL;
xmb->x = 0;
xmb->alpha = 1.0f;
xmb->depth = 1;
xmb->old_depth = 1;
xmb->x = 0;
xmb->alpha = 1.0f;
xmb->depth = 1;
xmb->old_depth = 1;
xmb->c_active_zoom = 1.0;
xmb->c_passive_zoom = 0.5;
@ -594,77 +596,45 @@ static void *xmb_init(void)
xmb->active_item_factor = 2.75;
xmb->under_item_offset = 4.0;
float scale_factor;
if (gl->win_width >= 3840)
{
xmb->icon_size = 256;
xmb->hspacing = 400;
xmb->vspacing = 128;
xmb->margin_left = 672.0;
xmb->margin_top = 512;
xmb->title_margin_left = 20.0;
xmb->title_margin_top = 50.0;
xmb->label_margin_left = 192;
xmb->label_margin_top = 15;
xmb->setting_margin_left = 1200;
scale_factor = 2.0;
strlcpy(xmb->icon_dir, "256", sizeof(xmb->icon_dir));
}
else if (gl->win_width >= 2560)
{
xmb->icon_size = 192;
xmb->hspacing = 300;
xmb->vspacing = 96;
xmb->margin_left = 448.0;
xmb->margin_top = 384;
xmb->title_margin_left = 15.0;
xmb->title_margin_top = 40.0;
xmb->label_margin_left = 144;
xmb->label_margin_top = 11.0;
xmb->setting_margin_left = 800;
scale_factor = 1.5;
strlcpy(xmb->icon_dir, "192", sizeof(xmb->icon_dir));
}
else if (gl->win_width >= 1920)
{
xmb->icon_size = 128;
xmb->hspacing = 200.0;
xmb->vspacing = 64.0;
xmb->margin_left = 336.0;
xmb->margin_top = 256;
xmb->title_margin_left = 15.0;
xmb->title_margin_top = 35.0;
xmb->label_margin_left = 85;
xmb->label_margin_top = 8.0;
xmb->setting_margin_left = 600;
scale_factor = 1.0;
strlcpy(xmb->icon_dir, "128", sizeof(xmb->icon_dir));
}
else if (gl->win_width <= 640)
{
xmb->icon_size = 64;
xmb->hspacing = 100.0;
xmb->vspacing = 32.0;
xmb->margin_left = 60.0;
xmb->margin_top = 128.0;
xmb->title_margin_left = 10.0;
xmb->title_margin_top = 24.0;
xmb->label_margin_left = 48;
xmb->label_margin_top = 6.0;
xmb->setting_margin_left = 250;
scale_factor = 0.5;
strlcpy(xmb->icon_dir, "64", sizeof(xmb->icon_dir));
}
else
{
xmb->icon_size = 96;
xmb->hspacing = 150.0;
xmb->vspacing = 48.0;
xmb->margin_left = 224;
xmb->margin_top = 192;
xmb->title_margin_left = 15.0;
xmb->title_margin_top = 30.0;
xmb->label_margin_left = 64;
xmb->label_margin_top = 6.0;
xmb->setting_margin_left = 400;
scale_factor = 3.0f/4.0f;
strlcpy(xmb->icon_dir, "96", sizeof(xmb->icon_dir));
}
xmb->icon_size = 128.0 * scale_factor;
xmb->hspacing = 200.0 * scale_factor;
xmb->vspacing = 64.0 * scale_factor;
xmb->margin_left = 336.0 * scale_factor;
xmb->margin_top = 256 * scale_factor;
xmb->title_margin_left = 15.0 * scale_factor;
xmb->title_margin_top = 20.0 * scale_factor + g_settings.video.font_size/3.0;
xmb->label_margin_left = 85.0 * scale_factor;
xmb->label_margin_top = g_settings.video.font_size/3.0;
xmb->setting_margin_left = 600.0 * scale_factor;
xmb_init_core_info(menu);
return menu;