(Menu) Delta timing
This commit is contained in:
parent
8cdaccdb9e
commit
24f7acb93c
|
@ -1136,7 +1136,7 @@ static void xmb_frame(void)
|
||||||
if (!gl)
|
if (!gl)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
menu_animation_update(menu->animation, 0.002);
|
menu_animation_update(menu->animation, menu->dt / 7500000.0);
|
||||||
|
|
||||||
glViewport(0, 0, gl->win_width, gl->win_height);
|
glViewport(0, 0, gl->win_width, gl->win_height);
|
||||||
|
|
||||||
|
|
|
@ -21,6 +21,7 @@
|
||||||
#include "../dynamic.h"
|
#include "../dynamic.h"
|
||||||
#include "../frontend/frontend.h"
|
#include "../frontend/frontend.h"
|
||||||
#include "../../retroarch.h"
|
#include "../../retroarch.h"
|
||||||
|
#include "../../performance.h"
|
||||||
#include <file/file_path.h>
|
#include <file/file_path.h>
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -371,6 +372,12 @@ int menu_iterate(retro_input_t input,
|
||||||
int32_t ret = 0;
|
int32_t ret = 0;
|
||||||
unsigned action = menu_input_frame(input, trigger_input);
|
unsigned action = menu_input_frame(input, trigger_input);
|
||||||
|
|
||||||
|
menu_handle_t *menu = menu_driver_resolve();
|
||||||
|
|
||||||
|
menu->cur_time = rarch_get_time_usec();
|
||||||
|
menu->dt = menu->cur_time - menu->old_time;
|
||||||
|
menu->old_time = menu->cur_time;
|
||||||
|
|
||||||
if (driver.menu_ctx)
|
if (driver.menu_ctx)
|
||||||
{
|
{
|
||||||
if (driver.menu_ctx->set_texture)
|
if (driver.menu_ctx->set_texture)
|
||||||
|
|
|
@ -97,11 +97,16 @@ typedef struct
|
||||||
{
|
{
|
||||||
void *userdata;
|
void *userdata;
|
||||||
|
|
||||||
|
/* Delta timing */
|
||||||
|
float dt;
|
||||||
|
float cur_time;
|
||||||
|
float old_time;
|
||||||
|
|
||||||
/* Used for key repeat */
|
/* Used for key repeat */
|
||||||
struct
|
struct
|
||||||
{
|
{
|
||||||
unsigned timer;
|
float timer;
|
||||||
unsigned count;
|
float count;
|
||||||
} delay;
|
} delay;
|
||||||
|
|
||||||
size_t begin;
|
size_t begin;
|
||||||
|
|
|
@ -497,7 +497,7 @@ unsigned menu_input_frame(retro_input_t input, retro_input_t trigger_input)
|
||||||
|
|
||||||
menu->mouse.enable = g_settings.menu.mouse_enable;
|
menu->mouse.enable = g_settings.menu.mouse_enable;
|
||||||
|
|
||||||
menu->delay.count++;
|
menu->delay.count += menu->dt / 10000.0;
|
||||||
|
|
||||||
if (driver.block_input)
|
if (driver.block_input)
|
||||||
trigger_input = 0;
|
trigger_input = 0;
|
||||||
|
|
Loading…
Reference in New Issue