|
Banjo API 1.0.0-rc.2
Low-level C99 game development API
|
| Example Codes | Runnable example programs, from single-API demos to full tutorials |
| Core | General-purpose API |
| Application | Drive a Banjo program through banjo-managed setup, step, and teardown callbacks |
| Main Entry Point | Write a regular int main(...), include <banjo/main.h>, and Banjo provides whatever platform entry point the target actually wants |
| Audio | Generate and play sound samples from your application |
| Bitmap | Pictures in memory: load them, draw into them, copy them onto each other |
| Drawing | Draw lines, shapes, and outlines into a bitmap |
| Pixel Definition | How a pixel's colour is stored in memory |
| Shaders | Fill every pixel of a bitmap with the result of a small function you supply |
| Argument Parsing | Parse argc/argv into named options and positional values |
| Error Management | Report and inspect things that went wrong, without exceptions |
| Event | Pick up keyboard, mouse, and window-focus events from the user |
| Logging | Severity-filtered structured logging |
| Math | A small math toolkit: a choose-your-precision real type, constants, the standard <math.h> functions with consistent naming, and a few extras |
| Geometry 2D | 2D Geometry utilities |
| Memory Management | Allocate, free, and (optionally) replace how Banjo gets memory from the heap |
| Network | Talk to other programs over a network: TCP for streams, UDP for datagrams |
| Physics | Building blocks for simulating motion and forces |
| 2D Physics | Physics for things that move on a flat 2D plane: positions, velocities, forces, particles |
| Random | Generate random-looking numbers from a generator, then shape them into useful distributions |
| Data Stream | Read bytes one chunk at a time from either a file or an in-memory buffer, with the same API for both |
| String Utilities | Lightweight wrappers around standard C string functions |
| System | Turn Banjo's subsystems on and off, and load shared libraries at runtime |
| Time | Three kinds of time: what time is it, how long since X, and please pause for a bit |
| Windows | Open and manage the on-screen window, and read keyboard state |