AwakeKt Engine
A Kotlin Multiplatform engine for 2D and 3D apps and games. One codebase runs on desktop, Android, iOS, and the web, with Vulkan and WebGPU underneath.
Alpha
AwakeKt is alpha software. APIs and published modules can change between releases. Use the version selector in the header to read the docs for the release you use.
Two ways to build a scene
A scene is ECS content: entities with components. Write it in whichever form suits you.
-
Write Kotlin: the scene DSL
Build entities in code with
scene { entity("…") { … } }, and add systems that run every frame. -
Describe it as data: scene documents
Describe a scene as data in a
*.scene.jsonfile, by hand or in AwakeKt Studio, and load it at runtime.
Both forms describe the same ECS components; neither is a separate engine.
Platforms and backends
| Platform | Backend | Notes |
|---|---|---|
| Desktop (JVM) | Vulkan | macOS arm64 and x86_64 through MoltenVK, Linux x86_64. Windows is not shipped yet. |
| Android | Vulkan | arm64-v8a and x86_64. |
| iOS | Vulkan through MoltenVK | Device and simulator (arm64). |
| Web (wasmJs) | WebGPU | Published as a snapshot only. See Run in the browser. |
See Releases and compatibility for versions.