diff options
| author | realtradam <[email protected]> | 2023-05-30 03:51:43 -0400 |
|---|---|---|
| committer | realtradam <[email protected]> | 2023-05-30 03:51:43 -0400 |
| commit | 40a78e6865794db16988bf92a99f69c88c152c8a (patch) | |
| tree | 1a8b0e7d36dee223eddfa1757d1510ec426dbcd8 /src | |
| parent | b585f29788059e9040c9c5e3e32c341aa3881d84 (diff) | |
| download | RodeoKit-40a78e6865794db16988bf92a99f69c88c152c8a.tar.gz RodeoKit-40a78e6865794db16988bf92a99f69c88c152c8a.zip | |
make frametime constant on web platform + other stuff
Diffstat (limited to 'src')
| -rw-r--r-- | src/collision/rodeo_collision.c | 15 | ||||
| -rw-r--r-- | src/rodeo.c | 12 |
2 files changed, 22 insertions, 5 deletions
diff --git a/src/collision/rodeo_collision.c b/src/collision/rodeo_collision.c index 8e45cf7..95fc75c 100644 --- a/src/collision/rodeo_collision.c +++ b/src/collision/rodeo_collision.c @@ -57,15 +57,20 @@ rodeo_collision_2d_world_item_destroy_by_id( world_id id ) { - rodeo_collision_2d_world_item_t* item = rodeo_collision_2d_world_item_get_by_id(id); + rodeo_collision_2d_world_item_t* item = rodeo_collision_2d_world_item_get_by_id + (id); rodeo_collision_2d_world_item_destroy(item); -} +} rodeo_collision_2d_world_item_t* -rodeo_collision_2d_world_item_get_by_id( - world_id id -) +rodeo_collision_2d_world_item_get_by_id( + world_id id +) { + if(id.world == NULL) + { + return NULL; + } c_foreach(i, cvec_collision_2d_world_item, *id.world) { if (i.ref->id.id == id.id) { return i.ref; diff --git a/src/rodeo.c b/src/rodeo.c index c43b9a8..afeefba 100644 --- a/src/rodeo.c +++ b/src/rodeo.c @@ -338,7 +338,19 @@ rodeo_frame_end(void) #endif state.frame_count += 1; state.end_frame = SDL_GetPerformanceCounter(); + +#ifndef __EMSCRIPTEN__ state.frame_time = ((float)(state.end_frame - state.start_frame) * 1000.0f / (float)SDL_GetPerformanceFrequency()); +#else + state.frame_time = (1.0f/60.f) * 1000; //((float)(state.end_frame - state.start_frame) * 1000.0f / (float)SDL_GetPerformanceFrequency()); +#endif + + + /* + float minimum_fps = 20.0f; + float temp_frame_time = ((float)(state.end_frame - state.start_frame) * 1000.0f / (float)SDL_GetPerformanceFrequency()); + state.frame_time = (temp_frame_time < ((1.0f/minimum_fps) * 1000)) ? temp_frame_time : ((1.0f / minimum_fps) * 1000); + */ } void |
