Commit Graph

201 Commits

Author SHA1 Message Date
yoan stamant
fe0d176e22 [StateTree]
- fixed scrub state not refreshed when selecting another instance
 -added GetInstanceName and using it instead of GetInstanceDescription for the instance tree view to get lighter UI
- used a single external scrollbar for instances and timelines treeviews
#rnx
#rb mikko.mononen

[CL 25817285 by yoan stamant in ue5-main branch]
2023-06-06 11:25:12 -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
yoan stamant
99fe121af5 Updated names and descriptions for GameplayTag StateTree conditions so they are more consistent with the actual BP library
#jira UE-187208
#rnx
#rb mikko.mononen
#rb remi.toupingaudet

[CL 25792789 by yoan stamant in ue5-main branch]
2023-06-05 11:14:29 -04:00
mikko mononen
0308e0f04a StateTree: Fixed and improved transition status reporting
- Allow to specify the completion status and terminal state when calling Stop() on State Tree exection context
- Global task's execution status directly translates to stree state on global EnterState (previously could just fail)
- Report terminal state transitions for global tasks (allows to use same task erro handling on states and global)
- Tie global task exection to the tree status, global tasks get ExitState() when transitioning to terminal state
- RequestTransition() was errorneuously reporting TreeRunStatus (instead of LastTickStatus) in Transition.CurrentRunStatus, this made it impossible to detect failed transitions on ExitState()

#preflight 647dae328b08a8b7939102ab

[CL 25789064 by mikko mononen in ue5-main branch]
2023-06-05 06:33:07 -04:00
yoan stamant
8021b99db9 [StateTreeDebugger] fixed TreeView refreshed too often
#rnx
#rb mieszko.zielinski
#preflight 6478ddefe319748a834654fa

[CL 25735745 by yoan stamant in ue5-main branch]
2023-06-01 15:05:07 -04:00
yoan stamant
b61f0308cc Static Analysis fix
#rb trivial
#preflight skip

[CL 25701455 by yoan stamant in ue5-main branch]
2023-05-31 10:17:23 -04:00
maxime mercier
341b376265 Fix build break in UE5\main
Fix future CIS error in the StateTreeModule

#rb yoan-stamant
#preflight skip trivial

[CL 25678708 by maxime mercier in ue5-main branch]
2023-05-30 11:37:35 -04:00
yoan stamant
05bc614a8e [StateTreeDebugger]
- Added trace event for Phase (Push + Pop) to make it easier to recreate the event hierarchy when analyzing the traces.
- Merged enums EStateTreeTraceInstanceEventType and EStateTreeTraceNodeEventType to EStateTreeTraceEventType which is mainly a list of verbs that could be reused for different events (States, Instances, Tasks, etc.)
- EStateTreeUpdatePhase is no longer used as flags and reduced to uint8
- Phase events are stacked when producing traces and sent only if meaningful events (Task, State, Transition, etc.) are sent during their scope. This is to avoid sending useless events when the StateTree is ticked without any changes
#rnx
#rb mikko.mononen
#preflight 6474a5e62e05bcc3309d093e

[CL 25663847 by yoan stamant in ue5-main branch]
2023-05-29 10:13:21 -04:00
marc audy
6a41836ccb Fix non-editor builds
#rnx

[CL 25647937 by marc audy in ue5-main branch]
2023-05-26 13:03:05 -04:00
marc audy
abb407d850 Fix missing dependency
#rnx

[CL 25647918 by marc audy in ue5-main branch]
2023-05-26 13:02:39 -04:00
mikko mononen
70c9493717 StructUtils: Added User Defined Struct support for instanced struct and property bag
- Enabled UDS in the struct/property pickers
- Added support for reinstancing instanced struct & co when UDS layout changes

#preflight 64707629c34463d6e8bd9304

[CL 25646984 by mikko mononen in ue5-main branch]
2023-05-26 12:46:32 -04:00
yoan stamant
dc61867869 Fix CIS UEFN error
#rb trivial
#preflight skip

[CL 25646614 by yoan stamant in ue5-main branch]
2023-05-26 12:38:37 -04:00
marc audy
84e6a05be9 Fix [[nodiscard]] error
#rnx
[FYI] yoan.stamant

[CL 25645275 by marc audy in ue5-main branch]
2023-05-26 12:18:32 -04:00
yoan stamant
62bc0c3239 [StateTreeDebugger]
- timeline tracks can be marked as stale (from a previous PIE session) to change their look
- added world simulation timestamp for traces to represent the tracks in simulation time and not trace session time
- create dedicated methods on the StateTree module to Start/Stop traces
- unneeded trace channels are deactivated and restored if possible for a StateTree debug session in order to reduce trace size
- DebuggerView can now auto start new trace on a new PIE session (new settings 'bShouldDebuggerAutoRecordOnPIE'') or user can control with dedicated button (similar to RewindDebugger)
- moved StateTree editor settings under section "Plugins"
#rnx
#rb mikko.mononen
#preflight 646e18e46c2a2532b1d92984

[CL 25644105 by yoan stamant in ue5-main branch]
2023-05-26 11:59:58 -04:00
yoan stamant
beab407c1e CIS fix Issue 308456
#rb trivial
#preflight skip

[CL 25592136 by yoan stamant in ue5-main branch]
2023-05-23 18:12:02 -04:00
yoan stamant
8155710fd1 [StateTree debugger]
- added traces for transitions
- support for recursive state selection
- fixed breakpoints not stopping execution since timelines were added
- added meta data to types used for event visualization
- forced expansion for all treeview items in frame details
#rnx
#rb mikko.mononen
#preflight 646cb538205f5d23d5206392

[CL 25582715 by yoan stamant in ue5-main branch]
2023-05-23 10:46:16 -04:00
bryan sefcik
da92084a12 Optimized out more private modules includes and dependencies.
#preflight 64627c382965f6ea8ea83bd6

[CL 25479683 by bryan sefcik in ue5-main branch]
2023-05-15 16:26:12 -04:00
marc audy
8c807f2afe Downgrade more errors :(
[FYI] Mikko.Mononen
#rnx

[CL 25462193 by marc audy in ue5-main branch]
2023-05-12 19:53:25 -04:00
marc audy
1cb66faf32 Downgrade error for time being until failures can be investigated
[FYI] Mikko.Mononen
#rnx

[CL 25458615 by marc audy in ue5-main branch]
2023-05-12 16:02:01 -04:00
yoan stamant
768d9bfaa4 [StateTreeDebugger] fixed some Prev/Next frame button actions when scrub position ends up between frames with events
#rnx
#rb mikko.mononen
#preflight 645cde836b4bdec267897322

[CL 25426493 by yoan stamant in ue5-main branch]
2023-05-11 10:07:09 -04:00
yoan stamant
3e732bbff9 [StateTree] type conversion fixes. Modified the enum type casts to consider underlying type to catch type conversion issue at compile time if underlying type changes.
#rnx
#rb mieszko.zielinski
#rb mikko.mononen
#preflight 45bcd343b5f0c3116c9a796

[CL 25413510 by yoan stamant in ue5-main branch]
2023-05-10 15:14:21 -04:00
mikko mononen
719a4fbc1d State Tree: Add specific state and status when the tree is stopped.
#preflight 645b86a32d27fa25b342163d

[CL 25403433 by mikko mononen in ue5-main branch]
2023-05-10 09:30:13 -04:00
yoan stamant
1cd242d1dc [StateTree] debugger update
- moved debugger related files to a dedicated directory
- trace provider now allows to read all timelines associated to a given state tree asset instance
- added multiple slate widgets to manage tracks and timelines (directly inspired from RewindDebugger to make it easier to integrate the tools together eventually).
- added synchronized lists of instance names and timelines
- converted EStateTreeUpdatePhase to enum flags used to build frame details hierarchically
#preflight 645a57584c3ec54e6e65f494

[CL 25390252 by yoan stamant in ue5-main branch]
2023-05-09 12:57:56 -04:00
jodon karlik
472b38353a Properly deprecate old IsDataValid for a new, const version with FDataValidationContext.
This allows your assets to warn on top of erroring out.

#jira UE-183475
#preflight 644ae7701c2846595cbe0e21

[CL 25224515 by jodon karlik in ue5-main branch]
2023-04-27 17:53:18 -04:00
Steve Robb
17cdae8d53 Fixed mismatched copy constructor/assignment operator in FStateTreeEditorPropertyPath.
#rb none
#jira none
#preflight none

[CL 25197646 by Steve Robb in ue5-main branch]
2023-04-26 10:20:08 -04:00