/* Runtime */
double time,
- time_last,
time_delta,
+ frame_delta,
+ time_real,
+ time_real_last,
+ time_rate,
accumulator;
int fixed_iterations;
const char *gamepad_name;
int gamepad_id;
}
-static vg;
+static vg = { .time_rate = 1.0 };
struct vg_thread_info
{
v2_copy( (v2f){ 0.0f, 0.0f }, vg.mouse_wheel );
glfwPollEvents();
- vg.time_last = vg.time;
- vg.time = glfwGetTime();
- vg.time_delta = vg.time-vg.time_last;
+ vg.time_real_last = vg.time_real;
+ vg.time_real = glfwGetTime();
+ vg.frame_delta = vg.time_real-vg.time_real_last;
+
+ /* scaled time */
+ vg.time_delta = vg.frame_delta * vg.time_rate;
+ vg.time += vg.time_delta;
if( vg.is_loaded )
{
+#if 0
glClearColor( 0.0f,sinf(vg.time*20.0)*0.5f+0.5f,0.0f,1.0f );
glClear( GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT );
+#endif
if( !loaded )
{