Commit Graph

41 Commits

Author SHA1 Message Date
ohsqueezy 0e4f06d779 - restore video recording
- remove sdl context
- configurable audio device settings
- deprecate node
- move audio recording input handling to game object
2024-03-04 19:44:06 -05:00
ohsqueezy 772c5482dd unsubscribe delegate subcribers in game's quit function and remove destructor calls to unsubscribe; delete ID memory when GL object is deleted; disable recorder because of memory leak 2023-06-11 21:49:04 -04:00
ohsqueezy aaaebc006d - use vector instead of map to store textures in Model class
- require a font to be passed to the Text class constructor
- convert default font from static member to non-static so it unloads from memory before TTF library unloads
- construct delegate object first so that it deletes last and other objects can call unsubscribe successfully
2023-06-11 01:07:15 -04:00
ohsqueezy 355ab4d8c4 - pass timestamp of frame start time to all update functions
- use timestamp instead of SDL_GetTicks to keep time in Timer class
- use seconds instead of milliseconds in Timer class
2023-06-07 20:22:20 -04:00
ohsqueezy 9ed0e9ea71 - add a text plane class
- load default font as a static class variable, make it a shared pointer
- add filter option to texture storage
- move Color into sb namespace
- move Delegate object into protected
2023-05-31 15:06:29 -04:00
ohsqueezy 3ba3be4496 - add Switch and time_it classes
- finish adding #pragma once to headers
- move configuration initialization into Game class
- print debug to stdout by default
- explicitly pass file to refresh to config auto refresh
- add delegate to sb namespace and deprecate get_delegate() in favor of delegate()
- set custom log function before loading config
- raise exception when no model textures are available
2023-05-23 15:28:53 -04:00
ohsqueezy 8c086ba161 add instructions for curl; add array operator to configuration, give configuration object access to nodes; fix src paths in android skeleton script; add copy file function 2023-05-10 02:51:11 -04:00
frank 3444afc2c1 changed get_configuration to configuration; added option to return the larger ratio to box aspect; changed default window size to 16:9; changed get_window to window; added SDL_RENDERER_PRESENTVSYNC; removed clear renderer to black on emscripten builds to prevent mouse bug; 2022-06-16 16:45:41 -04:00
frank 86ca3eabec convert ndc box to pixel coordinates box in display 2021-11-19 14:13:37 -05:00
frank 54cf01246b Display object can return ndc coordinates from a pixel coordinate box 2021-11-13 14:49:56 -05:00
frank f70ea1c215 started log class 2021-10-02 19:21:07 -04:00
frank 18f83968f3 added gl coordinates option to box 2021-09-06 22:11:56 -04:00
frank ba44b8e8d5 box documentation, remove get/set prefixes from Box and Segment 2021-08-14 19:53:39 -04:00
frank 17adaed169 node uses shared ptr to store sdl texture 2021-06-29 17:15:47 -04:00
frank fff9e13562 custom log function; change Game and Node from struct to class 2021-06-24 17:40:30 -04:00
Frank DeMarco 013f8279d4 audio, sfx and bgm classes; filesystem path added as type to json lib 2020-09-11 18:01:27 -04:00
Frank DeMarco 0e6e506c68 added children to sprites; sprite can set canvas it will draw on; fixed memory leak in precise collision detection on scaled sprites 2020-09-04 23:10:39 -04:00
Frank DeMarco 877d63cf4e fix sprite wipe and precision collision for scaled sprites; box move and return copy function 2020-09-02 23:32:01 -04:00
Frank DeMarco 14afcef0ce fix root lookup; add vec2 to json types; render test image when window is created 2020-08-21 02:21:34 -04:00
Frank DeMarco bab8c778ca color class, sprite hue shift, generate halo and portal effect
animation frames, ignore repeat keys, hue shifted texture
2020-08-19 03:29:46 -04:00
Frank DeMarco ae644b7138 collide box/box, box/line, box/point; sprite/sprite and sprite/box precise alpha collision 2020-08-09 16:32:32 -04:00
Frank DeMarco f5d03b9be6 - extended version of sdl gfx primitives
- drag left and right edge box
- complete segment member functions
- extension functions: get segments, get relative step, populate
pixel array
2020-08-06 18:54:50 -04:00
Frank DeMarco 16e1cc19d0 method to cancel event propagation 2020-07-27 14:19:11 -04:00
Frank DeMarco 3d439e56e0 suppress input temporarily 2020-07-22 00:53:40 -04:00
Frank DeMarco 8eeeb82f4c any key command 2020-07-21 01:09:34 -04:00
Frank DeMarco 0ccc00f201 - framerate indicator sprite added to Game class
- functions to build vectors from an integer range (from https://stackoverflow.com/a/30312659/1256386)
- fullscreen toggle added to Display class
2020-07-19 15:43:47 -04:00
Frank DeMarco 1df303fe17 added frameset class for use with sprite class 2020-07-17 22:58:23 -04:00
Frank DeMarco d471bdd651 - added const qualifier to some box and sprite functions
- store frame length history for debugging
- function for setting Node parent after initialization
- set magnitude helper function
2020-07-13 00:53:12 -04:00
Frank DeMarco b2f5f56063 - store video stashes in linked lists
- cube face textures demo
- only dispatch events to active nodes
- only update animation if containing object is active
2019-07-21 03:13:19 -04:00
Frank DeMarco 30e6c970d3 get screen pixels uses gl or sdl 2019-06-16 03:05:02 -04:00
Frank DeMarco 437f2d321c bug fix: initialize last frame timestamp 2019-05-31 23:34:04 -04:00
Frank DeMarco c71635e5d6 keyup sends cancel to command subscribers 2019-05-31 21:53:39 -04:00
Frank DeMarco 10cc649f45 unsubscribe automatically at destruction 2019-05-18 21:25:27 -04:00
Frank DeMarco e45806f8bc create resource management objects on stack 2019-05-18 17:39:47 -04:00
Frank DeMarco 321d9df1be recorder writes video frames to folder 2019-05-16 03:51:36 -04:00
Frank DeMarco 1dbb2a2e1d save indexed screenshot to directory 2019-05-07 03:33:54 -04:00
Frank DeMarco 41dbfb8498 key map 2019-05-04 03:25:35 -04:00
Frank DeMarco eb35aedeef event dispatch 2019-05-03 02:09:48 -04:00
Frank DeMarco cf695b3d10 class name 2019-05-02 20:11:45 -04:00
Frank DeMarco e40201cd11 json config library 2019-05-02 06:45:41 -04:00
Frank DeMarco 949763f5d9 folder structure 2019-04-29 19:27:13 -04:00