X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=src%2Fvideo.scm;h=7eda879b8b6834d6f810057352e833bbbbbc8a47;hb=f6a1e853e80bdaf59862bf314ec3d3bd515fd73e;hp=e0b7a6da10823354c930a724a25bae533771dcf9;hpb=9d5134f4fb73e3d534b5c3daed943c26b15c2e3f;p=gacela.git diff --git a/src/video.scm b/src/video.scm index e0b7a6d..7eda879 100644 --- a/src/video.scm +++ b/src/video.scm @@ -145,29 +145,22 @@ ;;; Frames per second -(define set-frames-per-second #f) -(define init-frame-time #f) -(define get-frame-time #f) -(define delay-frame #f) - -;; (let ((time 0) (time-per-frame (/ 1000.0 *frames-per-second*))) -;; (set! set-frames-per-second -;; (lambda (fps) -;; (set! time-per-frame (/ 1000.0 fps)))) - -;; (set! init-frame-time -;; (lambda () -;; (set! time (SDL_GetTicks)))) - -;; (set! get-frame-time -;; (lambda () -;; time)) - -;; (set! delay-frame -;; (lambda () -;; (let ((frame-time (- (SDL_GetTicks) time))) -;; (cond ((< frame-time time-per-frame) -;; (SDL_Delay (- time-per-frame frame-time)))))))) +(define time 0) +(define time-per-frame 50) ;in ms + +(define (set-frames-per-second fps) + (set! time-per-frame (/ 1000.0 fps))) + +(define (init-frame-time) + (set! time (SDL_GetTicks))) + +(define (get-frame-time) + time) + +(define (delay-frame) + (let ((frame-time (- (SDL_GetTicks) time))) + (cond ((< frame-time time-per-frame) + (SDL_Delay (- time-per-frame frame-time)))))) ;;; Drawing