Open Collective
Open Collective
Loading
Cross-platform compatibility and performance updates
Published on April 15, 2025 by Matthias Wilke

Recently, we've made some important advances in cross-platform compatibility for LITIENGINE:
For over two years, we have been working on an input component for LITIENGINE that eliminates the need to deploy native artifacts of the used input library along with our release artifacts.
As opposed to the old input component based on the Java Native Interface (JNI), our new input4j library leverages Java's Foreign Function & Memory API (FFM API), offering cross-platform support, high performance, flexible input handling, and future-proofing without the need for additional native artifacts. To pursue development of this cross-platform library, we have used the Collective's funds to buy a state of the art x86 tablet, the Minisforum V3. With its powerful AMD Ryzen 7 7735U Processor, it is the perfect device for our development mode: We needed a powerful linux-based development environment when traveling to meet in person, and neither of us could sustainably transport their main development machines. We had hoped to achieve a proper development setup with our Steam Deck, which had also been useful in verifying cross platform compatibility of LITIENGINE, our games, and input4j. However, the readonly file system had made development on the Steam deck an annoying experience several times, not to mention the sluggish compilation performance. So our new little powerhouse tablet has enabled us to conduct more efficient in-person meetups by having a fully fledged portable development workstation.
At this point, a big thank you is in order:
Without your continued support, we would not be able to keep up with the monetary and temporal effort of maintaining all the infrastructure and development related to LITIENGINE's upkeep.
Being able to supply ourselves with the necessary development hardware is a huge privilege, and we have only you to thank for it.
Our next steps involve properly integrating input4j in LITIENGINE and getting together in person for an extensive testing session in May - accompanied by our sweet new development tablet! So you can probably expect a new LITIENGINE release within the next two months - as soon as we have fully sorted out the migration of the LITIENGINE namespace from Sonatype's legacy OSSRH to the new Central Portal. As of now, our existing toolchain can unfortunately not publish artifacts to the latter and we'll have a deep dive in our next meeting.

Until then:
Happy hacking!