68 const std::string&
sessionDir()
const {
return sessionDir_; }
72 bool recording_ =
false;
73 std::string sessionDir_;
74 double startTime_ = 0.0;
75 std::vector<FrameState> frames_;
77 void writeCSV()
const;
Records per-frame state to a timestamped directory on disk.
Definition FrameRecorder.hpp:56
bool isRecording() const
Definition FrameRecorder.hpp:67
const std::string & sessionDir() const
Definition FrameRecorder.hpp:68
void startRecording(const std::string &baseDir)
Open a new session directory inside baseDir.
Definition FrameRecorder.cpp:46
double startTimeSecs() const
Definition FrameRecorder.hpp:69
void stopRecording()
Flush CSV to disk and close the session.
Definition FrameRecorder.cpp:65
void recordFrame(const FrameState &state)
Append one frame's state. No-op when not recording.
Definition FrameRecorder.cpp:75
Per-frame snapshot written to the recording CSV.
Definition FrameRecorder.hpp:20
glm::vec3 physVel
vel.value — current velocity.
Definition FrameRecorder.hpp:27
int tickCount
Physics-tick counter at this render frame.
Definition FrameRecorder.hpp:23
std::string screenshotPath
Absolute PNG path, or empty if unavailable.
Definition FrameRecorder.hpp:42
glm::vec3 renderEye
Definition FrameRecorder.hpp:34
glm::vec2 cubeScreen
Cube centre (0, 32, 400).
Definition FrameRecorder.hpp:39
glm::vec3 physPos
pos.value — what physics says.
Definition FrameRecorder.hpp:26
float pitch
input.pitch (accumulated mouse Y).
Definition FrameRecorder.hpp:31
double timestamp
Seconds since recording started.
Definition FrameRecorder.hpp:22
float yaw
input.yaw (accumulated mouse X).
Definition FrameRecorder.hpp:30
float renderYaw
Definition FrameRecorder.hpp:35
float renderPitch
Definition FrameRecorder.hpp:36
uint64_t frameNumber
Definition FrameRecorder.hpp:21
glm::vec2 modelScreen
Wraith model centre (200, 0, 400).
Definition FrameRecorder.hpp:40