Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revisionBoth sides next revision | ||
en:toolworks:docs:apparatus:steady-tick [2021/03/23 22:33] – vladius | en:toolworks:docs:apparatus:steady-tick [2021/04/02 20:47] – vladius | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Steady Ticking ====== | ====== Steady Ticking ====== | ||
- | Almost all video-games (and thereby game engines) have a common technique for iterating on the game process. The game is basically run in a loop. This loop is thereby called a game loop. On each iteration of this loop the game should prepare and actualize the state of the game for rendering and perform the graphics rendering itself. | + | Almost all video-games (and thereby game engines) have a common technique for iterating on the game process. The game is basically run in a loop. This loop is thereby called a game loop. On each iteration of this loop the game should prepare and actualize the state of the game for rendering and perform the graphics rendering itself. |
+ | |||
+ | Like a human heartbeat, tick intervals can be varying in time, i.e. the time that it takes to process and render each frame is variable. You may suddenly have a computationally and/or graphically intensive frame, for example, and this in turn may result in a longer tick interval. | ||
{{ : | {{ : | ||
In order for the game logic to actualize the game state this variable delta time is usually passed to it to be able to " | In order for the game logic to actualize the game state this variable delta time is usually passed to it to be able to " | ||
+ | |||
{{ : | {{ : | ||
Line 28: | Line 31: | ||
Another way to achieve the physics stability effect is to use Unreal Engine' | Another way to achieve the physics stability effect is to use Unreal Engine' | ||
- | Apparatus provides a somewhat similar concept to a sub-stepping that is called " | + | Apparatus provides a somewhat similar concept to a sub-stepping that is called " |
+ | |||
+ | {{ : | ||
+ | |||
+ | Steady ticks are fixed-rate ticks that a run in parallel to the main variable-rate ticks. The "in parallel" | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Each stable tick should actualize the | ||
+ | |||
+ | On the picture you can see that there may be multiple steady ticks during a single variable tick interval. Likewise there may be multiple variable ticks during a single steady tick interval. These multiple ticks can result in some undesired jerky movement. To solve this issue an interpolation is needed. | ||
+ | |||
+ | During the variable " | ||
+ | |||
+ | First, there is a steady frame ratio node available: | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | This node returns the ratio of the current variable tick in relation to an active steady frame it resides within. For a better understanding see the following schematic: | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | This ratio, which is bound from 0.0 to 1.0 (both inclusively), | ||