ohsqueezy
9a727513a1
added sprite and pad classes
2023-07-15 11:48:08 -04:00
ohsqueezy
ba8f4753bf
throw exception if VBO is not bound when allocate is called, reset VBO offset on ID generation
2023-07-14 00:30:30 -04:00
ohsqueezy
b9dd2836f2
add documentation to VBO header file
2023-07-13 21:51:07 -04:00
ohsqueezy
89fbe359f6
Add exception handling to Attributes::bind, add default constructor to Model
2023-07-13 21:38:53 -04:00
ohsqueezy
cdd01672c3
check for texture path existence on load
2023-07-10 20:33:15 -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
6cb9688bec
add world coordinate transformations to math library
2023-07-05 20:08:11 -04:00
ohsqueezy
f7f6bee582
add support for verbose log priority
2023-07-01 19:21:06 -04:00
ohsqueezy
88cf70b828
add const qualifier to Model::size
2023-06-30 13:41:05 -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
c0b55752e1
track timestamp with Timer class
2023-06-24 13:05:40 -04:00
ohsqueezy
635562263b
allow arbitrary functions to be attached to animation objects instead of only node object member functions
2023-06-23 01:45:28 -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
b02ae013ab
rename velocity_to_delta to angle_to_vector, remove endpoint function
2023-06-22 21:25:57 -04:00
ohsqueezy
c0852ba04f
add extend vector function, 2D endpoint function, input check on wrap point
2023-06-22 14:38:56 -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
c16d71222d
add example for using configuration's parenthesis operator
2023-06-08 18:02:04 -04:00
ohsqueezy
f7368907da
add parenthesis operator access to configuration
2023-06-08 17:58:20 -04:00
ohsqueezy
e3941707e3
start recorder animation in game constructor after config fully loads
2023-06-08 12:56:21 -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
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 loaded
2023-06-05 18:22:43 -04:00
ohsqueezy
824efcc71f
add external resources; add alpha to plane colors
2023-06-03 01:07:18 -04:00
ohsqueezy
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 points
2023-06-02 14:54:06 -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
9f33ac872f
- move Timer into sb namespace
...
- debug statement for FPS
- string conversion in Switch class
2023-05-30 16:20:28 -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
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
ohsqueezy
a8126605e8
added opencv camera linux and android demo; added carousel, connection, and model classes; added format parameter to texture.generate; added android opencv lib build instructions
2023-05-02 18:43:32 -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
ec993b7337
support background images on android icon
2022-10-18 16:10:20 -04: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
frank
346a059ee2
log statements from texture load changed from info to debug level
2022-09-22 17:21:53 -04:00
frank
24f6d3ed3d
argument checking for texture load function input
2022-09-19 22:14:31 -04:00
frank
60acb11d41
parameter documentation for texture loading
2022-09-13 01:01:20 -04:00
frank
b1fb77b1c8
set gl context profile attribute to ES
2022-09-07 20:57:00 -04:00
frank
52ef535eac
remove unsupported gl functions from emscripten builds, restore removing gl context settings from emscripten builds
2022-09-06 20:44:23 -04:00
frank
0bf2e12935
added more documentation for GLObject::generate
2022-08-10 13:30:44 -04:00
frank
dc2141c2c4
Merge branch 'pudding' into cuckoo
2022-08-09 18:30:39 -04:00
frank
21e1e7e707
set GL attributes before creating a window
2022-08-06 18:43:12 -04:00
ohsqueezy
9fd3ee282e
change default keys for screenshot and video
2022-07-26 17:28:56 -04:00
ohsqueezy
d1cb24a785
angle difference and ratio methods
2022-07-23 18:55:27 -04:00
frank
7e31b5a1c0
fix trigonometry functions so angles correspond with GL coordinates, add function to calculate angle between two vectors
2022-06-19 23:28:01 -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
ee119ecc7e
add engine name to log file name
2022-05-06 23:39:32 -04:00
frank
86ca3eabec
convert ndc box to pixel coordinates box in display
2021-11-19 14:13:37 -05:00
frank
660865b2f2
read individual vertices and components of vertices in attributes
2021-11-16 23:20:56 -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
863db5467b
mod only works on int
2021-11-04 01:16:09 -04:00
frank
dd736f341f
started utilities file
2021-11-01 17:33:27 -04:00
frank
2c0517b9e2
change uint to int for attributes bind index
2021-10-29 22:09:01 -04:00
frank
950a95502b
attributes print format
2021-10-29 01:07:48 -04:00
frank
70bc054c7f
updated documentation of attribute index
2021-10-26 14:05:43 -04:00
frank
9e5ecc3ace
bind and enable/disable attributes
2021-10-26 12:48:02 -04:00
frank
8972b0c868
move stream operator overloads into std namespace
2021-10-22 15:06:05 -04:00
frank
186d14cb48
print glm matrix types
2021-10-19 16:22:56 -04:00
frank
3212dc15cf
vbo, vao, and buffer classes
2021-10-18 17:33:33 -04:00
frank
3e5e0fcbb8
pass attributes as int
2021-10-17 03:26:15 -04:00
frank
3baaa7624e
add dimensions and type functions to attributes class
2021-10-14 02:55:17 -04:00
frank
64f6b765a7
add index to attributes class
2021-10-14 00:31:35 -04:00
frank
1690bb5f19
attributes object for holding generic gl vertices
2021-10-13 00:34:11 -04:00
frank
a6bcc2a4d9
stream operator for all variants of glm vec
2021-10-08 23:43:21 -04:00
frank
f70ea1c215
started log class
2021-10-02 19:21:07 -04:00
frank
f03d58dae1
pass specialized generate function to generic base function for globject
2021-09-28 02:09:49 -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
87b1fa735c
minor change NULL to nullptr
2021-09-09 22:55:41 -04:00
frank
e2f5126d0a
shorten is_playing to playing
2021-09-08 23:56:06 -04:00
frank
3b6b946560
add default constructor to Animation, set private members in Timer
2021-09-08 20:07:11 -04:00
frank
18f83968f3
added gl coordinates option to box
2021-09-06 22:11:56 -04:00
frank
ada139c26f
change sfw namespace to sb
2021-09-02 18:23:48 -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
fe3e0bf27f
optionally pass a vector to fill with circle points
2021-08-07 01:05:16 -04:00
frank
2831f2fc60
restored gl screen capture; get points on circle utility function
2021-08-02 20:18:56 -04:00
frank
14759a1c79
box aspect function
2021-07-21 02:08:45 -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
17adaed169
node uses shared ptr to store sdl texture
2021-06-29 17:15:47 -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
a8948bca73
fix user config merge; clear screen to black; reset to single box on sprite unload
2021-05-07 21:19:23 -04:00
Frank DeMarco
ca44bc4b3a
new parameters for Mix_OpenAudio
2021-04-11 00:30:15 -04:00
Frank DeMarco
ad7d42155d
precise collision detection used Pixel object; fixed out of scope bug in collision detection
2020-09-12 21:57:27 -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
013f8279d4
audio, sfx and bgm classes; filesystem path added as type to json lib
2020-09-11 18:01:27 -04:00
Frank DeMarco
be360b8a47
sprite update accepts a list of subsections of the sprite to draw
2020-09-08 17:34:47 -04:00
Frank DeMarco
a0897d80b4
set frameset size when frame indicies are added
2020-09-07 20:32:45 -04:00
Frank DeMarco
7d00cda9bb
added segment constructors for 2 boxes and 2 sprites
2020-09-07 04:11:59 -04:00
Frank DeMarco
c6341d2bfc
added get point on circle function
2020-09-06 16:05:19 -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
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