baggers
Joined 15 years ago
Joined 15 years ago
Also thanks for the SteamDeck support!
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.
As aidenn0 mentioned portacle will hopefully be a good option for some when finished as it gives you a complete environment in one shot.
For installing CL I may update my video to use Roswell at some point, I've been having good success with it when using TravisCI.
Fun! CL is a language to play in, after a day of wrangling Java & ObjC issues I love settling down to just play in an environment that lets blast some code out and play with ideas. Of course this applies to other languages too and this is dependent on your interests, so the case I want to put out there is:
Even if a language isn't suitable for your current business needs, see if it gives you joy. Languages have trades offs to meet their goals, evaluate languages for pleasure too.
Also come visit #lispgames on freenode sometime..most of us are procrastinating making engines but it's always nice to have new folks around.
Eventually though this will be a huge boon.
If you are interested in this stuff also look at kovasb's gamma library for clojure or any number of cool project for haskell.
Obviously these very different beasts with different goals, but the sheer scale of the old zeppelins never fails to make me happy.