Commit Graph
999 Commits
Author SHA1 Message Date
Dmitry Stepanov 2482747fb2 fixed batching in push_triangles
- do not add new bundle when the evaluated id is the same
- instead, update the number of triangles in the bundle
- vertex/index buffer will be the same across all bundles with the same vertex layout
2026-07-08 18:41:16 +03:00
Dmitry Stepanov 6a858abda9 fixed incorrect usage of dynamic surface cache
- generate a bundle per material and a surface per vertex buffer layout
- add any number of instances to the bundle, but leave the number of surfaces the same
- fixes uncontrollable growth of dynamic surface cache (especially when moving camera)
2026-07-07 23:53:42 +03:00
Dmitry Stepanov c9f454509f print dynamic surface cache stats 2026-07-04 21:03:33 +03:00
Dmitry Stepanov 5112072d1e bump msrv + clippy fixes 2026-07-04 20:54:03 +03:00
Dmitry Stepanov 60d316fa71 fixed uncontrollable growth of dynamic surface cache 2026-07-04 20:52:22 +03:00
Dmitry Stepanov e9860c2d34 removed redundant memory allocations for skybox cube map
- in some cases saves up to 200 Mb of RAM (tons of prefabs)
2026-07-03 23:00:20 +03:00
Dmitry Stepanov fc305b3b02 property editors for kcc 2026-06-26 21:47:16 +03:00
Dmitry Stepanov dc514811f0 added missing PartialEq impls for kinematic character controller 2026-06-26 21:35:41 +03:00
Dmitry Stepanov 10724b7542 2d kinematic character controller 2026-06-24 21:44:54 +03:00
Dmitry Stepanov e03b033664 fixed default impl for CharacterAutostep 2026-06-22 23:37:40 +03:00
Dmitry Stepanov 0b8038aa27 kinematic character controller
- mostly a integration/wrapper for rapier's kinematic character controller with a few useful methods
- 3d only for now
- experimental
2026-06-21 23:13:57 +03:00
Dmitry Stepanov dee90e6069 preserve rigid body type in ragdoll 2026-06-18 22:37:19 +03:00
Dmitry Stepanov df3549d942 make isometry_from_global_transform public 2026-06-17 23:02:08 +03:00
Dmitry Stepanov fbcc8655d7 typed handles for shape casting 2026-06-17 21:55:03 +03:00
Dmitry Stepanov 4fbb2b0182 Physics::cast_collider_shape 2026-06-17 21:48:23 +03:00
Dmitry Stepanov 1f88118974 fixed re-export issues
- re-exporting only `shape::*` is kinda pointless, since it does not have any actual shapes defined
- re-exporting the whole `geometry` module is much better, because it solves the issue above
2026-06-15 23:23:34 +03:00
Dmitry Stepanov d179d10e50 update to rapier 0.33 2026-06-14 22:17:47 +03:00
Dmitry Stepanov 5e9cabba00 template fixes + more PartialEq impls 2026-06-11 12:25:21 +03:00
Dmitry Stepanov 806c3ed297 finished with PartialEq impls 2026-06-11 12:05:30 +03:00
Dmitry Stepanov 6ffc26b274 more precise naming 2026-06-02 21:49:02 +03:00
Dmitry Stepanov 2ce1624186 renamed SceneGraphNode trait to NodeWrapper
- `SceneGraphNode` was implemented for types `struct Wrapper(Box<dyn NodeTrait>)`
- calling such types node itself is wrong, because the actual node is stored inside the box
2026-05-31 22:17:31 +03:00
Dmitry Stepanov e485a2fc37 removed unused associated type 2026-05-31 21:53:49 +03:00
Dmitry Stepanov 7f33a13ff9 merged TypeUuidProvider trait into Reflect 2026-05-28 21:50:17 +03:00
Dmitry Stepanov 4876827a6d fixed tests + docs comment 2026-05-25 19:53:56 +03:00
Dmitry Stepanov bee807ea17 fixed downcasting for widgets and scene nodes
- removed a bunch of unnecessary casts to &dyn Reflect
2026-05-22 20:31:20 +03:00
Dmitry Stepanov 480559e07a refactored Reflect::as_xxx methods to return value itself
- there's no reason anymore to use closures there because proxy structures now supports reflection in normal way
2026-05-21 18:22:39 +03:00
Dmitry Stepanov 07566d95b4 use derived impls of Reflect for Script + Node 2026-05-20 23:47:38 +03:00
Dmitry Stepanov ec83a5d6e5 refactored Reflect trait to remove unnecessary proxying
- proxying to the inner value overly complicates the implementation and adds a lot overhead
- this is quite dangerous change since it may have subtle side effects, needs to be thoroughly tested
2026-05-19 18:49:17 +03:00
Dmitry Stepanov 93d4920477 renamed methods with confusing naming + docs 2026-05-16 19:31:41 +03:00
Dmitry Stepanov e7f1b1d4d8 cleaned up type info fetching from Reflect + put type info in a struct 2026-05-15 11:32:33 +03:00
Dmitry Stepanov b3be88a471 Reflect::into_any -> Reflect::into_inner_reflect + docs 2026-05-14 11:28:08 +03:00
Dmitry Stepanov 91f8c360b5 removed Reflect::as_any/as_any_mut
- useless methods because can be replaced via `Reflect::as_reflect` + `as &dyn Reflect` cast
2026-05-13 23:33:13 +03:00
Dmitry Stepanov d317a1179f fixed doc comments + fixed misleading docs 2026-05-10 20:06:56 +03:00
Dmitry Stepanov 1c0cf15c50 unified naming for field fetching via reflection
- previous approach with `ComponentProvider` trait was quite misleading, it didn't return a "component" - it simply returned marked fieds
- the new approach is more explicit - method names tells exactly what they do
2026-05-10 18:28:18 +03:00
Dmitry Stepanov c03e4aa7e9 removed ComponentProvider, merged its functionality into Reflect
- chained component fetching isn't supported yet, so it is not one-to-one merge
2026-05-09 19:55:11 +03:00
Dmitry Stepanov 5cf90dff53 Reflect::first_field_ref/mut_of_type 2026-05-08 15:18:08 +03:00
Dmitry Stepanov 1904f95519 Reflect::get_field_direct_ref/mut 2026-05-08 12:56:48 +03:00
Dmitry Stepanov 660bcd709a renamed field -> find_field + field_mut -> find_field_mut 2026-05-06 23:49:46 +03:00
Dmitry Stepanov 60d8b2d9eb cargo fmt 2026-04-25 00:03:53 +03:00
Dmitry Stepanov 7a0ad6d792 fixed crash on exit when using the engine in hot reloading mode 2026-04-25 00:03:07 +03:00
Dmitry Stepanov af0f6178d8 catch and report infinite message loops in ui message handling 2026-04-23 23:04:41 +03:00
Dmitry Stepanov 94a0420854 improved logging for hot reloading failures 2026-04-23 21:52:37 +03:00
Dmitry Stepanov f3befeef86 fixed clippy warnings 2026-04-22 23:49:45 +03:00
Dmitry Stepanov d1aba15d44 fixed copy_node_inplace implementation 2026-04-17 22:45:39 +03:00
Dmitry Stepanov 9214ae372f remove unused features 2026-04-15 22:55:39 +03:00
Dmitry Stepanov 7d9146d322 test for Graph::copy_node_inplace 2026-04-15 22:53:41 +03:00
Dmitry Stepanov 0ab4c6abcd pass sample rate explicitly to SoundEngine constructors
- fixed tests
2026-04-09 23:56:14 +03:00
Dmitry Stepanov a4df8a1301 configurable sample rate for fyrox-sound 2026-04-08 22:59:04 +03:00
Dmitry Stepanov 1c18ee7c92 Revert "texture sampler resource"
This reverts commit 68884bdb84.
2026-04-05 11:25:45 +03:00
Dmitry Stepanov 4a0602ab25 bump version for the future release
- helps to catch bug reports from the "nightly" version of the engine
2026-03-30 20:50:58 +03:00