* Updated UV channel name retrieval to match changes to the assimp sdk
Signed-off-by: AMZN-stankowi <4838196+AMZN-stankowi@users.noreply.github.com>
* Updated FBX automated tests to work with latest changes
Signed-off-by: AMZN-stankowi <4838196+AMZN-stankowi@users.noreply.github.com>
* Updating to the latest build of assimp: 5.1.6 with our two fixes applied on top
Signed-off-by: AMZN-stankowi <4838196+AMZN-stankowi@users.noreply.github.com>
* Adding updated linux package info
Signed-off-by: AMZN-stankowi <4838196+AMZN-stankowi@users.noreply.github.com>
* Added mac package info for 5.1.6 assimp
Signed-off-by: AMZN-stankowi <4838196+AMZN-stankowi@users.noreply.github.com>
* Updating Linux assimp package hash with latest changes
Signed-off-by: AMZN-stankowi <4838196+AMZN-stankowi@users.noreply.github.com>
* Updated mac hash to match latest assimp mac package
Signed-off-by: AMZN-stankowi <4838196+AMZN-stankowi@users.noreply.github.com>
* Updated windows to the latest assimp 5.1.6 package
Signed-off-by: AMZN-stankowi <4838196+AMZN-stankowi@users.noreply.github.com>
- Add the following compilation flags for clang
-fpie
-fstack-protector-all
-fstack-check (non-release)
- Add the following compilation flags for gcc
-fpie
-fstack-protector-all
- Fix -Wunused-result errors from above compilation flag updates
- Add _FORTIFY_SOURCE=2 to GCC DEFINES
Signed-off-by: Steve Pham <82231385+spham-amzn@users.noreply.github.com>
* Move modtime scanning tests out of APM tests file and into its own file.
Changes were kept to a minimum to get things compiling, this is just a move of code
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Fix rebase compile errors
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Verify dependency fingerprints during Zero Analysis.
This fixes an issue where dependencies that weren't finished processing when AP shuts down would not resume when AP is started back up due to Zero Analysis ignoring dependencies when determining files to skip.
Added unit test for verification
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Fix compile error, make 17 a constexpr
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Fix compile error
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
This dependency was causing all of the asset processor modules to have to build gems, namely the unit tests which did not actually require the gems.
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Move modtime scanning tests out of APM tests file and into its own file.
Changes were kept to a minimum to get things compiling, this is just a move of code
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Fix rebase compile errors
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Fixed string_view compilation in GCC 10+.
Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
* More GCC 10+ Fixes.
GCC 11 seems to have an issue with linkage regarding using a lambda as a default parameter in a function declaration.
Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
* GCC10+ Fix - Fixed binding to a temporary references.
> error: loop variable ‘pathName’ of type ‘const QString&’ binds to a temporary constructed from type ‘const char* const’ [-Werror=range-loop-construct]
415 | for (const QString& pathName : { "CrySystem",
Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
* WIP
Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>
* Commit before merging
Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>
* Added new pngs
Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>
* Changes from PR
Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>
* Fixed CRC errors
Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>
Updates and fixes to support GCC for Linux
Signed-off-by: Steve Pham <82231385+spham-amzn@users.noreply.github.com>
Co-authored-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
* Templates/Restricted upgrade/fixes:
Fixed template storage format: templates now only store true relative paths and no longer save "origin" paths and "optional" has been removed, it was never used.
Upgraded all templates to new standard
Template system now correctly handles child objects: Child objects no longer have to specify restricted they inherit from parent
Restricted now operates at the object level and makes no assumptions about parent
Restricted templates can now be combined and seperated on creation
ly_get_list_relative_filename has been deprecated for o3de_pal_dir
All Gems/Projects/Templates updated to use new code
Signed-off-by: byrcolin <byrcolin@amazon.com>
Replaced a variable with the name "interface" to avoid conflict with MSVC keyword
Signed-off-by: AMZN-ScottR <24445312+AMZN-ScottR@users.noreply.github.com>
* Initial pass at optimizing product path dependency resolution
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Add version of StripAssetPlatform that doesn't allocate or copy strings. Re-add missing test and fix up compile errors. Add benchmark test
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Change UpdateProductDependencies to directly call s_InsertProductDependencyQuery.BindAndStep
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Add test for same filename on multiple platforms
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Rework search logic to keep track of the source of a search path (source vs product) and keep track of which search matches which dependency to avoid doing another search through every product later on
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Clean up code, expand test
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Fix paths not being lowercased by SanitizeForDatabase. Fix UpdateProductDependencies not updating existing dependencies
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Add test for duplicate dependency matches. Fix saving duplicates
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Clean up code
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Separate test into test and benchmark versions
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Cleanup include
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Fix includes, switch hardcoded job manager setup to use JobManagerComponent instead
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Replaced wildcard_match with PathView::Match. Changed StripAssetPlatformNoCopy to use TokenizeNext. Removed Environment Create/Destroy calls. Made ScopedAllocatorFixture a base class of ScopedAllocatorSetupFixture
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Add AZ Environment create/destroy on AP test environment
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Add missing asserts on database functions
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Fix incorrect usage of StripAssetPlatformNoCopy
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Fix source/product dependency type being ignored. Removed need for unordered_set for list of resolved dependencies. Updated unit tests
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Better variable names
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Remove testing code
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Fix missing includes and namespaces
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
The CriticalAssetsCompiled event can be handled to detect when the
AssetProcessor has finished processing Critical Assets
Also with the new event, an audit has been performed over all the
locations where the AssetCatalogEventBus OnCatalogLoaded event was being
handle to make sure it was the proper event to use.
If the handler was actually examing the enumerating over the full
catalog or querying all assets within the catalog, then it was a proper
use.
For handlers that were interested in a particular asset it was not
Moreover added implementations of `OnCatalogAssetChanged` and
`OnCatalogAssetAdded` to the FileTagComponent and the MaterialViewportComponent.
Any applications which uses the AtomToolsApplication
class(MaterialEditor, AtomSampleViewerStandalone,
ShaderMangementConsole) now signals a "CriticalAssetsCompiled" lifecycle
event as well as loads the "assetcatalog.xml" if it exists.
The Launcher application signals the "CrticalAssetsCompiled" event and
reloads the "assetcatalog.xml" for the ${project}.GameLauncher and
${project}.ServerLauncher in Launcher.cpp
Finally the Editor signals the "CriticalAssetsCompiled" and reloads the
"assetcatalog.xml" in CryEdit.cpp
resolves#6093
Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
* Some fixes for paths with spaces
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
* PR comments
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
* Adds mac test job
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
* Points to sysctl properly to handle zsh
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
* Fixes some macos differences with Linux when reading the CTEST_RUN_FLAGS parameters
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
* adding the test job to the profile pipe
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
* Disables some tests in Mac that are not passing
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
* passes config to cli_test_driver and sets the right trait for the test (pytest instead of lytesttools)
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
* Set proper traits for AtomRHI
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
* Corrected AZ_TRAIT_UNIT_TEST_PERLINE_GRADIANT_GOLDEN_VALUES_7878 values for Mac
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
* Disables EMotionFX tests in Mac
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
* Removes debugging prints
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
* Removes filters that were meant just for Linux
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
* quotes are re-quoted in the test_mac.sh script
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
* {lyn8865} Adding DataTypes::ScriptProcessorFallbackLogic
- Give the user an option how to handle fallback logic for script rules
Signed-off-by: Allen Jackson <23512001+jackalbe@users.noreply.github.com>
* the new code found an error in a Python script... it seems to work!
Signed-off-by: Allen Jackson <23512001+jackalbe@users.noreply.github.com>
* fixing up the regression test
Signed-off-by: Jackson <23512001+jackalbe@users.noreply.github.com>
* dump version number
Signed-off-by: Allen Jackson <23512001+jackalbe@users.noreply.github.com>
This change reworks the AssetProcessor's FileWatcher so that it only uses
one thread. This is motivated by getting better support for inotify on
Linux. The previous architecture required calling `inotify_init` once for
each directory that was being watched, and using separate inotify instances
for each watched tree. In addition, having separate threads per watched
tree is not necessary, and just consumes system resources. Each platform
supports watching multiple directories with the same platform-specific
watcher API, so each platform has been updated accordingly.
The interface to the FileWatcher class is greatly simplified. Previously,
it supported client-supplied filtering of the paths that would generate
notifications. This was done by subclassing `FolderWatchBase` and
implementing `OnFileChange`. However, only one filter was ever used, so
that filter is now hard-coded in the FileWatcher class, and the classes
driving the old filtering mechanism are removed. Users of the interface
now have a much easier time, they just call `AddFolderWatch` with the path
to watch, and only have to connect to one set of signals, instead of
separate signals per watched directory.
Signed-off-by: Chris Burel <burelc@amazon.com>