Commit Graph

69 Commits

Author SHA1 Message Date
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
mikko mononen
44158dfc31 StateTree: small editor fixes
- updated type tooltip
- use stable sort to keep item order in same category intact

#rb Mieszko.Zielinski
#preflight 6390694c7e0feab0b7acccd5

[CL 23426899 by mikko mononen in ue5-main branch]
2022-12-07 06:57:23 -05:00
mikko mononen
ea716a7a05 StateTree: Fix localization key duplicate.
#rb trivial
#preflight 638dbcc49242c01326fd49eb

[CL 23388640 by mikko mononen in ue5-main branch]
2022-12-05 06:38:36 -05:00
Stephen Holmes
2f18773caa Addressing the remaining AI numeric conversion issues.
#jira UE-166285
#review
#preflight 638a031b35192facc1c0fd77

[CL 23372606 by Stephen Holmes in ue5-main branch]
2022-12-02 10:07:29 -05:00
mikko mononen
df359ce99e StateTree: Transition improvements
- Removed gated delay (transition will be delayed until it has been "pressed" for N seconds)
- Delay now triggers after the delay duration has passed (single trigger, not "pressed", works with events too)
- Added random variation for the delay
- Tick/Event transitions has precedence over completion transitions (that is, they are handled before completion transitions)
- Removed delay and blocking from completion transitions
- Small improvements for transitions UI

#rb Mieszko.Zielinski
#preflight 6389e0b435192facc1b95cdb

[CL 23371519 by mikko mononen in ue5-main branch]
2022-12-02 07:57:31 -05:00