#include "game/terrain.h" #include "gfx/camera.h" #include "gfx/frustum.h" #include "gfx/gl/sceneShader.h" #include "testMainWindow.h" #include namespace { const TestMainWindowAppBase window; void terrainMeshgen(benchmark::State & state) { Terrain terrain {GeoData::loadFromAsciiGrid(FIXTURESDIR "height/SD19.asc")}; for (auto _ : state) { terrain.generateMeshes(); } } void terrainRender(benchmark::State & state) { Terrain terrain {GeoData::loadFromAsciiGrid(FIXTURESDIR "height/SD19.asc")}; SceneShader shader; Camera cam {terrain.getExtents().min + GlobalPosition3D {0, 0, 10000}, 45.F, 1.F, 1, 10000}; cam.setForward(::north + ::east); for (auto _ : state) { terrain.render(shader, cam); } } } BENCHMARK(terrainMeshgen); BENCHMARK(terrainRender); BENCHMARK_MAIN();