Commit Graph

3243 Commits

Author SHA1 Message Date
AMZN-koppersr 66df146554 Fixed existing spawnable unit tests to work with entity alias changes.
Signed-off-by: AMZN-koppersr <82230785+AMZN-koppersr@users.noreply.github.com>
2021-10-28 10:15:21 -07:00
AMZN-koppersr 15ea380d39 Post integration fixes and additional changes for entity aliases in spawnables.
Signed-off-by: AMZN-koppersr <82230785+AMZN-koppersr@users.noreply.github.com>
2021-10-28 10:15:16 -07:00
AMZN-koppersr b3cd339904 Added support for setting up entity aliases during the prefab to spawnable conversion.
Signed-off-by: AMZN-koppersr <82230785+AMZN-koppersr@users.noreply.github.com>
2021-10-28 10:15:12 -07:00
AMZN-koppersr a05d5f5d6d Extended the Spawnable Entities Interface to allow entity aliases to be updated.
Entity aliases can now be updated as a reaction to the spawnable being loaded or at any other time afterwards through the Spawnable Entities Interface. Currently these changes are applied to the spawnable that owns the entity aliases, but once the Spawnable Entities Interface makes use of AzFramework::Scene a copy of the entity aliases should be stored in the scene and be updated instead of the spawnable.

This change also adds support for a load barrier, which acts the same as a regular barrier but also accounts for the spawnable being loaded and won't trigger the callback until has completed.
The return values in from the processing functions in the Spawnable Entities Manager now have a clearer return value to indicate whether a request has completed or is being re-queued.

Signed-off-by: AMZN-koppersr <82230785+AMZN-koppersr@users.noreply.github.com>
2021-10-28 10:15:07 -07:00
AMZN-koppersr a0d7048fd4 Added support for entity aliases to Spawnable.
Entity aliases can be used to have a request to spawn an entity:
- spawn the original entity as normal
- be disabled
- redirected to another entity in another spawnable
- also spawn an entity from another spawnable
- add the components from an entity in another spawnable

An entity alias can indicate whether or not to load the spawnable dependency. If the spawnable dependency is loaded it will be loaded asynchronously because starting blocking loads in an asset handler can lead to deadlocks once there are no more jobs available to deserialize assets.

Signed-off-by: AMZN-koppersr <82230785+AMZN-koppersr@users.noreply.github.com>
2021-10-28 10:15:03 -07:00
AMZN-koppersr 48f2487d3c Updates in preparation for adding entity aliases to spawnables.
The following has been changed:
- AssetDataStream can now return the stored streaming deadline and priority.
- RootSpawnable now has an event that's called just before root spawnable spawns entities. This is an immediate event unlike the other events that are queued.

Signed-off-by: AMZN-koppersr <82230785+AMZN-koppersr@users.noreply.github.com>
2021-10-28 10:14:58 -07:00
Danilo Aimini 1435d8b096 Merge branch 'development' of https://github.com/o3de/o3de into daimini/gitflow_211027_o3de 2021-10-27 14:18:01 -07:00
srikappa-amzn 6f8890c2ef Improve error messaging when duplicating entities before they are created (#4922)
* Improved error messaging when user tries to duplicate before entities are created

Signed-off-by: srikappa-amzn <srikappa@amazon.com>
2021-10-27 12:46:06 -07:00
Danilo Aimini d5c09c695c Merge commit '3165cf283828d1234bda738ab24ea74c4511152a' into daimini/gitflow_211027_o3de
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
2021-10-27 11:23:12 -07:00
Danilo Aimini b9613bc915 Merge commit '7fc0f14a1b4f66e560a2ee770b9dbb28dfd54d6f' into daimini/gitflow_211027_o3de
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
2021-10-27 11:23:07 -07:00
Danilo Aimini 732b8c2d1b Merge commit 'd332f7c4c70343d7e1a8ca72723ac99ebdd30ca6' into daimini/gitflow_211027_o3de
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
2021-10-27 11:22:58 -07:00
Danilo Aimini 46d616824f Merge commit '856318005cac14560f765dc5af203e0139344bb3' into daimini/gitflow_211027_o3de
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
2021-10-27 11:22:30 -07:00
Danilo Aimini bc844dc6c9 Merge commit 'a2eca9de3d2e5abca3d5f52f58ff6afd613d8d0d' into daimini/gitflow_211027_o3de
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
2021-10-27 11:22:00 -07:00
Danilo Aimini 1a65250b96 Merge commit '22a287d046c606ccb79ff19c1c15075d8cd71dbc' into daimini/gitflow_211027_o3de
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
2021-10-27 11:21:56 -07:00
Danilo Aimini 324c9462b6 Merge commit '6b3fc0ff8b2e3094781d7521ec116f620951d46f' into daimini/gitflow_211027_o3de
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
2021-10-27 11:21:46 -07:00
Danilo Aimini b2ef35caa1 Merge commit 'f3499011ac52f801ab5bf5f27791f56039e0a7d1' into daimini/gitflow_211027_o3de
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
2021-10-27 11:21:41 -07:00
Danilo Aimini 657b1026b5 Merge commit '1bc2968330c7f700759d68b4b4a8e59d81007027' into daimini/gitflow_211027_o3de
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
2021-10-27 11:21:27 -07:00
Danilo Aimini f960d6466c Merge commit '3b4b8c354903f6c0fb9b579b13ae5d336c761382' into daimini/gitflow_211027_o3de
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
2021-10-27 11:21:17 -07:00
AMZN-Phil 3165cf2838 Merge pull request #5011 from aws-lumberyard-dev/Prism/FixGemSelectedFilter
Gem Catalog Selected Gems Now Filters For Gems to be Enabled in Current Session
2021-10-27 09:28:16 -07:00
AMZN-Phil 7fc0f14a1b Merge pull request #5006 from aws-lumberyard-dev/Prism/FixRemovedProjectStillShown
Fix Issue When Removed Project is Still Shown if it Was The Last Project
2021-10-27 09:28:06 -07:00
Nicholas Van Sickle c5c043ecc5 Add Generic DOM visitor interface (#4852)
* Add Generic DOM visitor interface

Just the visitor interface from the [Generic DOM RFC](https://github.com/o3de/sig-content/blob/main/rfcs/rfc-10-generic-dom.md) with a few hardening changes so that we can align on it early:
- Clarified Lifetimes with an enum, extended it to cover the by-ref opaque values as well
- Added an explicit error type so that serializers can provide logging friendly rejections
- Did a first pass on documentation
- Added Visitor capabilities introspection and support for raw strings
2021-10-27 08:46:31 -07:00
Michael Pollind 3e3f27e65c bugfix: improve viewport overlay (#4939)
* bugfix: improve viewport overlay

- disable animation for window
- fix problem where vieport is offset from main window

Signed-off-by: Michael Pollind <mpollind@gmail.com>

* update geometry of m_uiOverlay

Signed-off-by: Michael Pollind <mpollind@gmail.com>
2021-10-27 10:28:22 +01:00
Alex Peterson 7a0246530a Fix notification queue and add gem action (#4985)
Signed-off-by: AMZN-alexpete <26804013+AMZN-alexpete@users.noreply.github.com>
2021-10-26 14:37:47 -07:00
Chris Galvan 78b0683313 Added GetComponentTypeEditorIcon API and replaced old macro style ebus calls.
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
2021-10-26 15:47:17 -05:00
AMZN-Phil 856318005c Merge pull request #5000 from aws-lumberyard-dev/Prism/RemoteGemWarning
Adds Warning to Add Repo Dialog
2021-10-26 11:01:02 -07:00
puvvadar e68f57c843 Merge pull request #4889 from aws-lumberyard-dev/bitset_serialization_includes
Fix usages of AZStd::bitset not being found by serialize context
2021-10-26 10:16:32 -07:00
nggieber 866fd8a420 Fix selected gem filtering
Signed-off-by: nggieber <nggieber@amazon.com>
2021-10-26 09:46:54 -07:00
SJ 3bdfe51fca Pass relative path IsFileExcluded so that only paths relative to the root scan folder are matched against the exclude filters (#4504)
* Pass relative path IsFileExcluded so that only paths relative to the root scan folder are matched against the exclude filters.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Revert previous change. Remove the exclude filter for the Install directory.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Pass in relative path to the exclude filter as before. Fix the AssetScanner tests.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Prepend a ./ to the relative path in order to match the exclude patterns

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Remove hack to prepend ./. Update the exclude patterns so that the hack is no longer required.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Add missing ? and remove whitespace

Signed-off-by: amzn-sj <srikkant@amazon.com>

* 1. IsFileExcluded() now converts the input path to a path that's relative to its corresponding scan folder.
2. Update regex patterns in gems and AutomatedTesting as well.
3. Remove unnecessary escaping for '/'.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Use ConvertToRelativePath() function to compute path relative to a scan folder.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* More fixes to regex patterns

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Remove test case which tests a hypothetical scenario that cannot occur. Fix another test case by adding scan folder.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Remove assert that's not needed since it's a valid scenario

Signed-off-by: amzn-sj <srikkant@amazon.com>
2021-10-26 11:43:03 -05:00
jonawals a2eca9de3d Merge pull request #4998 from aws-lumberyard-dev/LYN-5265_state_tracker_impl
Add Focus Mode integration tests.
2021-10-26 17:16:25 +01:00
amzn-mike ee6ceba5ce Add serialized output version (xml) of debug scene graph (#3437)
* Add serialized output version (xml) of debug scene graph

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>

* Fix line endings

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>

* Fix line endings

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>

* Update fbx unit tests to check for dbgsg.xml file

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>

* Add dbgsg.xml comparison

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>

* Move dbgsg files to SceneDebug sub folder

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>

* Add shaderball.dbgsg.xml and multiple_mesh_multiple_material_override.dbgsg.xml

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>

* Add shaderball dbgsg.xml product.

Update code to look in SceneDebug for dbgsg files
Fix extension concatenation

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>

* Remove unnecessary dbgsg.xml file

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
2021-10-26 09:07:22 -07:00
Steve Pham 22a287d046 Fix to set the Taskbar name and Game Launcher window title to the name of the Project (#4986)
Signed-off-by: Steve Pham <spham@amazon.com>
2021-10-26 08:56:37 -07:00
amzn-mike 81acd559d0 [LYN-7529] Create unit tests for ResolveSourceFileDependencyPath (#4790)
* Add unit tests for ResolveSourceFileDependencyPath

Fix crash when file is not in scan folder

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>

* Switch to using vector of AZ strings for better error output

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>

* Switch to using UnorderedElementsAre

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>

* Add some comments and fix typo

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
2021-10-26 08:52:33 -07:00
nggieber 3ff469c55e Fix issue with project still displaying when last project is removed
Signed-off-by: nggieber <nggieber@amazon.com>
2021-10-26 08:42:22 -07:00
lumberyard-employee-dm b3b646dad9 Moved the Asset Catalog loading from LmbrCentral to the AzFramework::Application (#4568)
* Moved the loading of the AssetCatalog from LmbrCentralSystemComponent to AzFramework Application

Modified the AssetCatalog::InitializeCatalog function to no longer rely on the TickBus to send out the `AssetCatalogEventBus::OnCatalogLoaded` event.
It now queues a function on the AssetCatalogRequestBus to send the OnCatalogLoaded event as soon as the dispatching for the AssetCatalogRequestBus has completed on the current thread.
This is done by updating the AssetCatalogRequestBus to use EBus ThreadDispatchPolicy to add a callback to invoke any queued function has soon a thread has finished dispatching and has released its DispatchMutex

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated the AssetCatalogRequestBus to add a custom DispatchLockGuard

The AssetCatalogRequestBus uses the custom lock guard to dispatch queued
events after it has unlocked it's context mutex for the current thread.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Removed GetContext call from the
AssetCatalogRequests::PostThreadDispatchInvoker

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated the definition of FileTagQueryManager::GetDefaultFileTagFilePath
function to return a path

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated the AZ_CONSOLEFREEFUNC macro to actually use the _NAME

The _NAME parameter was not being used before, resulting in the Console
stringified name of the function being used.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Removed CrySystem dependencies from the BundlingSystemComponent

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Moved the loading of the AssetCatalog from LmbrCentralSystemComponent to AzFramework Application

Modified the AssetCatalog::InitializeCatalog function to no longer rely on the TickBus to send out the `AssetCatalogEventBus::OnCatalogLoaded` event.
It now queues a function on the AssetCatalogRequestBus to send the OnCatalogLoaded event as soon as the dispatching for the AssetCatalogRequestBus has completed on the current thread.
This is done by updating the AssetCatalogRequestBus to use EBus ThreadDispatchPolicy to add a callback to invoke any queued function has soon a thread has finished dispatching and has released its DispatchMutex

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated the AssetCatalogRequestBus to add a custom DispatchLockGuard

The AssetCatalogRequestBus uses the custom lock guard to dispatch queued
events after it has unlocked it's context mutex for the current thread.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Removed GetContext call from the
AssetCatalogRequests::PostThreadDispatchInvoker

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated the definition of FileTagQueryManager::GetDefaultFileTagFilePath
function to return a path

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated the AZ_CONSOLEFREEFUNC macro to actually use the _NAME

The _NAME parameter was not being used before, resulting in the Console
stringified name of the function being used.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Removed CrySystem dependencies from the BundlingSystemComponent

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Addded missing template parameter to AssetCatalogRequests

The fixes the compile error.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding AssetBus::MultiHandler::BusDisconnect call

The BlastSystemComponent was connecting to the Bus, but not
disconnecting from it, causing an assert to fire to it being a
multi-thread bus

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Added support for DataDrive lifecycle events to the ComponentApplication

The events are using the SettingsRegistry NotifyEvent to track when
certain keys are modified to signal handlers.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Corrected invalid JSON creation in ModuleManager::DeactivateEntities

Resolved clang warning about used type alias

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Fix for dangling reference in lambda registered to the SettingsRegistry
Notifier event

This was causing the EditorPythonBinding tests to crash due to the
following circumstances.

First Python has created an instance of a SettingsRegistryProxy
Second the SettingsRegistry sends an event during the time when the
SettingsRegistryProxy exists.

This issue was exposed due to the ComponentApplication Lifecycle events
using the SettingsRegistry to dispatch during various times of the
application workflow.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
2021-10-26 10:31:31 -05:00
AMZN-Phil 6b3fc0ff8b Merge pull request #4981 from aws-lumberyard-dev/Prism/gemdownloadcallfix
Re-add call used to initiate gem download
2021-10-26 08:31:03 -07:00
Chris Burel f3499011ac [Mac] Fix QtEditorApplication_mac include (#4978)
Commit 8e03d6f306 missed updating the
platform-specific mac QApplication implementation file to include the
class declaration from the new header.

Signed-off-by: Chris Burel <burelc@amazon.com>
2021-10-26 08:30:51 -07:00
AMZN-stankowi 48fca740a2 Fixed crash if you save a bundle outside the default bundle folder (#4974)
Signed-off-by: stankowi <4838196+AMZN-stankowi@users.noreply.github.com>
2021-10-26 08:29:43 -07:00
nggieber 77d05b0bc9 Merge branch 'stabilization/2110' into Prism/RemoteGemWarning 2021-10-26 07:39:56 -07:00
John c2105b0631 Address PR comments.
Signed-off-by: John <jonawals@amazon.com>
2021-10-26 15:30:08 +01:00
nggieber 75ebf77b59 Added warning message when adding repositories
Signed-off-by: nggieber <nggieber@amazon.com>
2021-10-26 07:22:47 -07:00
Michael Pollind 5374860444 Bug Fix: resolve entity ordering for EntityOutliner (#4798) (#4938)
* bugifx: resolve dragging behaviour for EntityOutliner (#4798)

Signed-off-by: Michael Pollind <mpollind@gmail.com>

* chore: cleanup and rework logic

Signed-off-by: Michael Pollind <mpollind@gmail.com>
2021-10-26 10:29:12 +01:00
Danilo Aimini 1bc2968330 Resolve minor hover state bugs on the Entity Outlier (branches detect hover state separately from the rest of the columns) (#4977)
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
2021-10-25 17:47:54 -07:00
Alex Peterson c00b99f2d5 Disable custom titlebar on Mac, Linux, fix resize (#4973)
Signed-off-by: AMZN-alexpete <26804013+AMZN-alexpete@users.noreply.github.com>
2021-10-25 16:33:32 -07:00
AMZN-Phil 423693d16b Re-add call used to initiate gem download
Signed-off-by: AMZN-Phil <pconroy@amazon.com>
2021-10-25 16:05:19 -07:00
Danilo Aimini 3b4b8c3549 Move the initialization of m_editorEntityUiInterface higher so that it's initialized when the interface is set up. (#4972)
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
2021-10-25 15:12:34 -07:00
Alex Peterson 29dbb0b089 Set Project Manager minimum height 700px (#4970)
Signed-off-by: AMZN-alexpete <26804013+AMZN-alexpete@users.noreply.github.com>
2021-10-25 14:57:53 -07:00
galibzon 4d4deb1211 Added Hydra API to extract all the classes, globals and EBuses exposed (#4953)
* Added Hydra API to extract all the classes, globals and EBuses exposed
to lua:

azlmbr.script.LuaSymbolsReporterBus:
GetListOfClasses
GetListOfGlobalProperties
GetListOfGlobalFunctions
GetListOfEBuses

Also exposed to Hydra the classes that can be used to dump
the symbols
azlmbr.script.LuaPropertySymbol
azlmbr.script.LuaMethodSymbol
azlmbr.script.LuaClassSymbol
azlmbr.script.LuaEBusSender
azlmbr.script.LuaEBusSymbol

The python file Assets/Editor/Scripts/lua_symbols.py
can be used with "pyRunFile <script_name> [output.txt]"
to create Game/output.txt will all the symbols
OR
passing up to three additional arguments "c" or "g" or "e" to dump only
classes, globals or ebuses or a combination of those. Example:
To create an output file with only classes and Ebuses:
"pyRunFile <script_name> [output.txt] c e"

Signed-off-by: garrieta <garrieta@amazon.com>
2021-10-25 13:26:53 -05:00
John f98d2e55aa Refactor component mode query.
Signed-off-by: John <jonawals@amazon.com>
2021-10-25 13:48:36 +01:00
John 99b840652d Add Focus Mode integration tests.
Signed-off-by: John <jonawals@amazon.com>
2021-10-25 13:40:12 +01:00
AMZN-Igarri e970247fc5 Asset Browser Search View fixes (#4814)
* Fixed RowCount method.

Signed-off-by: igarri <igarri@amazon.com>

* Fixed Signals

Signed-off-by: igarri <igarri@amazon.com>

* Fixed Delegate case

Signed-off-by: igarri <igarri@amazon.com>

* Fixed issue when displaying branch icons

Signed-off-by: igarri <igarri@amazon.com>

* Fixed AssetBrowser Delegate

Signed-off-by: igarri <igarri@amazon.com>

* Removed optimize flags

Signed-off-by: igarri <igarri@amazon.com>

* AssetBrowsertableModel cleanup

Signed-off-by: igarri <igarri@amazon.com>

* Fixed Typos

Signed-off-by: igarri <igarri@amazon.com>

* Fixed Comment

Signed-off-by: igarri <igarri@amazon.com>

* Added check for rowCount == 0

Signed-off-by: igarri <igarri@amazon.com>
2021-10-25 10:35:50 +01:00