Add delta value between frames

This commit is contained in:
2022-10-24 06:42:58 -04:00
parent 987ef9502f
commit 9ccd2cf2cb
12 changed files with 32 additions and 23 deletions

13
main.go
View File

@@ -2,6 +2,7 @@ package main
import (
"log"
"time"
"github.com/manleydev/golang-game-framework/game"
"github.com/manleydev/golang-game-framework/input"
@@ -27,16 +28,18 @@ func main() {
game.Run(&root, renderer, input)
running := true
var lastTimestamp int64 = time.Now().UnixMicro()
var delta float64 = 0.0
for running {
if err := root.Update(); err != nil {
if err := root.Update(delta); err != nil {
log.Fatal("Update: ", err)
}
if err := input.Update(); err != nil {
if err := input.Update(delta); err != nil {
log.Fatal("Input Update: ", err)
}
if err := renderer.Update(); err != nil {
if err := renderer.Update(delta); err != nil {
log.Fatal("Renderer Update: ", err)
}
@@ -47,5 +50,9 @@ func main() {
log.Fatal("Renderer Draw: ", err)
}
newTimestamp := time.Now().UnixMicro()
delta = float64(lastTimestamp) / float64(newTimestamp)
lastTimestamp = newTimestamp
}
}