Commit graph

666 commits

Author SHA1 Message Date
12ad3c1c43 Add quaternion stream output operator 2021-08-06 10:40:22 +03:00
69c0ce8c59 Make imported mesh attributes' indices fixed 2021-08-05 16:29:47 +03:00
66f733d937 Fix util::ecs::get_if 2021-07-25 13:00:26 +03:00
4e16f5d9bf Add ray-sphere intersection 2021-07-24 12:00:54 +03:00
47e3970deb Add geom::sphere primitive 2021-07-24 12:00:46 +03:00
3e0060d9cb Add geom::normalized(ray) 2021-07-24 12:00:35 +03:00
02b29af95a Introduce util::ecs::behavior::context 2021-07-24 11:14:43 +03:00
bc7378456b Add gfx::mesh::create(imported_mesh) 2021-07-24 10:13:57 +03:00
4f53537d27 Support non-default-constructible per-species component types in util::ecs 2021-07-23 23:28:44 +03:00
a944f8c4f4 Add geom::rotate_towards 2021-07-23 23:28:16 +03:00
a95182dc60 Add random::uniform(box) 2021-07-23 11:41:21 +03:00
74a513c76b Fix geom::box::volume 2021-07-23 11:41:13 +03:00
153e0f4230 Support retrieving species name in util::ecs 2021-07-23 10:14:11 +03:00
824a15c921 Add random::uniform_angle 2021-07-23 10:13:52 +03:00
57fb1e8f1f Add non-throwing util::ecs::get_if 2021-07-22 10:51:32 +03:00
1bdef9134d Add util::ecs::species_count 2021-07-22 10:51:18 +03:00
f55fd29b58 Support entity removal & explicit traversal in util::ecs 2021-07-22 10:51:03 +03:00
37d1c3c3fd Add util::flat_list::data 2021-07-22 10:49:06 +03:00
1b6bc9a449 Add name parameter to framebuffer::assert_complete for better error reporting 2021-07-21 23:46:30 +03:00
4eef4046cb Add missing includes in geom/quaternion.hpp 2021-07-21 22:47:47 +03:00
4d7f7fa927 Rename ecs::behavior::{components -> component_types} 2021-07-21 22:47:32 +03:00
640bbf47c7 Add prototype ecs implementation with tests 2021-07-21 22:08:38 +03:00
fca22c93e2 Add util::type_name 2021-07-21 22:08:13 +03:00
7b929ec951 Add gfx::lerp for poses 2021-07-21 22:06:18 +03:00
ef53e0e8d2 Add gfx::pose_ref type alias 2021-07-21 22:06:05 +03:00
79b9a8dd76 Add cg::frustum default constructor 2021-07-21 22:05:45 +03:00
90d5917ef4 Fix default window event handling: events are considered processed if mouse is over window 2021-07-21 22:04:59 +03:00
c5802b2bbe Add util::span equality comparison 2021-07-21 22:00:47 +03:00
cad2590bc7 Fix tests 2021-07-20 14:53:23 +03:00
21d6076f5c Support cyclic ui::slider 2021-07-20 14:03:39 +03:00
5f70c61723 Support ui::slider::set_value without issuing callback 2021-07-20 14:03:28 +03:00
45eaab6a9d Add a faster bounded version of pcg::lazy_perlin 2021-07-19 08:40:40 +03:00
ec6552d1a4 Add const version of gfx::mesh::*_buffer 2021-07-18 12:33:18 +03:00
359f9492b3 Fix gfx::setup for instanced attributes 2021-07-18 12:32:20 +03:00
6dd5fd5ee7 Add ui::checkbox interface & default implementation 2021-07-17 17:46:17 +03:00
9f550d7a46 Default window tweaks: add caption margin & draw background 2021-07-17 17:45:26 +03:00
188f840372 Support ui:🪟:on_close 2021-07-17 17:44:41 +03:00
63ef539303 Forbid downscaling rich_button icon 2021-07-17 17:43:32 +03:00
7865297995 Make rich_button::set_label and set_icon virtual 2021-07-17 17:42:56 +03:00
934512f762 Support scaling ui styles 2021-07-17 17:42:30 +03:00
8c21543ecb Support draggable windows 2021-07-17 12:31:13 +03:00
2b46b38da2 Add geom::frac 2021-07-15 18:56:53 +03:00
e8076f528f Add geom::angle(quaternion, quaternion) 2021-07-14 22:35:03 +03:00
4b711fc1c4 Add util::span::empty 2021-07-14 17:04:00 +03:00
de1950f1a6 Rewrite mesh exporter to support armature & poses 2021-07-13 11:55:57 +03:00
fc47633c42 Add bone armature helpers 2021-07-13 11:55:46 +03:00
0af7e8f274 Support setting program uniform by location 2021-07-13 11:54:22 +03:00
d73ce27c32 Optimize program uniform location cache 2021-07-13 11:53:58 +03:00
1cc5d28761 Support integer vertex attributes 2021-07-13 11:46:46 +03:00
b51b0d3a94 Change quaternion coordinate order: wxyz -> xyzw 2021-07-13 11:45:11 +03:00