https://github.com/borodust/trivial-gamekit
Simple framework for making 2D games
https://github.com/borodust/trivial-gamekit
2d common-lisp game-engine gamedev input sound
Last synced: 9 months ago
JSON representation
Simple framework for making 2D games
- Host: GitHub
- URL: https://github.com/borodust/trivial-gamekit
- Owner: borodust
- License: mit
- Created: 2017-04-12T15:00:22.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2021-11-05T12:59:27.000Z (about 4 years ago)
- Last Synced: 2024-10-28T05:59:43.189Z (about 1 year ago)
- Topics: 2d, common-lisp, game-engine, gamedev, input, sound
- Language: Common Lisp
- Homepage: https://borodust.org/projects/trivial-gamekit
- Size: 599 KB
- Stars: 166
- Watchers: 9
- Forks: 6
- Open Issues: 20
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-cl - trivial-gamekit
README
# trivial-gamekit
Library for getting into gamedev with Common Lisp! Very simple interface to graphics, audio and input.
## Requirements
* OpenGL 2.1 or 3.3+
* 64-bit (x86_64) Windows, GNU/Linux or macOS
* x86_64 SBCL or CCL
## Installation and loading
By default, `trivial-gamekit` works in OpenGL 3.3 mode. To enable OpenGL 2.1 you need to
```lisp
(pushnew :bodge-gl2 *features*)
```
```lisp
;; add cl-bodge distribution into quicklisp
(ql-dist:install-dist "http://bodge.borodust.org/dist/org.borodust.bodge.txt")
;; load the gamekit
(ql:quickload :trivial-gamekit)
```
## Example
Copy-paste these into your Common Lisp REPL after loading `trivial-gamekit`:
```lisp
(gamekit:defgame example () ())
(defmethod gamekit:draw ((this example))
(gamekit:draw-text "Hello, Gamedev!" (gamekit:vec2 240.0 240.0)))
(gamekit:start 'example)
```
## Documentation
See `trivial-gamekit` external [documentation](https://borodust.org/projects/trivial-gamekit/).
## Help
`#lispgames` or [`#cl-bodge`](https://web.libera.chat/gamja/?channel=#cl-bodge) at `irc.libera.chat:6697`