Commit Graph

260 Commits

Author SHA1 Message Date
mikko mononen
cc737f3eef [SmartObject] Added method to update SO transform
- Added UpdateSmartObjectTransform() to allow to update the Smart Object location at runtime
- Change spatial partitioning Add() to take ref to the handle to avoid alloc when readding

#rb Yoan.StAmant

[CL 29884931 by mikko mononen in ue5-main branch]
2023-11-22 04:49:00 -05:00
luciano ferraro
1de869bdc3 Change debug color of SO in the gameplay debugger for enabled slots and disabled slots to be more different (lime green from green and dark from grey)
[FYI] Parker.Linn, Phil.Cole, Gael.Leger
#rb [at]Mikko.Mononen

[CL 29521066 by luciano ferraro in ue5-main branch]
2023-11-07 10:41:35 -05:00
yoan stamant
a788975f6b Fixed type conversion warnings
#rb mikko.mononen

[CL 27890994 by yoan stamant in ue5-main branch]
2023-09-14 15:23:22 -04:00
mikko mononen
2727e90210 SmartObject: Fix getting default step height for navigation capsule
[CL 27788962 by mikko mononen in ue5-main branch]
2023-09-12 09:09:26 -04:00
ben hoffman
04773d7a0d Add a Find Smart Object from Targeting System request to smart objects. The targeting system is often used for player interactions to determine what the player is "targeting", so being able to find the smart objects that a player is looking at will make using smart objects for player interaction easier!
#jira UE-188874
#rb Yoan.StAmant
#prelight 64f791edf140ae6e397ecdd3

[CL 27611983 by ben hoffman in ue5-main branch]
2023-09-05 16:59:33 -04:00
ben hoffman
8c35dff059 Add Find Smart Object functions that take in AActor's and avoid using the normal QueryBox.
This is more friendly to the UE Gameplay Framework and lets you pass in specific actor's that you case about. If you had to use a spatial query, then you may get results from objects that you don't explictly want if they are overlapping objects.

Add a function to check if the subsystem is running on the server or not to make doing some future replication checks easier

#jira UE-180500
#rb mikko.mononen

[CL 27597760 by ben hoffman in ue5-main branch]
2023-09-05 11:29:58 -04:00
mikko mononen
10294710ed SmartObject:Compilation fixes
-  Fixed recursive include from view model
- fixed checkf() in property helpers
- added GameplayTags as depedency for editor

[CL 27446829 by mikko mononen in ue5-main branch]
2023-08-29 10:35:35 -04:00
LouisPhilippe Seguin
2f9a525ef2 Fix wrong parameter in condition of checkf
#jira none
#rb trivial
#rnx

[CL 27441430 by LouisPhilippe Seguin in ue5-main branch]
2023-08-29 08:34:24 -04:00
mikko mononen
6c2279e57d SmartObject: Added outliner to asset editor
- Changed Smart Object definition slot data to contain GUI per data (allows to identify the data using ID)
- Added outliner to the editor, displays slots and definition data
- Made slots and definition data selectable in the details view
- Sync selection across details, outliner and 3D view for faster navigation

[CL 27440600 by mikko mononen in ue5-main branch]
2023-08-29 07:48:32 -04:00
ben hoffman
42fea863f2 - Add a ToString function for FSmartObjectClaimHandle in Blueprints
- Add a static accessor to an invalid FSmartObjectClaimHandle in blueprints so that you can easily set default values and compare handles to check validitiy.

#rb Yoan.StAmant
#rnx

[CL 27319965 by ben hoffman in ue5-main branch]
2023-08-23 16:55:48 -04:00
yoan stamant
7081abcce2 [SmartObject] replaced a check by verify since we always need the action to be performed
#rnx
#rb trivial

[CL 27284664 by yoan stamant in ue5-main branch]
2023-08-22 16:22:34 -04:00
ben hoffman
62ceb709ea Fix the display name on K2_GetSlots to be pretty
#rb trivial
#rnx

[CL 27283535 by ben hoffman in ue5-main branch]
2023-08-22 16:00:16 -04:00
ben hoffman
d3561d50e6 Disable Replication of properties on the base Smart Object component class to get rid of warnings on boot
#rb trivial
#rnx

[CL 27282777 by ben hoffman in ue5-main branch]
2023-08-22 15:35:40 -04:00
ben hoffman
c3fe7f0458 Expose some smart object component, definition, and runtime options to blueprints to make it possible to have some very basic interactions with them inside a blueprint.
Mark the handle and SO definiton as replicated on the base Smart object Component class. For now, this won't do anything. Going forward we will create an "Online Smart object Component" that actually stores the additional replication data as to not add a bunch of unused data on existing uses of the component.

#jira UE-188873
#jira UE-180500
#rb Yoan.StAmant

[CL 27274296 by ben hoffman in ue5-main branch]
2023-08-22 12:17:21 -04:00
mikko mononen
43048ec34c [SmartObjects] Added events to listen to Smart Object Component bind/unbind
- Exposed USmartObjectComponent.IsBoundToSimulation() to BP

[CL 27197315 by mikko mononen in ue5-main branch]
2023-08-18 03:54:54 -04:00
yoan stamant
71625258d0 [SmartObject] empty definition is considered a valid asset so a newly created definition will not report error on save.
- Fixed internal flag not properly set to false when using error reporting flow.
- Fixed combined validation results that was always using EDataValidationResult::Valid even when errors were reported.
#jira UE-192738
#rb mieszko.zielinski
#lockdown julien.marchand

[CL 27147839 by yoan stamant in ue5-main branch]
2023-08-16 14:15:36 -04:00
mikko mononen
ee1a8c115a [SmartObjects] Default trace ground location to true for slots, as that is what users seem to expect.
[CL 27135901 by mikko mononen in ue5-main branch]
2023-08-16 07:26:50 -04:00
mikko mononen
b5f6447b2d [SmartObjects] Made USmartObjectSubsystem::QueryAllValidatedEntranceLocations() static so that it can be used even if SO subsystem is not available.
[CL 27064404 by mikko mononen in ue5-main branch]
2023-08-14 03:40:42 -04:00
mikko mononen
33bb4fe2c0 [SmartObjects] Added ability to validate a smart object definition and return all validated entries.
- Added Object enabled/disabled events to Smart Object lifetime to make it easier to react to the Smart Object enabled status
- Changed FSmartObjectSlotEntranceLocationRequest to be a BP type
- Changed FSmartObjectSlotEntranceLocationRequest.UserCapsule optional to invalid default value to make it easier to interface with BP
- Added FSmartObjectSlotEntranceLocationResult.bIsValid to be able to return results where the validation fails
- Added USmartObjectSubsystem.QueryAllValidatedEntranceLocations() which allows to validate SO definition, but does not require a registered Smart Object (can be used e.g. got object placement UI feedback)
- Added some helpers to allow to reuse validation between multiple methods in USmartObjectSubsystem

[CL 26987173 by mikko mononen in ue5-main branch]
2023-08-10 07:02:20 -04:00
luciano ferraro
4dfa27e83f Exposed a setter/getter SO enable method to the SO Component
[REVIEW] [at]Mikko.Mononen, [at]Yoan.Stamant
[FYI] Phil.Cole, Parker.Linn

[CL 26952120 by luciano ferraro in ue5-main branch]
2023-08-09 07:28:41 -04:00
ben hoffman
40d759dcf7 Add some more Blueprint Functionality to the Smart Object system.
- BP functions for checking if slot handles are equal or not
- to string functions for slots and handles
- is valid functions for slot handles

#rb Yoan.StAmant

[CL 26642750 by ben hoffman in ue5-main branch]
2023-07-27 11:52:42 -04:00
yoan stamant
b428fa6832 Fix CIS Issue 332657: NonUnity build for non editor targets
#rnx

[CL 26442005 by yoan stamant in ue5-main branch]
2023-07-18 14:44:30 -04:00
yoan stamant
45cbedcfbb Fix bad merge
#rnx

[CL 26433126 by yoan stamant in ue5-main branch]
2023-07-18 10:00:46 -04:00
yoan stamant
d05f8826ea [SmartObject] Removed dependency on MassEntity to store slots
#rb mikko.mononen

[CL 26431776 by yoan stamant in ue5-main branch]
2023-07-18 08:42:51 -04:00
yoan stamant
34de3fcdce [SmartObject] replaced icon for collection and actor. Also used for SmartObjectComponent and SmartObjectDefinition
#jira UE-189914
#rb mieszko.zielinski

[CL 26406077 by yoan stamant in ue5-main branch]
2023-07-17 09:41:33 -04:00