Commit Graph

139 Commits

Author SHA1 Message Date
Noel Berry
51e80ec6a2 spritefont uses a binary search instead of std::unordered_map 2022-02-11 15:18:10 -08:00
Noel Berry
611aa0b502 fixed accidental delete on app-close 2022-02-10 01:15:30 -08:00
Noel Berry
f56e3bb2b2 moved Sprite Batcher's default shader to Renderer; no longer a global var 2022-02-10 01:13:20 -08:00
Noel Berry
2619d2d9e0 fixed preprocessor typo from renderer refactor 2022-02-10 00:11:58 -08:00
Noel Berry
f5e8de0b11 Refactored Graphics to allow Renderer choice at runtime 2022-02-09 18:49:47 -08:00
Noel Berry
09f88d293f removing non std::filesystem calls in platform_sdl2 2022-01-25 22:54:38 -08:00
Noel Berry
ccd02fa9ef added App::focused and System::open_url apis 2022-01-25 22:50:20 -08:00
Noel Berry
5f4a332d14
fixed D3D11 shutdown warnings 2022-01-09 18:31:20 -08:00
Noel Berry
832c8f4283 simplifying Input enums 2022-01-09 14:32:35 -08:00
Noel Berry
53ebb40ffd fixed packer's off-by-one error with padding 2022-01-09 13:51:23 -08:00
Noel Berry
1ee2fbab3d string internal set method has additional safeguard for bad data 2021-12-18 02:48:51 -08:00
Noel Berry
d91658aa46 large spatial / numerics refactor to allow double/integer vector types 2021-12-12 20:41:23 -08:00
Noel Berry
8f9c6aa9ff Sprite Batcher has fields for optional texture/sampler uniform names 2021-08-06 16:03:44 -07:00
Noel Berry
ba3c60b6cd fixed d3d11 Texture::get_data, which didn't use RowPitch 2021-07-16 15:19:07 -07:00
Noel Berry
5ba620c066 cleaning up color struct 2021-05-25 21:31:18 -07:00
Noel Berry
9eca790f9b removing "backend" from internal namespaces 2021-05-25 21:30:46 -07:00
Noel Berry
d7cef352a5 simplifying input backend & input state update 2021-05-19 11:21:08 -07:00
Noel Berry
b7e318e420 Mat3x2 tweaks 2021-05-19 11:20:22 -07:00
Noel Berry
78f6f66bff catching null strings in Str::starts_with/ends_with 2021-05-19 11:20:08 -07:00
Noel Berry
b68729850b cleanup pass on numerics 2021-05-11 02:27:00 -07:00
Noel Berry
991cfcad82 adding more App windowing methods 2021-05-09 19:46:08 -07:00
Noel Berry
76525f91c5 cleaning up App::config getter and removing App::is_running 2021-05-09 19:40:50 -07:00
Noel Berry
c51d397ccc cleaning up file / memory streams 2021-05-09 19:30:01 -07:00
Noel Berry
2447490033 simplifying input calls & state 2021-05-09 18:37:31 -07:00
Noel Berry
81e2de3553 missing opengl backend from last commit 2021-05-09 17:23:19 -07:00
Noel Berry
e615b9d7e4 large organizational & cleanup refactor 2021-05-09 17:23:02 -07:00
Noel Berry
e65752f30b Image move operator fix 2021-05-09 15:08:59 -07:00
Noel Berry
04f6257b75 various small C++ warning fixes 2021-05-06 21:48:06 -07:00
Noel Berry
fb91b77900 fixed a few SDL2 platform details for compiling on non-windows 2021-05-06 20:48:11 -07:00
Noel Berry
60f3939ff7 added resize method to bufferstream 2021-05-06 20:47:52 -07:00
Noel Berry
5f9df4beee cleaned up Calc template functions 2021-05-06 20:47:40 -07:00
Noel Berry
6f2cf82b8e added std::hash for custom string type for use in unordered_map etc 2021-05-06 20:47:22 -07:00
Noel Berry
682cc12780 fixed packer sub rectangle 2021-04-11 22:07:46 -07:00
Noel Berry
0f04ff0803 packer can optionally pack a source rectangle of an image
useful for packing tilesets
2021-04-11 20:57:09 -07:00
Noel Berry
459d2ad085 fixed win32 backend not getting Alt keyboard presses 2021-04-11 20:56:16 -07:00
Noel Berry
e55e84f149 fixed Mat3x2 == operator 2021-04-09 22:57:31 -07:00
Noel Berry
63c2493fd3 fixed Str::replace 2021-04-09 22:57:20 -07:00
Noel Berry
78b8140f53 fixed incorrect enum names in SDL2 platform 2021-04-06 17:45:26 -07:00
Noel Berry
65f7194e4f refactored FileMode to make more sense 2021-04-05 01:07:16 -07:00
Noel Berry
9e8a181fd2 RectI::overlap_rect fix 2021-04-05 01:06:21 -07:00
Noel Berry
c6b5e98deb implemented batch push_layer and pop_layer properly 2021-04-03 22:27:23 -07:00
Noel Berry
aa6efb23b1 added RectI::overlap_rect 2021-04-03 22:24:51 -07:00
Noel Berry
14a53c0f3a fixing SDL2 if can't be found 2021-04-02 10:56:07 -07:00
Noel Berry
0c3cac2d08 indentation fixes 2021-03-27 23:29:03 -07:00
Noel Berry
1376ef874b fixing win32 file operations for 64 bit integers 2021-03-26 22:48:16 -07:00
Noel Berry
3b4f721b64 fixing tab mismaches 2021-03-26 00:58:43 -07:00
Noel Berry
e406a9d3c6 added text input to win32 platform backend 2021-03-26 00:56:21 -07:00
Noel Berry
0a9f825660 mouse wheel input to win32 platform backend 2021-03-26 00:35:31 -07:00
Noel Berry
94f25cea88 removing redundant framebuffer virtual methods 2021-03-24 01:07:49 -07:00
Noel Berry
bd9736df03 simplified texture and framebuffer create methods 2021-03-24 00:56:43 -07:00
Noel Berry
1570e9becf
Removing incorrect comment 2021-03-23 19:53:51 -07:00
Noel Berry
6fddd34ca5 cleaning up cmake defines; adding a Win32 Platform Backend 2021-03-23 01:56:53 -07:00
Noel Berry
9e3f745a38 removed drawing folder; moved to graphics 2021-03-22 16:53:27 -07:00
Noel Berry
a001a61847 fixed SDL2 controller index mismatch
SDL2 added event returns the index, but all other ones return the InstanceID, which I was not aware of! Pretty big error.
2021-03-21 15:49:11 -07:00
Noel Berry
088851b43f Lots of documentation & commenting 2021-03-21 02:08:28 -07:00
Noel Berry
9b42bba16e spritefont takes a vector instead of a null-terminated charset 2021-03-20 23:24:18 -07:00
Noel Berry
d388931dd3 fixed incorrect D3D11 swap chain parameter 2021-03-20 22:23:34 -07:00
Noel Berry
4351d77f73 fixing various clang warnings 2021-03-20 22:17:40 -07:00
Noel Berry
f3bbda5f6c simplified and cleaned up new input binding implementation 2021-03-20 21:16:36 -07:00
Noel Berry
3f07c03fa5 new input binding/mapping implementation 2021-03-20 19:23:20 -07:00
Noel Berry
d73241e8fe replaced log.h with common.h, added easier shorthand for int types 2021-03-20 17:33:04 -07:00
Noel Berry
fb21ec869d fixed Texture::get_data for depth buffer textures in d3d11 2021-02-22 21:50:53 -08:00
Noel Berry
77f551f65e d3d11 clear fix when no depth buffer is enabled 2021-02-22 15:15:31 -08:00
Noel Berry
2de541fb18 fixing d3d11 depth buffers, adding depth buffer clear support 2021-02-21 23:00:37 -08:00
Noel Berry
a72cd5cab6 simplifying logging, changing App events to std::function 2021-02-21 18:43:42 -08:00
Noel Berry
f8741e27e2 vec2 & rect code cleanup 2021-02-21 16:30:21 -08:00
Noel Berry
118af7d3b4 cleaned up compile warnings from backend_d3d11 2021-02-21 16:29:45 -08:00
Noel Berry
2ea0ed5870 removed warnings from time.cpp 2021-02-21 16:29:23 -08:00
Noel Berry
ac58379de8 more precise timing
renamed Time::elapsed -> Time::seconds, change type to double
updated game to store ticks (microseconds) instead of milliseconds for better update precision
2021-02-06 00:13:50 -08:00
Noel Berry
1e1e150411 cleaning up Color struct a little 2021-01-30 19:48:14 -08:00
Noel Berry
add76cd968 fixed texture packer not trimming properly 2021-01-19 00:06:22 -08:00
Noel Berry
e9d678d880 fixed parsing tag colors in aseprite parser 2021-01-14 19:40:49 -08:00
Noel Berry
69e5e7447b added Path::join utility method 2021-01-14 18:42:12 -08:00
Noel Berry
261e2fd5e7 stream.h cleanup & commenting 2021-01-14 12:21:59 -08:00
Noel Berry
1063f1ff29 vec2 bool comparisons should be const 2021-01-11 00:25:51 -08:00
Noel Berry
ecb9da86aa batcher and spritefont support utf8 strings 2021-01-08 12:01:39 -08:00
Noel Berry
3bc36981cb D3D11 ResizeBuffers fix
pass count as 0 for automatic value instead of explicit, which could be wrong.
2021-01-06 13:20:29 -08:00
Noel Berry
3fa9f99791 a few notes and cleanup from previous merge 2021-01-05 20:44:02 -08:00
Noel Berry
66e8b34d37
Merge pull request #7 from kevinbchen/master
Emscripten build
2021-01-05 20:38:51 -08:00
Noel Berry
47555a51cb D3D11 BlendMode Mask wasn't hooked up 2021-01-04 19:01:08 -08:00
Noel Berry
0f15437c4d opengl needs to reset ColorMask on FrameBuffer clear 2021-01-04 19:00:56 -08:00
kevinbchen
6ade1624f1 Emscripten build 2021-01-04 00:58:24 -08:00
Spencer Alves
55f816043a Fixes for building on Linux 2021-01-03 23:04:01 -08:00
Noel Berry
ff4d4b1acb moving ifdefs into implementation 2021-01-02 20:46:42 -08:00
Sherjil Ozair
4e80149987 Add required headers to compile on macos 2021-01-03 02:27:58 +00:00
Noel Berry
d8930f15ac added Calc::approach for Vec2 2020-12-31 18:29:13 -08:00
Noel Berry
30cfbf203e removed unnecessary logs 2020-12-31 18:29:02 -08:00
Noel Berry
227fb51105 fixing float->int warning, make it explicit 2020-12-31 18:28:36 -08:00
Noel Berry
241d863ac4 restructured project to match a more standard cmake setup 2020-12-31 13:43:23 -08:00