mirror of
https://github.com/libretro/RetroArch.git
synced 2025-04-02 10:51:52 -04:00
Move menu->dt, menu->cur_time and menu->old_time to menu_animation_t
This commit is contained in:
parent
42e28f4125
commit
70cf98eadc
6 changed files with 20 additions and 18 deletions
|
@ -239,7 +239,8 @@ static void glui_render(void)
|
|||
|
||||
glui = (glui_handle_t*)menu->userdata;
|
||||
|
||||
menu_animation_update(menu->animation, menu->dt / IDEAL_DT);
|
||||
menu_animation_update(menu->animation,
|
||||
menu->animation->delta_time / IDEAL_DT);
|
||||
|
||||
/* TODO/FIXME - we don't use framebuffer at all
|
||||
* for GLUI, we should refactor this dependency
|
||||
|
|
|
@ -1241,7 +1241,7 @@ static void xmb_render(void)
|
|||
if (!xmb)
|
||||
return;
|
||||
|
||||
menu_animation_update(menu->animation, menu->dt / IDEAL_DT);
|
||||
menu_animation_update(menu->animation, menu->animation->delta_time / IDEAL_DT);
|
||||
|
||||
current = nav->selection_ptr;
|
||||
end = menu_list_get_size(menu_list);
|
||||
|
|
20
menu/menu.c
20
menu/menu.c
|
@ -302,20 +302,20 @@ int menu_iterate(retro_input_t input,
|
|||
menu_input_t *menu_input = menu_input_get_ptr();
|
||||
settings_t *settings = config_get_ptr();
|
||||
|
||||
menu_input->joypad.state = menu_input_frame(input, trigger_input);
|
||||
menu->cur_time = rarch_get_time_usec();
|
||||
menu->dt = menu->cur_time - menu->old_time;
|
||||
menu_input->joypad.state = menu_input_frame(input, trigger_input);
|
||||
menu->animation->cur_time = rarch_get_time_usec();
|
||||
menu->animation->delta_time = menu->animation->cur_time - menu->animation->old_time;
|
||||
|
||||
if (menu->dt >= IDEAL_DT * 4)
|
||||
menu->dt = IDEAL_DT * 4;
|
||||
if (menu->dt <= IDEAL_DT / 4)
|
||||
menu->dt = IDEAL_DT / 4;
|
||||
menu->old_time = menu->cur_time;
|
||||
if (menu->animation->delta_time >= IDEAL_DT * 4)
|
||||
menu->animation->delta_time = IDEAL_DT * 4;
|
||||
if (menu->animation->delta_time <= IDEAL_DT / 4)
|
||||
menu->animation->delta_time = IDEAL_DT / 4;
|
||||
menu->animation->old_time = menu->animation->cur_time;
|
||||
|
||||
if (menu->cur_time - last_clock_update > 1000000 && settings->menu.timedate_enable)
|
||||
if (menu->animation->cur_time - last_clock_update > 1000000 && settings->menu.timedate_enable)
|
||||
{
|
||||
menu->label.is_updated = true;
|
||||
last_clock_update = menu->cur_time;
|
||||
last_clock_update = menu->animation->cur_time;
|
||||
}
|
||||
|
||||
action = menu_input->joypad.state;
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <boolean.h>
|
||||
#include "../libretro.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -47,6 +48,11 @@ typedef struct menu_animation
|
|||
size_t capacity;
|
||||
size_t size;
|
||||
bool is_active;
|
||||
|
||||
/* Delta timing */
|
||||
float delta_time;
|
||||
retro_time_t cur_time;
|
||||
retro_time_t old_time;
|
||||
} menu_animation_t;
|
||||
|
||||
enum menu_animation_easing_type
|
||||
|
|
|
@ -47,11 +47,6 @@ typedef struct
|
|||
{
|
||||
void *userdata;
|
||||
|
||||
/* Delta timing */
|
||||
float dt;
|
||||
retro_time_t cur_time;
|
||||
retro_time_t old_time;
|
||||
|
||||
/* Used for key repeat */
|
||||
struct
|
||||
{
|
||||
|
|
|
@ -1032,7 +1032,7 @@ unsigned menu_input_frame(retro_input_t input, retro_input_t trigger_input)
|
|||
nav->scroll.acceleration = 0;
|
||||
}
|
||||
|
||||
menu->delay.count += menu->dt / IDEAL_DT;
|
||||
menu->delay.count += menu->animation->delta_time / IDEAL_DT;
|
||||
|
||||
if (driver->block_input)
|
||||
trigger_input = 0;
|
||||
|
|
Loading…
Add table
Reference in a new issue