37 Commits

Author SHA1 Message Date
patrick boutot
b29fa29a65 StateTree: Add accessor to get the list of active states.
#jira UE-166098
#rb Mieszko.Zielinski, Yoan.StAmant

[CL 35742179 by patrick boutot in ue5-main branch]
2024-08-22 11:29:18 -04:00
patrick boutot
22175c9fdc StateTree: Update comments for docgen.
#rb Yoan.StAmant
#rnx

[CL 35564665 by patrick boutot in ue5-main branch]
2024-08-15 11:29:44 -04:00
mikko mononen
ef148ecd80 StateTree: StateTree UI spring clean.
- Added icons and icon colors for ST nodes
- Implemented icons for some common ST nodes
- Small update to ST logic icons
- Added icons to the task list in State treeview row, adjusted task list BG color to make icons visible
- Fixed ST editor tabs icons and names (e.g. there were two tabs that had the same label)
- Moved ST node picker to separate class
- Moved category array customization to common helper function
- Added node icons to the ST node picker
- Add node button is not node selector too (simila to Niagara)
- Consolidated the add button style across all lists
- Cleaned up the node customization
  - Moved type selector, debug, and property controls into one menu at right
  - The combined menu can be also summoned using right click
  - Renaming now has to be triggered via the menu
  - Replacing node happens via menu
  - Most of the row was left "clickable" to later use it for selection
  - Improved the visualization and controls for the expression indentation
- Cleaned up state customization
  - Moved parameters to own category (similar to the tree params)
  - Moved event to the enter conditions category
- Cleaned up transition customization
  - Improved the transition display
  - Consolidated add button styles

#jira UE-180608
#rb Juan.Portillo, Mieszko.Zielinski

[CL 33030431 by mikko mononen in ue5-main branch]
2024-04-17 03:01:36 -04:00
mikko mononen
2cd00ea993 StateTree: Added description to tasks and conditions.
#rb guillaume.arruda, Mieszko.Zielinski

[CL 32754702 by mikko mononen in ue5-main branch]
2024-04-05 04:18:10 -04:00
mikko mononen
d5ede881de StateTree: Fix FStateTreePropertyRef example to guide correct type usage
- Fix FStateTreePropertyRef types in Env Query Task
- Fix too eager PVS warning

[CL 32754191 by mikko mononen in ue5-main branch]
2024-04-05 02:53:00 -04:00
guillaume arruda
29921c367f Change how owner of query in StateTreeRunEnvQuery is feed to the task
#rnx
#rb mikko.mononen

[CL 32693451 by guillaume arruda in ue5-main branch]
2024-04-03 06:59:33 -04:00
mikko mononen
91012bfa0b StateTree: Added linked state overrides.
- Added ability to describe override table for linked state tree references
- This allows to override parts of the tree e.g. based on character type
- Fixed visibility of the State parameter button when in fixed mode

#rb guillaume.arruda

[CL 32572125 by mikko mononen in ue5-main branch]
2024-03-28 05:18:19 -04:00
guillaume arruda
89b742190c Add default value to Run mode of Run Env Query State tree task
#jira UE-210318

[CL 32448503 by guillaume arruda in ue5-main branch]
2024-03-22 16:25:10 -04:00
guillaume arruda
16b1c302aa Add meta tag SchemaCanBeOverriden on StateTreeReference to make IStateSchemaProvider an opt in feature
#rb Yoan.StAmant

[CL 32436239 by guillaume arruda in ue5-main branch]
2024-03-22 11:55:18 -04:00
guillaume arruda
98ecd15dd0 Make ContextActorClass of UStateTreeAIComponentSchema default to APawn so that it binds to the pawn instead of the controller by default
Export UStateTreeAIComponentSchema for dll linking
#rnx
#rb mikko.mononen, Yoan.StAmant

[CL 32396844 by guillaume arruda in ue5-main branch]
2024-03-21 08:44:01 -04:00
guillaume arruda
0fc2421c6d Create State Tree AI Condition base namespace
#rb mikko.mononen
#rnx

[CL 32298290 by guillaume arruda in ue5-main branch]
2024-03-18 08:59:01 -04:00
guillaume arruda
e413c52467 Create StateTreeRunEnvQueyTask for running env query in a state tree
#rnx
#rb mikko.mononen

[CL 32245288 by guillaume arruda in ue5-main branch]
2024-03-14 10:53:09 -04:00
guillaume arruda
a5f943bbe3 Fix include case
#rnx

[CL 31941254 by guillaume arruda in ue5-main branch]
2024-03-01 08:30:59 -05:00
guillaume arruda
a3f5944e10 Create IStateTreeSchemaProvider that allows a derived class to override the schema used by a parent property.
Create StateTreeAIComponent & StateTreeAIComponentSchema derived from StateTreeComponent but guaranteed to have a AIController
#rb mikko.mononen

[CL 31940750 by guillaume arruda in ue5-main branch]
2024-03-01 07:42:54 -05:00
guillaume arruda
3c4a0c901e Create StateTreeMoveToTask wrapping a UAITask_MoveTo allowing state tree to move AI using the same framework as BehaviorTree
Create the FStateTreeAITaskBase & FStateTreeAIActionTaskBase state tree task namespace for AI focused ST task
#rb mikko.mononen

[CL 31940700 by guillaume arruda in ue5-main branch]
2024-03-01 07:39:59 -05:00
guillaume arruda
614bacdf88 Create BTTask_RunStateTree and BTTask_RunDynamicStateTree that allows the execution of state tree in a behavior tree
#rb mikko.mononen

[CL 31870609 by guillaume arruda in ue5-main branch]
2024-02-28 09:45:27 -05:00
mikko mononen
6f402b9027 StateTree: Added support for external data for nested tree.
#rb Mieszko.Zielinski

[CL 30289195 by mikko mononen in ue5-main branch]
2023-12-13 06:34:27 -05:00
yoan stamant
36d1541ccf [StateTree] moved some types to the execution types header
#rb mikko.mononen

[CL 26255500 by yoan stamant in ue5-main branch]
2023-06-27 09:07:17 -04:00
BinaerBoy
3b4489bbaa PR #10100: Including GAMEPLAYSTATETREEMODULE_API for UStateTreeComponentSchema (Contributed by BinaerBoy)
#preflight 641d807da86ae7cbcc3eb37e

[CL 24777927 by BinaerBoy in ue5-main branch]
2023-03-24 07:57:37 -04:00
yoan stamant
506e82ba24 [StateTree] stop logic on EndPlay for auto-activated components (start logic) that are not associated to an AI owner.
#rnx
#rb mikko.mononen, mieszko.zielinksi
#preflight 641454f05d3e25354f15d9ae

[CL 24687982 by yoan stamant in ue5-main branch]
2023-03-17 09:41:07 -04:00
mikko mononen
f5c2fcca25 StateTree: Clarify usage of SetStartLogicAutomatically
#rb trivial
#preflight 640f1bbd482188d7103910d6

[CL 24612267 by mikko mononen in ue5-main branch]
2023-03-13 10:18:23 -04: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
foobit
7c8f7ac6fe PR #9830: [StateTree] StateTreeComponent.GetStateTreeRunStatus method and status delegate (Contributed by foobit)
#rb Mikko.Mononen
#preflight 639c374143330e63e5bb8fd0

[CL 23536754 by foobit in ue5-main branch]
2022-12-16 05:45:13 -05:00
Duroxxigar
9c814d5e8d PR #9910: Create Setter for auto start property for state tree (Contributed by Duroxxigar)
#rb Mikko.Mononen
#preflight 639af82535203bc7aa4c030a

[CL 23531355 by Duroxxigar in ue5-main branch]
2022-12-15 15:55:44 -05:00
mikko mononen
186e03b32e StateTree: Improved event handling
- Moved event queue to it's own struct
- Changed the SendEvent() API to accept struct view to prevent instanced struct copy in common cases
- Fixed event handling in case EnterState() fails.
- Added option for Tasks to disavble ticking, or to be ticked only when there are events
- Added option for Tasks handle when properties are copied
- Changed DebugText to use external Actor reference
- Changed DelayTask to use the new GetInstanceData which does not need type
- Added TStateTreeInstanceDataStructRef which can be used to access struct instance data in delegates

#rb Maxime.Mercier Luciano.Ferraro
#preflight 6360dd302b5338aceb2d0343

[CL 22888708 by mikko mononen in ue5-main branch]
2022-11-01 15:11:19 -04:00