Introduction
Welcome to Kraken Engine!
Fast and lightweight, Kraken is a 2D videogame development framework built on top of SDL3. It's designed to offer just the right balance between high-level convenience and low-level control, making it ideal for both hobbyists and experienced developers.
Whether you're crafting a minimalist arcade game or building a fully-featured side-scrolling adventure, Kraken gives you the tools to develop confidently and creatively.
Overview
Kraken expands upon SDL3 and other helper frameworks with a rich set of utilities tailored for game development. It wraps common patterns into intuitive systems while keeping you close to the metal when you need to be. Features include:
- Unified Input System: A clean abstraction over keyboard, mouse, and controller input with support for just-pressed and just-released logic, input rebinding, and axis detection.
- Animation Controller: Effortlessly manage sprite sheet animations with flexible frame control and transitions.
- Tile Map Support: Load and render Tiled TMX maps with support for layers, object groups, and tile flipping.
- Pixel Array Manipulation: Get opacity masks and create textures from scratch with rgb(a) multi-dimensional arrays.
Planned Features
Kraken is still expanding. The features below represent key milestones I plan to implement, all focused on giving developers greater control, speed, and creative range in 2D game development.
Feature | Description |
---|---|
Pathfinding | A*, grid-based navigation with customizable heuristics and support for obstacles |
Raycasting | 2D ray-line intersection detection for visibility, lighting, and LOS mechanics |
UI System | Modular interface system with anchors, events, and style theming support |
Physics Engine | Basic rigidbody dynamics, collision detection, and response with tunable forces |
Networking Utilities | Simplified sockets and messaging layer for real-time multiplayer or RPC systems |