ohsqueezy
102d1749a5
added function to disable audio chunks, colors default to fully transparent, add public getters for Pad::box and Pad::visible
2024-05-01 20:25:35 -04:00
ohsqueezy
8498dfa004
- consolidate GL includes into one header
...
- build flags for MacOS
- replace glTexStorage2D with more compatible glTexImage2D
2024-04-24 15:01:17 -04:00
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
11c8abcc54
support for merging an optional list of config files at the beginning of the program
2023-12-26 22:31:28 -05:00
ohsqueezy
5d950387a8
make android and wasm config file paths configurable
2023-12-26 20:26:31 -05:00
ohsqueezy
e168844fc5
- added Windows build using MinGW for box demo along with Windows instructions to main README
...
- replaced Model class in box demo with library's Model class
- switched GL context profile mask to compatibility in Windows builds
- only open audio device if audio is initialized
- increase default audio frequency and buffer size
- convert path objects to strings for compatibility with MinGW
- update MinGW builds to use regular filesystem library instead of experimental
2023-10-18 00:07:32 -04:00
ohsqueezy
d575307b15
- redesign audio library to use Chunk and Music classes which align more closely with SDL Mix_Chunk and Mix_Music
...
- remove default texture index from Model class
- add support for two textures to Pad class
- restore SDL audio mixer initialization parameters to SDL defaults
- add optional log level to SDL error logging function
2023-10-09 23:50:18 -04:00
ohsqueezy
4c3235c2ff
frame timing updated to run at maximum allowable framerate, delay between frame calls configurable, vsync flag configurable, max framerate configurable up to unlimited
2023-09-09 23:34:36 -04:00
ohsqueezy
f9d171626f
added more conversion rules for JSON array to GLM vertex, truncate attribute string representation, post reconfig event on configuration reload, added font load function, added exception handling to functions that bind textures
2023-07-23 17:11:41 -04:00
ohsqueezy
1d527898aa
watch multiple config files for changes
2023-07-21 00:51:19 -04:00
ohsqueezy
5be1c38e7f
make game update function pure virtual, add Animation class to sb namespace
2023-06-23 01:18:15 -04: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
6371f9c279
remove Sprite class
2023-06-08 20:04:40 -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
e5aef6ffb8
auto merge WASM config on emscripten builds
2023-05-30 18:22:20 -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
f47c080d72
box demo android support, android file to string for reading files inside APK
2022-11-08 17:17:20 -05:00
frank
ad9aab4a46
android helper scripts and icon assets and fill screen android demo
2022-10-17 21:57:56 -04:00
frank
0d00314f5a
added ability to set some GL properties with config, added some more GL properties to log
2022-10-07 18:29:25 -04:00
ohsqueezy
d1cb24a785
angle difference and ratio methods
2022-07-23 18:55:27 -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
f70ea1c215
started log class
2021-10-02 19:21:07 -04:00
frank
6adac9806f
abstract base class for GL objects
2021-09-24 02:43:38 -04:00
frank
1a4b8507e3
GL texture class; logging functions changed to static
2021-09-20 02:32:15 -04:00
frank
c8bc86cab7
squircle and 2d collision demo; config auto refresh
2021-08-31 23:55:38 -04:00
frank
ba44b8e8d5
box documentation, remove get/set prefixes from Box and Segment
2021-08-14 19:53:39 -04:00
frank
2831f2fc60
restored gl screen capture; get points on circle utility function
2021-08-02 20:18:56 -04:00
frank
569e203409
move gl attributes to right before opening gl context; file to string func
2021-07-02 22:42:48 -04:00
frank
95a1e6b5b1
added licensing info
2021-06-26 20:25:03 -04:00
frank
fff9e13562
custom log function; change Game and Node from struct to class
2021-06-24 17:40:30 -04:00
frank
4ece64442f
custom logging function
2021-05-08 20:01:53 -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
66f6d6ef81
specify render driver in config; print all renderer options
2020-08-28 22:17: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
bc2a4a39ad
- sprite additions: multiple locations, auto wrapping, scale mod
...
- remap colors on a texture
- two pixel scaling algorithms: custom scale2x based on http://www.scale2x.it/algorithm.html and superxbr
2020-07-25 17:55:27 -04:00
Frank DeMarco
3d439e56e0
suppress input temporarily
2020-07-22 00:53:40 -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
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
74ca4da69a
- replaced location with box, added get/set functions for size and
...
sides
- preprocessor statements for handling emscripten main loop
- pass floats to render functions
- added box and get/set box functions to sprite class
- functions for filling a texture with solid color or tile texture
2020-06-27 17:47:14 -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
10cc649f45
unsubscribe automatically at destruction
2019-05-18 21:25:27 -04:00