Commit Graph

774 Commits (e11b1e2c9c5434c28934bae268082d95e6e6812f)

Author SHA1 Message Date
amzn-mike e11b1e2c9c
[LYN-7774] wildcard source dependencies not refreshing with new files (#5054)
* Fix handling of absolute path dependencies when a newly added file satisfies a previously added dependency

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

* Fixed relative path wildcard dependencies matching absolute paths

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

* Update extra unit test to only run on windows since this problem doesn't apply to other OSes

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
4 years ago
Allen Jackson 255e6894dc
{} adding behavior for GraphData BoneData (#5061)
* adding behavior for AZ::SceneData::GraphData::BoneData
* adding behavior for AZ::SceneData::GraphData::RootBoneData


Signed-off-by: jackalbe <23512001+jackalbe@users.noreply.github.com>
4 years ago
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>
4 years ago
amzn-mike 916fb413c9
Fix Assert Absorber being leaked due to one of the tests setting m_errorAbsorber to nullptr without deleting the object (#5176)
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
4 years ago
Alex Peterson 07353ed4ad
Merge pull request #5137 from aws-lumberyard-dev/Prism/integrate-crash-fix
Integrate gem catalog refresh crash fix (#5112)
Signed-off-by: Alex Peterson <26804013+AMZN-alexpete@users.noreply.github.com>
4 years ago
Esteban Papp 72d6f2972e
Adding support for multi-config/multi-permutation installer 4 years ago
Alex Peterson ca9093c202 Add engine name, folder and fix refresh crash (#5112)
Signed-off-by: Alex Peterson <26804013+AMZN-alexpete@users.noreply.github.com>
4 years ago
Esteban Papp 475338cfad Merge branch 'development' into o3de_sdk/installer_configs
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
4 years ago
Adi Bar-Lev 2a32d67830 Merge commit '6cce184340dbce9796234a67a0452d1088474945' into barlev/gitflow_211028_O3DE 4 years ago
Adi Bar-Lev 1488522236 Merge commit '00a49fa251121eeb13d28a5ff3cc466392ed3ad9' into barlev/gitflow_211028_O3DE 4 years ago
Adi Bar-Lev f25b80e172 Merge commit 'f350ba3042b216369748935800628118b835ca81' into barlev/gitflow_211028_O3DE 4 years ago
amzn-mike 899bda4631
Add additional logging for Fingerprint test. (#5104)
This logging is to help track down a Jenkins only automated test failure.

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
4 years ago
Alex Peterson 6cce184340
Enforce unique gem names in catalog (#5063)
Signed-off-by: AMZN-alexpete <26804013+AMZN-alexpete@users.noreply.github.com>
4 years ago
Alex Peterson 00a49fa251
Use source model data instead of filtered (#5071)
Signed-off-by: AMZN-alexpete <26804013+AMZN-alexpete@users.noreply.github.com>
4 years ago
Tommy Walton f350ba3042
Modify the AssetBundler to correctly identify the Gems that are enabled in the current active project (#5072)
* Modify the AssetBundler to correctly identify the Gems that are enabled in the current active project

Signed-off-by: Tommy Walton <waltont@amazon.com>

* Removed unnecessary if() statement and updated the comment.

Signed-off-by: Tommy Walton <waltont@amazon.com>

* Disabling gem loading in the asset bundler tests, just like the asset bundler itself.

Signed-off-by: Tommy Walton <waltont@amazon.com>
4 years ago
amzn-mike b6d634c3ed
Print all captured messages in Assert Absorber used by FingerprintTest to help debug crash (#5096)
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
4 years ago
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>
4 years ago
Alex Peterson 59c898fc48
Fix notification queue and add gem action (#4985) (#5024)
Signed-off-by: AMZN-alexpete <26804013+AMZN-alexpete@users.noreply.github.com>
4 years ago
Danilo Aimini d5c09c695c Merge commit '3165cf283828d1234bda738ab24ea74c4511152a' into daimini/gitflow_211027_o3de
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
4 years ago
Danilo Aimini b9613bc915 Merge commit '7fc0f14a1b4f66e560a2ee770b9dbb28dfd54d6f' into daimini/gitflow_211027_o3de
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
4 years ago
Danilo Aimini 46d616824f Merge commit '856318005cac14560f765dc5af203e0139344bb3' into daimini/gitflow_211027_o3de
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
4 years ago
Danilo Aimini 324c9462b6 Merge commit '6b3fc0ff8b2e3094781d7521ec116f620951d46f' into daimini/gitflow_211027_o3de
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
4 years ago
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
4 years ago
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
4 years ago
Alex Peterson 7a0246530a
Fix notification queue and add gem action (#4985)
Signed-off-by: AMZN-alexpete <26804013+AMZN-alexpete@users.noreply.github.com>
4 years ago
AMZN-Phil 856318005c
Merge pull request #5000 from aws-lumberyard-dev/Prism/RemoteGemWarning
Adds Warning to Add Repo Dialog
4 years ago
puvvadar e68f57c843
Merge pull request #4889 from aws-lumberyard-dev/bitset_serialization_includes
Fix usages of AZStd::bitset not being found by serialize context
4 years ago
nggieber 866fd8a420 Fix selected gem filtering
Signed-off-by: nggieber <nggieber@amazon.com>
4 years ago
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>
4 years ago
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>
4 years ago
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>
4 years ago
nggieber 3ff469c55e Fix issue with project still displaying when last project is removed
Signed-off-by: nggieber <nggieber@amazon.com>
4 years ago
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>
4 years ago
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>
4 years ago
nggieber 75ebf77b59 Added warning message when adding repositories
Signed-off-by: nggieber <nggieber@amazon.com>
4 years ago
Alex Peterson c00b99f2d5
Disable custom titlebar on Mac, Linux, fix resize (#4973)
Signed-off-by: AMZN-alexpete <26804013+AMZN-alexpete@users.noreply.github.com>
4 years ago
AMZN-Phil 423693d16b Re-add call used to initiate gem download
Signed-off-by: AMZN-Phil <pconroy@amazon.com>
4 years ago
Alex Peterson 29dbb0b089
Set Project Manager minimum height 700px (#4970)
Signed-off-by: AMZN-alexpete <26804013+AMZN-alexpete@users.noreply.github.com>
4 years ago
Esteban Papp fec1b2fda2 Merge branch 'development' into o3de_sdk/installer_configs
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

# Conflicts:
#	Gems/AtomLyIntegration/CommonFeatures/Code/Source/Material/EditorMaterialSystemComponent.cpp
#	cmake/Platform/Common/Install_common.cmake
4 years ago
nggieber 06f893edf1 Merge branch 'development' into Prism/ShowRepoGems 4 years ago
AMZN-Phil e8a7743aec
Merge pull request #4911 from aws-lumberyard-dev/Prism/RefreshGemRepos
Gem Repos can be Refreshed through Project Manager
4 years ago
nggieber 88f7f66b04 Removed fullPathGiven and instead check if path is a file when getting gem json data
Signed-off-by: nggieber <nggieber@amazon.com>
4 years ago
nggieber 500ac030a3 Merge branch 'development' into Prism/ShowRepoGems 4 years ago
nggieber 673815c58d Merge branch 'development' into Prism/ShowRepoGems 4 years ago
nggieber 15f4c1a091 Undownloaded remote gems are shown in Gem Catalog and searchable by repo name
Signed-off-by: nggieber <nggieber@amazon.com>
4 years ago
AMZN-Phil 69771ab2e1
Merge pull request #4892 from aws-lumberyard-dev/TrackDownloadProgress
Project Manager track progress of, and cancel downloads
4 years ago
Esteban Papp ec78c1c003 Removes unity=true since its the default
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
4 years ago
AMZN-Phil b609dbbbbb Pass a callback instead of weak linking a module
Signed-off-by: AMZN-Phil <pconroy@amazon.com>
4 years ago
nggieber f6d4556b60 Merge branch 'development' into Prism/RefreshGemRepos 4 years ago
nggieber 10c0522dcb Added F5 support for refreshing repos
Signed-off-by: nggieber <nggieber@amazon.com>
4 years ago