Home » Modeling » EMF » VSand: a game with Vulkan, EMF and JLink.
|VSand: a game with Vulkan, EMF and JLink. [message #1801380]
||Thu, 17 January 2019 22:54
| Aurélien Mora
Registered: July 2014
I developed a little game, using mainly Vulkan and EMF. If you want to know more/launch it, here the link: https://github.com/Ealrann/VSand.
Basically, I use EMF/Xcore to describe the model of the game, and lots of Adapters to run it, display it, react to changes and so on.
EMF standalone to run it, but I take benefits of the generated editor to write the model.
To build the application, I now use Jlink; It creates a minimal JVM, dedicated to run the application. The benefit is that the user don't need to setup java anymore, at the cost of something like 15MB more in the build.
The main difficulty about Jlink is that it requires everything in your code to be a true Java 9 module (with a module-info.java), including all dependencies. The eclipse plugins are not for now, they are simply considered as "automatic modules", but jlink refuse to work with that. So I forked the basic projects of EMF (common, core and xmi), removed the eclipse relative code, the SQL dependency, and add a module-info.java. It's quick and dirty, but it's working. If somebody is interested, I put the sources on this repo:
If someday you factorize the standalone code from the eclipse one in modular projects, I would be very interested :D. I really run after the time, but maybe I could contribute?
By the way, now I can tell that EMF core run smoothly at 60 (even 120) frames per seconds, even with "lots" of adapters. It's not really a surprise, and my model is not too big, but it worth being said.
That's all, I just wanted to describe this little project, and let you know that something like that exists. Thank you very much for EMF. The standalone part is very practical to me, and XCore too.
I believe that coding with model and adapters deserve more popularity. Using that every day, I have the feeling that it could even be easier, I mean... a new language? Something like wiring adapter and model would be automatic, and accessing the methods of the adapter directly from the model object...
Current Time: Mon Aug 19 04:21:34 GMT 2019
Powered by FUDForum
. Page generated in 0.02409 seconds