summaryrefslogtreecommitdiff
path: root/README
blob: daa87c3e49e5787df751ec343fa0612997dd9537 (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
-*- org -*-

#+TITLE The Chickadee Game Development Toolkit

* About

  Chickadee is a game development toolkit for Guile Scheme.

  #+BEGIN_SRC scheme
    (use-modules (chickadee))

    (define sprite #f)

    (define (load)
      (set! sprite (load-image "chickadee.png")))

    (define (render alpha)
      (draw-sprite sprite (vector2 320 240)))

    (run-game #:load load #:render render)
  #+END_SRC

* Features

  Chickadee supports the following features:

  - 2D/3D rendering engine via OpenGL
    - Efficient sprite rendering
    - Signed distance field font rendering
    - Particles
    - Simple geometric shapes
    - GLSL shaders
  - Keyboard/mouse/joystick input
  - Sound effects and music
  - 2D/3D/4D vector math library
  - Axis-aligned bounding box library
  - Fixed timestep game loop

* Dependencies

  - Guile >= 2.1.4
  - Guile-OpenGL >= 0.1.0
  - Guile-SDL2 >= 0.2.0

* License

  GNU GPL version 3 or later