mirror of
https://github.com/rwengine/openrw.git
synced 2024-11-07 11:22:45 +01:00
495c831972
It lets complier to make extra optimization. See: https://gcc.godbolt.org/#compilers:!((compiler:g6,options:'-O2+-Wall++- xc%2B%2B+- std%3Dc%2B%2B11',sourcez:MYGwhgzhAECC0G8BQAHArgIxAS2ALiWiOgDdsAnAFzTBFIHtsATaAMwAoBKaAXmgAYA3EgC%2BwpKEgwAQtDzR0WXHESpMOfIWIlGLDt1bYAdrWj0SAU3LlmF4WKQTwUaAGE5C9cvjJFGgsQMzGxcZpbWtvbiOsGs9PTs0gBk0BjcyIEYAHT69o4xLBhg5OyuKcDpWkTAOVz2QAA%3D%3D)),filterAsm: (commentOnly:!t,directives:!t,intel:!t,labels:!t),version:3
39 lines
763 B
C++
39 lines
763 B
C++
#ifndef _RWGAME_BENCHMARKSTATE_HPP_
|
|
#define _RWGAME_BENCHMARKSTATE_HPP_
|
|
|
|
#include "State.hpp"
|
|
|
|
class BenchmarkState final : public State {
|
|
struct TrackPoint {
|
|
float time;
|
|
glm::vec3 position{};
|
|
glm::quat angle{1.0f,0.0f,0.0f,0.0f};
|
|
};
|
|
std::vector<TrackPoint> track;
|
|
|
|
ViewCamera trackCam;
|
|
|
|
std::string benchfile;
|
|
|
|
float benchmarkTime{0.f};
|
|
float duration{0.f};
|
|
uint32_t frameCounter{0};
|
|
|
|
public:
|
|
BenchmarkState(RWGame* game, const std::string& benchfile);
|
|
|
|
void enter() override;
|
|
|
|
void exit() override;
|
|
|
|
void tick(float dt) override;
|
|
|
|
void draw(GameRenderer* r) override;
|
|
|
|
void handleEvent(const SDL_Event& event) override;
|
|
|
|
const ViewCamera& getCamera(float) override;
|
|
};
|
|
|
|
#endif
|