Commit graph

2235 commits

Author SHA1 Message Date
ce40f35ab2 Expose capacity & tombstone count in hash table implementation
All checks were successful
Run tests / Run tests (push) Successful in 7m0s
2026-08-22 19:49:48 +03:00
aea5de0f6a Micro-optimize hash table probing
All checks were successful
Run tests / Run tests (push) Successful in 7m6s
2026-08-22 15:56:29 +03:00
6601824986 Fix NaN in quaternion slerp when slerping opposite quaternions
All checks were successful
Run tests / Run tests (push) Successful in 7m18s
2026-08-20 22:06:59 +03:00
28126518d5 Add shown/hidden and minimized/maximized/restored window events
All checks were successful
Run tests / Run tests (push) Successful in 7m6s
2026-08-19 23:18:11 +03:00
c22c257c96 Rename ecs::index -> ecs::global
All checks were successful
Run tests / Run tests (push) Successful in 7m23s
2026-08-19 12:38:23 +03:00
4aa18c4fda Add component size/stride in ecs component info
All checks were successful
Run tests / Run tests (push) Successful in 7m41s
2026-08-17 17:45:44 +03:00
7e9596d77f Add math::quadratic_spline_acceleration helper
All checks were successful
Run tests / Run tests (push) Successful in 7m16s
2026-08-16 17:03:17 +03:00
156a58a59a Fix gltf parser in case a material doesn't have 'pbrMetallicRoughness' field 2026-08-16 17:03:01 +03:00
ff7eb827fe Add psemek_ecs_define_component_ext
All checks were successful
Run tests / Run tests (push) Successful in 7m12s
2026-08-14 17:17:03 +03:00
4aa6760f64 Add helper macros for defining ecs components and their to_string() methods
All checks were successful
Run tests / Run tests (push) Successful in 7m21s
2026-08-14 16:48:06 +03:00
75df1be94d Add std::format helpers for pointers, optional, variant, and support an extension mechanism using format_impl() that doesn't require manually specializing std::formatter 2026-08-14 16:46:09 +03:00
17be2f3aaa Set default supported C++ standard version to C++23
Fix deprecation of std::aligned_storage
2026-08-14 16:37:00 +03:00
ce5531dbbb Fix byte order when printing util::uuid & add uuid formatter 2026-08-14 16:35:57 +03:00
99063348e3 Add util::fixed_point formatter 2026-08-14 16:35:07 +03:00
abec5474f0 Add trunc() and fract() for util::fixed_point 2026-08-14 16:34:58 +03:00
d42639edba Add random::generator formatter 2026-08-14 16:34:20 +03:00
c96766659c Add math::trs formatter 2026-08-14 16:34:00 +03:00
305d1556c2 Format null ecs::handle as (none) 2026-08-14 16:33:40 +03:00
1265b816d3 Replace ecs::container::describe() with describe_short() and describe_detailed(), and introduce entity inspection API
All checks were successful
Run tests / Run tests (push) Successful in 6m56s
2026-08-13 18:03:57 +03:00
0fecd6375b Add util/string.hpp 2026-08-13 18:02:55 +03:00
68d8e4b18a Use RAII wrapper for method recursion depth in ecs::container 2026-08-13 16:50:53 +03:00
1f7d9e278f Allow non-const constructors, destructors, and finally callbacks in ecs::container
All checks were successful
Run tests / Run tests (push) Successful in 7m6s
2026-08-13 15:01:35 +03:00
091c467d2b Unified psemek_package_resources implementation across platforms (always behaves like glob_recurse)
All checks were successful
Run tests / Run tests (push) Successful in 6m53s
2026-07-26 20:44:26 +03:00
d5a513285b Fix packaging files on web
All checks were successful
Run tests / Run tests (push) Successful in 6m57s
2026-07-26 20:26:16 +03:00
c2196d7dc8 Add freetype support on web
All checks were successful
Run tests / Run tests (push) Successful in 6m53s
2026-07-25 19:28:29 +03:00
2be90728ed Fix file globbing in psemek_package_files on web 2026-07-25 19:28:19 +03:00
04cde80596 Add OpenGL support in freetype fonts
All checks were successful
Run tests / Run tests (push) Successful in 6m55s
2026-07-25 03:13:09 +03:00
68650da6f5 Support margins & offsets in monospace_font, and add a new default 5x7 font
All checks were successful
Run tests / Run tests (push) Successful in 7m26s
2026-07-24 15:52:04 +03:00
d4abc645f4 Don't apply sRGB default framebuffer option in web builds
All checks were successful
Run tests / Run tests (push) Successful in 7m6s
2026-07-24 02:34:00 +03:00
793f83f666 Flush each log message in web builds 2026-07-24 02:33:40 +03:00
c5b245eef8 Add sampler2DShadow to gles shader prefix 2026-07-24 02:33:26 +03:00
a38527a322 Remove useless line in stroking shader in gfx::painter2
All checks were successful
Run tests / Run tests (push) Successful in 7m2s
2026-07-21 20:37:22 +03:00
2f7774b83f SDF-based + arbitrary affine transformations vector graphics experiments (gfx::painter2)
All checks were successful
Run tests / Run tests (push) Successful in 7m1s
2026-07-21 18:08:56 +03:00
03e063213d Add math::shear
All checks were successful
Run tests / Run tests (push) Successful in 7m0s
2026-07-21 16:46:21 +03:00
1338aa05ed Introduce gfx::shader_source to simplify creating shaders from concatenated sources 2026-07-21 13:28:31 +03:00
11d96829b6 Support retrieving linear & affine matrix, translation vector, and affine transform from math::orthographic 2026-07-21 13:21:24 +03:00
0236fc97b7 Add srgb default framebuffer support in application options (implemented in sdl2 non-web only) 2026-07-21 13:20:10 +03:00
63f247c877 Update triangulation example: use input GeoJSON and support multipolygon
All checks were successful
Run tests / Run tests (push) Successful in 7m5s
2026-07-20 18:09:10 +03:00
e032f8d54b Disable automatic image decoding in web builds
All checks were successful
Run tests / Run tests (push) Successful in 6m59s
2026-07-20 15:24:51 +03:00
d785efc708 Fix canvas aspect ratio in web builds 2026-07-20 15:24:37 +03:00
0ecc33cc29 Log SDL2 window size at window creation 2026-07-20 15:24:15 +03:00
506a6c303e Add audio::mixer::max_length
All checks were successful
Run tests / Run tests (push) Successful in 6m43s
2026-07-19 19:39:54 +03:00
99b103b267 Fix audio::recorder::request 2026-07-19 19:39:45 +03:00
ae2efc94fb Add audio::duration::from_seconds
All checks were successful
Run tests / Run tests (push) Successful in 6m43s
2026-07-19 13:34:32 +03:00
20c3fca4b4 Add inline to audio::literals
All checks were successful
Run tests / Run tests (push) Successful in 6m50s
2026-07-19 03:35:33 +03:00
e1dfca7293 Add missing pragma once
All checks were successful
Run tests / Run tests (push) Successful in 6m49s
2026-07-19 03:28:09 +03:00
e94490cf95 Add butterworth low & high pass filters
All checks were successful
Run tests / Run tests (push) Successful in 6m58s
2026-07-19 02:16:29 +03:00
b39475d3ac Replace audio::feedforward/feedback filters with general linear filters 2026-07-19 01:48:39 +03:00
4de0499d29 Add audio envelope helper based on a sequence of linear or exponential segments
All checks were successful
Run tests / Run tests (push) Successful in 6m46s
2026-07-18 22:32:47 +03:00
748035c514 Add audio::literals to represent durations like 100_ms or 0.5_s 2026-07-18 22:32:25 +03:00