Pārlūkot izejas kodu

sokol_time.h: replace performance.now() with emscripten_get_now() (fixes #592)

Andre Weissflog 3 gadi atpakaļ
vecāks
revīzija
4162b001c8
1 mainītis faili ar 3 papildinājumiem un 10 dzēšanām
  1. 3 10
      sokol_time.h

+ 3 - 10
sokol_time.h

@@ -77,7 +77,7 @@
 
 
     Windows:        QueryPerformanceFrequency() / QueryPerformanceCounter()
     Windows:        QueryPerformanceFrequency() / QueryPerformanceCounter()
     MacOS/iOS:      mach_absolute_time()
     MacOS/iOS:      mach_absolute_time()
-    emscripten:     performance.now()
+    emscripten:     emscripten_get_now()
     Linux+others:   clock_gettime(CLOCK_MONOTONIC)
     Linux+others:   clock_gettime(CLOCK_MONOTONIC)
 
 
     zlib/libpng license
     zlib/libpng license
@@ -206,12 +206,6 @@ _SOKOL_PRIVATE int64_t int64_muldiv(int64_t value, int64_t numer, int64_t denom)
 }
 }
 #endif
 #endif
 
 
-#if defined(__EMSCRIPTEN__)
-EM_JS(double, stm_js_perfnow, (void), {
-    return performance.now();
-});
-#endif
-
 SOKOL_API_IMPL void stm_setup(void) {
 SOKOL_API_IMPL void stm_setup(void) {
     memset(&_stm, 0, sizeof(_stm));
     memset(&_stm, 0, sizeof(_stm));
     _stm.initialized = 0xABCDABCD;
     _stm.initialized = 0xABCDABCD;
@@ -222,7 +216,7 @@ SOKOL_API_IMPL void stm_setup(void) {
         mach_timebase_info(&_stm.timebase);
         mach_timebase_info(&_stm.timebase);
         _stm.start = mach_absolute_time();
         _stm.start = mach_absolute_time();
     #elif defined(__EMSCRIPTEN__)
     #elif defined(__EMSCRIPTEN__)
-        _stm.start = stm_js_perfnow();
+        _stm.start = emscripten_get_now();
     #else
     #else
         struct timespec ts;
         struct timespec ts;
         clock_gettime(CLOCK_MONOTONIC, &ts);
         clock_gettime(CLOCK_MONOTONIC, &ts);
@@ -241,8 +235,7 @@ SOKOL_API_IMPL uint64_t stm_now(void) {
         const uint64_t mach_now = mach_absolute_time() - _stm.start;
         const uint64_t mach_now = mach_absolute_time() - _stm.start;
         now = (uint64_t) int64_muldiv((int64_t)mach_now, (int64_t)_stm.timebase.numer, (int64_t)_stm.timebase.denom);
         now = (uint64_t) int64_muldiv((int64_t)mach_now, (int64_t)_stm.timebase.numer, (int64_t)_stm.timebase.denom);
     #elif defined(__EMSCRIPTEN__)
     #elif defined(__EMSCRIPTEN__)
-        double js_now = stm_js_perfnow() - _stm.start;
-        SOKOL_ASSERT(js_now >= 0.0);
+        double js_now = emscripten_get_now() - _stm.start;
         now = (uint64_t) (js_now * 1000000.0);
         now = (uint64_t) (js_now * 1000000.0);
     #else
     #else
         struct timespec ts;
         struct timespec ts;