Blamite Game Engine - blam!  00296.01.12.21.0102.blamite
The core library for the Blamite Game Engine.
Blam::Tick Namespace Reference

Namespace containing components relating to the game tick. More...

Functions

BLAM void PrepareTick ()
 Prepares required data for the tick loop. More...
 
BLAM void TickThread ()
 Function containing the tick loop. More...
 
BLAM uint64_t getCurrentTickRate ()
 Retrieves the current tick rate. More...
 
BLAM int MaxTicksPerSecond ()
 Retrieves the maximum number of ticks per second. More...
 
BLAM void ResumeTickLoop ()
 Resumes the tick loop if it has been paused. More...
 
BLAM void PauseTickLoop ()
 Temporarily pauses the tick loop. More...
 
BLAM void EndTickLoop ()
 Terminates the tick loop. More...
 
BLAM bool HasTickStopped ()
 Determines whether or not the tick loop has finished terminating. More...
 
BLAM bool IsTickLoopRunning ()
 Determines whether or not the tick loop is currently running - NOT whether it is paused. More...
 
BLAM void SetCurrentTickRate (int tickrate)
 Stops the game tick, updates the tick rate, and re-starts the game tick. More...
 

Detailed Description

Namespace containing components relating to the game tick.

Function Documentation

◆ EndTickLoop()

void Blam::Tick::EndTickLoop ( )

Terminates the tick loop.

This should only be called at shutdown, as this will cause the tick thread to conclude as well.

◆ getCurrentTickRate()

uint64_t Blam::Tick::getCurrentTickRate ( )

Retrieves the current tick rate.

Can be used to measure any potential performance losses.

Todo:
Calculate average TPS from past minute, as it currently just returns the ticks this second.
Returns
The average TPS (see todo message)

◆ HasTickStopped()

bool Blam::Tick::HasTickStopped ( )

Determines whether or not the tick loop has finished terminating.

Used to prevent premature engine shutdown while in the middle of proccessing a tick.

Returns
true if the tick loop has ended. Otherwise returns false.

◆ IsTickLoopRunning()

bool Blam::Tick::IsTickLoopRunning ( )

Determines whether or not the tick loop is currently running - NOT whether it is paused.

Returns
true if the tick loop is running, false if it has been stopped (or not yet started).

◆ MaxTicksPerSecond()

int Blam::Tick::MaxTicksPerSecond ( )

Retrieves the maximum number of ticks per second.

Returns
The maximum TPS.

◆ PauseTickLoop()

void Blam::Tick::PauseTickLoop ( )

Temporarily pauses the tick loop.

Pausing the tick loop without stopping it entirely can be used in situations where you want to halt game simulation (in a pause screen while in singleplayer, for instance).

◆ PrepareTick()

void Blam::Tick::PrepareTick ( )

Prepares required data for the tick loop.

◆ ResumeTickLoop()

void Blam::Tick::ResumeTickLoop ( )

Resumes the tick loop if it has been paused.

◆ SetCurrentTickRate()

void Blam::Tick::SetCurrentTickRate ( int  tickrate)

Stops the game tick, updates the tick rate, and re-starts the game tick.

Parameters
tickrate- The new tickrate.

◆ TickThread()

void Blam::Tick::TickThread ( )

Function containing the tick loop.

This is a blocking call and should only be run in a separate thread.