Commit Graph

12122 Commits

Author SHA1 Message Date
AMZN-nggieber 96f9841ced Python Tests Ensuring the Interface Project Manager Uses Exists and Signature Matches (#7552)
* Added tests in python to ensure interfaces used by PM exist and have the expected signature

Signed-off-by: nggieber <52797929+AMZN-nggieber@users.noreply.github.com>

* Fix crash if there is python error but no redirected output from python

Signed-off-by: nggieber <52797929+AMZN-nggieber@users.noreply.github.com>

* Add new line to end of tests file

Signed-off-by: nggieber <52797929+AMZN-nggieber@users.noreply.github.com>

* Initialize python bindings error count variable in if statement

Signed-off-by: nggieber <52797929+AMZN-nggieber@users.noreply.github.com>

* Call len() instead of __len__

Signed-off-by: nggieber <52797929+AMZN-nggieber@users.noreply.github.com>

* enable disabled repo tests

Signed-off-by: nggieber <52797929+AMZN-nggieber@users.noreply.github.com>
2022-02-11 18:50:29 -08:00
puvvadar e481f6bfcf Fix math string unit test failures
Signed-off-by: puvvadar <puvvadar@amazon.com>
2022-02-11 18:03:38 -08:00
puvvadar 4e6bd3d25c Consolidate various to_string implementations for math classes
Signed-off-by: puvvadar <puvvadar@amazon.com>
2022-02-11 17:58:28 -08:00
dmcdiarmid-ly bb81dd86ee Added the DiffuseProbeGridVisualizationCompositePass.
Signed-off-by: dmcdiarmid-ly <63674186+dmcdiarmid-ly@users.noreply.github.com>
2022-02-11 18:26:38 -07:00
Mike Cronin 47a6948a97 Added gltf support to Asset Processor. THis is a resubmission of #6024. Had issues getting the old branch up to date. (#7583)
Signed-off-by: Mike Cronin <58789750+micronAMZN@users.noreply.github.com>
2022-02-11 16:43:26 -08:00
Mike Balfour 51569d8705 Fix benchmark run crashes. (#7595)
The benchmark builds weren't building the dependent DLLs due to missing dependencies in the cmake files.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
2022-02-11 18:00:35 -06:00
Nicholas Lawson d55c83d0d1 Making scriptcanvas files rebuild (#7592)
The version of Lua has updated - script canvas needs to rebuild
all of the scriptcanvas files with the new lua version.

This adds the lua version into the fingerprint of all scriptcanvas jobs
which will cause them to rebuild next time you start Asset Processor.

Signed-off-by: lawsonamzn <70027408+lawsonamzn@users.noreply.github.com>
2022-02-11 14:20:04 -08:00
Chris Galvan b334b1ad98 Merge pull request #7590 from aws-lumberyard-dev/cgalvan/AllowOnlySupportedFormatsForImageGradientStreamingAsset
Only allow streaming image assets with supported pixel formats to be selected for an image gradient
2022-02-11 16:01:28 -06:00
jckand-amzn 52354d4c2e Simplifying surface tag assignment, fixing incomplete comment, and removing un-needed property tree query
Signed-off-by: jckand-amzn <82226555+jckand-amzn@users.noreply.github.com>
2022-02-11 16:00:28 -06:00
Olex Lozitskiy 6d92a4859d Disable problematic NetBindComponent assert with a configuration
Disable problematic NetBindComponent assert with a configuration
2022-02-11 16:52:26 -05:00
Scott Murray 361a7385d5 removing debugging print statement
Signed-off-by: Scott Murray <scottmur@amazon.com>
2022-02-11 13:28:09 -08:00
Scott Murray b340877f7c updating tests for screenshot using editor_test.py
Signed-off-by: Scott Murray <scottmur@amazon.com>
2022-02-11 13:20:05 -08:00
lumberyard-employee-dm d1fcbf8855 Linux Clang unoptimized build fix. (#7587)
The _FORTIFY_SOURCE option must be used with the -O optimization flag.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
2022-02-11 14:58:19 -06:00
Olex Lozitskiy 398f75d8cd Spelling
Signed-off-by: Olex Lozitskiy <5432499+AMZN-Olex@users.noreply.github.com>
2022-02-11 15:54:17 -05:00
Alex Peterson 2a3c2b67cc Prism/fix create project bugs (#7539)
* Don't show ${Name} gems and fix template names

Signed-off-by: Alex Peterson <26804013+AMZN-alexpete@users.noreply.github.com>

* Fix overlay size so it doesn't overlap parent border

Signed-off-by: Alex Peterson <26804013+AMZN-alexpete@users.noreply.github.com>

* Hide warning when building

Signed-off-by: Alex Peterson <26804013+AMZN-alexpete@users.noreply.github.com>

* Fix gem download fail due to param type change

Signed-off-by: Alex Peterson <26804013+AMZN-alexpete@users.noreply.github.com>

* Restore missing functionionality for gem repos

Signed-off-by: Alex Peterson <26804013+AMZN-alexpete@users.noreply.github.com>

* Use the parent's width for the gem inspector

Signed-off-by: Alex Peterson <26804013+AMZN-alexpete@users.noreply.github.com>

* Restore regressed code for gem repos and folders

Signed-off-by: Alex Peterson <26804013+AMZN-alexpete@users.noreply.github.com>

* Revert home folder override

Signed-off-by: Alex Peterson <26804013+AMZN-alexpete@users.noreply.github.com>
2022-02-11 12:23:10 -08:00
Chris Galvan c0d338a094 Fixed a typo in a comment
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
2022-02-11 14:22:08 -06:00
santorac 235613710f Merge pull request #7537 from aws-lumberyard-dev/Atom/santorac/RemixableMaterialTypes4_Layering
Added Support For Factoring-Out Material Property Groups
2022-02-11 12:03:39 -08:00
Chris Galvan 9cd84b6b2d Only allow streaming image assets with supported pixel formats to be selected for an image gradient
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
2022-02-11 13:28:21 -06:00
lumberyard-employee-dm d7ee248df5 Range adaptor support (#7388)
* Updated the SFINAE checks in concepts.h and range.h

To use conjunction and disjunction for short-circuiting behavior.

Replaced AZStd::optional implementation with std::optional alias

Added range adaptor support and the following views: ref_view,
owning_view

Added bitwise or(|) overload for chaining range adaptor closures together

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

* Adding indirectly invocable concepts.

These concepts are used to determine whether a callable can be invoked
with a dereferenced iterator instance.

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

* Add implementation of range relational function objects

Add implementation of range min max functions which uses the range
relation function objects(ranges::less, ranges::equal_to, etc...)

This is needed to implement ranges::zip_view

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

* Adding interface for zip_view which compiles successfully

The implementation for the zip view functions still need to be filled.

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

* Adding function definitions for zip_view classes.

Adding empty header of subrange.h for the ranges::subrange class

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

* Adding additional view implementations.

The following range and view classes have been added: empty_view,
single_view and subrange.

Moved the AZ_NO_UNIQUE_ADDRESS macro to PlatformDef.h to allow other
code to specify the [[no_unique_address]] attribute.

Added additional test for view structures.

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

* Adding missing includes for non-unity builds

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

* Workaround for NDK21 clang 9.0.9 compile issue.

The AZStd::ranges::zip_view::iterator::iter_swap friend function is in the
AZStd::ranges namespace, while the customization point object of
`AZStd::ranges::customization_point_object::iter_swap` is in the regular
namespace of `AZStd::ranges` and the inline namespace of
`customization_point`.

This issue is fixed in NDK23, but as Jenkins uses NDK21 at the time, the
entire zip_view implementation has moved to inline namespace of
`zip_view_internal`

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

* Added iterator algorithm requiremetn concepts

Fixed the ambiguity in the ranges::iter_swap exchange overload to
exclude itself as a candidate if the iterator reference types are
swappable with each other.

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

* Adding type alias for borrowed_subrange_t

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

* Fixed convertible to ref_view check in the ranges::all
customization_point

Updated SFINAE detection of whether AZStd::to_address is invocable

Moved the

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

* Fixed private variable access in ranges::subrange get specialization.

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

* Removing ranges::view constraint from the ranges::views::single
customization_point.

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

* Adding C++23 range overload for string_view.

It is detailed in the [C++draft strings](https://eel.is/c++draft/strings#lib:basic_string_view,constructor____) section

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

* Adding implementations of ranges, find, search, mismatch and equal
functions.

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

* Adding implementation of ranges split_view along with test.

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

* Adding const overloads to SceneAPI ProxyPointer container

The Proxy Pointer class operator* and operator-> was unable to be
invoked with a const instance before. Now it returns a const view of the
pointer it contains.
This allows it to be invoked in `AZStd::to_address` as part of an SINAE
context for the contiguous_iterator concept

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

* Refactored the to_address implementation to better work with SFINAE.

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

* Adding general non-unity build fixes

This is unrelated to the RangeAdaptor changes.

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

* Allow range algorithms to be used with rvalue ranges

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

* Workaround MSVC Internal Compiler erroy by removing enable_if
condition in the operator bool of the view_interface class.

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

* Corrected the non_propagating_cache helper class to have public
functions

Fixed the order of creating the perfect forwarding call wrapper for an
outer closure around another closure.

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

* Specialized the borrowed_range and view concepts

For the AZ PathView class, since it is a immutable view around a path.

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

* Removed inline namespace around the zip_view class.

It was needed to workaround a clang 10 or below issue where a friend
function in a namespace and a variable within underneath an inline
namespace within the function namespace would cause an improper symbol
redefinition.

The workaround is to create a placeholder namespace containing the
inline namespace and then bring that placeholder namespace into the
parent scope.

https://bugs.llvm.org/show_bug.cgi?id=37556

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

* Adding implementation of the elemetns_view and join_view classes

It is up to date with the standard as of the current draft:
https://eel.is/c++draft/ranges.

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

* Separated definitions of concepts out of concepts.h

This allows the ranges::iter_swap and ranges::swap customization point to be moved
outside of the concepts folder and into the ranges folder.

The concepts.h header previously had to define those objects to avoid
circular dependencies.

Added the work around for ranges::iter_swap and ranges::iter_move
customization_point causing an improper symbol redefinition in clang 10
or below: https://bugs.llvm.org/show_bug.cgi?id=37556

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

* Alias more std:: names into the AZStd namespace.

Removed our custom implementation of toaddress.

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

* Adding more range view test.

The join_view and elements_view classes now have UnitTest.

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

* Adding deduction guides for AZStd associative containers

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

* Moved zip_view::sentinel iterator accessor function to zip_view.inl

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

* Fixed variable shadowing issues with clang 12+

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
2022-02-11 12:50:12 -06:00
santorac b829c08f75 Fixed build error. Added error message if material type file JSON import fails.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
2022-02-11 10:12:57 -08:00
SWMasterson 5f334e30f9 Updated missing shaderball assets. (#7556)
* Added missing shaderball assets and fixed typo in asset name.

Signed-off-by: Sean Masterson <semaster@amazon.com>

* Removed unnecessary files and updated macbeth_shaderballs level

Signed-off-by: Sean Masterson <semaster@amazon.com>
2022-02-11 09:58:43 -08:00
santorac 49ca8d332e Merge remote-tracking branch 'upstream/development' into Atom/santorac/RemixableMaterialTypes4_Layering
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
2022-02-11 09:37:44 -08:00
santorac b67862a133 Minor updates from code review feedback.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
2022-02-11 09:37:12 -08:00
puvvadar 61e2929b04 Merge pull request #7534 from aws-lumberyard-dev/mp_desync_nettime
Fix inadvertent exclusion of NetEntities during filtering and missing netcomponent notification
2022-02-11 09:17:57 -08:00
evanchia-ly-sdets dbb4e76a3d updating python packages py, pillow, and urllib3 (#7155)
* updating python packages py, pillow, and urllib3

Signed-off-by: evanchia <evanchia@amazon.com>

* updating dependencies versions as well

Signed-off-by: evanchia <evanchia@amazon.com>
2022-02-11 09:02:22 -08:00
Olex Lozitskiy a2b7f90a78 Disabling problematic NetBindComponent assert with a configuration option.
Signed-off-by: Olex Lozitskiy <5432499+AMZN-Olex@users.noreply.github.com>
2022-02-11 11:26:52 -05:00
greerdv c806b41cff make aabb shape component incompatible with non-uniform scale component
Signed-off-by: greerdv <greerdv@amazon.com>
2022-02-11 13:36:40 +00:00
greerdv 2a1c1243ed merge from development
Signed-off-by: greerdv <greerdv@amazon.com>
2022-02-11 12:30:32 +00:00
greerdv d39681a767 add deprecation notice to functions in BoxManipulatorRequests
Signed-off-by: greerdv <greerdv@amazon.com>
2022-02-11 12:29:00 +00:00
greerdv f2233f90cd update bus usage to new preferred convention
Signed-off-by: greerdv <greerdv@amazon.com>
2022-02-11 12:20:31 +00:00
greerdv 7a63d33f92 extract reused manipulator scaling logic
Signed-off-by: greerdv <greerdv@amazon.com>
2022-02-11 12:01:22 +00:00
moraaar 7150a28ed6 Mesh Component: Add button to the Mesh Asset field to open mesh FBX settings (#7547)
This is an UX improvement for Mesh Component as the user can quickly access FBX settings of the mesh to modify it if they so desire.

Video
https://user-images.githubusercontent.com/27999040/153414278-f7996b9a-8a28-49d4-92a8-daeb9924b148.mp4

Signed-off-by: moraaar moraaar@amazon.com
2022-02-11 09:08:33 +00:00
Guthrie Adams 600ad3fd04 Fixing compiler errors requiring numeric cast
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
2022-02-11 02:17:37 -06:00
Guthrie Adams c6ba1ef064 Atom Tools: updated document and windows systems and buses to support multiple instances
• This change is partially to unblock physics tool prototyping. It introduces a tool ID that is passed down into systems and acts as a context for document, window, and other systems and buses.
• The document system component is no longer a component. It is just a system class that can be constructed with a tool ID. Internally, it will connect to its buses and be addressable by tool ID. More than one can be instantiated, each with a unique tool ID.
• These changes are still backward compatible because most of the buses were using broadcast for standalone applications. All of those calls have been updated but not all of the scripts, which should still work as is.
• Got rid of the window factory request bus in favor of just instantiating the main window or any other UI in the application layer.
• Fixed a couple of bugs that were discovered while making these changes.

Signed-off-by: Guthrie Adams <guthadam@amazon.com>
2022-02-11 01:37:13 -06:00
Chris Burel ca297fdf38 Remove unused variables
Signed-off-by: Chris Burel <burelc@amazon.com>
2022-02-10 21:49:43 -08:00
Chris Burel 872f2a0cfa Remove unused private class member
Signed-off-by: Chris Burel <burelc@amazon.com>
2022-02-10 21:49:42 -08:00
Chris Burel 41be03f193 Silence warning about unnecessary lambda captures with clang
The `unused-lambda-capture` will be triggered by the following code:

```cpp
void foo(int);
int main() {
    const int i = 0;
    auto l = [i](){foo(i);};
}
```

The issue here is that reading from the constant variable `i` does not
constitute an ODR-use, and consequently the variable does not have to be
captured. See
https://github.com/llvm/llvm-project/issues/34213#issuecomment-980987311
for a related discussion.

However, MSVC sees it differently.

In order to make both compilers happy, mark this variable with
`AZ_UNUSED`, since lambda captures can't be marked with attributes like
`[[maybe_unused]]`.

Signed-off-by: Chris Burel <burelc@amazon.com>
2022-02-10 21:49:41 -08:00
dmcdiarmid-ly 257f3cb1ce Merge pull request #7541 from aws-lumberyard-dev/Atom/dmcdiar/ATOM-17288
Application MSAA state
2022-02-10 19:34:30 -07:00
Chris Burel be785dbae8 Correct the signature for the copy constructor of TestImpact::Pipe
Signed-off-by: Chris Burel <burelc@amazon.com>
2022-02-10 15:36:35 -08:00
Chris Burel 86aa5093ec Use enable_if to control what types can instantiate a template
Using a `static_assert(false, ...)` expression in the `else` block of a
`if constexpr` statement doesn't work. The `else` block is not protected by
the `constexpr`-ness of the `if`s, so it is always compiled. Consequently
it will always fail to compile.

Signed-off-by: Chris Burel <burelc@amazon.com>
2022-02-10 15:36:34 -08:00
Chris Burel 20e268930c Correct use of the typename keyword
Signed-off-by: Chris Burel <burelc@amazon.com>
2022-02-10 15:36:32 -08:00
Chris Burel 24339e36ab Fix non-constexpr RepoPath class to not try to be constexpr
`RepoPath` is implemented with an `AZ::IO::Path`, which is not `constexpr`.
Consequently, its constructors also cannot be `constexpr`.

This also marks the function definitions in the header as `inline`, to
avoid ODR violations.

Signed-off-by: Chris Burel <burelc@amazon.com>
2022-02-10 15:36:31 -08:00
Chris Burel 66ba970a3b Fix methods that recurse infinitely
Signed-off-by: Chris Burel <burelc@amazon.com>
2022-02-10 15:36:30 -08:00
Chris Burel 0b133f1154 Fix format string used for size_t (should be %zu), remove unused vararg
Signed-off-by: Chris Burel <burelc@amazon.com>
2022-02-10 15:36:29 -08:00
Chris Burel 07ce8c6e78 Remove unused functions and variables
Signed-off-by: Chris Burel <burelc@amazon.com>
2022-02-10 15:36:27 -08:00
Chris Burel ae7f370fed Fix lambda returning false instead of nullptr
Signed-off-by: Chris Burel <burelc@amazon.com>
2022-02-10 15:36:26 -08:00
Chris Burel 3d0a15f009 Remove AZStd::to_string(string&, bool) overload from MCore's StringConversion header
This overload has significant impact on overload resolution. Consider these
overloads:

```cpp
void to_string(AZStd::string& dest, AZStd::wstring_view src);
void to_string(string& str, bool value);
```

And then calling code like this:
```
WCHAR src[260];
AZStd::string dst;
AZStd::to_string(dst, src); // Which overload does this call?
```

If the .cpp has not included `MCore/Source/StringConversions.h`, the call
to `to_string()` will convert the `WCHAR[260]` type to a
`AZStd::wstring_view`, and call the first overload. But if
`StringConversions.h` _has_ been included, the implicit conversion of
`WCHAR[260]` to `bool` has a higher precedence, and it will be chosen
instead.

This overload was causing some uses of `to_string` in
`AnimGraph/GameController.cpp` to resolve to the wrong overload in unity
builds.

Signed-off-by: Chris Burel <burelc@amazon.com>
2022-02-10 15:36:25 -08:00
Chris Burel d4eb310950 Mark unused variables as unused
Signed-off-by: Chris Burel <burelc@amazon.com>
2022-02-10 15:36:24 -08:00
Chris Burel bdac374775 Fix case-insensitive non-portable include paths
Signed-off-by: Chris Burel <burelc@amazon.com>
2022-02-10 15:36:22 -08:00
Chris Burel fc2fc8459b Fix missing return; statement (this is why we use -Wunused-value)
Signed-off-by: Chris Burel <burelc@amazon.com>
2022-02-10 15:36:21 -08:00