Commit Graph

151 Commits

Author SHA1 Message Date
nat parkinson
4e10674ae0 [Backout] - CL24461299 to fix nonunity errors
[FYI] mikko.mononen
Original CL Desc
-----------------------------------------------------------------
SmartObjects: Fix nonunity build

#rb trivial
#preflight 63ff52c4a134e0b059f957ec

[CL 24469390 by nat parkinson in ue5-main branch]
2023-03-01 15:39:26 -05:00
mikko mononen
8968e44291 SmartObjects: Fix nonunity build
#rb trivial
#preflight 63ff52c4a134e0b059f957ec

[CL 24462232 by mikko mononen in ue5-main branch]
2023-03-01 10:10:25 -05:00
mikko mononen
a24c665ba3 SmartObjects: Added entry annotation selection and validation.
- Added USmartObjectSubsystem::FindEntryLocationForSlot() which allows to query entry points which are on navigable surface
- Improved debug visualizations
- Added visualization shape and size for slots
- Added gameplay interaction state tree task to query entry location

#jira UE-174418
#preflight 63ff4702437ce3e7f3f60cf4

[CL 24462168 by mikko mononen in ue5-main branch]
2023-03-01 10:06:12 -05:00
luciano ferraro
7fae715950 Added an IsEnabled method in the SO Subsystem to check if the smart object represented by the provided handle is enabled or not
[REVIEW] [at]Mikko.Mononen
#preflight 63fdff5aae54ee4ce99e10d4

[CL 24442411 by luciano ferraro in ue5-main branch]
2023-02-28 10:24:32 -05:00
luciano ferraro
afb48ac56d Added an exposed native C++ event on the SmartObject component, fired when a StateTree runtime event is fired
#jira
[FYI] Mikko.Mononen, phil.cole, wojciech.madry, Parker.Linn
#preflight 63f8defddd78dd50f67b1ae3

[CL 24406726 by luciano ferraro in ue5-main branch]
2023-02-24 14:59:17 -05:00
stephen holmes
81d43099e1 Refactor SharedStruct to be inline with StructView changes.
#preflight 63f489136928c1ca3d3cda80

[CL 24343339 by stephen holmes in ue5-main branch]
2023-02-21 13:03:02 -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
yoan stamant
adf6cb0a20 [SmartObjects]
- Added new methods to the API to filter a list of request results or slot handles by evaluating the selection preconditions
- Filter methods can accept external data as a struct with properties which name and type match the WolrdConditionContext.
- FSmartObjectUserContext has been introduced to cover the common case of passing in a user actor to the context.
- Stored UserDescriptor as instanced struct in the runtime slot
- Claim methods now receive a user descriptor
- Removed slot event delegate and reuse the runtime instance one instead. Listeners can filter for a given slot using 'Event.SlotHandle'
- Removed UserTags from the SmartObjectWorldConditionSchema. The user tags are part of the query filter. Conditions requiring user tags could fetch them from the actors passed in the context.
#rb mikko.mononen
#jira UE-157763
#preflight 63dbe99f797b029c0add9806

[CL 23984054 by yoan stamant in ue5-main branch]
2023-02-02 18:43:13 -05:00
yoan stamant
e13fc1232d [SmartObject] reverted slot added by default in native constructor. This should be handled by the asset factory if needed.
#rb mikko.mononen
#rnx
#preflight skip

[CL 23867045 by yoan stamant in ue5-main branch]
2023-01-26 09:20:44 -05:00
mikko mononen
fe63db295a World Condition: change shared defintions to structs
- use struct with shared ptr instead of uboject for shared definition
- allows the definition struct to be copied without worrying about outers (e.g. state tree vs editor data)

#rb Mieszko.Zielinski
#preflight 63d24870a2003ee58adfbfcf

[CL 23865882 by mikko mononen in ue5-main branch]
2023-01-26 06:15:02 -05:00
yoan stamant
e044165d1b [SmartObject] marked subsystem rendering actor as not to be listed in the scene outliner
#rb trivial
#preflight skip
#rnx

[CL 23850702 by yoan stamant in ue5-main branch]
2023-01-25 12:23:05 -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
yoan stamant
750a22ea49 [SmartObject] refactored validation using IsDataValid() to report errors on asset save.
Added one slot per default for new definitions to reduce chances of creating an invalid asset.
#jira UE-174665
#rb maxime.mercier
#rb mieszko.zielinski
#preflight 63cefdecb84de45a0c023b31

[CL 23824469 by yoan stamant in ue5-main branch]
2023-01-23 18:48:38 -05:00
yoan stamant
bb96d7229f [SmartObject] fixed typo
#rb trivial
#rnx
#preflight 63cef923544e5bb075681b18

[CL 23824442 by yoan stamant in ue5-main branch]
2023-01-23 18:47:59 -05:00
yoan stamant
f704a37f87 [WorldConditions] extended IsTrue return type to a struct to allow conditions to mark result as cacheable or not base on context data values.
#rb mikko.mononen
#preflight 63c952e88168e8b252a20e2f

[CL 23814960 by yoan stamant in ue5-main branch]
2023-01-23 12:21:15 -05:00
Brandon Schaefer
6e31dabdc2 Initializing properties of FSmartObjectSlotEntryAnnotation
#rb skip
#jira UE-174576
#preflight horde down
#fyi Mieszko.Zielinski

#ushell-cherrypick of 23777591 by Mieszko.Zielinski

[CL 23793176 by Brandon Schaefer in ue5-main branch]
2023-01-20 13:07:44 -05:00
henrik karlsson
49ab049991 Fixed compile errors from merge (just includes)
[CL 23770043 by henrik karlsson in ue5-main branch]
2023-01-19 00:48:25 -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
yoan stamant
58db30961d [SmartObject] updated the smartobject blueprint library:
- renamed 'K2_SetSmartObjectEnabled' to 'AddOrRemoveSmartObject' since 'Enabled= false' is a concept used when the object is no longer available for queries but active interactions can finish.
- added functions to add to/remove from the simulation all smart objects from a single or a list of actors.
- added functions to enable/disable smart objects on a single or a list of actors.
#jira UE-165689
#rb mikko.mononen
#rb maxime.mercier
#rb patrick.carroll
#preflight 63c6fda33f587d9e1403726c

[CL 23756424 by yoan stamant in ue5-main branch]
2023-01-18 10:52:56 -05:00
yoan stamant
1f6c7d722f [SmartObjects]
- Removed synchronization logic between ability system component and smartobject instance tags.
- Added SmartObject subsystem to the SmartObjectWorldConditionSchema to help fixing unit tests where we use a derived subsystem. Updated existing SmartObject world conditions to use it.
- Added support for world conditions to the main smart object instance (in addition to those in each slot). Slots could be also disabled by their parent conditions.
- Removed object tags filter from the definition and replaced it by the newly added condition (FWorldCondition_SmartObjectActorTagQuery)
#rb mikko.mononen
#preflight 63c6c3530b358b97d198a121

[CL 23756420 by yoan stamant in ue5-main branch]
2023-01-18 10:52:51 -05:00
mikko mononen
f690c92f05 SmartObject: Fix missing header in entry annotation
#preflight 63c7ccd7883895985e3c2dac

[CL 23754056 by mikko mononen in ue5-main branch]
2023-01-18 07:41:01 -05:00
mikko mononen
25c538c4f2 SmartObject: Entry annotation
- fixed transforming multiple slots
- added way for annotations to be transformed in editor
- added beginnings of Smart Object entry annotation

#jira UE-172417 UE-174418
#rb Mieszko.Zielinski
#preflight 63c7bb6ae81a360aa9f9e152

[CL 23753534 by mikko mononen in ue5-main branch]
2023-01-18 06:27:31 -05:00
bob tellez
5a84e8a7d8 [Backout] - CL23746516
[FYI] Yoan.StAmant
Original CL Desc
-----------------------------------------------------------------
[SmartObject] updated the smartobject blueprint library:
- renamed 'K2_SetSmartObjectEnabled' to 'AddOrRemoveSmartObject' since 'Enabled= false' is a concept used when the object is no longer available for queries but active interactions can finish.
- added functions to add to/remove from the simulation all smart objects from a single or a list of actors.
- added functions to enable/disable smart objects on a single or a list of actors.
#jira UE-165689
#rb mikko.mononen
#rb maxime.mercier
#rb patrick.carroll
#preflight 63c6fda33f587d9e1403726c

[CL 23752173 by bob tellez in ue5-main branch]
2023-01-18 01:06:52 -05:00
bob tellez
09e68111e3 [Backout] - CL23741166
[FYI] Yoan.StAmant
Original CL Desc
-----------------------------------------------------------------
[SmartObjects]
- Removed synchronization logic between ability system component and smartobject instance tags.
- Added SmartObject subsystem to the SmartObjectWorldConditionSchema to help fixing unit tests where we use a derived subsystem. Updated existing SmartObject world conditions to use it.
- Added support for world conditions to the main smart object instance (in addition to those in each slot). Slots could be also disabled by their parent conditions.
- Removed object tags filter from the definition and replaced it by the newly added condition (FWorldCondition_SmartObjectActorTagQuery)
#rb mikko.mononen
#preflight 63c6c3530b358b97d198a121

[CL 23752170 by bob tellez in ue5-main branch]
2023-01-18 01:06:45 -05:00
bob tellez
3688402f79 #SmartObjects Add asset name to warning about struct conversion
[FYI] Yoan.StAmant
#preflight skip

[CL 23749903 by bob tellez in ue5-main branch]
2023-01-17 19:47:51 -05:00