Physics I guess
This commit is contained in:
@@ -21,6 +21,9 @@ void timeInit(void) {
|
||||
// Set these to something non-zero.
|
||||
TIME.time = TIME_STEP;
|
||||
TIME.delta = TIME_STEP;
|
||||
|
||||
TIME.fixedDelta = TIME_STEP;
|
||||
TIME.fixedTime = TIME_STEP;
|
||||
}
|
||||
|
||||
void timeUpdate(void) {
|
||||
@@ -36,4 +39,14 @@ void timeUpdate(void) {
|
||||
TIME.delta = delta;
|
||||
assertTrue(TIME.delta >= 0.0f, "Time delta is negative");
|
||||
TIME.time += TIME.delta;
|
||||
|
||||
// Perform a fixed time step.
|
||||
if(TIME.time - TIME.fixedTime >= TIME_STEP) {
|
||||
TIME.fixedUpdate = true;
|
||||
TIME.fixedDelta = TIME_STEP;
|
||||
TIME.fixedTime += TIME_STEP;
|
||||
} else {
|
||||
TIME.fixedDelta = 0.0f;
|
||||
TIME.fixedUpdate = false;
|
||||
}
|
||||
}
|
@@ -11,6 +11,10 @@
|
||||
typedef struct {
|
||||
float_t delta;
|
||||
float_t time;
|
||||
|
||||
bool_t fixedUpdate;
|
||||
float_t fixedDelta;
|
||||
float_t fixedTime;
|
||||
} dusktime_t;
|
||||
|
||||
extern dusktime_t TIME;
|
||||
|
Reference in New Issue
Block a user