1
0
mirror of https://gitlab.com/OpenMW/openmw.git synced 2025-01-17 01:10:10 +00:00

Env variable to write OSG stats into file

This commit is contained in:
elsid 2020-05-16 13:45:02 +02:00
parent 32ee826a89
commit d7a920a04b
No known key found for this signature in database
GPG Key ID: B845CB9FEE18AB40

View File

@ -1,6 +1,7 @@
#include "engine.hpp"
#include <iomanip>
#include <fstream>
#include <boost/filesystem/fstream.hpp>
@ -738,6 +739,14 @@ void OMW::Engine::go()
mEnvironment.getWindowManager()->executeInConsole(mStartupScript);
}
std::ofstream stats;
if (const auto path = std::getenv("OPENMW_OSG_STATS_FILE"))
{
stats.open(path, std::ios_base::out);
if (!stats)
Log(Debug::Warning) << "Failed to open file for stats: " << path;
}
// Start the main rendering loop
osg::Timer frameTimer;
double simulationTime = 0.0;
@ -768,6 +777,12 @@ void OMW::Engine::go()
simulationTime += dt;
}
if (stats)
{
const auto frameNumber = mViewer->getFrameStamp()->getFrameNumber();
mViewer->getViewerStats()->report(stats, frameNumber);
}
mEnvironment.limitFrameRate(frameTimer.time_s());
}