Commit Graph

35 Commits

Author SHA1 Message Date
ohsqueezy 9a6b80f443 added function for extracting a grid of tile surfaces from a larger SDL surface 2023-09-18 22:10:04 -04:00
ohsqueezy c0fe0c782d add doc comment to box scale functions 2023-09-04 16:31:10 -04:00
ohsqueezy 55d6e08480 convert 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 paused 2023-07-08 16:19:31 -04:00
ohsqueezy 3db0a3bd32 set invert Y to default for Box class, add support for any size GLM vector to JSON library 2023-06-27 14:33:14 -04:00
ohsqueezy 12e5a15d1c add exception checks to Texture::bind and GLObject::id, make collision info storage a std::optional object 2023-06-26 20:49:14 -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 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 Box
2023-05-24 22:49:05 -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 03d179eed4 attributes can be accessed as a typed vector; box set gl mode function; mouse events are suppressed in addition to key events when input is suppressed 2021-11-09 23:30:27 -05:00
frank 8972b0c868 move stream operator overloads into std namespace 2021-10-22 15:06:05 -04:00
frank 18f83968f3 added gl coordinates option to box 2021-09-06 22:11:56 -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 14759a1c79 box aspect function 2021-07-21 02:08:45 -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 DeMarco 72a36a1d57 box crop and fits; Pixel class support for reading screen pixels 2020-09-12 20:29:26 -04:00
Frank DeMarco df8bf267f0 added const qualifier to box stamp method 2020-09-06 03:02:02 -04:00
Frank DeMarco 35a5acbd53 optionally exclude delay time from checking if animation is playing 2020-09-05 19:40:59 -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 54a8c219ed add wipe animation to sprite 2020-08-29 23:49:45 -04:00
Frank DeMarco edc836908d box inherits sdl_rect; color comparison operators; pixels operator() returns pointer of void, 8bit, 16bit, or 32bit; remap texture uses pixel class 2020-08-26 16:43:43 -04:00
Frank DeMarco 8346f43f21 - Pixel class generalizes pixel access, reads, writes, and applies
pixel value modifications to textures of any SDL_TEXTUREACCESS_* and
any pixel format
- Color inherits SDL_Color directly instead of emulating it
- added cast operator for converting Box to SDL_Rect
2020-08-22 20:06:06 -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 555c1e51a3 - optionally preserve center when modifying box size
- sprite scale modifier and scale quality setting
- get filled texture method
- get map keys utility method
2020-07-31 12:10:21 -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 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 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