LittleKt is a Kotlin multiplatform 2D game development framework based on OpenGL that is inspired by libGDX and KorGE. The goal of this project is to allow the freedom and flexibility that libGDX offers with enjoyable idiomatic features coded in Kotlin that KorGE has to offer.
Some of the features LittleKt currently has to offer:
Freedom and flexibility:
Various useful tools and abstractions but still allow access to the underlying code.
100% written in Kotlin which allows to take advantage of all the great features the language offers.
Thanks to Kotlin - building for multiple platforms is easy. Currently supports desktop via JVM, web, and Android targets, as well as iOS and desktop via native planned in the future.
Loaders and renders to make font’s easy to use.
- TTF file parser and loader
- GPU vector font rendering of TTF files on the fly based off of Will Dobbie’s article
- Bitmap fonts
- Utilities for measuring text
Higher-level 2D APIs
- Orthographic camera and viewports
- Audio and audio streaming
- Texture atlases, slicing, and pixmap editing
- Shader GLSL generation DSL
2D Scene Graph and UI
A light weight scene graph that is easily extensible that can be used to create your own engine. Includes a UI implementation with a fancy DSL that can be used along side.
Low-level OpenGL utilies and access
Directly access and use the OpenGL instance to do exactly what you need to do.
Includes utilites classes built on top of OpenGL such as:
- Framebuffer objects
- Vertex arrays and vertex buffer objects
Virtual File System
A file system abstraction that allows to easily read and write to files. Includes streaming support and a loaders to make loading assets a breeze.
Easily load and play clips of audio. As well as streaming audio.
Extensive matrix and vector classes as well as a ton of extensions to make calculations easier.
Loads of quality-of-life and helper extensions to make writing code a bit more enjoyable.