Luxe: free, cross platform, open source, rapid development game engine
luxeengine.com
luxeengine.com
I am definitely biased once I realized the primary author of the language (Wren) is Bob Nystrom, someone with professional experience in both game and language development [2]
[1] http://wren.io/
Not that Lua is ugly (subjective), I find it as something Javascript should have always been.
I know patterns (especially "design patterns") have become a bit of a swear-word, something which hints at severe engineering malpractices, especially along the lines of introducing unnecessary complexity for seemingly its own sake. I think that view oversimplifies the topic greatly, so hopefully people don't dismiss it at face value.
[1] http://gameprogrammingpatterns.com/ [2] http://gameprogrammingpatterns.com/contents.html
It sounds like it may actually come in handy - I've ended up creating a number of solutions which came pretty close to being fully fledged domain specific languages. Sadly, despite nominally passing a CS compilers course about 20 years ago, my implementations have been horrifically incorrect. Maybe it's time to refresh my memory of how to actually do this.
I'd say it's worth the fun of writing your own alongside or after!
I'm all for a free and open-source alternative game engine, but the commercial engines are quite battle tested, and I've always thought of game engines as highly complicated pieces of software that can easily go haywire. Can anyone speak to the quality of the architecture of godot? (or even open source game engines in general, game engines are a subject I presume most are ignorant to).
As somebody who has worked in Unity for a number of years, I am really excited to trying out the new engine. Unity is incredible for rapid prototyping and pretty good at making certain types of games, but there is a lot of bloat if you don't use all of their systems. Seeing something more modular is super exciting, and I can't wait to try it out.
Unity and Unreal = Huge engine that can make life like multi-million dollar games. Can be overwhelming for small teams
Godot = Awesome engine where almost anyone can make a game quickly. Release a game in a week or you can work with a team for over a year with a polished game. Godot is the killer Indie Game Engine due to how easy it is to make a game but you can really get something that scales but it isn't as capable as Unity or Unreal.
Godot vs Luxe (Haven't programmed in Luxe yet) - Godot you really using a lot of menus to make your game, though you can now in Godot 3.0 do everything (mostly) code based now (Great thing in my opinion). Luxe seems to try and make it more code based with the ability to use menus and a API that will allow you to use almost any language (Though I think languages similar to Python with a ton of libraries might not be well suite for porting. I really think Racket would make a killer game scripting language if people will get over brackets.
The most painfully ironic example of a game that suffered from this is TIS-100, a game of optimising assembly for an imaginary ancient computer[1]. You can imagine how this completely ruined the immersion for me. I reported it to Zachtronics, and got a really swift reply. Maybe they managed to fix it since. All I know is that I'm happy that Shenzen IO used a custom engine.
Perhaps the bug is fixed in the newer versions in general, but I still see new Unity games come out that have this issue.
Until then, the workaround seems to be adding a manual VSync setting (Jazzpunk and Mousecraft both have this, and do not have this issue). So to any Unity developers out there, please add a vsync option. Not because you expect people to turn it off, but because making it a manual setting seems to fix this bug on Linux.
1. There aren’t a lot of mentions of Haxe. Are you moving away from Haxe?
2. Will there be any console support? There are very very few decent 2D frameworks with good console support that are simple and just work. There’s Unity (for 2D... yuck) and Monogame, but these frameworks still have quite a few rough edges.
3. How hard is it to build your own custom shaders with custom geometries. Do you need to delve into C if you want to mess around with vertices and shaders?
1. see the dev log on language - https://luxeengine.com/dev-log-5/ - dev log 4 also mentions this aspect a bit.
2. The website mentions consoles in passing - I can't talk about them yet, but the intent is strong native console support.
3. Trivial :) The full engine is available from scripts directly (the same api that is available on the C++ side). for example: var geo = Geometry.create(Primitive.triangle, material, vert_count) and from there, you can populate the vertex buffers any way you choose. the engine provides generators (like "make me a quad" etc).
They will use a language called Wren but they also say that any language will be possible to use through script system plugins.
According to them, “the API can be bound to other languages easily, and the workflow for that language can be idiomatic”.
They’ve made bindings for rust, c# (mono), c++, js, lua, dart, python and swift, but they point out that it is unrealistic to expect one person to maintain said bindings.
Best of luck
Maybe it's time to know more than one trick?
Game engines are no longer 'games' engines, in my opinion. Its really far better to pitch them as "Interface" engines, in as much as a significant majority of the interaction with the engine is to get an interface on the screen - whether that be for gaming purposes, or application interaction.
These days, the line is very blurred, don't you think?
[1](www.lovr.org)