Commit Graph

2335 Commits

Author SHA1 Message Date
amzn-mike 6da75821c5 Move Exception PrintCallstack call before any ebus calls to help track down issue with crash during an exception (#5188)
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
2021-11-02 09:22:03 -07:00
AMZN-stankowi 6d592d78cd Fixes for release builds with DCO fix (#5164)
* This set of changes is work toward allowing release builds to work with asset bundler generated bundles and legacy, non-prefab levels. This requires some other in-flight changes before this work is complete.

    Updated engine seed list + fixed automated test
    ComponentApplicationLifecycle has the ability to automatically register events if asked to register a handler and the event doesn't exist. This is only intended for cases where you need to register a handler early in startup before the settings registry file is loaded.
    Added two new lifecycle events: One after the system entity has been activated, and one after the system interface has been created.
    If you load an archive before the system entity has been activated, archive.cpp caches information about those archives until that time, so it can finish registration. This is because the serialization system and BundlingSystemComponent both need to be available to do this registration, but the bundles have to be loaded before those are initialized so that the settings registry file can be loaded.
    Fixed an error were mounted pak files were searching for levels.pak and not level.pak, and not finding them. I'm pretty sure this logic doesn't do anything functional either way, but I've been testing legacy levels with this change and they work now.
    Moved wildcard pak loading to where engine.pak is loaded. This is because the settings registry file that defines the IO stack to spin up must be available early in application startup, and this file must be within a mounted pak file. If you're using asset bundler generated bundles, they need to be loaded at this time so that file can be loaded.
    Atom's BootstrapSystemComponent.cpp no longer initializes on AssetCatalogLoaded, and instead initializes on the ApplicationLifecycle event SystemInterfaceCreated. This is because the base assetcatalog.xml file is really just a development time concept, this file should not be used in packaged release builds, because those builds will make use of delta catalogs in each bundle loaded. The asset catalog contains the list of all assets that were in the cache at development time, and this contains content that developers don't want to ship, and they may want to specifically hide from their customers, so data miners don't find secrets about upcoming game content.

Recovering from a branch that had incorrect DCO

Signed-off-by: stankowi <4838196+AMZN-stankowi@users.noreply.github.com>

* Fixed an incorrect ebus disconnect and removed an include that's no longer needed

Signed-off-by: stankowi <4838196+AMZN-stankowi@users.noreply.github.com>

* Fixed a copy and paste typo from trying to recover the previous pull request

Signed-off-by: stankowi <4838196+AMZN-stankowi@users.noreply.github.com>

* Updated product IDs for the settings registry builder to no longer collide with the JSON builder. Now they are based on a hash of the configuration.
Updated the engine default seed list to include the new asset ID info for the renamed bootstrap file

Signed-off-by: stankowi <4838196+AMZN-stankowi@users.noreply.github.com>

* Updated the path to the application lifecycle events, because runtime settings aren't included in the merged bootstrap file.
Addressed some feedback on printing out a string view on an error

Signed-off-by: stankowi <4838196+AMZN-stankowi@users.noreply.github.com>

* Removed a test that uses old assets that aren't relevant. We may not need this test anymore, but if we do we've backlogged a task to create a new test to cover this behavior without using old assets.

Signed-off-by: stankowi <4838196+AMZN-stankowi@users.noreply.github.com>

* Renamed SystemInterfaceCreated event to LegacySystemInterfaceCreated
Removed SystemEntityActivated event. Now that I have the rest of the fixes in this pull request, this new event wasn't needed, the already existing SystemComponentsActivated event does what I need.
Changed list to vector

Signed-off-by: stankowi <4838196+AMZN-stankowi@users.noreply.github.com>
2021-11-02 09:03:38 -07:00
Scott Romero 797b8248e5 [development] Consolidated programmatic profiler capture API (#4969)
Merged overlapping profiler EBuses/Interfaces into AzCore
Fixed ambiguous LogLevel type in some unity file scenarios
Added cvar/console access for profiler capture
Added utilities for reflecting AZ::Interfaces through the BehaviorContext
Included profiler system sample python script

Signed-off-by: AMZN-ScottR 24445312+AMZN-ScottR@users.noreply.github.com
2021-11-02 09:00:15 -07:00
Michael Pollind 32bebe1c8c bugifx: resolve crash with project manager (#5151)
- system allocator not configured in environment for AZQtComponents
- WA_DeleteOnClose will destroy the toast dialog causing a crashing when ToastNotificationsView tries to access the pointer

issue: https://github.com/o3de/o3de/issues/5129
Signed-off-by: Michael Pollind <mpollind@gmail.com>
2021-11-02 08:59:19 -07:00
Mike Balfour d106c9aba5 Merge pull request #5174 from aws-lumberyard-dev/Prefab/RevertImmediatePropagation
Prefab/revert immediate propagation
2021-11-02 10:59:17 -05:00
Mike Balfour a769a324fa Merge commit 'de6af361ab15a9fc504518368e5a8fca2db5a065' into mbalfour/gitflow_211102_o3de 2021-11-02 09:38:51 -05:00
Mike Balfour 008e825bd2 Merge commit 'bf6fd2a6d6b09a87c2478d389efc306d1215ecb5' into mbalfour/gitflow_211102_o3de 2021-11-02 09:38:46 -05:00
Mike Balfour bad4c1a276 Merge commit '8f56dc10c33ae73acaa99c8690e8bc91a1cec2bc' into mbalfour/gitflow_211102_o3de 2021-11-02 09:38:30 -05:00
Mike Balfour 122a28c4b4 Merge commit '1228738bb2da5ccf7e3d7a1219a90afab5189d6b' into mbalfour/gitflow_211102_o3de 2021-11-02 09:38:09 -05:00
Mike Balfour 9589bc050d Merge commit 'd3ff91f15346328e82e4e4fb293256ff3b026b1c' into mbalfour/gitflow_211102_o3de 2021-11-02 09:38:04 -05:00
Mike Balfour 402d4d664f Merge commit 'cf767fd4bd038e39512a0f193dfd7cb536a9700f' into mbalfour/gitflow_211102_o3de 2021-11-02 09:37:59 -05:00
Mike Balfour 5867ab6bde Merge commit 'b2a8e4056950398e13f2fe32f486d29733669a2b' into mbalfour/gitflow_211102_o3de 2021-11-02 09:37:12 -05:00
hultonha de6af361ab Do not clear input channels everytime focus changes (#5044)
* remove HandleFocusChange from FocusIn/Out events in QtEventToAzInputManager

Signed-off-by: hultonha <hultonha@amazon.co.uk>

* ensure we clear input channels when application state changes

Signed-off-by: hultonha <hultonha@amazon.co.uk>

* wip changes for focus switching tests

Signed-off-by: hultonha <hultonha@amazon.co.uk>

* updates to test to verify focus change not affecting input

Signed-off-by: hultonha <hultonha@amazon.co.uk>

* add test to ensure input is not cleared when focus changes

Signed-off-by: hultonha <hultonha@amazon.co.uk>

* ensure key press goes to correct widget

Signed-off-by: hultonha <hultonha@amazon.co.uk>

* add test to verify input is cleared when application state changes

Signed-off-by: hultonha <hultonha@amazon.co.uk>

* clear input for all types of application state change

Signed-off-by: hultonha <hultonha@amazon.co.uk>

* update input key for focus test

Signed-off-by: hultonha <hultonha@amazon.co.uk>

* use the Settings Registry to tell the InputSystemComponent to disable various devices

Signed-off-by: hultonha <hultonha@amazon.co.uk>

* update how we simulate the application state change event

Signed-off-by: hultonha <hultonha@amazon.co.uk>

* revert Settings Registry changes

Signed-off-by: hultonha <hultonha@amazon.co.uk>
2021-11-02 09:19:06 +00:00
hultonha bf6fd2a6d6 Add missing reflection calls for various types (#5163)
Signed-off-by: hultonha <hultonha@amazon.co.uk>
2021-11-02 09:18:42 +00:00
Chris Burel 08c51aaf27 [Linux] Terminate AssetProcessor when spawned by the parent project process
This adds support for the `ap_tether_lifetime` cvar in Linux. It extends
the solution implemented in #2799 to add the same support on Linux.

Signed-off-by: Chris Burel <burelc@amazon.com>
2021-11-01 14:56:24 -07:00
Vincent Liu 96159c1e3a Add missing exclamation mark for documentation (#5144)
* Add missing exclamation mark for documentation

Signed-off-by: onecent1101 <liug@amazon.com>

* Add more

Signed-off-by: onecent1101 <liug@amazon.com>
2021-11-01 14:52:40 -07:00
AMZN-koppersr 045a826c68 Updates to the Spawnable entity aliases based on provided feedback on PR.
Signed-off-by: AMZN-koppersr <82230785+AMZN-koppersr@users.noreply.github.com>
2021-11-01 14:18:04 -07:00
Chris Burel 8f56dc10c3 Perform sse float comparisons with the floating-point intrinsics (#5115)
Signed-off-by: Chris Burel <burelc@amazon.com>
2021-11-01 16:11:34 -04:00
Danilo Aimini d948d78b2e Merge pull request #5170 from aws-lumberyard-dev/daimini/cherrypick/outlinerEntityOrderingFix
Cherry-pick: resolve entity ordering for EntityOutliner
2021-11-01 12:41:58 -07:00
srikappa-amzn f7a48fda11 Added a missing function comment for UpdatePrefabInstances function
Signed-off-by: srikappa-amzn <srikappa@amazon.com>
2021-11-01 11:41:05 -07:00
srikappa-amzn 729a79dc82 Revert "Fixing undo/redo not updating transform pivot point (#4375)"
This reverts commit 7018f16088.

Signed-off-by: srikappa-amzn <srikappa@amazon.com>
2021-11-01 11:39:04 -07:00
srikappa-amzn 1025eb3929 Revert "Delay propagation for all template updates in detach prefab workflow (#4707)"
This reverts commit 87533d80c1.

Signed-off-by: srikappa-amzn <srikappa@amazon.com>
2021-11-01 11:39:01 -07:00
Michael Pollind 9886603f99 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-11-01 10:35:32 -07:00
Guthrie Adams 7ba7928559 Removing redundant registration of script assets
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
2021-11-01 11:19:08 -05:00
AMZN-Igarri d3ff91f153 Fixed memory leak of the in the AssetBrowserComponent (#5132)
Signed-off-by: igarri <igarri@amazon.com>
2021-11-01 12:16:00 +00:00
hultonha cf767fd4bd Fix for 'focus' text appearing incorrectly (#5133)
Signed-off-by: hultonha <hultonha@amazon.co.uk>
2021-11-01 09:33:38 +00:00
AMZN-ScottR 2d7c6af97c Merge branch 'development' into profiler_capture_api
Signed-off-by: AMZN-ScottR <24445312+AMZN-ScottR@users.noreply.github.com>
2021-10-29 17:21:29 -07:00
AMZN-ScottR 4721f44b92 [profiler_capture_api] more changes based on PR feedback
Signed-off-by: AMZN-ScottR <24445312+AMZN-ScottR@users.noreply.github.com>
2021-10-29 17:19:38 -07:00
AMZN-ScottR b2e6711196 [profiler_capture_api] fixed clang compile error
Signed-off-by: AMZN-ScottR <24445312+AMZN-ScottR@users.noreply.github.com>
2021-10-29 14:45:25 -07:00
AMZN-AlexOteiza e871dff70e Added two complex prefab tests (#5089)
* Added two complex prefab tests

* Fix compile error

* Added extra methods, fixed test failure

* Addressed PR commments

* More PR comments

* Fix space

* Fix ar error
2021-10-29 22:32:33 +01:00
Adi Bar-Lev 66612cac28 Merge pull request #5116 from aws-lumberyard-dev/barlev/gitflow_211028_O3DE
Barlev/gitflow 211028 O3DE
2021-10-29 10:00:14 -04:00
Michael Pollind f40191dd8c bugfix: resolve broken focus for viewport (#5059)
Signed-off-by: Michael Pollind <mpollind@gmail.com>
2021-10-29 10:15:22 +01:00
Adi Bar-Lev 8dca689444 Merge commit 'caf247fcab0fc65773c6a95f1bbcfe10b184c5e0' into barlev/gitflow_211028_O3DE 2021-10-28 20:06:25 -04:00
Adi Bar-Lev 8119fe4d86 Merge commit '8d7eb4767afff80992bebe4619afc10aef04a93b' into barlev/gitflow_211028_O3DE 2021-10-28 19:17:33 -04:00
Chris Galvan b2a8e40569 Merge pull request #5100 from aws-lumberyard-dev/cgalvan/GemplateImprovements
Improvements to C++/Python tool gemplates
2021-10-28 17:20:07 -05:00
AMZN-ScottR 90509c7fa2 [profiler_capture_api] removed now unnecessary ProfilerRequests EBus alias after AZ::Interface conversion
Signed-off-by: AMZN-ScottR <24445312+AMZN-ScottR@users.noreply.github.com>
2021-10-28 14:18:04 -07:00
AMZN-koppersr 6587e149b7 Added unit tests for spawnable entity aliases.
This also fixes several issues discovered through the unit tests and renames a few functions to be clearer.

Signed-off-by: AMZN-koppersr <82230785+AMZN-koppersr@users.noreply.github.com>
2021-10-28 13:53:53 -07:00
Chris Galvan e56396a817 Improvements to C++/Python tool gemplates
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
2021-10-28 14:30:14 -05:00
AMZN-ScottR eb713fb3a8 Merge branch 'development' into profiler_capture_api
Signed-off-by: AMZN-ScottR <24445312+AMZN-ScottR@users.noreply.github.com>
2021-10-28 12:19:50 -07:00
Guthrie Adams e5729fbefe Fix clearing material component default material not clearing materials or updating preview
• Changed thumbnail property control to track asset key even if image is overridden so that it will be restored if the image is cleared.
• Changed property asset control to disable the thumbnail image by default whenever the attribute is applied. It will only enable the thumbnail image if the pixmap is valid.
• Changed the material component controller to always use an empty material assignment map on deactivation so that no persistent materials are reapplied.
• Changed the material component controller to immediately send a notification that materials have updated if no materials were queued for load but the configuration contained pre created or persistent material instances. This mainly affects the material editor because it manages its own material instances.

Signed-off-by: Guthrie Adams <guthadam@amazon.com>
2021-10-28 13:58:47 -05:00
AMZN-ScottR fc94ede439 [profiler_capture_api] fixed runtime issues with BehaviorInterfaceProxy reflection
Signed-off-by: AMZN-ScottR <24445312+AMZN-ScottR@users.noreply.github.com>
2021-10-28 11:55:49 -07:00
lumberyard-employee-dm b9147c60a0 Added the generated cmake_dependencies.*.setreg files to engine.pak (#5073)
* Copied the generated cmake_dependencies.*.setreg file to the Cache
directory

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

* Removed the platform name from the bootstrap.game.*.setreg

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
2021-10-28 13:45:19 -05:00
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
greerdv 9b2afbc39b fix explicit qualification of member function addresses
Signed-off-by: greerdv <greerdv@amazon.com>
2021-10-28 12:51:33 +01:00
greerdv dd0780f6ec make sure joint frame rotations are editable for ragdoll setup
Signed-off-by: greerdv <greerdv@amazon.com>
2021-10-28 12:26:05 +01:00