Awake Core
Dependency-free foundation for Awake: math, input, fixed-timestep loop,
resource/bitmap I/O, and color handling. No dependency on awake:ecs, rendering, or any
platform-specific backend — every platform target compiles it directly.
Installation
implementation(project(":awake:core"))
Packages
com.awakekt.awake.core.math— Vector3, Matrix4, Quaternion, Ray, fixed-point math, trig lookup tables.com.awakekt.awake.core.input— input event types and mapping, platform-neutral.com.awakekt.awake.core.application— the fixed-timestep game loop and application lifecycle hooks.com.awakekt.awake.core.graphics— bitmap and low-level resource I/O.com.awakekt.awake.core.colors— color types and conversions.com.awakekt.awake.core.utils— shared dependency-free helpers.
Related modules
Split out of awake:core as they grew independent test surfaces and target-specific needs:
awake:core:geometry— portable mesh geometry math (simplification, quantized vertex decoding), no file I/O.awake:core:animation— skeletal animation runtime (Skeleton/Skin/AnimationClip/AnimationPose, crossfade blending).
Proposed future modules
Not yet built. See
docs/reference/module-architecture.md
for the full proposal (dependency graph, per-module scope) before starting work on any of
these — physics, assets, audio, platform, time, diagnostics, and extracting
math/input out of this module into their own. When one of these actually gets built,
give it its own README (like geometry's) and delete its section from that proposal doc in
the same commit — don't let a proposal document describe a module that already exists.