This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2024-08-04
Channels
- # announcements (1)
- # babashka (29)
- # beginners (23)
- # clerk (3)
- # clojure (24)
- # clojure-europe (9)
- # clojure-gamedev (4)
- # clojure-norway (3)
- # clojurescript (11)
- # cursive (4)
- # datomic (10)
- # emacs (4)
- # hyperfiddle (22)
- # lsp (4)
- # missionary (10)
- # off-topic (95)
- # parinfer (11)
- # polylith (11)
- # reitit (16)
- # releases (1)
- # shadow-cljs (9)
Hey there, wanted to share that I am currently working on Godot-Clojure ( https://github.com/3starblaze/godot-clojure ). I haven't committed to the repo for a while because I needed some time to figure out GDExtension API details (which I have documented in another repo).
For the MVP implementation I intend to make Godot-Clojure ready enough to implement the classic "Dodge the Creeps" 2d game that is used for teaching 2d game dev.
Right now I have these things in my todo list:
- Make a Java-like interface to Godot API
- Add ability to override virtual methods like _process
and _ready
- Some helpers for wrapping and unwrapping values in Variant
(similar vibe to Java boxing)
If that works out well, I will take care on proper deployment in which I package the exported code with a JRE or compile the code via GraalVM. Also, to be honest, I could probably generate a bunch of Java classes as the base library and then make some Clojure-friendly abstractions on top of that. Godot is very OOP, so all this class generation makes a lot of sense. If you have some thoughts about it, let me know.
Great, I’m looking forward to it. I have a question - I’ve only worked with Godot for a day or two. I suppose if I start using Godot with something other than C# or GScript, I will lose various (point and click) features of their editor. Well, my question is: Do you think it will be reasonable to learn Godot with Clojure? Or would you first get very familiar with Godot before you start using unofficial languages?
You don't have to be very familiar with Godot but you should be comfortable using it and understand the core Godot concepts. It's like using clojurescript, you have to know some javascript and how the frontend works more or less. I would recommend going through the official Godot tutorials https://docs.godotengine.org/en/stable/getting_started/introduction/index.html and https://docs.godotengine.org/en/stable/getting_started/step_by_step/index.html in GDScript. The 2d game example is the same example I will implement Godot-Clojure because most Godot users know about it and this popular example would make it easier to understand the differences in Clojure. About the features: The only feature you would lose is the built-in editor because (at least for now) I am not supporting that. I am certain you and other people have their own cozy code editors so I don't see much value in the built-in code editor. Most of the drag 'n' drop and other functionality is related to Nodes and Scenes which is not really programming and since I am not affecting them in any way, you don't lose the functionality.