clojure-gamedev

2024-01-30T19:58:30.105409Z

I would like to make simple 2d games. What would you recommend to a beginner to clojure and gamedev?

markx 2024-02-01T17:17:33.691189Z

If you want something simple, I think interop with https://github.com/electronstudio/jaylib is OK.

2024-02-01T17:44:09.019279Z

Another thing to consider is quil

2024-02-01T17:44:22.315059Z

for a simple 2d game it's clojure-only and is backed by processing, which is used for simple 2d games in java already

Akiz 2024-02-01T19:17:36.623139Z

I like Quil too. I tried translating some games I did in pico-8 / tic-80 and it worked fine. If you don’t want to do anything more demanding, I’d start there. The biggest advantage is that you can find an a lot of videos about Processing and just translate that into Clojure. Something like that is more complicated with play-cljc and others. But I haven’t tried most of CLJ game engines to be honest. Personally, I’d love to see a godot-arcade for godot 4…

2024-02-01T21:10:32.112259Z

Thank you all for the suggestions 🙂 👍

p-himik 2024-01-30T20:11:00.321359Z

Probably https://github.com/oakes/play-cljc/. It's not perfect but great for beginners.

2024-01-30T20:38:54.261589Z

Thank you! 🙂

p-himik 2024-01-30T20:41:09.228259Z

FWIW, I myself ended up switching to LibGDX. But it's definitely not for a beginner in Clojure or gamedev. Maybe suitable if you're know Java well.

👍 1
2024-01-31T11:36:04.954429Z

I have developed GDL for this purpose, it sets up necessary state for 2D libgdx games so you can focus on making games https://github.com/damn/gdl

2024-01-31T11:36:47.550339Z

But I also recommend to learn libgdx Java library, it contains a lot of features for every use case!

2024-01-31T17:34:30.013649Z

Thank you 🙂 , but I have pretty much no Java knowledge. Maybe it's easier to go the ClojureScript route and interop with a JavaScript GameEngine? 🤔

p-himik 2024-01-31T17:46:11.076049Z

IMO you should stick to simpler things at the start. You're a beginner in both Clojure and gamedev, there's no need to make it harder for yourself by bringing another language and interop with it into the picture.

2024-01-31T18:00:06.134489Z

You're right, I will look into play/cljc and maybe GDL and see how it goes 🙂

2024-01-31T18:06:44.799099Z

It's an interesting topic, if someone doesn't know Java tooling. How will they profile performance? All graphics libraries are using some language lower level at some point

2024-01-31T18:17:49.810239Z

Anything advanced I mean will be difficult if not knowing host language

p-himik 2024-01-31T18:25:20.866669Z

> How will they profile performance? I think the mere existence of the need to profile would mean that that person is no longer a total beginner. :D

2024-01-31T18:33:59.190739Z

Actually, I was only looking for a way to get better at clojure by doing something fun 😅

2024-01-31T18:35:18.224019Z

Let me know if you have any questions about GDL , I can help out then !

2024-01-31T18:39:08.297249Z

Thank you 🙂, will do!