The basics:
- SBCL: generates fast[0] code. runs well on windows
- Quicklisp: The package manager which lets you install the packages mentioned below
I've got a video here that should help with getting set up on windows https://www.youtube.com/watch?v=VnWVu8VVDbI&t=1s
Then you could try the SDL2 approach:
- cl-sdl2: Bindings over sdl2 https://github.com/lispgames/cl-sdl2
- cl-sdl2-mixer: audio playback https://github.com/lispgames/cl-sdl2-mixer
- Some basic math library like: 3d-matrices, rtg-math, sb-cga
Or maybe an existing engine:
- https://github.com/borodust/trivial-gamekit
Come down to #lispgames on freenode if you need a hand as there is usually someone there who has touched this stuff[1]
I'll also pimp my own stuff while I'm here just in case someone is looking for a lispy layer over gl
- https://github.com/cbaggers/cepl
Main downside of Common Lisp is that Emacs or Vim are pretty much a requirement to get a nice development environment, without which you are pretty much in 'writing Java in notepad' territory.
[0] for some definition of fast that I don't want to belabor this comment with.
https://common-lisp.net/project/lispbox/
or
https://github.com/lispgames/lispgames.github.io/wiki/Common...
Also has bundled bindings for OpenGL and other GUI stuff. You can find more there: https://docs.racket-lang.org/index.html