Commit Graph
110 Commits
Author SHA1 Message Date
Dmitry Stepanov 14fa44303a GraphNodeConstructor api improvements 2026-09-13 10:44:50 +03:00
Dmitry Stepanov 5df500d03b GraphNodeConstructorContainer::try_get_variant 2026-09-11 22:56:06 +03:00
Dmitry Stepanov 1c38f0785c searching for entity creator 2026-09-10 23:36:04 +03:00
Dmitry Stepanov 0e245ad3f5 GraphNodeConstructorContainer::try_create_variant helper 2026-09-10 22:55:38 +03:00
Dmitry Stepanov f9549f2c1f fixed clippy warnings 2026-08-01 22:33:21 +03:00
Dmitry Stepanov 87486d3892 run clippy fix 2026-07-26 12:57:48 +03:00
Dmitry Stepanov 326be93c3c removed redundant methods
- simplifies the api a bit
- makes no sense to have these methods in the core crate when they're used on the editor only once
2026-07-11 20:29:35 +03:00
Dmitry Stepanov f92f7aa0ea fixed incorrect implementation of graph depth traversal iterator 2026-07-11 18:51:02 +03:00
Dmitry Stepanov 5112072d1e bump msrv + clippy fixes 2026-07-04 20:54:03 +03:00
Dmitry Stepanov c8c2283b2a helper methods 2026-06-15 22:54:00 +03:00
Dmitry Stepanov 048aae2e6e removed ReflectInheriableVariable::clone_value_box
- replaced with `Reflect::try_clone_box`
2026-06-12 22:35:45 +03:00
Dmitry Stepanov d35476c864 more PartialEq impls 2026-06-07 23:58:55 +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 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 1799856ea3 use Reflect auto impl for trait object wrappers 2026-05-21 13:37:28 +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 7a0ad6d792 fixed crash on exit when using the engine in hot reloading mode 2026-04-25 00:03:07 +03:00
Dmitry Stepanov 9b2156e3c5 traverse_iter_mut 2026-04-19 21:36:37 +03:00
Dmitry Stepanov 23bdaaae26 optimized performance of graph depth traversal iterator
- O(n)
- fixed incorrect traversal of sub-graphs
2026-04-18 22:49:19 +03:00
Dmitry Stepanov d767de61b2 non-allocating graph traversal iterator
- performance will be optimized further to be O(n), currently it is something aroung O(nlogn)
2026-04-18 22:35:29 +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
Dmitry Stepanov 9e9e2d7032 1.0.1 + changelog 2026-03-28 09:39:38 +03:00
Dmitry Stepanov 914165f2d9 fixed crash when loading a prefab with hierarchy modified in the base
- crash occurs when the root in the base prefab was changed to some other node
2026-02-19 16:24:20 +03:00
Dmitry Stepanov 496414ee33 bump version 2026-02-12 19:08:48 +03:00
Dmitry Stepanov 4de934e11f 1.0.0-rc.2 2026-02-05 22:04:37 +03:00
Dmitry Stepanov 54773f1def ability to add scene nodes at desired handles 2026-01-27 22:18:16 +03:00
Dmitry Stepanov 47195fad5f ability to fetch scene nodes by uuid 2026-01-26 21:47:44 +03:00
Dmitry Stepanov f60e733bad added important docs 2026-01-23 23:03:52 +03:00
Dmitry Stepanov 197087075b more typed handles + removed duplicated associated type 2026-01-11 18:07:41 +03:00
Dmitry Stepanov f9b5b04d90 typed handles for is_valid_handle 2026-01-11 11:42:16 +03:00
Dmitry Stepanov 4bd361f1ab typed handles in link_nodes+remove_node+unlink_node+isolate_node 2026-01-09 11:34:57 +03:00
Dmitry Stepanov 8b4739066b removed AbstractSceneGraph + BaseSceneGraph, merged in SceneGraph 2026-01-09 10:51:49 +03:00
Dmitry Stepanov 13818290e4 allow comparison of base and derived handles 2026-01-07 10:13:18 +03:00
Dmitry Stepanov 0eb5cc88cc remap handles when cloning user data 2026-01-02 10:08:34 +03:00
Dmitry Stepanov 1e79298d60 error handling for graph + fixes for the engine
- editor fixes on their way
2025-12-23 20:11:46 +03:00
Dmitry Stepanov ef39d2aada updated msrv 2025-10-22 20:27:20 +03:00
b-guild 75b873d72b Making resource handles UUID-based instead of path-based. 2025-10-13 18:55:27 -07:00