You shouldn't run UpdateWorld and RenderWorld in the loop, as I only measured the speed of the commands, not the update/render time. And you shouldn't use BlitzMax, because it lacks the DLL interface which was supposed to be measured.
Here's my code:
#include "engine.h"
#include "Application.h"
TEntity e;
TVec3 v;
TVec4 v4;
TVec16 v16;
void test1(void)
{
//1 char s[16384]="";
//1 SetEntityUserData(e,(BP)s);
//2 TBuffer b=BackBuffer();
for(int i=0;i<10000;i++)
{
MoveEntity(e,v);
//PositionEntity(e,v);
//FreeEntity(e);
}
}
int main()
{
double t1,t2,tt;
Application app;
app.Create();
RegisterAbstractPath("c:/program files/leadwerks engine sdk");
Graphics(640,480);
CreateFramework();
v=Vec3(0,0,0);
v4=Vec4(1,1,1,1);
v16=Vec16();
e=CreateCube();
int tti=0;
double ttt=0;
double ttx;
while(!KeyHit())
{
t1=clock();
test1();
t2=clock();
tti++;
tt=(t2-t1)/CLOCKS_PER_SEC;
ttt+=tt;
ttx=ttt/tti;
printf("tt=%f, ttx=%f\n",tt,ttx);
app.Run();
}
app.Free();
}