Commit Graph

251 Commits

Author SHA1 Message Date
mikko mononen
f543d8078b PropertyAccessEditor: Added BindingChain to OnCanBindProperty.
[CL 31465565 by mikko mononen in ue5-main branch]
2024-02-14 07:07:33 -05:00
mikko mononen
bcd3274e9c PropertyBinding: Changed the results passed to OnCanAcceptPropertyOrChildrenWithBindingChain to be consistent with the rest of the API.
#rb Mieszko.Zielinski#preflight 65cb57734e11958de197f696

[CL 31421923 by mikko mononen in ue5-main branch]
2024-02-13 08:30:26 -05:00
mikko mononen
261077c16c StateTree: Small UI fixes
- changed the font to default font to support all supported languages (e.g. chinese was displaying wrong)
- removed bad pattern of using new FSlateRoundedBoxBrush() in editor node tails (leaks memory)
- fixed potentially dangerous use of [this] capture in FStateTreeTransitionDetails

#rb Yoan.StAmant

[CL 30966405 by mikko mononen in ue5-main branch]
2024-01-29 07:41:47 -05:00
mikko mononen
dd16540a54 StateTree: Storing global parameters data in instance storage.
- Implies that parameters are only set once at start
- Allows parameters to be safely mutated if needed, e.g. via property references

[CL 30765232 by mikko mononen in ue5-main branch]
2024-01-22 05:38:03 -05:00
juan portillo
756afecf52 State Tree Details:
- Disable Category Row Buttons if Property Editing is disabled

#rb mikko.mononen
#jira UE-204437

[CL 30764358 by juan portillo in ue5-main branch]
2024-01-22 03:26:23 -05:00
steve robb
6d5b974842 Fixed up a lot of bool-taking container resize functions to take EAllowShrinking instead.
[CL 30735396 by steve robb in ue5-main branch]
2024-01-19 19:41:56 -05:00
mikko mononen
b80c371c77 StateTree: Added parameter overrides for StateTree states
#rb Yoan.StAmant

[CL 30589270 by mikko mononen in ue5-main branch]
2024-01-12 05:08:35 -05:00
mikko mononen
e669bb6cd9 StateTree: Added property references (get pointer to a property based on binding)
- Added FStateTreePropertyRef which allows to get pointer to bindable output properties in the StateTree
- This will eventually supercede FStateTreeStructRef

[CL 30563615 by mikko mononen in ue5-main branch]
2024-01-11 04:24:45 -05:00
mikko mononen
f6cedab062 PropertyAccess: Added a version of the OnCanAcceptProperty which gets the property chain passed in.
#rb thomas.sarkanen

[CL 30526373 by mikko mononen in ue5-main branch]
2024-01-10 03:38:34 -05:00
mikko mononen
a0742e30e1 StateTree: Added option for State Tree parameters to be overridden.
- Added property override logic into FPropertyBagInstanceDataDetails
- Added hooks to allow to customize the peoperty override logic by deriving from FPropertyBagInstanceDataDetails
- Added array of overridden property IDs in FStateTreeReference

#rb Mieszko.Zielinski

[CL 30502099 by mikko mononen in ue5-main branch]
2024-01-09 07:30:16 -05:00
yoan stamant
8033d0dd79 [StateTreeDebugger] added trace event for conditions forced to a given result, either from an internal failure to access source data or from the evaluation mode set.
#jira UE-200473
#rb mikko.mononen

[CL 30480397 by yoan stamant in ue5-main branch]
2024-01-08 09:52:36 -05:00
robomerge
1ac3b5078a StateTree: Changed guid fixup to be more deterministic.
#jira UE-202608
#rb Matt.Peters, Mieszko.Zielinski

[CL 30426680 by robomerge in ue5-main branch]
2023-12-21 07:27:54 -05:00
mikko mononen
2e1d54f00c StateTree: Update state details after adding a globa task/eval so that bindings will pick up the new task
#jira UE-188114
#rb Yoan.StAmant

[CL 30389231 by mikko mononen in ue5-main branch]
2023-12-19 02:40:28 -05:00
yoan stamant
ee861bd116 [StatetreeDebugger] fixed empty lines in some node details
#rb mikko.mononen

[CL 30383791 by yoan stamant in ue5-main branch]
2023-12-18 17:28:38 -05:00
mikko mononen
00ae9d4fac StateTree: Change StateTree editor transition display to reflect the execution logic
- The execution logic will transition to Root if no state is found, change editor to reflet that
- Change viewmodel from ref to ptr to make it optional (allows to reuse the row for non-editing purposes)

[CL 30315165 by mikko mononen in ue5-main branch]
2023-12-14 02:55:56 -05:00
yoan stamant
291f8bc9e0 [StateTreeDebugger] support for linked tree assets
- added new dedicated section for completed states
#rb mikko.mononen

[CL 30293000 by yoan stamant in ue5-main branch]
2023-12-13 10:21:13 -05:00
mikko mononen
b9896e5779 StateTree: FIx type on error message.
[CL 30289516 by mikko mononen in ue5-main branch]
2023-12-13 07:06:24 -05:00
mikko mononen
60a5dffa2d StateTree/SmartObjects: fix incorrect use of EFieldIterationFlags::None which prevents inherited struct's properties to be visited.
#rb Mieszko.Zielinski

[CL 30208750 by mikko mononen in ue5-main branch]
2023-12-08 07:31:01 -05:00
christopher waters
86af3ce99d Fixing various header only compile errors.
[CL 30138626 by christopher waters in ue5-main branch]
2023-12-05 17:55:30 -05:00
mikko mononen
400112a177 StateTree: Enabled parameters for all state types
- Allow each state to have parameters (not super useful yet)
- Made property bindings for parameters to retain binding when a param is renamed (keeps track of the property bag ID)
- Fixed access of temporary instance data with EStateTreeDataSourceType::StateParameterData
- Added comments for UStateTreeState properties
- Changed property order of UStateTreeState so that display data comes first, then state settings, and finally parameters
- Fixed FStateTreeStateParametersInstanceDataDetails to allow property editing and value binding at the same time

#rb Mieszko.Zielinski

[CL 30112368 by mikko mononen in ue5-main branch]
2023-12-05 06:59:39 -05:00
mikko mononen
fc52c04579 StateTree: Fixed crash when removing a task from state
[CL 30073585 by mikko mononen in ue5-main branch]
2023-12-04 04:05:29 -05:00
mikko mononen
965459a538 StateTree: Fix Mac compiler not being able to figure out implicit cast from TObjectPtr<> to UObject
[CL 30073495 by mikko mononen in ue5-main branch]
2023-12-04 03:46:59 -05:00
mikko mononen
16962d6a2f StateTree: Added Linked Asset state type, which allows to link another asset as subtree.
- Added LinkedAsset State Tree State Type
- Allow to pick nested tree asset on LinkedAsset states
- Changed how linked state params are accessed using ParentFrame
- Added temporary instance data
- Temporaries are kept around until state selection
- Create temp instance data during state selection for state parameters (allows to create enter conditions based on subtree state params)
- Instantiate and Start linked State Trees global tasks and evaluators during state selection
- Matching temporary instances created during state selection are moved to instance data on state change (rest are discarded)
- Per node instance data is looked up just once, and FStateTreeExecutionContext::GetInstanceData() only serves the specific instance data.

#rb Mieszko.Zielinski, Yoan.StAmant

[CL 30012308 by mikko mononen in ue5-main branch]
2023-11-30 07:03:20 -05:00
mikko mononen
1d6f7bf84f StateTree: Post edit change events for nodes and their instance data
[CL 29982274 by mikko mononen in ue5-main branch]
2023-11-29 02:52:24 -05:00
ben hoffman
9eb8a6c346 [State Tree] Add an option to retain property values when the class of a node changes
#rb Mikko.Mononen
#jira none

#ushell-cherrypick of 29774367 by kristof.morva1

[CL 29889580 by ben hoffman in ue5-main branch]
2023-11-22 11:37:49 -05:00