Thanks for the tips! 😊 oops, that's a bug...
kgal
Creator of
Recent community posts
Thank you! 😊 I'm glad you enjoyed the controls!
Oh yes, pod racing - that's the name I was looking for. (Swoop is just the name from KotOR I remembered).
I have a longer track drawn on paper, but need to add a "track editor" to move it to the computer . Otherwise, it's pretty tiresome handwiring those positions in code. I struggled with translation of mouse clicks to in-world positions, so left it out for the time being. I want to learn how to calculate that, then definitely add more tracks!
--- a/lisp/racerdemo.lisp +++ b/lisp/racerdemo.lisp @@ -95,7 +95,7 @@ (let ((event (sdl2:make-event))) (unwind-protect (loop while (plusp (sdl2:poll-event event)) do - (let ((event-type (cffi:mem-ref event 'sdl2:event-type))) + (let ((event-type (ignore-errors (cffi:mem-ref event 'sdl2:event-type)))) (handle event-type event))) (cffi:foreign-free event))))
Thanks for the stacktrace,
Looks like my bad - a bug in the lisp-side SDL bindings (missing event type). That's interesting... have to dig into SDL source how that can happen.
Do you have maybe some unusual hardware such as joystick/foot pedals? (Trying to see if such an event type could be coming from).
For now this could be the quickest fix (pushed that to gitlab too):
Ah... sorry for the trouble.
How are you starting the binary? It needs the 'asset' dir to be in the working dir (so ./racerdemo instead of e.g. ./build/racerdemo).
In case of linux missing libraries, you could try running with wine64 ./racerdemo.exe.
Or, copying that asset dir from the 'bin' archive to the source dir should do the trick. Also needs an SDL2 DLL (there's one from Debian in the bin zip).
