Commit Graph

2409 Commits (f2378fc8d8afd9e97d2b51b0b09e62c70eb8b39b)

Author SHA1 Message Date
antonmic ba76d304dc merging latest dev
Signed-off-by: antonmic <56370189+antonmic@users.noreply.github.com>
4 years ago
santorac 8042a6e97a Merge branch 'development' into Atom/santorac/RemixableMaterialTypes3_UpdatedStandardPbr
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
santorac 2c59f1b8a4 Added support for deeply nested material property groups.
The main addition here is the MaterialNameContext class which represents the concept of a namespace for properties, shader options, and SRG fields. This concept was already somewhat supported in LuaMaterialFunctor through bespoke "prefix" fields, but I have generalized it be available for all material functors. Note that I have not yet updated the other material functor types to ensure they take advantage of this feature, that will be in another commit.

Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
antonmic 5b9bc3b479 address PR feedback
Signed-off-by: antonmic <56370189+antonmic@users.noreply.github.com>
4 years ago
Guthrie Adams 4b91a86ace
Merge pull request #7276 from aws-lumberyard-dev/Atom/guthadam/atom_tools_move_document_boilerplate_to_base_class
Atom Tools: move boilerplate document management code to atom tools framework
4 years ago
Chris Galvan 578a19bf49 Removed unused parameters in the GSI.preset configuration
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
4 years ago
santorac 7cbcd5e145
Merge pull request #7328 from aws-lumberyard-dev/Atom/santorac/ShaderOptionValueUtils
Minor cleanup of some shader option related unit tests.
4 years ago
dmcdiarmid-ly 7413842227
Merge pull request #7275 from aws-lumberyard-dev/Atom/dmcdiar/ATOM-13886
DiffuseProbeGrid Visualization
4 years ago
Guthrie Adams 670d22cb5b Added notifications after re opening a document
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
Chris Galvan 85b8177efa Added preset for converting gsi images
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
4 years ago
santorac b1cc469914 Merge branch 'Atom/santorac/ShaderOptionValueUtils' into Atom/santorac/RemixableMaterialTypes4_Layering
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
santorac 5ecc5b7edb Merge branch 'development' into Atom/santorac/RemixableMaterialTypes4_Layering
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
santorac 3441c02637 Minor cleanup of some shader option related unit tests.
Added new utility functions for easily creating the value set for a ShaderOptionDescriptor.
Made ShaderOptionDescriptor default value optional, picking the first available value as the default ... by default.

Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
Guthrie Adams ca0006f570 Minor changes and comments after PR feedback
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
santorac a352807c87 Renamed MaterialFunctor code to use propertyId instead of propertyName, because 'name' is us for the short name of a property and 'ID' is for the full name including groups.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
Steve Pham 71cc3a2568
Remove -Wno-comment warning suppression
Signed-off-by: Steve Pham <82231385+spham-amzn@users.noreply.github.com>
4 years ago
AMZN-nggieber f5fcab75d6
Display Gem Icons in Gem Catalog (#7294)
Signed-off-by: nggieber <52797929+AMZN-nggieber@users.noreply.github.com>

Co-authored-by: Alex Peterson <26804013+AMZN-alexpete@users.noreply.github.com>
4 years ago
Guthrie Adams 66be8543cd fixing merge issues
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
Guthrie Adams 8617d34724 updated comment
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
Guthrie Adams 9ded52b141 Wrapping redundant save logic into function in the material editor document class
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
Guthrie Adams e273f3ef6a Updating comments
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
Guthrie Adams dc598a8b3c Atom Tools: move boilerplate document management code to atom tools framework
• Moved all of the common save and load code to the document base class
• Moved undo and redo support to document base class but will probably extract to its own class or replace with one from AzTF
• Streamlined material editor, shader management console, and other tools with updated document code
• Cleaned up some of shader management console loading code, added support for saving, as well as getting and setting the shader variant list source data structure

Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
hershey5045 96dcd1fc26
Atom/rbarrand/export screenshot diff (#7300)
* Small refactor on ImageComparison utils.

Signed-off-by: hershey5045 <43485729+hershey5045@users.noreply.github.com>

* Add aznumeric cast.

Signed-off-by: hershey5045 <43485729+hershey5045@users.noreply.github.com>

* Correction on aznumeric cast.

Signed-off-by: hershey5045 <43485729+hershey5045@users.noreply.github.com>

* Add unit test for new image comparison function.

Signed-off-by: hershey5045 <43485729+hershey5045@users.noreply.github.com>

* Use span instead of array_view

Signed-off-by: hershey5045 <43485729+hershey5045@users.noreply.github.com>
4 years ago
hershey5045 c514e1b490
Small refactor on ImageComparison utils. (#7133)
* Small refactor on ImageComparison utils.

Signed-off-by: hershey5045 <43485729+hershey5045@users.noreply.github.com>

* Add aznumeric cast.

Signed-off-by: hershey5045 <43485729+hershey5045@users.noreply.github.com>

* Correction on aznumeric cast.

Signed-off-by: hershey5045 <43485729+hershey5045@users.noreply.github.com>

* Add unit test for new image comparison function.

Signed-off-by: hershey5045 <43485729+hershey5045@users.noreply.github.com>
4 years ago
dmcdiarmid-ly 5c3d5a290a Minor changes
Signed-off-by: dmcdiarmid-ly <63674186+dmcdiarmid-ly@users.noreply.github.com>
4 years ago
Chris Galvan 63ce88a3ce
Merge pull request #7246 from aws-lumberyard-dev/cgalvan/AddedComponentSupportToRPIUtils
Extended sub image pixel API to support component indexing.
4 years ago
santorac 4c426ea5a6 Fixed compile issue in unity builds.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
santorac 1190772845 Merge remote-tracking branch 'upstream/development' into Atom/santorac/RemixableMaterialTypes3
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
antonmic 9f0b6d65f4 merging latest dev
Signed-off-by: antonmic <56370189+antonmic@users.noreply.github.com>
4 years ago
dmcdiarmid-ly ec76a4d647 Always relocate probes after the texture is cleared
Signed-off-by: dmcdiarmid-ly <63674186+dmcdiarmid-ly@users.noreply.github.com>
4 years ago
dmcdiarmid-ly 5f7a30f8da Added DiffuseProbeGrid Visualization passes, shaders, and editor controls.
Changed the DiffuseGI passes to override IsEnabled() instead of exiting early from FrameBeginInternal.

Signed-off-by: dmcdiarmid-ly <63674186+dmcdiarmid-ly@users.noreply.github.com>
4 years ago
santorac 90e34e8649 Fixed a couple places where we had variables called 'propertyNameContext' instead of 'propertyIdContext' which was inconsistent
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
santorac d9c646062b Instrumented support for the JSON importer for material type files.
I also noticed that JsonFileLoadContext was no longer used (see https://github.com/o3de/o3de/pull/7010) so I was able to remove all that code.

Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
santorac e173840bab Moved the StandardPbr property groups around to be in their original order.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
santorac c3363fc22e Updating StandardPbr.materialtype to follow the new file format. In this commit all I did was combine the "groups" metadata together with the property lists. The groups will now show up in the wrong order in the Material Editor, because that was based on the "groups" list that no longer exists. I wanted to keep the giant list of properties in the same order for an easier diff review. In the next commit, I'll move the property groups around to be in the same order as before.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
Chris Galvan fba7d73c57 Extended sub image pixel API to support component indexing.
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
4 years ago
Thomas Poulet 3a0edd2dd1
Move reflection probe fp file and fix missings in cmake file list (#7189)
Signed-off-by: Bindless-Chicken <1039134+Bindless-Chicken@users.noreply.github.com>
4 years ago
Jackerty e03d9eefd9
Moves Culling.cpp::ProcessWorklist debug variables under preprocessing (#7043)
Function Culling.cpp::ProcessWorklist has couple variable which are unsused when compiling profile causing
a -Werror compile error. Fixes is to move variables and code increment them under debugging ifdef.

Signed-off-by: Jackerty <contact.jackerty@gmail.com>
4 years ago
santorac fa037d5d7d Updated MaterialSourceData::CreateMaterialAssetFromSourceData to use MaterialUtils::LoadMaterialTypeSourceData which calls ConvertToNewDataFormat(). This was needed by Material Editor to succesfully load old-format material types.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
santorac c2e220ce49 Renamed property 'set' to property 'group' for consistency with the prior naming.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
santorac 1de540ae3f Updated code to use span instead of array_view as this was replaced on the development branch.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
santorac b9a80dee32 Fixed newline at end of file.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
santorac 5e2bf1a468 Reverted changes to most of the material type files. I'll update those in a separate PR.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
santorac 906db920d0 Merge remote-tracking branch 'upstream/development' into Atom/santorac/RemixableMaterialTypes3
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
Guthrie Adams 09ff46b445
Merge pull request #7177 from aws-lumberyard-dev/Atom/guthadam/atom_tools_move_me_performance_monitor_statusbar_labels_to_atf
Atom Tools: move performance metrics status bar widgets to base window
4 years ago
Chris Galvan 753d15b0f8
Merge pull request #6758 from aws-lumberyard-dev/cgalvan/DraftStreamingImageAssetPixelAPI
Added pixel retrieval API to StreamingImageAsset
4 years ago
santorac a4346de658 Code cleanup. New comments. Added some non-const find functions to MaterialTypeSourceData. Fixed places where I forgot to change m_name to GetName().
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
santorac e0cee13747 Code cleanup.
Made PropertyDefinition::m_name private.
Moved code around for a cleaner diff in MaterialTypeSourceData.h.
Added API comments.

Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
Guthrie Adams 413ce5a6ab Atom Tools: move performance metrics status bar widgets to base window
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
Chris Galvan f368997deb Modified the passing of span in test
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
4 years ago
santorac 68e4970a2d Reverted the new Tokenize function I added, and used TokenizeVisitor instead.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
mrieggeramzn 50982b8283
Exposing / Unifying the rasterstate depth bias values for all the shadowmap shaders (#7150)
Signed-off-by: mrieggeramzn <mriegger@amazon.com>
4 years ago
Chris Galvan f3fa731fef Merge branch 'development' of https://github.com/o3de/o3de into cgalvan/DraftStreamingImageAssetPixelAPI 4 years ago
lumberyard-employee-dm b9824ed172
Updated all array_view uses with the C++20 span. (#7157)
* 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>
4 years ago
Chris Galvan 0550167f9f Updated API to return false if there is any issue retrieving the data
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
4 years ago
Chris Galvan dbbb9fe6e8 Merge branch 'development' of https://github.com/o3de/o3de into cgalvan/DraftStreamingImageAssetPixelAPI 4 years ago
Chris Galvan 670777f0f2 Moved the pixel value retrieval APIs from StreamingImageAsset to RPIUtils
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
4 years ago
santorac aeb43c4012 Fixed up a few small things to get Material Editor working again.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
santorac 9b8bebbd70 Bumped the MaterialBuilder version number.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
lumberyard-employee-dm 52f1ef84c7
Fixed string_view compilation in GCC 10+. (#7153)
* 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>
4 years ago
santorac 4312c636af Got the RPI unit tests building and working again after merge. There were some incorrectly resolved conflicts that I had to re-resolve, especially in MaterialTypeSourceData::CreateMaterialTypeAsset.
I removed support for property rename version updates in MaterialTypeSourceData (i.e. ApplyPropertyRenames) because MaterialSourceData serialization no longer loads material property definitions from the .materialtype file, per a recent change on the development branch. The unit tests were broken and it wasn't worth updating them since we don't need this functionality anymore. Material property renames and other version updates are now exclusively applied by the MaterialAsset class.

Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
Chris Galvan 921c1e2201 Modified GetSubImagePixelValues API to be exclusive with bottom right coordinate, and documented as such
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
4 years ago
Chris Galvan aa025a5e7d Updated unit tests per PR feedback
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
4 years ago
Chris Galvan 93261022f1 Merge branch 'development' of https://github.com/o3de/o3de into cgalvan/DraftStreamingImageAssetPixelAPI 4 years ago
Esteban Papp d605b5636d
Merge pull request #5532 from aws-lumberyard-dev/optimization/unused_files
Optimization: remove unused files
4 years ago
Chris Galvan 7ef9a01d24 Fixed compile issue on Linux
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
4 years ago
Esteban Papp 75f511d851
Merge pull request #6390 from aws-lumberyard-dev/memory/overrideshim_removal
Memory/overrideshim removal
4 years ago
Chris Galvan 94036b78a0 Merge branch 'development' of https://github.com/o3de/o3de into cgalvan/DraftStreamingImageAssetPixelAPI 4 years ago
Esteban Papp 22616cc7c4 Merge branch 'development' into optimization/unused_files
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

# Conflicts:
#	Gems/LmbrCentral/Code/Tests/lmbrcentral_editor_tests_files.cmake
4 years ago
moraaar b0a725340c
Moved gems .setreg files to Registry folder, otherwise they will be missing in a Pre-built SDK Engine (#7140)
Signed-off-by: moraaar <moraaar@amazon.com>
4 years ago
santorac 76add4d0d9 Merge remote-tracking branch 'upstream/development' into Atom/santorac/RemixableMaterialTypes3
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
Esteban Papp 6fad254b59 Merge branch 'development' into optimization/unused_files
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

# Conflicts:
#	Code/Editor/IEditorImpl.cpp
#	Code/Editor/IEditorImpl.h
#	Gems/LmbrCentral/Code/Tests/lmbrcentral_editor_tests_files.cmake
4 years ago
santorac b5c7869f14 Merge branch 'development' into Atom/santorac/RemixableMaterialTypes3
There were lots of material system conflicts that had to be resolved. I expect the build is broken at this commit, and I'll fix it in followup commits.

Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
Steve Pham 99764df120
Fix GCC Build Errors
- Fix gcc error caused by implicit conversion of Qt::ByteArray to const char*
- Fix Linker errors to QtTest in AtomToolsFramework.Tests and ScriptCanvasDeveloper.Editor

Signed-off-by: Steve Pham <82231385+spham-amzn@users.noreply.github.com>
4 years ago
Guthrie Adams 8bdb51e63a
Merge pull request #7135 from aws-lumberyard-dev/Atom/guthadam/atom_tools_move_me_performance_monitor_to_atf
Atom Tools: Moved performance monitor system component from ME to ATF
4 years ago
Qing Tao 1e9c1cdf1f
Android devices have alignment issue with ASTC_6X6 textures. Swith to ASTC_4X4 to fix this issue. (#7144)
The astc_6x6 alignment issue will be investiagte seperately.

Signed-off-by: Qing Tao <55564570+VickyAtAZ@users.noreply.github.com>
4 years ago
Chris Galvan efd2e41b05 Added unit test for single pixel and pixel regions API usage
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
4 years ago
Chris Galvan f3120ca780 Made some float constants more explicit and updated the pixel index calculation logic to be more concise
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
4 years ago
Chris Galvan 6a91b6d92d Merge branch 'development' of https://github.com/o3de/o3de into cgalvan/DraftStreamingImageAssetPixelAPI 4 years ago
Chris Galvan a2db9806a8
Merge pull request #7123 from aws-lumberyard-dev/cgalvan/gitflow_220124_o3de_development
Merged `stabilization/2111RTE` to `development`
4 years ago
Guthrie Adams 191db77e4d Atom Tools: Moved performance monitor system component from ME to ATF
Moved the performance monitor system component and metrics gathering from the material editor into atom tools framework so it can be reused and extended by other applications.
Replaced the custom performance monitor docked window in the material editor with status bar widgets that are always visible and take up no screen real estate. This could possibly be moved to the base application class or rendered on top of the viewport.

Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
lumberyard-employee-dm f3e9e41f4f
Adding partial implementation of C++20 concepts and range functions for AZStd::span (#7102)
* Adding partial implementation of C++20 concepts and range functions for AZStd::span

The new concepts to discovered existing issues with the PathIterator and deque::iterator classes
PathIterator wasn't properly an input_iterator and therefore the Path classes weren't a range due to an incorrect const_iterator alias
The deque::iterator classes was missing the operator+ friend function that accepted a (ptrdiff_t, deque::iterator) to fulfill the random_access_iterator concepts

The AZStd implementations of (uninitialized_)copy(_n), (uninitialized_)move(_n) and (uninitialized_)file(_n) have been optimized to use memcpy and memset based on fulfilling the contiguous_iterator concept

Fixed invalid AZStd::vector inserts in FrameGraphExecuter.cpp and SliceditorEntityOwnershipService.cpp
The code was trying to copy the underlying addresses for vector<unique_ptr> to a vector<raw pointer> using insert, which it was doing by using memcpy.

relates to #6749

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

* Fixed the `fixed_vector` emplace function to not move initialized
elements using uninitialized_move.

This was causing initialized elements of the fixed_vector to be
overwritten with the element at the emplace position.

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

* Fixed clang warnings about variables that are set, but never read

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

* Updated the `az_has_builtin_is_constant_evaluated` define to not have
"()" as is not a macro.

This helps prevent users from using `az_has_builtin_is_constant_evaluated`
define in a situation where they want to know if the function is being
evaluated in a compile time context.
In that case they need to use the `az_builtin_is_constant_evaluated()`
macro (which of course looks quite similiar) but does not have the word
"has" in it..

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

* Updated the AZStd span class to be C++20 compliant.

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

* Changed phrase "DoesNotCompiles" to be more grammatically correct.

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

* Added more unit test for AZStd span

Fixed an the the return type of the subspan template overload to account
for the source span having a dynamic extent.

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

* Removed unused variable from span unit test.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
4 years ago
Chris Galvan 54893da550 Merge branch 'development' of https://github.com/o3de/o3de into cgalvan/DraftStreamingImageAssetPixelAPI 4 years ago
Chris Galvan 049b33d2df Merging stabilization/2111RTE -> development, resolved conflicts
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
4 years ago
santorac f89977abe3
Merge pull request #7054 from aws-lumberyard-dev/Atom/santorac/RemixableMaterialTypes2_FIX2
Made MaterialPropertyId Be More Generic
4 years ago
Chris Galvan f8ac3071a3
Merge pull request #6671 from tjmgd/bug-anim-lod-91
Fix: LOD stops animation
4 years ago
Guthrie Adams 160508d2d6
Merge pull request #7104 from aws-lumberyard-dev/Atom/guthadam/atom_tools_change_preset_browser_to_generic_asset_grid_dialog
Atom Tools: Changed ME preset browser dialog into generic asset grid dialog in ATF
4 years ago
Guthrie Adams b5ac9cb66b
Merge pull request #7107 from aws-lumberyard-dev/Atom/guthadam/atom_tools_combined_me_viewport_renderer_and_widget
Atom Tools: Combined ME viewport widget and renderer classes
4 years ago
Guthrie Adams 56edae53b9
Merge pull request #7105 from aws-lumberyard-dev/Atom/guthadam/atom_tools_replace_custom_help_dialog_with_message_box
Atom Tools: Replaced custom help dialog with generic message box
4 years ago
santorac fec2b889a3 Merge remote-tracking branch 'upstream/development' into Atom/santorac/RemixableMaterialTypes2_FIX2
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
Chris Galvan 8d0dce2613
Merge pull request #7101 from siretty/fix_build_linux_clang_13
Fix Build on Linux with Clang 13 with Debug, Profile and Release Configuration
4 years ago
Chris Galvan a0594aac9c Merge branch 'development' of https://github.com/o3de/o3de into cgalvan/DraftStreamingImageAssetPixelAPI 4 years ago
Chris Galvan 71640c1c82
Merge pull request #6376 from nemerle/compiletime_filerequest_code2
Compile time reduction - FileRequest & related changes
4 years ago
Chris Galvan 3fd7e79891
Merge pull request #5155 from pollend/feat/add-cursor-wrap-mode-viewport
feat: add cursor wrapped mode
4 years ago
mrieggeramzn c7d1c4603f
Removing lux core (whats left of it) (#7089)
* Removing lux core (whats left of it)

Signed-off-by: mrieggeramzn <mriegger@amazon.com>

* Removing files recommended by NLawson and EPapp

Signed-off-by: mrieggeramzn <mriegger@amazon.com>
4 years ago
Guthrie Adams aabde7916f Atom Tools: Combined ME viewport widget and renderer classes
Was looking into options for making any part of this more generic or reusable but 60% of the code is just setup and teardown of processors, handles, entities, and components for the material editor viewport content. The rest is about handling material editors specific setting changes. Most of the general-purpose code has already been moved into atom tools framework render viewport widget. The best reduction or generalization from this point would be using prefabs or some other mechanism to data drive setting up camera, viewport model, IBL, lighting, sky box.

Also discussing options for replacing the material editor viewport camera controller and states with a generic one used in the main editor and animation editor.

Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
Daniel Edwards 0a5f472f43 Clang 13: Fix build errors ...
... due to local variables only being written to (but never read).

Signed-off-by: Daniel Edwards <dev@danieledwards.de>
4 years ago
Guthrie Adams d6cf8e24f3 Atom Tools: Replaced custom help dialog with generic message box
The help dialog just displayed some HTML text. The message box class provided by Qt can display the same information and styling without additional code. We don’t want to carry around the extra class to new applications based off of this one or port to ATF.
A simple about box was also added and can be fleshed out in the future.
Both dialogs will eventually need to be updated with additional information.

Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
Guthrie Adams f20bf38f88 Atom Tools: Changed ME preset browser dialog into generic asset grid dialog in ATF
Moving more potentially shared code out of the material editor into atom tools framework.
This change consolidates the lighting preset browser, model preset browser, and the base dialogue that they shared into a single, grid based, asset selection dialog.
AssetGridDialog should appear as a move and rename of PresetBrowserDialog but there are probably too many differences with new variable renames and SelectableAsset struct.
Along the way I found examples showing that event bus broadcast accepted generic functions and lambdas. Used this to do a minor cleanup of the viewport settings inspector where the preset dialogs were initialized and other places that did several back to back bus calls.

Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
Chris Galvan c13622c5af Handled special case logic for SNORM minimum value conversion
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
4 years ago
Chris Galvan 1e591ab019 Removed const_cast now that we've switched from array_view to span
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
4 years ago
Chris Galvan c02061e88d Merge branch 'development' of https://github.com/o3de/o3de into cgalvan/DraftStreamingImageAssetPixelAPI 4 years ago
santorac 3e5c1cee1e Fixed a place where GetFullName was still being used.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
Guthrie Adams 27e121f23d
Merge pull request #7051 from aws-lumberyard-dev/Atom/guthadam/atom_tools_deleting_unused_defines_from_me
Atom Tools: removing unused traits for ME executable extension
4 years ago
Guthrie Adams 5fc40bbbf9
Merge pull request #7016 from aws-lumberyard-dev/Atom/guthadam/atom_tools_streamlining_smc
Atom Tools: Removing unnecessary modules, components, and dead code from SMC
4 years ago
Michael Pollind ed5354fcae Merge branch 'development' of https://github.com/o3de/o3de into feat/add-cursor-wrap-mode-viewport 4 years ago
santorac b9ba9f5ca8 Got RPI unit tests building and passing again.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
santorac 534843df0f Added MaterialPropertyId::GetStringView() utility function.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
santorac 8d5a53ab93 Minor changes per code review feedback. Added explicit keyword. Renmoved unnecessary local variable.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
santorac 02acf2f65e Updated MaterialPropertyId class in preparation for nested material property sets.
Here the class has been generalized for a list of group names and a final property name, rather than assuming a single group containing the property. This included removing the unused GetPropertyName and GetGroupName functions. All that's really need from this class is conversion to a full property ID string.

Testing:
New unit test.
Reprocessed all core material types and StandardPBR test materials used in Atom Sample Viewer's material screenshot test.
Atom Sample Viewer material screenshot test script.

Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
Esteban Papp b3ba73db3b Removing unneded include form multiple files
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
4 years ago
dmcdiarmid-ly 5ed7e91a62
Merge pull request #7022 from aws-lumberyard-dev/Atom/dmcdiar/ATOM-17127
NumRaysPerProbe DiffuseProbeGrid setting
4 years ago
Guthrie Adams dac77605d9 Atom Tools: removing unused traits for ME executable extension
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
Chris Galvan c090ad6a56 Account for the pixel size when computing the image data index
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
4 years ago
Guthrie Adams 3977edb21e Atom Tools: Removing unnecessary modules, components, and dead code from SMC
Looking toward creating a bare bones template for a standalone application, simplifying and removing any boilerplate wherever possible. SMC followed patterns established by material editor, subdividing everything into multiple modules, which required manually adding static modules, implementing system components with little to no functionality, and a bunch of unnecessary files for such a simple application. This change deletes unnecessary boilerplate code, moving everything into a single module, making the application class responsible for reflecting classes and buses.

Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
Esteban Papp c978e12efc Merge branch 'development' into memory/overrideshim_removal
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
4 years ago
Guthrie Adams dd9c4e3f66
Merge pull request #7023 from aws-lumberyard-dev/Atom/guthadam/atom_tools_streamlining_me
Atom Tools: Removing unnecessary modules, components, and dead code from ME
4 years ago
santorac 74c6fa5f94
Merge pull request #7010 from aws-lumberyard-dev/Atom/santorac/MaterialAssetDeferredBaking3
Fixed Material Builder To Avoid Reading Material Type Source File
4 years ago
Steve Pham 59e43813f0
GCC Support for Linux
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>
4 years ago
Chris Galvan cdcf8defd0 Added special case support for R8_SNORM, R16_SNORM, and R16_FLOAT
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
4 years ago
santorac f4befb2242 Removed some dead code.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
Chris Galvan 085b49c08a Merge branch 'development' of https://github.com/o3de/o3de into cgalvan/DraftStreamingImageAssetPixelAPI 4 years ago
santorac 232876de9e Merge remote-tracking branch 'upstream/development' into Atom/santorac/MaterialAssetDeferredBaking3 4 years ago
santorac 730daae1e6 Added code comments.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
Chris Galvan 0bd2083c48 Replaced array_view usage with span
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
4 years ago
Guthrie Adams c98d14ad92 Atom Tools: Removing unnecessary modules, components, and dead code from ME
• Working toward creating a standalone application template
Removing application level modules and system components that make it difficult to navigate the project and add a lot of boilerplate code
• Temporarily keeping viewport module and components because shutting down the application deactivates module entities before system entities without respecting component service dependency order. This caused several RPI assets and names to leak because they were not being destroyed in the correct order.
• Fixing include paths not referenced source folders
• Mostly cleanup and reorganization, no behavioral changes

Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
dmcdiarmid-ly c27f73c66b Added a NumRaysPerProbe DiffuseProbeGrid setting
Added supervariants to the precompiled DiffuseProbeGrid shaders for the NumRaysPerProbe values

Signed-off-by: dmcdiarmid-ly <63674186+dmcdiarmid-ly@users.noreply.github.com>
4 years ago
AMZN-byrcolin 63d755b8f1
fix launcher not showing gems (#7015)
Signed-off-by: byrcolin <byrcolin@amazon.com>
4 years ago
Chris Galvan b6b8b464d0 Use AZStd::array instead of AZStd::vector when retrieving a single pixel
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
4 years ago
Chris Galvan 87651fa810 Merge branch 'development' of https://github.com/o3de/o3de into cgalvan/DraftStreamingImageAssetPixelAPI 4 years ago
santorac fbe17b0022 Merge remote-tracking branch 'upstream/development' into Atom/santorac/MaterialAssetDeferredBaking3 4 years ago
santorac b61238e50c Minor fixes to whitespace and comments.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
dmcdiarmid-ly 8ec07031e3
Merge pull request #6959 from aws-lumberyard-dev/Atom/dmcdiar/ATOM-15740
Support supervariants in the PrecompiledShaderBuilder
4 years ago
Chris Galvan c2b1cd1be2 Fixed bug when retrieving single pixel value
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
4 years ago
Guthrie Adams 88d3bf5b4a
Merge pull request #6988 from aws-lumberyard-dev/Atom/guthadam/atom_tools_startup_disabling_unused_gems
Atom Tools: disabling auto load of unused gems in some atom tools
4 years ago
Guthrie Adams 843ca5a0ad
Merge pull request #6960 from aws-lumberyard-dev/Atom/guthadam/atom_tools_shared_asset_browser
Atom Tools: moving custom asset browser code to common location
4 years ago
Guthrie Adams c0cbc41ba6
Merge pull request #6917 from aws-lumberyard-dev/Atom/guthadam/atom_tools_document_application_added
Atom Tools: Created base class for document-based applications
4 years ago
T.J. McGrath-Daly 0f9741da95 Merge branch 'development' into bug-anim-lod-91 4 years ago
santorac f87d0f8386 Updated all .material files to have materialTypeVersion instead of propertyLayoutVersion. This was renamed in code at some point but we forgot to rename in the files. Before this was silently ignored but since I removed MaterialSourceDataSerializer, this started being reported as a warning.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
santorac 638fc027f5 Updated material builder version numbers in case my prior changes were impactful (it might not be necessary but I'm not sure, so just in case)
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
santorac a896ff11bc Changed .material serialization to avoid loading the .materialtype file, since the .material builder doesn't declare a source dependency on the .materialtype. Otherwise there can be ambiguous edge cases where changes to the .materialtype might or might not impact the baked MaterialAsset. Note that another option would have been to add a the appropriate source dependency, but that would hurt iteration time as any change to the .materialtype file would cause every .material file and .fbx to rebuild.
These changes have the added benefit of simplifying some of the serialization code. MaterialSourceDataSerializer is no longer needed, as its main purpose was to pass the MaterialTypeSourceData down to the MaterialPropertyValueSerializer.

Before, the JSON serialization system gave a lot of data flexibility because it did best-effort conversions, like allowing a float to be loaded as an int for example. But now the material serialization code doesn't know target data type, so it has to assume the data type based on what's in the .material file, and then the MaterialAsset will convert the data to the appropriate type later when Finalize() is called.

Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
santorac 5b19de2876 Merge remote-tracking branch 'origin/development' into Atom/santorac/MaterialAssetDeferredBaking_Recovery2 4 years ago
santorac 45429872d6 Switched back to making MaterialAsset::GetPropertyValues automatically finalize the material asset. I realized that it's too burdensome to expect client code to call Finalize on the MaterialAsset; every code that calls GetPropertyValues would have to call Finalize(). Instead of using const_cast in GetPropertyValues like I was doing before, I just changed GetPropertyValues to be a non-const function. There were a few places in Decal code I had to update to pass non-const MaterialAsset pointers. This isn't ideal, but I think it's better than the alternatives.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
Guthrie Adams eb51cd4c06 Atom Tools: moving custom asset browser code to common location
Consolidated duplicate asset browser code from multiple tools into single class in atom tools framework
Moved creation of asset browser and Python terminal windows into base main window class
Fixed docked window orientations
Added checks to asset browser to prevent crashes if tree state saver was null

Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
Guthrie Adams b09caa5e75 Atom Tools: disabling auto load of unused gems in some atom tools
Atom tools are set up to inherit and automatically load all of the gems used by the game project. This is a great simplification that saves us from having to manually update cmake settings for every game project to push dependencies to every tool. The tradeoff is that some dependencies will be added to certain tools that have no relevance whatsoever, potentially wasting initialization time, memory utilization, and some processing. This change follows an existing example to update a couple of tools to forego initializing unused gems. They can easily be reenabled as needed.

Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
Chris Galvan 948d72e079 Fixed logic error for iterating through the image data by region
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
4 years ago
Chris Galvan 798f6ea5bb Added support for additional formats
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
4 years ago
Guthrie Adams c16cc96eba
Merge pull request #6980 from aws-lumberyard-dev/Atom/guthadam/atom_tools_fix_ap_connection_and_thumbnails
Atom Tools: move asset processor connection to fix thumbnails
4 years ago
Guthrie Adams eea9532c4b
Merge pull request #6942 from aws-lumberyard-dev/Atom/guthadam/atom_tools_application_pyexit
Atom Tools: Bind exit function for python tests
4 years ago
Guthrie Adams 75e294d94c
Merge pull request #6921 from aws-lumberyard-dev/Atom/guthadam/atom_tools_document_count_function
Atom Tools: added function to get the number of active documents
4 years ago