LittleKt is a Kotlin multiplatform 2D game development framework based on WebGPU 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.
Kotlin
100% written in Kotlin which allows to take advantage of all the great features the language offers.
Cross-platform
Thanks to Kotlin - building for multiple platforms is easy. Currently supports desktop via JVM and web targets, as well as Android, iOS, and desktop via native planned in the future.
Fonts
Loaders and renders to make font’s easy to use.
- Bitmap fonts
- Utilities for measuring text
Higher-level 2D APIs
- Orthographic camera and viewports
- Batching and caching
- Animations
- Particles
- Audio and audio streaming
- Texture atlases, slicing, and pixmap editing
Tilemaps
Includes first class support for LDtk and Tiled map loading and rendering.
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 WebGPU utilies and access
Directly access and use the WebGPU instance to do exactly what you need to do.
Includes utility classes built on top of WebGPU such as:
- Shaders
- Meshes
- Textures
- Cameras
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.
Audio
Easily load and play clips of audio. As well as streaming audio.
Math
Extensive matrix and vector classes as well as a ton of extensions to make calculations easier.
Utilities
Loads of quality-of-life and helper extensions to make writing code a bit more enjoyable.