Commit Graph

73 Commits

Author SHA1 Message Date
mikko mononen
2d3a68ef3a StateTree: Added handling bindings from instanced sources.
#rb mikko.mononen, thomas.sarkanen

[CL 25842554 by mikko mononen in ue5-main branch]
2023-06-07 09:02:19 -04:00
yoan stamant
dfdc26f0d4 [StateTree] added possibility to disable States and Tasks. Also possible to force condition result to true/false.
#jira UE-187154
#rb mikko.mononen

[CL 25796491 by yoan stamant in ue5-main branch]
2023-06-05 13:12:19 -04:00
mikko mononen
0a2641b902 StateTree: Fix parameter sync in State Tree reference
- Remove transaction that was needed when instanced struct UI was buffered (causes infinite refresh loop now)

#preflight 64783ed75d23eca37d68062a

[CL 25722474 by mikko mononen in ue5-main branch]
2023-06-01 06:08:20 -04:00
mikko mononen
67cd927a14 StateTree: Fix object instance data not being handled correctly when copying a state
#jira UE-185455
#preflight 64674c23d1617529a4e7f071

[CL 25542873 by mikko mononen in ue5-main branch]
2023-05-19 08:27:50 -04:00
mikko mononen
51aa286c45 State Tree: Added new selection behaviors for states
- Added selection behavior None (not selectable)
- Added selection behavior TryEnterState (enters the specific state, does not consider child states)
- Added selection behavior TryFollowTransitions (follows transitions when state is tried to be selected)
- Brushed up a bit the state representation in editor (added icons, cleaned up layout)

#preflight 6436843df12d5de705595942

[CL 25005118 by mikko mononen in ue5-main branch]
2023-04-12 07:59:16 -04:00
mikko mononen
71fb1a0a07 StateTree: Moving OnBindingChanged methods from FStateTreeConditionBase to FStateTreeNodeBase
#preflight 642c164bd6069e71b1f24927

[CL 24909812 by mikko mononen in ue5-main branch]
2023-04-04 09:45:41 -04:00
mikko mononen
8e8589ae6e StateTree: Allow property binding to copy pointers to components
#preflight 642ac4148f078cc7031747ed

[CL 24892144 by mikko mononen in ue5-main branch]
2023-04-03 10:06:31 -04:00
fpwong
febde4dd92 PR #10275: Remove state tree debug LogTemp messages (Contributed by fpwong)
#preflight 642675ee472a24e57063eb0a

[CL 24868213 by fpwong in ue5-main branch]
2023-03-31 03:29:25 -04:00
mikko mononen
ebbe6fc074 StateTree: Fix schema validation when pasting tasks
#rb Mieszko.Zielinski
#preflight 6405950b6e1dadfcdae4132d

[CL 24519201 by mikko mononen in ue5-main branch]
2023-03-06 03:38:51 -05:00
mikko mononen
178c534688 State Tree: Copy and paste State Tree states.
- Refactored State Tree style to follow more recent style pattern
- Added code to ensure that State Tree states outers are always the parent state (fixes issues with FCustomizableTextObjectFactory)
- Added support for Cut/Copy/Paste of state tree states (across State Trees)
- Improved reporting of bad bindings and state links (compiler & UI)

#rb Mieszko.Zielinski
#preflight 6401b6e4aa00423335918e9d

[CL 24499706 by mikko mononen in ue5-main branch]
2023-03-03 11:22:29 -05:00
marc audy
b608402db7 [Backout] - CL24461256 to resolve nonunity errors
[FYI] mikko.mononen
Original CL Desc
-----------------------------------------------------------------
State Tree: Copy and paste State Tree states.
- Refactored State Tree style to follow more recent style pattern
- Added code to ensure that State Tree states outers are always the parent state (fixes issues with FCustomizableTextObjectFactory)
- Added support for Cut/Copy/Paste of state tree states (across State Trees)
- Improved reporting of bad bindings and state links (compiler & UI)

#rb Mieszko.Zielinski
#preflight 63ff52bef43e53f68119073e

[CL 24469431 by marc audy in ue5-main branch]
2023-03-01 15:40:35 -05:00
mikko mononen
6cf89871fe State Tree: Copy and paste State Tree states.
- Refactored State Tree style to follow more recent style pattern
- Added code to ensure that State Tree states outers are always the parent state (fixes issues with FCustomizableTextObjectFactory)
- Added support for Cut/Copy/Paste of state tree states (across State Trees)
- Improved reporting of bad bindings and state links (compiler & UI)

#rb Mieszko.Zielinski
#preflight 63ff52bef43e53f68119073e

[CL 24462230 by mikko mononen in ue5-main branch]
2023-03-01 10:10:00 -05:00
mikko mononen
1be4bf3ce1 StateTree: improve error reporting when pasting state tree nodes
#preflight 63ea0833923476b686bad92b

[CL 24172330 by mikko mononen in ue5-main branch]
2023-02-13 06:19:05 -05:00
mikko mononen
34a1e22051 StateTree: Allow to bind to deep property paths (including arrays and instanced struct/object)
- refactored the property binding representation, editor binding shave now more structure, and removed intermediate representation
- added functionality to resolve property paths agains a known value
- added instanced struct and object indirection types
- added editor functionality to allow to bind to further than first level of properties
- refactored editor tree traversal, allow to access values too
- simplified statetree node ui
- requires to recompile trees, bumped version

#rb Mieszko.Zielinski
#preflight 63e6204ff15c83b79312aca5

[CL 24117094 by mikko mononen in ue5-main branch]
2023-02-10 07:22:48 -05:00
mikko mononen
47bf0fed53 StateTree: Fix StateTreeReference details non-unity build.
#rb trivial
#preflight 63e4ccd504684547087743e4

[CL 24095036 by mikko mononen in ue5-main branch]
2023-02-09 07:03:58 -05:00
mikko mononen
79bea28960 StateTree: Fix state tree reference when placed inside an instanced struct
- when inside an instanced struct, we have to use the property callbacks to update the data, because the underlying value is cached

#preflight 63e4b47d244dc45a20347b5d

[CL 24094513 by mikko mononen in ue5-main branch]
2023-02-09 05:27:59 -05:00
henrik karlsson
9a1d5b1ad4 [Engine/Plugins]
* Ran IWYU on ~170 plugins to remove includes not needed. Public api still keep old includes inside #if UE_ENABLE_INCLUDE_ORDER_DEPRECATED_IN_5_2

#preflight 63d09351574ab9cae4670216
#rb none

[CL 23844750 by henrik karlsson in ue5-main branch]
2023-01-25 02:42:36 -05:00
mikko mononen
e2fd3455a9 StateTree: Allow tasks to request transitions
- Added ability for tasks to request transitions
- Added buffered transition requests
- Added callback method to FStateTreeTaskBase which is called during transition triggering
- Allow FStateTreeStateLink to be added to tasks and conditions (resolved automatically during compile)

#jira UE-174250
#preflight 63ca7ee8977c62635603afcb

[CL 23815873 by mikko mononen in ue5-main branch]
2023-01-23 12:48:04 -05:00
henrik karlsson
9183978e29 [Engine/Plugins]
* Removed includes (using IWYU) in private files

#preflight 63c79978ac35a0e9dabbe408
#rb none

[CL 23770038 by henrik karlsson in ue5-main branch]
2023-01-19 00:48:07 -05:00
henrik karlsson
ca622abf70 * Fixed non unity compile errors
* Added UE_INLINE_GENERATED_CPP_BY_NAME to a few files missing it
* Added HEADER_UNIT_SKIP comment to deprecated files

#preflight skipped
#rb none

[CL 23659670 by henrik karlsson in ue5-main branch]
2023-01-12 02:10:19 -05:00
mikko mononen
652d03ca60 StateTree: Fix deno details for non-unity build
#rb trivial
#preflight 63be84adc543a64b7d2543a2

[CL 23648533 by mikko mononen in ue5-main branch]
2023-01-11 12:43:40 -05:00
mikko mononen
d30ad5127b State Tree: new node picker
- added class picker style new node picker with search box and categories

#rb Mieszko.Zielinski
#preflight 63be76206e6e8d4662c637fb

[CL 23643504 by mikko mononen in ue5-main branch]
2023-01-11 05:08:00 -05:00
mikko mononen
ab3816dd30 StateTree: Added global tasks
- Added global tasks which are run at tree level similar to evals (will replace evals)
	- allows initial state selection to rely in calculated data (e.g. world conditions)
	- allows better reuse of existing logic
- Call evaluator stop in reverse order
- Use some uses of mutable instanced structs
- Copy bindings along with ST nodes
- Remove bindings when removing a ST node, so that undo can restore them

#rb Yoan.StAmant
#preflight 63bd2c7968068a8bd6395d2c

[CL 23632408 by mikko mononen in ue5-main branch]
2023-01-10 15:44:28 -05:00
mikko mononen
007fead525 StateTree: Fixed enum property bindings
- consolidate naming of invalid/empty to none in any enum details
- fix UStateTreeEditorData::GetStructByID (was generally returning first context data)
- when binding to an enum property, prune potential source properties based on enum type

#jira UE-173050
#preflight 639c663e012902cb8db9546d

[CL 23537268 by mikko mononen in ue5-main branch]
2022-12-16 08:44:52 -05:00
mikko mononen
12fe8606a6 StructUtils: Fix crash in propertybag details
- SPinTypeSelector can outlive the detail rows of proeprty bag customization
- Make sure we can detect that case and fail gracefully

#preflight 639af57e2540a78d27d9b69d

[CL 23531353 by mikko mononen in ue5-main branch]
2022-12-15 15:55:38 -05:00