mirror of
https://github.com/Dingo-Shenanigans/ReSkate.git
synced 2026-10-25 13:04:42 +01:00
Replay drafts work, and the profiler lists the slowest frames
Replay drafts: the replay editor saves a draft as a pin on the recording and a thumbnail in the game's media catalogue, which the Drafts screen lists from. The game only makes that catalogue for a user signed in to its backend, so under ReSkate a saved draft had nowhere to be listed. ReSkate now registers the catalogue service and signs in a local user, both with the game's own functions, so the game's Drafts screen works as it was built: save, list, open and delete within a session. A draft's footage stays in the recorder's memory, as it does in the game, and does not outlive the session. Thumbnails of earlier sessions' drafts are removed from the catalogue folder at startup; only folders whose manifest is a replay draft's are touched. Profiler: `perf sample` on the client thread now reports the slowest client frames ahead of the function table, each with what it spent its time in. An average over thirty seconds hides a single long frame.
This commit is contained in:
1 parent
63c9e39c2a
commit
b9ffd72409
6 files changed
+323
-2
No files matched your search
@@ -6,6 +6,7 @@
|
||||
#include "Engine/Core/Log/logging.h"
|
||||
#include "Engine/Core/Profiling/profiler.h"
|
||||
#include "Extension/Settings/job_spin.h"
|
||||
#include "Extension/Settings/replay_drafts.h"
|
||||
#include "Engine/Game/World/client_state.h"
|
||||
#include "Extension/HallOfMeat/hall_of_meat.h"
|
||||
#include "Extension/RoadRash/road_rash.h"
|
||||
@@ -798,6 +799,7 @@ void update_model(std::uintptr_t client, TickState& frame) {
|
||||
const auto& current_level = description.lm_level.empty() ? description.level : description.lm_level;
|
||||
dingosdk::live_mods::set_current_level(current_level);
|
||||
dingosdk::hall_of_meat::set_level(current_level);
|
||||
dingosdk::replay_drafts::on_client_tick(r.base, state);
|
||||
// A live mod apply hands over the destinations its mods declare. A map
|
||||
// being played that is no longer among them (its mod disabled or deleted)
|
||||
// cannot stay loaded: the player goes to San Van.
|
||||
|
||||
Reference in new issue
Block a user