UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
CatchupFixedRateCustomTimeStep.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
7#include "CatchupFixedRateCustomTimeStep.generated.h"
8
9class UEngine;
10class UObject;
11
21UCLASS(Blueprintable, editinlinenew, meta = (DisplayName = "Catchup Fixed Rate"), MinimalAPI)
23{
25
26public:
27
28 //~ Begin UFixedFrameRateCustomTimeStep interface
29 TIMEMANAGEMENT_API virtual bool Initialize(UEngine* InEngine) override;
30 TIMEMANAGEMENT_API virtual void Shutdown(UEngine* InEngine) override;
31 TIMEMANAGEMENT_API virtual bool UpdateTimeStep(UEngine* InEngine) override;
32 TIMEMANAGEMENT_API virtual ECustomTimeStepSynchronizationState GetSynchronizationState() const override;
33 TIMEMANAGEMENT_API virtual FFrameRate GetFixedFrameRate() const override;
34 //~ End UFixedFrameRateCustomTimeStep interface
35
36 //~ Begin IClockedTimeStep interface
37 TIMEMANAGEMENT_API virtual TOptional<double> GetUnderlyingClockTime_AnyThread() override;
38 //~ End IClockedTimeStep interface
39
40private:
41
43 void BlockUntilPlatformSeconds(const double TargetPlatformSeconds) const;
44
49 double CalculateDeltaSeconds(const double CurrentSimulationSeconds, const double CurrentPlatformSeconds) const;
50
51public:
52
54 UPROPERTY(EditAnywhere, Category = "Timing")
56
58 UPROPERTY(EditAnywhere, Category = "Timing", meta = (ClampMin = "2"))
59 double MaxCatchupSeconds = 16;
60
62
63 /* Keeps track of our simulation time, which is intentionally kept close to platform time */
64 double SimulationSeconds = 0;
65
66};
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
ECustomTimeStepSynchronizationState
Definition EngineCustomTimeStep.h:15
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define GENERATED_UCLASS_BODY(...)
Definition ObjectMacros.h:768
#define UCLASS(...)
Definition ObjectMacros.h:776
Definition IClockedTimeStep.h:19
Definition CatchupFixedRateCustomTimeStep.h:23
Definition Engine.h:711
Definition FixedFrameRateCustomTimeStep.h:23
Definition Object.h:95
Definition FrameRate.h:21
Definition Optional.h:131