G1R AngelScript
Scripting reference for the Gothic 1 Remake
Loading...
Searching...
No Matches
BudgetSystem Namespace Reference

Functions

Functions
void RegisterBudgetedTickingForActor (FName WorkloadName, AActor Actor, float32 TickRateSeconds, FBudgetSystemDynamicTickDelegate OnTick=FBudgetSystemDynamicTickDelegate())
bool BeginTickRequest (const UObject Context, FName WorkloadName, FName Key=NAME_None, bool bHighPriority=false)
 Requests time for a ticking update of the given context object. If this returns true, be sure to also call EndTickRequest().
void BumpTickRequestToHighPriority (const UObject Context, FName WorkloadName, FName Key=NAME_None)
 Will bump a (possible existing or incomming) low-priority tick request to be in the high-priority queue.
void EndHighPriorityTickRequest ()
 Must be called after BeginTickRequest had returned true and the work has been done.
void EndTickRequest ()
 Must be called after BeginTickRequest had returned true and the work has been done.
bool BeginHighPriorityTickRequest (const UObject Context, FName WorkloadName, FName Key=NAME_None)
 Requests time for a ticking update of the given context object. If this returns true, be sure to also call EndTickRequest().
void RegisterBudgetedTickingForComponent (FName WorkloadName, UActorComponent Component, float32 TickRateSeconds, FBudgetSystemDynamicTickDelegate OnTick=FBudgetSystemDynamicTickDelegate())
void UnregisterBudgetedTickingForActor (FName WorkloadName, AActor Actor)
void UnregisterBudgetedTickingForComponent (FName WorkloadName, UActorComponent Component)
void UnregisterBudgetedTickingForObject (FName WorkloadName, UObject Object)

Function Documentation

◆ BeginHighPriorityTickRequest()

bool BeginHighPriorityTickRequest ( const UObject Context,
FName WorkloadName,
FName Key = NAME_None )

Requests time for a ticking update of the given context object. If this returns true, be sure to also call EndTickRequest().

Example:

if (BudgetSystem::BeginHighPriorityTickRequest(this, n"MyWorkload"))
{

Do heavy calulations

    BudgetSystem::EndHighPriorityTickRequest();
} 

◆ BeginTickRequest()

bool BeginTickRequest ( const UObject Context,
FName WorkloadName,
FName Key = NAME_None,
bool bHighPriority = false )

Requests time for a ticking update of the given context object. If this returns true, be sure to also call EndTickRequest().

Example:

if (BudgetSystem::BeginTickRequest(this, n"MyWorkload"))
{

Do heavy calulations

    BudgetSystem::EndTickRequest();
} 

◆ BumpTickRequestToHighPriority()

void BumpTickRequestToHighPriority ( const UObject Context,
FName WorkloadName,
FName Key = NAME_None )

Will bump a (possible existing or incomming) low-priority tick request to be in the high-priority queue.

◆ EndHighPriorityTickRequest()

void EndHighPriorityTickRequest ( )

Must be called after BeginTickRequest had returned true and the work has been done.

◆ EndTickRequest()

void EndTickRequest ( )

Must be called after BeginTickRequest had returned true and the work has been done.

◆ RegisterBudgetedTickingForActor()

void RegisterBudgetedTickingForActor ( FName WorkloadName,
AActor Actor,
float32 TickRateSeconds,
FBudgetSystemDynamicTickDelegate OnTick = FBudgetSystemDynamicTickDelegate ( ) )

◆ RegisterBudgetedTickingForComponent()

void RegisterBudgetedTickingForComponent ( FName WorkloadName,
UActorComponent Component,
float32 TickRateSeconds,
FBudgetSystemDynamicTickDelegate OnTick = FBudgetSystemDynamicTickDelegate ( ) )

◆ UnregisterBudgetedTickingForActor()

void UnregisterBudgetedTickingForActor ( FName WorkloadName,
AActor Actor )

◆ UnregisterBudgetedTickingForComponent()

void UnregisterBudgetedTickingForComponent ( FName WorkloadName,
UActorComponent Component )

◆ UnregisterBudgetedTickingForObject()

void UnregisterBudgetedTickingForObject ( FName WorkloadName,
UObject Object )