aboutsummaryrefslogtreecommitdiffhomepage
path: root/README.org
blob: 2e3abfb13a1969c935a04a0fca8189f6b72bf531 (plain)
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#+TITLE: Wheelwork 

:  Wheelwork \Wheel"work`\, n. (Mach.)
:     A combination of wheels, and their connection, in a machine
:     or mechanism.
:     [1913 Webster]

/A Sprite System in Common Lisp for Games and GUIs/
** Installation 

Ensure that sdl2 is installed on your system.

*** Fetch Systems That Are Not In Quicklisp 
  #+begin_src shell
  mkdir ~/wheelwork-playground
  cd ~/wheelwork-playground 
  git clone https://cicadas.surf/cgit/colin/wheelwork.git wheelwork
  #+end_src

*** Fire up Slime 

You'll want to let quickisp know about the =wheelwork-playground= directory 

#+begin_src lisp 

(pushnew #P"~/wheelwork-playground/" ql:*local-project-directories*)
(ql:register-local-projects )
(ql:quickload :wheelwork)

#+end_src


*** Try the examples 

Then load one of the example files and call its "start" function:

#+begin_src lisp

(ql:quickload :wheelwork-examples)
(ww.examples/6:start)

#+end_src

** TODO Basic Use

*** The Application 

*** Display Units 

**** Bitmaps

**** Text

**** Sprites

*** Events & Event Handling

**** User Input Events vs Psuedo-Events

**** Event Handler Macros

**** Mouse Events

**** Key Events

**** Perframe Events

**** Display Tree Events