forked from LeenkxTeam/LNXSDK
Merge pull request 'moisesjpelaez - Fix pausing and resuming updates' (#59) from Onek8/LNXSDK:main into main
Reviewed-on: LeenkxTeam/LNXSDK#59
This commit is contained in:
@ -52,9 +52,9 @@ class App {
|
|||||||
|
|
||||||
static function update() {
|
static function update() {
|
||||||
if (Scene.active == null || !Scene.active.ready) return;
|
if (Scene.active == null || !Scene.active.ready) return;
|
||||||
if (pauseUpdates) return;
|
|
||||||
|
|
||||||
iron.system.Time.update();
|
iron.system.Time.update();
|
||||||
|
if (pauseUpdates) return;
|
||||||
|
|
||||||
#if lnx_debug
|
#if lnx_debug
|
||||||
startTime = kha.Scheduler.realTime();
|
startTime = kha.Scheduler.realTime();
|
||||||
|
@ -22,10 +22,10 @@ class ParticleSystem {
|
|||||||
var ready: Bool;
|
var ready: Bool;
|
||||||
var frameRate = 24;
|
var frameRate = 24;
|
||||||
var lifetime = 0.0;
|
var lifetime = 0.0;
|
||||||
|
var looptime = 0.0;
|
||||||
var animtime = 0.0;
|
var animtime = 0.0;
|
||||||
var time = 0.0;
|
var time = 0.0;
|
||||||
var spawnRate = 0.0;
|
var spawnRate = 0.0;
|
||||||
var looptime = 0.0;
|
|
||||||
var seed = 0;
|
var seed = 0;
|
||||||
|
|
||||||
var r: TParticleData;
|
var r: TParticleData;
|
||||||
@ -124,6 +124,7 @@ class ParticleSystem {
|
|||||||
|
|
||||||
public function update(object: MeshObject, owner: MeshObject) {
|
public function update(object: MeshObject, owner: MeshObject) {
|
||||||
if (!ready || object == null || speed == 0.0) return;
|
if (!ready || object == null || speed == 0.0) return;
|
||||||
|
if (iron.App.pauseUpdates) return;
|
||||||
|
|
||||||
var prevLap = lap;
|
var prevLap = lap;
|
||||||
|
|
||||||
|
@ -1,6 +1,12 @@
|
|||||||
package iron.system;
|
package iron.system;
|
||||||
|
|
||||||
class Time {
|
class Time {
|
||||||
|
public static var scale = 1.0;
|
||||||
|
|
||||||
|
static var frequency: Null<Int> = null;
|
||||||
|
static function initFrequency() {
|
||||||
|
frequency = kha.Display.primary != null ? kha.Display.primary.frequency : 60;
|
||||||
|
}
|
||||||
|
|
||||||
public static var step(get, never): Float;
|
public static var step(get, never): Float;
|
||||||
static function get_step(): Float {
|
static function get_step(): Float {
|
||||||
@ -14,37 +20,39 @@ class Time {
|
|||||||
return _fixedStep;
|
return _fixedStep;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public static function initFixedStep(value: Float = 1 / 60) {
|
public static function initFixedStep(value: Float = 1 / 60) {
|
||||||
_fixedStep = value;
|
_fixedStep = value;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static var lastTime = 0.0;
|
static var lastTime = 0.0;
|
||||||
public static var delta = 0.0;
|
static var _delta = 0.0;
|
||||||
|
public static var delta(get, never): Float;
|
||||||
|
static function get_delta(): Float {
|
||||||
|
return _delta;
|
||||||
|
}
|
||||||
|
|
||||||
static var lastRenderTime = 0.0;
|
static var lastRenderTime = 0.0;
|
||||||
public static var renderDelta = 0.0;
|
static var _renderDelta = 0.0;
|
||||||
|
public static var renderDelta(get, never): Float;
|
||||||
|
static function get_renderDelta(): Float {
|
||||||
|
return _renderDelta;
|
||||||
|
}
|
||||||
|
|
||||||
public static inline function time(): Float {
|
public static inline function time(): Float {
|
||||||
return kha.Scheduler.time();
|
return kha.Scheduler.time();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static inline function realTime(): Float {
|
public static inline function realTime(): Float {
|
||||||
return kha.Scheduler.realTime();
|
return kha.Scheduler.realTime();
|
||||||
}
|
}
|
||||||
|
|
||||||
static var frequency: Null<Int> = null;
|
|
||||||
|
|
||||||
static function initFrequency() {
|
|
||||||
frequency = kha.Display.primary != null ? kha.Display.primary.frequency : 60;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static function update() {
|
public static function update() {
|
||||||
delta = (realTime() - lastTime) * scale;
|
_delta = realTime() - lastTime;
|
||||||
lastTime = realTime();
|
lastTime = realTime();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function render() {
|
public static function render() {
|
||||||
renderDelta = (realTime() - lastRenderTime) * scale;
|
_renderDelta = realTime() - lastRenderTime;
|
||||||
lastRenderTime = realTime();
|
lastRenderTime = realTime();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user