summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pongo.go7
1 files changed, 4 insertions, 3 deletions
diff --git a/pongo.go b/pongo.go
index 01c6a8d..70910ee 100644
--- a/pongo.go
+++ b/pongo.go
@@ -155,7 +155,9 @@ func pong() error {
lastFrameTime := time.Now()
accumulator := time.Duration(0)
- for {
+ renderRate := time.NewTicker(time.Second / 60)
+ defer renderRate.Stop()
+ for frameStart := range renderRate.C {
for event := sdl.PollEvent(); event != nil; event = sdl.PollEvent() {
switch t := event.(type) {
case *sdl.QuitEvent:
@@ -170,7 +172,6 @@ func pong() error {
}
}
- frameStart := time.Now()
accumulator += frameStart.Sub(lastFrameTime)
lastFrameTime = frameStart
@@ -271,8 +272,8 @@ func pong() error {
}
renderer.Present()
- time.Sleep(time.Second/60 - time.Since(frameStart))
}
+ panic("unreachable")
}
func main() {