-
Notifications
You must be signed in to change notification settings - Fork 0
/
testsdl2.lisp
31 lines (28 loc) · 960 Bytes
/
testsdl2.lisp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
(in-package :sdl2-examples)
(require :sdl2)
(defun test-render-clear (renderer)
(sdl2:set-render-draw-color renderer 0 0 0 255)
(sdl2:render-clear renderer))
(defun test-render-lines (renderer)
(sdl2:with-points ((a 200 200)
(b 300 400)
(c 400 200))
(sdl2:set-render-draw-color renderer 90 200 200 255)
(multiple-value-bind (points num) (sdl2:points* a b c)
(sdl2:render-draw-lines renderer points num))))
(defun line-test ()
(sdl2:with-init (:everything)
(sdl2:with-window (win :title "SDL2 Test " :flags '(:shown))
(sdl2:with-renderer (renderer win :flags '(:accelerated))
(sdl2:with-event-loop (:method :poll)
(:keyup
(:keysym keysym)
(when (sdl2:scancode= (sdl2:scancode-value keysym) :scancode-escape)
(sdl2:push-event :quit)))
(:idle
()
(test-render-clear renderer)
(test-render-lines renderer)
(sdl2:render-present renderer)
(sdl2:delay 33))
(:quit () t))))))