MinDesiredFrameRate
MinDesiredFrameRate
#Overview
name: MinDesiredFrameRate
The value of this variable can be defined or overridden in .ini config files. 1
.ini config file referencing this setting variable.
It is referenced in 2
C++ source files.
#Summary
#Setting Variables
#References In INI files
Location: <Workspace>/Engine/Config/BaseEngine.ini:304, section: [/Script/Engine.Engine]
- INI Section:
/Script/Engine.Engine
- Raw value:
35.000000
- Is Array:
False
#References in C++ code
#Callsites
This variable is referenced in the following C++ source code:
#Loc: <Workspace>/Engine/Source/Runtime/Engine/Classes/Engine/Engine.h:1678
Scope (from outer to inner):
file
class class UEngine : public UObject , public FExec
Source code excerpt:
/** Minimum desired framerate setting, below this frame rate visual detail may be lowered */
UPROPERTY(config, EditAnywhere, Category=Framerate, meta=(UIMin=0, ClampMin=0, EditCondition="!bUseFixedFrameRate"))
float MinDesiredFrameRate;
private:
/** Default color of selected objects in the level viewport (additive) */
UPROPERTY(globalconfig)
FLinearColor DefaultSelectedMaterialColor;
#Loc: <Workspace>/Engine/Source/Runtime/Engine/Private/GameViewportClient.cpp:1207
Scope (from outer to inner):
file
function void UGameViewportClient::SetDropDetail
Source code excerpt:
const bool bTimeIsManipulated = FApp::IsBenchmarking() || FApp::UseFixedTimeStep() || GEngine->bUseFixedFrameRate;
// Drop detail if framerate is below threshold.
GetWorld()->bDropDetail = FrameRate < FMath::Clamp(GEngine->MinDesiredFrameRate, 1.f, 100.f) && !bTimeIsManipulated;
GetWorld()->bAggressiveLOD = FrameRate < FMath::Clamp(GEngine->MinDesiredFrameRate - 5.f, 1.f, 100.f) && !bTimeIsManipulated;
// this is slick way to be able to do something based on the frametime and whether we are bound by one thing or another
#if 0
// so where we check to see if we are above some threshold and below 150 ms (any thing above that is usually blocking loading of some sort)
// also we don't want to do the auto trace when we are blocking on async loading
if ((0.070 < FrameTime) && (FrameTime < 0.150) && IsAsyncLoading() == false && GetWorld()->bRequestedBlockOnAsyncLoading == false && (GetWorld()->GetTimeSeconds() > 30.0f))