Commit Graph

157 Commits

Author SHA1 Message Date
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
mikko mononen
6ca4d9f1be StateTree: Fix a potential crash in FStateTreePropertyBindings::ResolvePath().
#preflight 64466b727368de8c98d9c0d2

[CL 25174993 by mikko mononen in ue5-main branch]
2023-04-24 22:59:49 -04:00
yoan stamant
c478e602b3 [StateTree] debugger updates:
- replaced log listing by treeview (as a prototype but will be replaced by a timeline)
- added event for conditions
- added details view for Condition and Tasks instance data
#rb mikko.mononen
#preflight 644002eea35280ed4f7a6afe

[CL 25110578 by yoan stamant in ue5-main branch]
2023-04-19 13:26:23 -04:00
mikko mononen
e6e5128dc1 StateTree: Added simple asset validation which runs Link().
#preflight 643fa760211b661dc4a6c093

[CL 25103565 by mikko mononen in ue5-main branch]
2023-04-19 06:55:02 -04:00
mikko mononen
546d4df750 StateTree: Link state tree when a BP recompiled
- Fixes a crash in property bindings which tried to access data based on the old BP class layout

#preflight 64394feb9566b61450e4c856

[CL 25049335 by mikko mononen in ue5-main branch]
2023-04-14 16:36:43 -04:00
mikko mononen
06f8e1baec StateTree: Fix default value of selection behavior to keep old assets working.
#preflight 6437f2050c4277fc0b16d7fb

[CL 25025476 by mikko mononen in ue5-main branch]
2023-04-13 10:52:23 -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
yoan stamant
b4c666585e [StateTreeDebugger]
- process breakpoints only for instances matching the debugged asset
#rnx
#rb mieszko.zielinksi
#preflight 641455a05d3e25354f16708f

[CL 24687988 by yoan stamant in ue5-main branch]
2023-03-17 09:41:13 -04:00
yoan stamant
1aafe8d726 [StateTreeDebugger] replaced debug serial number mappings by single global counter.
#rnx
#rb maxime.mercier
#preflight 64130c30290c6e5d77d528b9

[CL 24672052 by yoan stamant in ue5-main branch]
2023-03-16 11:43:35 -04:00
yoan stamant
8c35447677 [StateTree] trivial changes from review
#rnx
#rb trivial
#preflight skip

[CL 24655890 by yoan stamant in ue5-main branch]
2023-03-15 11:59:44 -04:00
yoan stamant
4c372a0e40 Fix CIS Issue 275930
#rnx
#rb trivial
#preflight skip

[CL 24655550 by yoan stamant in ue5-main branch]
2023-03-15 11:39:22 -04:00
yoan stamant
0f0d466f65 Tentative CIS fix by not compiling StateTree debugger for non win64 platforms
#preflight skip
#rb none

[CL 24639438 by yoan stamant in ue5-main branch]
2023-03-14 13:37:39 -04:00
yoan stamant
64c8dca7cb [StateTreeDebugger]
Initial version of the debugger
- currently compiled by StateTreeModule and StateTreeEditorModule using WITH_STATETREE_DEBUGGER
- currently not exposed to UI by StateTree settings 'bUseDebugger'
- in this version only one instance per asset can be debugged
- using Trace services to read events generated by statetree instances.
- can connect to any traces (Editor, Client, Server) as long as the compiled statetree matches
#rb mieszko.zielinski
#preflight 641088a30e1f02786b509663

[CL 24639409 by yoan stamant in ue5-main branch]
2023-03-14 13:35:46 -04:00
mikko mononen
c828983bd3 State Tree: fix delayed transitions
- Fixed bug where delayed transitions from events were not triggered properly.

#preflight 6410735f5819afacafa78ce4

[CL 24635553 by mikko mononen in ue5-main branch]
2023-03-14 10:40:47 -04:00
mikko mononen
764e166e5b StateTree: Fixed crashes when compiled data is not loaded properly (e.g. some structs not loaded)
#rb Yoan.StAmant
#preflight 6409ade0a450329d6c1750b0

[CL 24573646 by mikko mononen in ue5-main branch]
2023-03-09 06:35:16 -05:00
stephen holmes
97766341ea Refactored FSructView and FConstStructView as per recent meetings. Both are now const correct in the same way TArrayView and TArrayConstView are (ie const FStructView and const FConstStructView) the view can not point at another view.
Also removed the Mutable named functions and replaced with the constness being part of the template.

#preflight 63ea4fbaec50523134d85665

[CL 24197313 by stephen holmes in ue5-main branch]
2023-02-13 20:06:02 -05:00
mikko mononen
58185353d0 StateTree: Fix extra %s when logging in FStateTreePropertyBindings::ResolvePaths()
#preflight 63e64cf0fc6763d8b5cc4683

[CL 24119629 by mikko mononen in ue5-main branch]
2023-02-10 10:44:54 -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
653d387d74 StateTree: Revert clearing data views in UpdateInstanceData() as it was parameters and external data too.
#preflight 63e5f8aaf15c83b79301ac15

[CL 24116342 by mikko mononen in ue5-main branch]
2023-02-10 04:19:40 -05:00