Commit Graph

4180 Commits

Author SHA1 Message Date
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>
2022-01-24 17:09:08 -06:00
Danilo Aimini d1143770e0 Prefab Focus Mode | Fixes to viewport top toolbar (#7094)
* Fixes to the viewport top toolbar.

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Additional checks to prevent issues if widgets aren't set up correctly.

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Add asserts to catch UI changes that would break this class.

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
2022-01-24 13:17:16 -08:00
bosnichd f34d3a822e Add a ray cast API to the terrain system, implement it, and use it so entities can be placed on top of terrain. (#6895)
* Add a ray cast API to the terrain system, implement it, and use it so entities can be placed on top of terrain.

Still to do:
- Unit tests
- Profiling/benchmarks
- Optimization (if needed, may not be now after updating to use the iterative approach, but one option could be to use SIMD to ray cast against both triangles at once)

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

* Fix typos.

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

* Added a FindNearestIntersectionIterative to use in place of the first-pass FindnearestIntersectionRecursive attempt.

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

* Remove some functions that are no longer being used.

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

* Remove a unicode character from a comment to fix the validation build.

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

* Remove another unicode character from a comment to fix the validation build.

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

* Update to bail out as soon as t > 1.0f

Signed-off-by: bosnichd <bosnichd@amazon.com>
2022-01-24 13:47:44 -07:00
Danilo Aimini b1caed0f8e Introduce shortcut labeling in "Find in Viewport" context menu item in the Outliner (#7095)
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
2022-01-24 11:22:50 -08:00
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
2022-01-24 12:24:33 -06:00
Chris Galvan 71640c1c82 Merge pull request #6376 from nemerle/compiletime_filerequest_code2
Compile time reduction - FileRequest & related changes
2022-01-24 11:43:27 -06:00
Chris Galvan 3fd7e79891 Merge pull request #5155 from pollend/feat/add-cursor-wrap-mode-viewport
feat: add cursor wrapped mode
2022-01-24 11:43:18 -06:00
Gene Walters 7b3631444d Merge pull request #7058 from aws-lumberyard-dev/editor_log_fix
Temporary fix for editor log stomping during python tests
2022-01-24 08:08:28 -08:00
Michael Pollind 7b649656bc chore: use numeric cast for QtEventTOAzInputMapperTest
Signed-off-by: Michael Pollind <mpollind@gmail.com>
2022-01-24 07:30:39 -08:00
Tom Hulton-Harrop 5940982244 Ensure render geometry is refreshed when the mesh component controller is moved (#6452)
* ensure render geometry is refreshed when the mesh component controller is moved

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* cache bus pointer and send update notification when mesh changes

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* add integration test to detect MeshComponentController notification to IntersectionNotificationBus

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* remove optimize off

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* update build visibility for AtomLyIntegration editor static lib

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* move runtime dependencies to gem module

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
2022-01-24 10:41:32 +00:00
SergeyAMZN a623e52331 Merge pull request #7040 from aws-lumberyard-dev/TerrainMaterialsFix
LYN-7640 Terrain Physics Materials hooked up all the way down to PhysX
2022-01-24 10:25:51 +00:00
Michael Pollind 1643c68fa7 chore: fix compiling errors
Signed-off-by: Michael Pollind <mpollind@gmail.com>
2022-01-23 18:27:17 -08:00
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>
2022-01-23 22:29:03 +01:00
lumberyard-employee-dm 878ba24a3f Removed unused AWSNativeSDK dependency from Editor (#7091)
* Removed unused AWSNativeSDK dependency from Editor

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

* Remove build dependencies on the aws-cpp-sdk library from the Editor


Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
2022-01-21 18:28:26 -06:00
chiyenteng dd7706f9fe Fire OnEditorEntityCreated notification in SandboxIntegrationManager::CreateNewEntityAtPosition (#7079)
* Ensure to fire OnEditorEntityCreated notification in SandboxIntegrationManager::CreateNewEntityAtPosition

Signed-off-by: chiyenteng <82238204+chiyenteng@users.noreply.github.com>

* Ensure to fire OnEditorEntityCreated notification in SandboxIntegrationManager::CreateNewEntityAtPosition

Signed-off-by: chiyenteng <82238204+chiyenteng@users.noreply.github.com>

* convert test AreaNodes_DependentComponentsAdded to use prefab system

Signed-off-by: chiyenteng <82238204+chiyenteng@users.noreply.github.com>

* Prevent SetupEditorEntity being called twice

Signed-off-by: chiyenteng <82238204+chiyenteng@users.noreply.github.com>
2022-01-21 16:23:31 -08:00
michabr 7fa6a82f55 Make ILyShine an AZ::Interface (#6923)
* Move ILyShine instance out of legacy code

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

* Remove last remaining reference of gEnv->pLyShine

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

* Make m_lyShine a unique pointer

Signed-off-by: abrmich <abrmich@amazon.com>
2022-01-21 15:03:57 -08:00
Chris Galvan cdf748a5ed Merge pull request #7084 from aws-lumberyard-dev/cgalvan/RefactorTableViewHeaderSectionStyling
Refactored the styling of TableView header sections
2022-01-21 16:35:14 -06:00
Danilo Aimini 86a0be2561 Prevent read-only entities from being duplicated via prefab workflows (#7076)
* Refactor the sanitation of the selection for prefab operations to prevent read-only entities from being deleted or duplicated.

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Fix comment.

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
2022-01-21 12:35:29 -08:00
Chris Galvan 7fc4e4bd10 Refactored the styling of TableView header sections
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
2022-01-21 14:29:37 -06:00
michabr 837d6fc4fd Merge pull request #6991 from aws-lumberyard-dev/michabr/lyshine_crycommon
Move remaining two LyShine headers to the gem
2022-01-21 11:56:00 -08:00
Mikhail Naumov d918991e27 Allowing instantiating of prefab without selecting an entity in outliner (#6763)
* Allowing instantiating of prefab without selecting an entity in outliner

Signed-off-by: Mikhail Naumov <mnaumov@amazon.com>

* PR feedback

Signed-off-by: Mikhail Naumov <mnaumov@amazon.com>
2022-01-21 10:04:47 -08:00
Mikhail Naumov 238962be73 fixing crash when opening different level during simulation mode (#6762)
Signed-off-by: Mikhail Naumov <mnaumov@amazon.com>
2022-01-21 10:02:40 -08:00
abrmich cfbd88cb1e Merge remote-tracking branch 'upstream/development' into michabr/lyshine_crycommon 2022-01-21 10:02:28 -08:00
Scott Romero 09dd3a8729 [development] patch fix for launcher exit crash (#7050)
The launcher will crash on exit due to an access violation when clearing the BudgetTracker after CrySystem is unloaded. This is from a recent change to how the budget pointers are tracked making the BudgetTracker responsible for clearing them so the system can be re-entrant. Unfortunately, an assumption was made that all modules that use Budgets are managed by the ComponentApplication so they can be cleared prior to being unloaded. This is a patch to manually reset the BudgetTracker prior to unloading CrySystem until the legacy system can be removed (or converted to an AZ-like module).

Signed-off-by: AMZN-ScottR 24445312+AMZN-ScottR@users.noreply.github.com
2022-01-21 09:06:14 -08:00
Scott Romero 526ee7644a [development] fixed configure error with monolithic builds (#7057)
The AWSNativeSDKTestLibs target is now only defined when tests are enabled

Signed-off-by: AMZN-ScottR 24445312+AMZN-ScottR@users.noreply.github.com
2022-01-21 09:04:33 -08:00
Mike Balfour 145e3646a4 Asset catalog lock inversion fix. (#7045)
* Fix lock inversion.
This method was calling AssetCatalog->AssetManager at the same time that loading threads are calling AssetManager->AssetCatalog, causing a deadlock due to lock inversion. The fix is to make this method call AssetManager *outside* of the AssetCatalog call.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>

* Fixing the root cause in EnumerateAssets.
Also added a unit test that failed with the previous EnumerateAssets logic, and succeeds with the new logic.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>

* Make sure not to hold the secondary mutex lock either.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>

* Remove unused alias.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
2022-01-21 10:34:00 -06:00
Nicholas Lawson 9328f053bd Updates EXPAT to use the latest packages (#7053)
* Update EXPAT to be latest package version

Signed-off-by: lawsonamzn <70027408+lawsonamzn@users.noreply.github.com>
2022-01-21 08:00:45 -08:00
Michael Pollind ed5354fcae Merge branch 'development' of https://github.com/o3de/o3de into feat/add-cursor-wrap-mode-viewport 2022-01-21 07:16:44 -08:00
Sergey Pereslavtsev 56c6f81627 PR addressing. Removed RTTI from HeightMaterialPoint since it's just a struct of data with no intention being a part of class hierarchy
Signed-off-by: Sergey Pereslavtsev <pereslav@amazon.com>
2022-01-21 13:21:57 +00:00
Nicholas Van Sickle 32e2ba754b Add Dom::Path class for representing positions in a Dom (#7008)
* Add Dom::Path class for representing positions in a Dom

This also adds Value support for doing a path-based lookup.

The serialized representation is presently compliant with the JSON-pointer spec but the implementation supports Node types and may be later expanded if we require additional functionality (e.g. XPath style conditional querying).

Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
2022-01-20 16:53:33 -08:00
evanchia e2d157006c Temporary fix for editor log stomping during python tests
Signed-off-by: evanchia <evanchia@amazon.com>
2022-01-20 15:57:09 -08:00
Chris Galvan 514f0c1546 Merge pull request #6935 from RoddieKieley/issue5299
issue5299: Resolved via change to not disable custom window decorations.
2022-01-20 15:17:37 -06:00
Nicholas Van Sickle 687a3f1092 Merge pull request #7013 from aws-lumberyard-dev/mnaumov/FixingEOOrdering_signofffix
Fixing entity outliner order when creating prefab
2022-01-20 13:09:03 -08:00
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>
2022-01-20 13:00:02 -08:00
Terry Michaels 3479b6e2d9 Merge pull request #6974 from aws-lumberyard-dev/SJ/TerrainOptimization
[Terrain] Update Terrain components to use the new ProcessRegion API functions
2022-01-20 14:32:02 -06:00
Chris Galvan 0ae1ab9eea Merge pull request #6441 from pollend/feature/5886-add-unhandled-exception-support
feature: add Exception Handler support for unix
2022-01-20 12:25:02 -06:00
Mikhail Naumov f599a30fae Merge branch 'development' of https://github.com/aws-lumberyard-dev/o3de into mnaumov/FixingEOOrdering_signofffix
Signed-off-by: Mikhail Naumov <mnaumov@amazon.com>
2022-01-20 11:54:18 -06:00
amzn-sj d6cdd1d053 Update another comment
Signed-off-by: amzn-sj <srikkant@amazon.com>
2022-01-20 09:51:38 -08:00
Ignacio Martinez e1b2458591 Asset Browser Collapse All Fix (#6996)
* Added Icon

Signed-off-by: AMZN-Igarri <82394219+AMZN-Igarri@users.noreply.github.com>

* Fixed indent in ui file

Signed-off-by: AMZN-Igarri <82394219+AMZN-Igarri@users.noreply.github.com>
2022-01-20 13:09:00 +00:00
Michael Pollind c95845d45b chore: replace isspace
Signed-off-by: Michael Pollind <mpollind@gmail.com>
2022-01-19 20:02:50 -08:00
amzn-sj 7bba4172ec Add a GetNumSamplesFromRegion function which returns the number of samples given a region and step size. Update Terrain Feature Processor to use this function to get the number of samples instead of computing num samples independently.
Signed-off-by: amzn-sj <srikkant@amazon.com>
2022-01-19 18:04:56 -08:00
AMZN-byrcolin 63d755b8f1 fix launcher not showing gems (#7015)
Signed-off-by: byrcolin <byrcolin@amazon.com>
2022-01-19 17:09:40 -08:00
Chris Galvan 7adccd0d48 Merge pull request #6722 from tjmgd/bug-import-restrictions-95
Fix: only files can be selected
2022-01-19 16:36:29 -06:00
Mikhail Naumov f7c120b4b7 PR feedback
Signed-off-by: Mikhail Naumov <mnaumov@amazon.com>
2022-01-19 15:15:15 -06:00
Mikhail Naumov 3506a39759 Merge branch 'mnaumov/FixingEOOrdering' of https://github.com/aws-lumberyard-dev/o3de into mnaumov/FixingEOOrdering_signofffix
Signed-off-by: Mikhail Naumov <mnaumov@amazon.com>
2022-01-19 15:01:21 -06:00
Vincent Liu 5cac67bfad Silence aws logging for unit test and have a new AWSNativeSDK as entry point for test env (#6865)
* Silence aws logging for unit test
* Create a new AWSNativeSDK entry point for test environment only
* Update naming for target and file
2022-01-19 12:11:39 -08:00
Nicholas Van Sickle cfd721bce1 A bit of Generic DOM tidying/fixup (#6914)
* A bit of Generic DOM tidying/fixup

- Refactor out a test fixture for all DOM tests / benchmarks
- Optimize `GetType` implementation to not use `AZStd::variant::visit` (benchmark included to A/B the implementations)
- Tag a few more mutating Value functions with "Mutable" to avoid astonishing copy-on-writes

Benchmark results for GetType implementation:
```
DomValueBenchmark/AzDomValueGetType_UsingVariantIndex              18.2 ns         18.0 ns     40727273 items_per_second=443.667M/s
DomValueBenchmark/AzDomValueGetType_UsingVariantVisit              32.2 ns         32.2 ns     21333333 items_per_second=248.242M/s
```

Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
2022-01-19 11:52:57 -08:00
Mike Balfour 83878e6377 Change GetValues() to take in const positions. (#6987)
* Change GetValues() to take in const positions.
To support this, span needed some template deductions to correctly convert from non-const containers to const ones.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>

* Removed the most problematic template deduction rules.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>

* Remove duplicate validate_iterator methods.
iterator type is a pointer, not a value, so "const iterator" and "const const_iterator" produce the same function signature.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>

* Fixed the span types.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
2022-01-19 12:57:52 -06:00
Danilo Aimini a63ea12a1f System shortcuts crash the Editor when Global Preferences are open (#6994)
* Changes to the keyPressEvent override of the Editor Preferences Dialog to prevent infinite loops on focus switches.

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Renaming function to clarify its purpose.

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
2022-01-19 09:52:27 -08:00
Ignacio Martinez 65a749494e Fix: Entity Outliner: Outliner is unusable with the Editor in slice mode (#6983)
* Fixed vertical offset

Signed-off-by: AMZN-Igarri <82394219+AMZN-Igarri@users.noreply.github.com>

* Fixed QPoint

Signed-off-by: AMZN-Igarri <82394219+AMZN-Igarri@users.noreply.github.com>

* Fixed Entry delegate

Signed-off-by: AMZN-Igarri <82394219+AMZN-Igarri@users.noreply.github.com>

* SetRenderHint in Entry delegate

Signed-off-by: AMZN-Igarri <82394219+AMZN-Igarri@users.noreply.github.com>

* Save and restore painter inside the highlighter

Signed-off-by: AMZN-Igarri <82394219+AMZN-Igarri@users.noreply.github.com>

* Restoring Painter

Signed-off-by: AMZN-Igarri <82394219+AMZN-Igarri@users.noreply.github.com>

* Removed comment

Signed-off-by: AMZN-Igarri <82394219+AMZN-Igarri@users.noreply.github.com>
2022-01-19 16:45:52 +00:00