Does anyone think Mojo could be great for Game Development?
It's faster than Python and C++ (on certain occasions).
Did anyone think of ways it could become used for Game Dev?
25 Replies
Integrating Mojo into game development, especially with engines like Unreal Engine that use C++, could be groundbreaking. Drawing inspiration from 'unreal-rust', a Mojo plugin for Unreal could leverage Mojo's performance edge over Python and C++ in certain areas. This would not only enhance development efficiency but also open up new possibilities for game developers looking to create complicated games with the least effort possible (on the programming side). I'm genuinely excited about the prospects and eagerly look forward to it.
P.S. If I’m not wrong, Modular is cooperating with many big companies to leverage Mojo's popularity and capabilities. Just as an idea, as far as the roadmap focuses constantly on leveraging the performance with hardware accelerators, starting a new cooperation with EpicGames (the Company behind Unreal Engine) is somehow not changing the roadmap and can lead to moreover popularity.
That would depend on the game industry. There is nothing preventing Mojo from being used for game dev, including for building the core infrastructures like game engines and graphics libraries.
Someone will almost definitely make a godot plugin for mojo at some point. If you check the roadmap you'll also see there's a plan to allow you to import c libraries and that would allow you to use stuff like sdl and raylib for making games
It is almost a certainty that it will make its way to Godot at some point as Godot is flexible with language integration. Official Unreal integration is questionable since they are working hard on their own language verse. I personally would like to see a new game engine built from ground up around modern standards with Mojo on its core. We consider engines like UE5 next gen but it still carries a lot of 2 decade old baggage with itself.
Reminder, the next generational step in games is interaction of AI models. Level generation, responsive, personalization, enhanced NPC's, more immersive. Mojo has speed advantages over other fast languages
I'm Unreal game developer, but i wish some company can make a
mojo base
game engine, not just integrate into Unreal or Unity , Unreal and Unity are OOP base, but i think mojo is becoming to be a Functional Program Base
language, and now , the modern game engines are more likely to use ECS system
to build the game, eg. Bevy (rust base game engine), so I prefer to have a company create an exclusive mojo base game engine.🔥
In addition to pure-Mojo game engine, bringing a WASM compilation target into the Mojo universe could be another valid mechanism to get Mojo into some games' ecosystem. I have a buddy that works on a game that has created a WASM-plugin system (an in-house solution that is similar to this: https://extism.org/). If Mojo has a WASM compilation target, then a dev could create a level generator (or whatever) in Mojo, compiled to WASM target, and called by their C++ game whenever level generation is required.
Is that mean mojo can also make cross platform GUI too?
I don't know how to answer. Partly because I'm still new to Mojo and partly because I am unsure what you are asking.
At this very moment, I believe you could make a cross platform GUI in Mojo via importing Python packages, but I haven't tried it.
Regarding Mojo-native cross-platform GUI, I am not aware of an existing package. However, I believe the Mojo-UI repo (https://github.com/Moosems/Mojo-UI) belongs to @Three chickens in the green bag , who seeks contributors to help build a Mojo-native cross-platform GUI.
And if your question was specifically in the context of WASM:
WASM is a compile target, like Win-x86, Linux-x86, Linux-ARM, MacOS-Intel, MacOS-ARM, Raspberry-Pi, GPUs, etc. If you are unfamiliar with it, then Fermyon hsa an interesting write-up on WASM here: https://www.fermyon.com/blog/how-to-think-about-wasm
I hope I'm answering your question and providing useful info. 😊
Yes, that’s the hope. I have been planning things out for a bit but because of limitations can’t actually run any test code except through the playground which is quite the limiting factor.
Ouch! That's... just.... oof. What about getting a cloud linux box in AWS/GCP/whatever and SSH'ing into that?
SSH doesn’t quite help much with visuals and I’m not sure about how the pricing would look for that. Every time I try and make a VM it fails to compile and I don’t have the RAM for anything but the most barebones OS
I actually opened #2345 to get access to nightly on the playground
visuals... yeah...... 😂 ....I'm a terminal nerd, so my idea of visuals is:
here is the output you asked for
😂
Sry, gotta reset my brain a bit.
{ I shake my head like an Etch-a-Sketch }
Ok, ready now. 🙂Terminals are great…. For everything but the GUI 😄