5d950387a8make android and wasm config file paths configurablefrank2023-12-26 20:26:31 -05:00
8e62f9e0a2initialize game controller interface at startupfrank2023-12-15 00:54:20 -05:00
8184a62a54add escape to key IDsfrank2023-12-14 01:11:18 -05:00
464e69be56fix initial config modification check, add wrap parameter to text objectfrank2023-12-12 00:42:38 -05:00
c7fb948e39make refresh function public for sb::Textfrank2023-12-07 19:24:04 -05:00
fb68938889use SDL's desktop fullscreen flag for simpler fullscreen behavior, and use Emscripten's fullscreen functionality for web builds; add a flag for disabling fullscreen through the configurationfrank2023-12-05 17:56:56 -05:00
5235535cc2set window fullscreen display mode to current desktop mode before going fullscreenfrank2023-12-05 15:28:36 -05:00
a6a110141dadd toggle function to pause/unpause sb::Animationfrank2023-12-05 13:43:16 -05:00
5750997d5cadd doc to sb::Animation::playingfrank2023-12-04 23:14:30 -05:00
a5f55be257function to get sb::Color as glm::vec4frank2023-12-04 21:53:49 -05:00
ec6a720b24set texture wrap to clampfrank2023-11-30 00:34:54 -05:00
0a42df9a00add sprite texture index increment functionfrank2023-11-14 17:57:45 -05:00
110b876648deprecate passing callback to Animation; add an update function to Sprite for running frame by frame animation; rename log's ERROR to ERR to avoid conflict with windows.hfrank2023-11-14 00:19:32 -05:00
333a7b73acpad object can be disabled and/or hiddenfrank2023-11-08 20:00:48 -05:00
a91bc4b773- JSON from file static function - configuration option to start in fullscreen - render text wrapped when exceeding 3000 pixels wide (arbitrary temporary value) - set timer elapsed to any amount of secondsfrank2023-11-04 23:52:43 -04:00
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 experimentalfrank2023-10-18 00:07:32 -04:00
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 functionfrank2023-10-09 23:50:18 -04:00
5046b4bcf1add custom event that fires on all window resize eventsfrank2023-09-28 21:11:30 -04:00
a4435242f8minor edit to documentation wordingfrank2023-09-22 23:22:00 -04:00
293d74e396removed hyphens from keyboard input related configuration key namesfrank2023-09-22 14:56:35 -04:00
9a6b80f443added function for extracting a grid of tile surfaces from a larger SDL surfacefrank2023-09-18 22:10:04 -04:00
d882e111b3- fix sb::Pad to move the collision box when scaled or translated - add warning about config JSON copy - add setter for sb::Pad::_plane - move point on circle functions from extension to mathfrank2023-09-16 21:04:43 -04:00
4c3235c2ffframe timing updated to run at maximum allowable framerate, delay between frame calls configurable, vsync flag configurable, max framerate configurable up to unlimitedfrank2023-09-07 19:09:04 -04:00
c0fe0c782dadd doc comment to box scale functionsfrank2023-09-04 16:31:10 -04:00
081328e63dstore size and format of texture object, only regenerate texture and reallocate memory if size and format are changingfrank2023-08-16 18:57:35 -04:00
e453a62679update sprite class's private member var comments, remove extraneous quotes from texture log messagefrank2023-08-14 16:44:25 -04:00
a055001482add method to clear texture list to sprite class, add comments explaining model class's private member varsfrank2023-08-14 16:30:38 -04:00
edafaf08eaadd texture index to Sprite class, add more error checks to texture surface creationfrank2023-08-08 12:41:10 -04:00
62450f7033add support for specifying multiple keys per command in configfrank2023-08-02 13:17:44 -04:00
67fa7e61c3docstring example for outputting attributes to streamfrank2023-07-27 23:21:14 -04:00
67c3e193f4add more info to message when exeception is raised while enabling model attributesfrank2023-07-23 20:01:45 -04:00
f9d171626fadded 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 texturesfrank2023-07-23 17:11:41 -04:00
b93aae19e0rename sb::Text::size to sb::Text::dimensionsfrank2023-07-22 14:00:37 -04:00
1d527898aawatch multiple config files for changesfrank2023-07-21 00:51:19 -04:00
27d2128e1fmove post command into delegatefrank2023-07-19 12:47:18 -04:00
cd66f70d0cattribute index exception, overload attributes bind, model add and bind methodsfrank2023-07-18 23:19:57 -04:00
d1fe6b927cmove sprite and pad into sb namespacefrank2023-07-15 12:19:37 -04:00
7bbc0f851dminor fix to model documentationfrank2023-07-15 12:05:06 -04:00
9a727513a1added sprite and pad classesfrank2023-07-15 11:48:08 -04:00
ba8f4753bfthrow exception if VBO is not bound when allocate is called, reset VBO offset on ID generationfrank2023-07-14 00:30:30 -04:00
b9dd2836f2add documentation to VBO header filefrank2023-07-13 21:51:07 -04:00
89fbe359f6Add exception handling to Attributes::bind, add default constructor to Modelfrank2023-07-13 21:38:53 -04:00
cdd01672c3check for texture path existence on loadfrank2023-07-10 20:33:15 -04:00
55d6e08480convert between glm::vec and sb::Color, print hierarchy on config access error, composite text onto a separate background surface, set frame time to zero when timer pausedfrank2023-07-08 16:19:31 -04:00
6cb9688becadd world coordinate transformations to math libraryfrank2023-07-05 20:08:11 -04:00
f7f6bee582add support for verbose log priorityfrank2023-07-01 19:21:06 -04:00
88cf70b828add const qualifier to Model::sizefrank2023-06-30 13:41:05 -04:00
3db0a3bd32set invert Y to default for Box class, add support for any size GLM vector to JSON libraryfrank2023-06-27 14:33:14 -04:00
12e5a15d1cadd exception checks to Texture::bind and GLObject::id, make collision info storage a std::optional objectfrank2023-06-26 20:49:14 -04:00
c0b55752e1track timestamp with Timer classfrank2023-06-24 13:05:40 -04:00
635562263ballow arbitrary functions to be attached to animation objects instead of only node object member functionsfrank2023-06-23 01:45:28 -04:00
5be1c38e7fmake game update function pure virtual, add Animation class to sb namespacefrank2023-06-23 01:18:15 -04:00
b02ae013abrename velocity_to_delta to angle_to_vector, remove endpoint functionfrank2023-06-22 21:25:57 -04:00
772c5482ddunsubscribe 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 leakfrank2023-06-11 21:49:04 -04:00
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 successfullyfrank2023-06-11 01:07:15 -04:00
c16d71222dadd example for using configuration's parenthesis operatorfrank2023-06-08 18:02:04 -04:00
f7368907daadd parenthesis operator access to configurationfrank2023-06-08 17:58:20 -04:00
e3941707e3start recorder animation in game constructor after config fully loadsfrank2023-06-08 12:56:21 -04:00
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 classfrank2023-06-07 20:22:20 -04:00
1ca956b5ac- add function for wrapping an arbitrary point or curve into an arbitrary clip space - remove custom mod functions in favor of glm::mod - deactivate recorder object during game construction after full config is loadedfrank2023-06-05 18:22:43 -04:00
824efcc71fadd external resources; add alpha to plane colorsfrank2023-06-03 01:07:18 -04:00
2f7a4cb602- attributes objects track their offset in the VBO - call to glVertexAttribPointer moved from VBO class to Attributes class - added a public domain function for computing bezier pointsfrank2023-06-02 14:54:06 -04:00
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 protectedfrank2023-05-31 15:06:29 -04:00
e5aef6ffb8auto merge WASM config on emscripten buildsfrank2023-05-30 18:22:20 -04:00
9f33ac872f- move Timer into sb namespace - debug statement for FPS - string conversion in Switch classfrank2023-05-30 16:20:28 -04:00
7140e8a3eb- add untransform, transform, and specialized transforms to Model class - reset viewport on window resize events - add boolean assignment operator to Switch class - throw error if GL object is generated before GL context is created - add Selection container - add string conversion to Boxfrank2023-05-24 22:49:05 -04:00
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 availablefrank2023-05-23 15:28:53 -04:00
8c086ba161add instructions for curl; add array operator to configuration, give configuration object access to nodes; fix src paths in android skeleton script; add copy file functionfrank2023-05-10 02:51:11 -04:00
a8126605e8added opencv camera linux and android demo; added carousel, connection, and model classes; added format parameter to texture.generate; added android opencv lib build instructionsfrank2023-05-02 18:43:32 -04:00
f793073348full example for building opencv libraries; upgrade box demo SDL versionfrank2023-04-25 23:17:13 -04:00
ecce532abffix description of emscripten output for box demo makefilefrank2023-04-10 18:06:07 -04:00
297fdef6e8main readme additions about building on raspberry pifrank2023-04-10 16:27:07 -04:00
6777f26d87remove angle brackets from heading
frank
2023-02-11 19:32:07 -05:00
f47c080d72box demo android support, android file to string for reading files inside APK
frank
2022-11-08 17:16:05 -05:00
ec993b7337support background images on android icon
frank
2022-10-18 16:10:20 -04:00
ad9aab4a46android helper scripts and icon assets and fill screen android demo
frank
2022-10-17 21:57:56 -04:00
e11fecbc12added fill screen demo for testing basic initialization and drawing
frank
2022-10-07 18:56:20 -04:00
0d00314f5aadded ability to set some GL properties with config, added some more GL properties to log
frank
2022-10-07 18:29:25 -04:00
d0bf52a03dinstructions for building an android example
frank
2022-10-04 18:33:16 -04:00
1ff7f802cbupdated instructions for building with OpenCV + barcode extension through Emscripten
frank
2022-09-26 20:57:51 -04:00
346a059ee2log statements from texture load changed from info to debug level
frank
2022-09-22 17:21:53 -04:00
24f6d3ed3dargument checking for texture load function input
frank
2022-09-19 22:14:31 -04:00
60acb11d41parameter documentation for texture loading
frank
2022-09-13 01:01:20 -04:00
b1fb77b1c8set gl context profile attribute to ES
frank
2022-09-07 20:57:00 -04:00
f63cb2bfb2example program for using a c++ program to stream a webcam in browser
frank
2022-09-06 20:52:34 -04:00
52ef535eacremove unsupported gl functions from emscripten builds, restore removing gl context settings from emscripten builds
frank
2022-09-06 20:44:23 -04:00
0bf2e12935added more documentation for GLObject::generate
frank
2022-08-10 13:30:44 -04:00
dc2141c2c4Merge branch 'pudding' into cuckoo
frank
2022-08-09 18:28:29 -04:00
21e1e7e707set GL attributes before creating a window
frank
2022-08-06 18:43:12 -04:00
9fd3ee282echange default keys for screenshot and video
frank
2022-07-26 17:28:56 -04:00
a3fba9c38aadjust pre tag
frank
2022-07-23 19:34:11 -04:00
6956688430add title to README
frank
2022-07-23 19:30:39 -04:00
ee06bb6732use markdown for README
frank
2022-07-23 19:27:49 -04:00
d1cb24a785angle difference and ratio methods
frank
2022-07-23 18:55:27 -04:00
7e31b5a1c0fix trigonometry functions so angles correspond with GL coordinates, add function to calculate angle between two vectors
frank
2022-06-19 23:28:01 -04:00
3444afc2c1changed 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;
frank
2022-06-16 16:45:41 -04:00
ee119ecc7eadd engine name to log file name
frank
2022-05-06 23:39:32 -04:00
86ca3eabecconvert ndc box to pixel coordinates box in display
frank
2021-11-19 14:13:37 -05:00