Commit graph

2079 commits

Author SHA1 Message Date
774620c673 Change math::matrix storage type in preparation for dynamic-sized matrices 2025-10-25 16:12:38 +03:00
17d857ecf2 Use util::array as the storage for math types with dynamic size 2025-10-25 15:20:59 +03:00
e40467a8d1 Add util::array - a dynamic array without auto-expansion 2025-10-25 15:20:42 +03:00
b99a4da18f Rename util::array -> util::ndarray 2025-10-25 14:51:30 +03:00
e23455356d Support float32 output in SDL2 audio backend (with int16 fallback) 2025-10-23 18:40:30 +03:00
64ffe27c2a Fix abs(fixed_point), lmao 2025-10-19 02:40:35 +03:00
615ee51229 Support async::executor::clear() 2025-10-18 17:31:34 +03:00
78e9731d8d Fix math library std::formatters & make them use format rules derived from base scalar type 2025-10-18 15:27:39 +03:00
b1ea7bc763 Add gfx::luminance(color) 2025-10-11 00:39:57 +03:00
424bf5f533 Add ecs::container::detach_finally/destroy_finally helpers 2025-10-10 16:01:17 +03:00
4a4f680d0a Add debug assertions for when an entity's archetype is changed while it is being created/destroyed 2025-10-10 16:01:00 +03:00
8d25721d35 Don't call most SDL_GL_xxx functions when using WebGPU API 2025-09-16 20:45:12 +03:00
7c5062e081 Add hash_table::reserve 2025-09-16 20:44:42 +03:00
7300679f56 Properly initialize math::interval<util::fixed_point> 2025-09-14 17:22:10 +03:00
8a739bf637 Fixed-point improvements:
* Mark everything constexpr
* Use unsigned type for multiplication to prevent UB on overflow
* Add fp -> fp conversions
* Add floor & ceil functions
2025-09-14 00:03:07 +03:00
7beba986ae Add math::cast(ray) 2025-09-14 00:02:28 +03:00
a42d025ffb libs/math fixes in case scalar type isn't implicitly constructible from int 2025-09-14 00:02:19 +03:00
be372ee007 Switch to a simpler & faster uniform real generation algorithm 2025-09-07 14:01:18 +03:00
754b279b1a Optimize math::smootherstep somewhat 2025-09-07 14:00:45 +03:00
08f62bdaf7 Rewrite math::angle_difference without trigonometry 2025-09-07 14:00:25 +03:00
3b88908534 Log max execution time in profiler dump 2025-09-07 13:59:57 +03:00
3b89037c25 Pass string_view instead of string in profiler scopes 2025-09-07 13:59:43 +03:00
3bb8bd36f3 Add math::sqrt(dual) 2025-09-07 13:59:16 +03:00
1b548f1ba3 Profile tasks execution in async::threadpool 2025-09-07 13:59:06 +03:00
5c0d4d8d29 Make future return reference instead of value 2025-09-06 15:35:07 +03:00
0210b61540 Tweak util::fixed_point comments 2025-09-06 11:22:51 +03:00
56d23480b0 Add async::make_ready_future(T const &) 2025-09-04 14:18:18 +03:00
059b2b1539 Use null util::function instead of a stop_execution exception when stopping threadpool threads to prevent exceptions from triggering when debugging 2025-09-04 00:55:04 +03:00
5e7a9b7697 Fix saving thread names in logger 2025-09-04 00:54:26 +03:00
3e4d4f39ea Fix NaN's in profiling statistics 2025-09-04 00:54:04 +03:00
8784938e97 Make async::future shared & support multiple .then() calls 2025-09-03 20:20:16 +03:00
78ea54ac2d Add math::dual weak comparison operators & some transcendental functions 2025-08-31 14:46:20 +03:00
2cce0082cf Fix math::smooth(er)step in case the type isn't implicitly constructible from integers 2025-08-31 14:45:52 +03:00
905e98070c Fix includes in util/recursive.hpp 2025-08-29 16:39:28 +03:00
d2f35276bf Add util::is_pow2 2025-08-29 16:39:19 +03:00
fa214ed956 Support more generic index factories in ecs container 2025-08-24 12:09:00 +03:00
c7b1bc0b0a Fix throwing key_error in util::hash_table for heterogeneous keys 2025-08-17 21:09:31 +03:00
b83a3635fc Remove modification callbacks API from ecs::container - ain't gonna implement them anyway 2025-08-11 18:19:44 +03:00
b1255f7a14 Expose wgpu instance in app context 2025-08-09 13:31:23 +03:00
46f672599d Upgrade to wgpu-native version 25.0.2.1 2025-08-08 23:20:44 +03:00
d3366b56aa Support version argument in find-wgpu-native script 2025-08-08 23:19:48 +03:00
0e000b190d Nump minimum cmake version 2025-08-08 23:19:06 +03:00
7b1ed4bd95 Make util::make_uuid use md5 hash 2025-08-06 17:54:29 +03:00
e57b284ffc Add constexpr md5 hash implementation 2025-08-06 17:53:24 +03:00
80daea54fa Move old font classes to an inline fonts::v1 namespace 2025-08-06 17:53:00 +03:00
68ba3698f8 Fix transcendetal functions on util::fixed_point 2025-07-29 22:29:17 +03:00
ce829f7356 Add permutation groups & implement converting cyclic & dihedral groups into permutations 2025-07-12 01:28:40 +03:00
1f57c76036 Add std::array hash 2025-07-12 01:28:14 +03:00
c3c8446431 Make default-initialized math::trs the identity 2025-07-10 02:13:02 +03:00
a7cbe69712 Add math::trs class & use it in gltf animations 2025-07-09 21:02:22 +03:00