Commit Graph

198 Commits

Author SHA1 Message Date
Frank DeMarco 3a571adaa3 segment comparison operators; get sdl surface from pixels 2020-09-01 17:00:17 -04:00
Frank DeMarco 9058f93ad9 reverse wipe; more precision converting floats in box to sdl_rect 2020-08-31 16:36:56 -04:00
Frank DeMarco 54a8c219ed add wipe animation to sprite 2020-08-29 23:49:45 -04:00
Frank DeMarco 66f6d6ef81 specify render driver in config; print all renderer options 2020-08-28 22:17:01 -04:00
Frank DeMarco 536a5ec5f5 separate move weighted from move in sprite class 2020-08-27 20:41:21 -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 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 2b9dd44ff7 - fix bug in box right drag
- print int vector
- duplicate texture resized
2020-08-07 01:38:19 -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 1861b80aa4 line intersection formula from GraphicsGems; started Segment class 2020-08-02 00:52:50 -04:00
Frank DeMarco cea0bb5a21 sprite edge setters 2020-08-01 19:30:16 -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 16e1cc19d0 method to cancel event propagation 2020-07-27 14:19:11 -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 5df099354b compare event accepts vector of commands 2020-07-21 15:04:12 -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 605360bae5 Sprite accepts alpha mod parameter; duplicate texture method 2020-07-11 02:06:58 -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 d7f1877cbe reserve 100 video stashes temporary fix 2019-06-16 19:12:21 -04:00
Frank DeMarco 30e6c970d3 get screen pixels uses gl or sdl 2019-06-16 03:05:02 -04:00
Frank DeMarco 7e51a04b71 stash and write audio to recording 2019-06-04 03:20:13 -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 daa7945c89 write most recent frames to video 2019-05-31 02:54:31 -04:00
Frank DeMarco bef7c1a740 stash pixel buffers and write video frames in chunks 2019-05-25 07:28:05 -04:00
Frank DeMarco 92178b8f42 free recorder pixel data 2019-05-24 22:43:30 -04:00
Frank DeMarco f1ba8eed5e write gif and mp4 2019-05-22 04:27:15 -04:00
Frank DeMarco 9210b3fcf4 write video frames in separate thread 2019-05-19 05:55:46 -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 040a2b52ff fix key map combinations modifiers 2019-05-16 04:04:02 -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 ebd8f34266 translate key down to command event 2019-05-04 20:30:39 -04:00
Frank DeMarco 41dbfb8498 key map 2019-05-04 03:25:35 -04:00
Frank DeMarco 845d3bb883 pass object bound functions to delegate 2019-05-03 22:16:56 -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