* Adding support for blending the terain detail material with the macro material. Also includes several bug fixes
- The detail materail manager wasn't querying for default terrain region materials when it initializes, so it was missing some creation events that it would later get destruction events for and explode.
- Change the way the default material weights against other surface weights to avoid some discontinuities
- Fixed an issue where a default material id wouldn't initialize as invalid.
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Several improvements and bug fixes
- Adding explicit creation / destruction events for material regions.
- Material regions will no longer try to "hide" when they don't have any materials
- Default detail materials will now only be used in areas where there are no other material assignments
- Fixed a bug where materials might not show up on surfaces when they were assigned to multiple regions or surface tags.
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Simplified loop that assigns materials based on surface tags. Slightly simplified shader code regarding detail material id coordinates.
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Fixes from PR review
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Making sure region changed doesn't get announced in the case where the old and new regions are both invalid.
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Updated all array_view uses with the C++20 span.
The updates were done in the following order
1. `AZStd::array_view<([^>].+)\* ?>` -> `AZStd::span<\1 const>`
2. `AZStd::array_view<(?:const )(.+)>` -> `AZStd::span<const \1>`
3. `AZStd::array_view` -> `AZStd::span`
Removed the implementation of array_view.
Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
* Added missing whitespace between `const` and the typename for spans.
Updated the ShaderTest comparison of the ShaderResourceGroupLayout span
to compare the sizes as well
Updated comments on some of the methods that stated that they return "an
array" to mention they return "a span".
Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
Fixed a regression issue with image builder which it can choose proper preset for images with alpha content.
Signed-off-by: Qing Tao <55564570+VickyAtAZ@users.noreply.github.com>
Fixed a editor hanging issue when preview texture with astc format (starts multiple job threads inside a job thread)
Fixed an issue of changing texture setting didn't trigger image re-process.
Fixed an issue with image asset which has texture setting may have dependency with wrong preset
Added a EIF_HDR for source image in hdr format.
Fixed astc compression issue which may wrongly compress image to HDR astc format
Signed-off-by: Qing Tao <55564570+VickyAtAZ@users.noreply.github.com>
Changes include:
-Fixed image preview issue which was trying to convert a compressed texture directly to QImage.
-Fixed texture resolution display for cubemap in texture setting editor.
-Sort the preset names in preset combo box
-Fixed a crash when showing IBLSkybox preset info in texture setting editor
Signed-off-by: Qing Tao <55564570+VickyAtAZ@users.noreply.github.com>
Changes include:
- Move config files from ImageProcessingAtom/Config/ folder to ImageProcessingAtom/Assets/Config/ folder so it can be watched as source depencies.
- Change GetSuggestedPreset function so it can return certain preset for certain file name.
- Move file mask mappings from preset to ImageBuilder.settings. But the file masks in preset can still be used.
- Changed from using project config folder's imageBuilder.Settings for override to using it as json merge patch.
- Expose GetFileHash function in AssetBuilderSDK api.
Signed-off-by: Qing Tao <55564570+VickyAtAZ@users.noreply.github.com>
* Add a name to JobManager, all worker threads use that name to label their threads
Signed-off-by: rgba16f <82187279+rgba16f@users.noreply.github.com>
* update with PR feedback, changed to use AZStd::fixed_string::format
Signed-off-by: rgba16f <82187279+rgba16f@users.noreply.github.com>
* Fix copy paste errors using local variable names
Signed-off-by: rgba16f <82187279+rgba16f@users.noreply.github.com>
Applied the discard alpha in the begining of converting.
Also deleted some unused processing settings and steps.
Signed-off-by: Qing Tao <55564570+VickyAtAZ@users.noreply.github.com>
* Remove many unused variables and unused setting files
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
* Remove a few more dead config vars
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
* fix android test_ConfigureSettings_DefaultValues_SetsValues
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
ATOM-16575 clean up image builder presets files
Removed unused image builder presets
Deprecating preset UUID and use preset name as unique id
Delete all .exportsettings file which were only used for legacy imageProcessing gem.
Signed-off-by: Qing Tao <qingtao@amazon.com>
* ATOM-16029 Add direct support for Astc compression
Changes include:
- Add ASTCCompressor class
- Enabled 3rdparty::astc-encoder static library.
- Remove ASTC support in PVRTC compressor and ISPC compressor.
- Update unit test to include texts for ASTC compress/decompress.
Signed-off-by: Qing Tao <qingtao@amazon.com>
* Release build fix for Windows
* Release build fix for Android
* Release build fix for Windows
* Release build fix for Android
* Release build fix for Linux
* Release build fix for Mac
* Release build fix for iOS
Signed-off-by: Steve Pham <spham@amazon.com>
Update package name and hash
Add compressor names.
Update ImageProcessingAtom unit tests.
Removed some unused test assets under ImageProcessingAtom
Enalbe ISPC to all the platforms.
Better error message with compression/decompression
Add temp folder to git ignore
added ispccompressor for all platform. valid it with linux
Update windows package hashes.
Removed AZ_TRAIT_IMAGEPROCESSING_USE_ISPC_TEXTURE_COMPRESSOR
Minor refactor with image processing unit tests.
Signed-off-by: qingtao <qingtao@amazon.com>
* Final update copyright headers to reference license files at the repo root
Signed-off-by: spham <spham@amazon.com>
* Fix copyright validator unit tests to support the stale O3DE header scenario
Signed-off-by: spham <spham@amazon.com>
- 'Crytek application' is now 'O3DE application' in ISystem.h
- 'CryTek' is now 'O3DE' in ProjectDefines.h (comment)
- 'Crytek Legacy' is now 'O3DE Legacy' in LocalizedStringManager.cpp
- 'Crytek extended data' references are now 'O3DE extended data'
Signed-off-by: spham <spham@amazon.com>
Remove from CryCommon and CrySystem:
- MemoryManager and all related classes/files
- StreamEngine, ResourceManager, ImageHandler, and AsyncPakManager
- Various other related interfaces/files/classes etc. that are all now unused