b0a4e36ded
Regenerate the controller database with the fixed generator
...
A deliberate standalone commit, as AGENTS.md asks for this file.
Content is byte-identical -- 2255 mappings, not one changed -- which is the
point: it demonstrates the rewritten mkcontrollermappings.sh produces exactly
what the old one did on the success path. The only differences are the $(date)
stamp and the include guard, which is _AKGL_SDL_GAMECONTROLLERDB_H_ now so it
matches every other header in include/akgl/.
That rename was made in the generator rather than by hand, per the rule about
generated files, and the tracked copy carries it so the next regeneration shows
no spurious diff.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-01 07:34:50 -04:00
5dfa49482c
Guard the add_test shadow on being top-level again
...
CMake chains command overrides one level deep: a second override rebinds
_add_test to the first and the builtin becomes unreachable to everyone. So two
projects in one tree cannot both shadow add_test, and akbasic has to shadow it
first for libakerror and libakstdlib -- which left its own registrations
recursing to CMake's depth limit.
The unconditional shadow arrived with the vendored-dependency fix in 18399f2 .
That half stays; only the guard comes back.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-07-31 16:54:48 -04:00
652ee4cdf3
Tilemaps can now load their own physics engines from map properties. The gravity for the arcade simulation is acting a little funny when populated from the map properties.
2026-06-02 17:11:16 -04:00
9fed59c4c8
Abstract the global renderer, physics, camera and gamemap objects behind a pointer, so you can swap in and out different ones as needed
2026-06-02 13:15:26 -04:00
941eeb2493
Got the physics system applying gravity and drag correctly. (Mostly? Seems like it? Seems good.)
2026-05-26 16:45:04 -04:00
314ce5e10d
Physics simulation engine implemented, basic cases (null and 2d SideScroller) works
2026-05-26 10:36:31 -04:00
d87c5d2c20
More rendering subsystem breakout, added a physics subsystem, everything now fires from akgl_game_update() for the user
2026-05-25 21:29:18 -04:00
6314ad7f26
Start abstracting the rendering backend away to make it easier to switch to GPU rendering later
2026-05-24 21:59:29 -04:00
8f613397d6
Loading sprites and tiles both work correctly with relative paths, now using akgl_path_relative* helpers
2026-05-24 19:57:57 -04:00
980bbc56fb
Fixed loading of tilesets and images from tilemaps to correctly use relative paths.
2026-05-24 10:28:35 -04:00
e3edd5b855
Add a method that automatically opens gamepads so they will send events
2026-05-21 21:43:51 -04:00
f695a035c8
Add a low FPS callback to aid in debugging, and fix a huge memory leak in akgl_text_rendertextat
2026-05-15 11:07:31 -04:00
73b1a4cab0
Make perspective scale work more explicitly from properties
2026-05-13 23:36:49 -04:00
aad196d84e
akgl_heap_release* should not cascade into dependent objects (releasing actors should not release characters, sprites, and spritesheets)
2026-05-13 22:45:52 -04:00
9443fa8532
Fix bug in akgl_heap_release_actor preventing it from being cleared out of the registry
2026-05-13 19:28:38 -04:00
dc2e88b72f
Fix a scale bug (default should be 1.0), add tilemap release function
2026-05-13 16:56:24 -04:00
53e4f5c14f
Tilemaps can have two objects placed on it, 'p_foreground' and 'p_vanishing' whose placement form a virtual perspective plane, which causes sprites to scale as they move up and down the screen between them, creating the illusion of depth on the screen
2026-05-13 09:57:24 -04:00
b8dee456ca
Add keyboard enumeration function. Make image layers work.
2026-05-13 08:02:59 -04:00
36dfd47a06
Fixed a bug in akgl_heap_next_string, made screen width and height load from properties, not on the game object
2026-05-13 04:55:19 -04:00
23dbc7d985
Make mkcontrollers script work when building as a submodule
2026-05-12 21:40:31 -04:00
c79d93dd58
Wrap subdirectory compilation in conditional
2026-05-12 21:01:47 -04:00
ccd26494d9
Import all dependencies as submodules, make cmake do the right thing
2026-05-12 16:45:42 -04:00
5439b8004b
Move some of the sprite math out of the actor into the sprite
2026-05-12 15:21:36 -04:00
0f01126bad
More akstdlib conversion
2026-05-11 20:58:36 -04:00
4a02f0364f
Start moving away from wrapping libc stuff in akerror, and move towards akstdlib that does this for me
2026-05-10 00:03:45 -04:00
cc0916cd1f
Added a (registry object name -> registry object pointer) map to the save method so that registry reference by name can have their actor, sprite, spritesheet, and character references reset
2026-05-09 14:45:37 -04:00
4c771227f5
Encode library version and game version into savegame files and check them both
2026-05-08 23:48:35 -04:00
ff6b282112
Added basic game save function, doesn't save much yet, but implements version comparison of binary saves for compatibility
2026-05-08 23:15:11 -04:00
0bd1ae1df8
Move music tracks out of akgl_Game to make it more suitable for serialization
2026-05-08 22:16:43 -04:00
e0a59e2447
Add types.h, standardize integer types on stdint
2026-05-08 22:01:56 -04:00
5dda86d887
Add properties registry. Start bounding defines with conditionals so users can change library allocation size.
2026-05-08 10:16:33 -04:00
a0b2dda4cf
Rename library to AKGL (AKLabs Game Library)
2026-05-07 22:20:10 -04:00