From e76348cc4b7a6ea768d3782bc3ed53fd73590ffa Mon Sep 17 00:00:00 2001 From: helixhorned Date: Sat, 13 Jul 2013 21:04:47 +0000 Subject: [PATCH] In DNCOORDS display, show execution time in ms for all actors (G_MoveActors). Smoothed using an exponential moving average... with a time constant of 1 sec if I didn't miscalculate things. Also, split BYTEVERSION_JF into Lunatic and non-Lua. git-svn-id: https://svn.eduke32.com/eduke32@3947 1a8010ca-5511-0410-912e-c29ae57300e0 --- polymer/eduke32/source/actors.c | 9 ++++++++- polymer/eduke32/source/duke3d.h | 8 +++++++- polymer/eduke32/source/game.c | 4 ++++ 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/polymer/eduke32/source/actors.c b/polymer/eduke32/source/actors.c index 3bae9ebe2..e3c7e45eb 100644 --- a/polymer/eduke32/source/actors.c +++ b/polymer/eduke32/source/actors.c @@ -8251,6 +8251,7 @@ int32_t A_CheckSwitchTile(int32_t i) void G_MoveWorld(void) { + extern double g_moveActorsTime; int32_t k = MAXSTATUS-1; do @@ -8285,7 +8286,13 @@ void G_MoveWorld(void) G_MoveFallers(); //ST 12 G_MoveMisc(); //ST 5 - G_MoveActors(); //ST 1 + { + double t = gethiticks(); + + G_MoveActors(); //ST 1 + + g_moveActorsTime = (1-0.033)*g_moveActorsTime + 0.033*(gethiticks()-t); + } // XXX: Has to be before effectors, in particular movers? // TODO: lights in moving sectors ought to be interpolated diff --git a/polymer/eduke32/source/duke3d.h b/polymer/eduke32/source/duke3d.h index dfb038e3a..b3f219796 100644 --- a/polymer/eduke32/source/duke3d.h +++ b/polymer/eduke32/source/duke3d.h @@ -57,7 +57,13 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #define VOLUMEONE (g_Shareware == 1) // increase by 3, because atomic GRP adds 1, and Shareware adds 2 -#define BYTEVERSION_JF 279 +#ifdef LUNATIC +// Lunatic +# define BYTEVERSION_JF 279 +#else +// Non-Lua build +# define BYTEVERSION_JF 279 +#endif #define BYTEVERSION_13 27 #define BYTEVERSION_14 116 diff --git a/polymer/eduke32/source/game.c b/polymer/eduke32/source/game.c index a1924b052..955ac9c91 100644 --- a/polymer/eduke32/source/game.c +++ b/polymer/eduke32/source/game.c @@ -109,6 +109,8 @@ static const char *CommandName = NULL; int32_t g_forceWeaponChoice = 0; int32_t g_fakeMultiMode = 0; +double g_moveActorsTime = 0; // in ms, smoothed + char boardfilename[BMAX_PATH] = {0}, currentboardfilename[BMAX_PATH] = {0}; static char g_rootDir[BMAX_PATH]; @@ -2542,6 +2544,8 @@ static void G_PrintCoords(int32_t snum) y += 7; Bsprintf(tempbuf,"VR=%.03f YX=%.03f",(double)dr_viewingrange/65536.0,(double)dr_yxaspect/65536.0); printext256(x,y+72,31,-1,tempbuf,0); + Bsprintf(tempbuf, "MOVEACTORS [ms]= %.3e", g_moveActorsTime); + printext256(x,y+81,31,-1,tempbuf,0); }