Commit Graph

336 Commits (33cbc2db219cb77d088cb15c1774c86d9b1be9aa)

Author SHA1 Message Date
Gene Walters 4e14c0069b Merge branch 'upstream/stabilization/2106' into genewalt/gitflow_210628 5 years ago
Terry Michaels 7a2a2dc0d7
Updated branding for application names (#1617) 5 years ago
amzn-mgwynn ce955715a8
Merge pull request #1543 from aws-lumberyard-dev/native-ui-changes
More specific component error messaging and modes for native UI to prevent blocking dialog in some applications
5 years ago
Vincent Liu 149cb2e2f2
Merge 'gameliftfeature' branch into 'development' branch (#1534) 5 years ago
mgwynn fb3940fa31 More specific component error messaging and modes for native UI to prevent blocking dialog in some applications 5 years ago
Steve Pham 70042fcdcd
O3DE Copyright Updates for Linux Foundation (#1504) 5 years ago
Mike Balfour db92dffb14
Fix Vegetation Modifier behavior when in-game (#1441)
* Removed a bit of dead legacy code

* Fixed entity references during spawning
Entities that had references to other entities that hadn't been spawned yet weren't getting their IDs remapped correctly, since the new ID wasn't available yet.  By pre-generating the full set of IDs, the references now remap correctly.

* Fixed up Entity References to work across multiple SpawnEntities calls
With SpawnEntities, entity references need to forward-reference to the *first* entity spawned, then from that point on backwards-reference to the *last* entity spawned.  Added that logic, along with some initial unit tests for SpawnAllEntities.

* Added more unit tests for SpawnEntities / SpawnAllEntities
5 years ago
mbalfour df648db62e Merge branch 'stabilization/2106' into mbalfour/gitflow_210622
# Conflicts:
#	Code/Framework/AzQtComponents/AzQtComponents/Components/Style.cpp
#	Code/Framework/AzToolsFramework/AzToolsFramework/Viewport/ViewportMessages.h
#	Gems/AWSCore/Code/Source/Editor/UI/AWSCoreEditorMenu.cpp
5 years ago
moudgils 4f84ec90d3
Various new metal fixes (#1465)
* - Fix the second window related tabbing issue
- Merge calls to UseResoources acrooaa all the SRGs
- Move SamplerCache to the device to ensure only one cache to reduce duplication
- Fixes to compute threading numbers getting reset to 0,0,0
- Cleanup withing BufferPoolResolver
- Argument buffers are now queued to be cleaned up upon shutdown
5 years ago
nvsickle e55580af57 Merge remote-tracking branch 'upstream/stabilization/2106' into nvsickle/MergeStabilizationJun18 5 years ago
amzn-sean 84de2d2e12
Fixed failing periodic physics tests (#1429) 5 years ago
amzn-sean b17c5ca3e6
adding physics tick time to post simulate event (#1401) 5 years ago
amzn-sean 9f62d631fb
Physics joints updated to the new API (#1361)
Co-authored-by: Ulugbek Adilbekov <ulugbek@amazon.com>
5 years ago
mnaumov 9ca0e731f4 Merge remote-tracking branch 'upstream/stabilization/2106' into mnaumov/StabilizationJun15
# Conflicts:
#	Code/CryEngine/CrySystem/LevelSystem/LevelSystem.cpp
5 years ago
Tom Hulton-Harrop 0f09a6d8bf
Move new camera settings to the Settings Registry and connect them to viewport border elements (#1267)
* ensure the new camera respects changing ui values and move camera settings to the settings registry

* factor out creation of modular camera controller

* small updates before posting PR

* updates following review feedback

* updates following review feedback
5 years ago
carlitosan 43e157035e
Merge pull request #1272 from aws-lumberyard-dev/carlito/stabilization/2106
Carlito/stabilization/2106  Fix for AP errors on graph, and Lua properties table fix
5 years ago
jackalbe 4818d1ce80
{LYN-4224} Fix for the file scan slowdown (#1252)
* {LYN-4224} Fix for the file scan slowdown (#1183)

* {LYN-4224} Fix for the file scan slowdown

* Fixed a slowdown in the file scanning logic
* Improved the file scanning logic from previous code by 40%

Tests:
Using Testing\Pytest\AutomatedTesting_BlastTest

old code:
=== 7 passed in 96.13s (0:01:36) ===

current code:
=== 7 passed in 160.45s (0:02:40) ====

newest code:
=== 7 passed in 52.91s ===

* fixing a unit test compile error

* unit test fixes

* another file improvement

* fix for legacy level loading taking too long

* making an enum for the search types

* switched the enum to "allow" types to make the input more clear

* got rid of orphaned const variables
5 years ago
chcurran a995aee35a Properties__Index and Properties__NewIndex upvalue counts no reflect removal of net binding component 5 years ago
hultonha 2d41a701af Merge branch 'stabilization/2106' into tomhh_stabilization-to-development 5 years ago
Steve Pham b2bafc44ab
LYN-2705: Remove 'AZ_TRAIT_DISABLE_FAILED_ASSET_PROCESSOR_TESTS' trait for Linux (#1235)
* Fix Delete_Real_Readonly_Fails to mark parent directory as read-only as well

Read-only files in Windows cannot be deleted. The previous version of this
code relied on that fact, and would attempt to delete a file even when
`skipReadOnly = true`, relying on the OS to refuse to delete the file if it
is read only. On Linux, it is the writable state of the *directory* that
determines if a file can be deleted or not. This fixes the test to set up
the correct situation where a file deletion would fail.

* Remove excluded items from a vector before iterating over it

Removing items from the `pathMatches` `QStringList` while iterating over it
was causing a segfault on Linux. This change separates out the item removal
from the item iteration, which allows the item iteration loop to use a
range-for loop instead of directly manipulating iterators.

* Remove invalid test that asserts a file's metadata file can have differing file casing

This test is asserting that a given source file and its accompanying
metadata file can have the the same name but differing case. This is really
testing whether or not the underlying filesystem that those files live on
is case sensitive or not. The 99% chance is that users are using the
default filesystem that their host OS gives them, NTFS on Windows, EXT* on
Linux, and APFS on Mac. Even though NTFS is case-insensitive by default,
it [can be configured per-directory](https://devblogs.microsoft.com/commandline/improved-per-directory-case-sensitivity-support-in-wsl/).
APFS as well can be configured to be case-sensitive. For users with case
sensitive filesystems, this test makes no sense. We could extend this test
to inspect the case-sensitivity of the underlying filesystem, but then it
is just testing the filesystem's behavior, which seems out of scope of this
test.

* Use a non-priviliged port for the Asset Processor tests

From https://www.w3.org/Daemon/User/Installation/PrivilegedPorts.html:

> The TCP/IP port numbers below 1024 are special in that normal users are not
> allowed to run servers on them. This is a security feaure, in that if you
> connect to a service on one of these ports you can be fairly sure that you
> have the real thing, and not a fake which some hacker has put up for you.
>
> When you run a server as a test from a non-priviliged account, you will
> normally test it on other ports, such as 2784, 5000, 8001 or 8080.

* Fix for `QDir::rmdir(".")` not working in Linux

Qt uses `::rmdir` to remove directories on Linux. This comes from
[unistd.h](https://pubs.opengroup.org/onlinepubs/007904875/functions/rmdir.html)
The documentation for that function states:

> If the path argument refers to a path whose final component is either dot
> or dot-dot, rmdir() shall fail.

So calling `dir.rmdir(".")` will never work on Linux.

Instead, get the parent directory, and remove the child directory by name.

* Avoid lowercasing source asset paths when resolving dependencies

Source asset paths may be case sensitive, so their case must be preserved
when doing operations that hit the underlying filesystem. This method was
always lowercasing them, which would cause dependencies to not be found.

* Correct test to expect product filenames to be lowercase

The modtime tests were failing in Linux due to something unrelated to file
modtime checking. The Asset Processor Manager does this during AnalyzeJob:

```
if (foundInDatabase && jobs[0].m_fingerprint == jobDetails.m_jobEntry.m_computedFingerprint)
{
    // If the fingerprint hasn't changed, we won't process it.. unless...is it missing a product.
```

In this case, the test was setting up a product whose file case was the
same as the source asset, and would write it to the cache dir using mixed
case, but use the normal asset processor API to write the product file path
to the database, which recorded the path in lowercase. When the manager
then went to check if the source asset's products all exist, it checked the
lowercase path, which didn't exist.

This fixes that test failure, by updating the test to write the product
file to the cache using the proper lowercased path.

* Update test to define a "not current platform" for Linux

This test was failing because it was setting some "not current platform"
variable to be set to "pc" on Linux, when
`AssetSystem::GetHostAssetPlatform()` is defined to:

```cpp
inline const char* GetHostAssetPlatform()
{
    return "mac";
    return "pc";
    // set this to pc because that's what bootstrap.cfg currently defines the platform to "pc", even on Linux
    return "pc";
    #error Unimplemented Host Asset Platform
}
```

The test would go on to assert that "pc" was simultaneously in a list and
not in the same list.

This fixes the test by updating the code to set the "not the current
platform" variable appropriately on Linux.

The expectations were also updated to improve the output on test failure.
Instead of this:
```
Value of: recogs["rend"].m_platformSpecs.contains(platformWhichIsNotCurrentPlatform)
  Actual: true
Expected: false
```

You now get this:
```
Value of: recogs["rend"].m_platformSpecs.keys()
Expected: (has 3 elements and there exists some permutation of elements such that:
 - element #0 is equal to pc, and
 - element #1 is equal to es3, and
 - element #2 is equal to server) and (doesn't contain any element that is equal to pc)
  Actual: { pc, server, es3 } (of type QList<QString>), whose element #0 matches
```

* Prevent windows supported path separators to be included in the test paths for UpdateToCorrectCase_ExistingFile_ReturnsTrue_CorrectsCase

* Fix failing linux unit test "PlatformConfigurationUnitTests.TestFailReadConfigFile_RegularScanfolder"
caused by static variable not being reset from a different test run when using AssetUtilities::ComputeProjectPath

* Fix AZ_RTTI declaration for RequestEscalateAsset Message

* Implement FileWatcher for Linux to fix AssetProcessorMessages.All test (RequestAssetStatus)

* Split AssetProcessorMessages into 2 tests, one with RequestAssetStatus/ResponseAssetStatus and one without
Add The RequestAssetStatus/ResponseAssetStatus as a sandbox test because it relies on FileWatcher thread and seems to be timing related

* Remove FileWatcher_win.cpp from the Linux specific folder for FileWatcher

* - Fix build error related to non-unity builds
- Fixed failed linux test 'Test/LegacyTestAdapter.AllTests/UtilitiesUnitTest' caused by misplaced windows only EXPECT
- Remove test trait AZ_TRAIT_DISABLE_FAILED_ASSET_PROCESSOR_TESTS for linux to expose remaining failed tests

* Fixed failed linux test 'Test/LegacyTestAdapter.AllTests/RCcontrollerUnitTests' caused by misplaced windows only EXPECT

* - Fix FileWatcher unit test, disable incompatible subtests for Linux
- Fix errors in FileWatcher_linux from results of the FileWatcher Unit Test

* Remove AZ::AssetProcessor.Tests.Sandbox tests from definition and restore the original AssetProcessorMessages.All tests now that Filewatcher_linux was fixed

* Fixes for failed unit tests: AssetProcessorManagerUnitTests and AssetProcessorManagerUnitTests_JobDependencies_Fingerprint
- Caused by differences between between case-sensitive files (Linux) and non-case-sensitive Filesystems (Windows)

* Update consts in FileWatcher_linux.cpp to constexpr

* Fixes related to PR comment suggestions

* - Removed std::bind and replaced with lambda in FileWatcher_linux
- Replaced String replace functions for path separators to use AZ::IO::Path::LexicallyNormal() instead

* Restoring string replace function in PathDependencyManager::ResolveDependencies due to unit test failure

Co-authored-by: Chris Burel <burelc@amazon.com>
5 years ago
jackalbe fedc85f51f
{LYN-4224} Fix for the file scan slowdown (#1183)
* {LYN-4224} Fix for the file scan slowdown

* Fixed a slowdown in the file scanning logic
* Improved the file scanning logic from previous code by 40%

Tests:
Using Testing\Pytest\AutomatedTesting_BlastTest

old code:
=== 7 passed in 96.13s (0:01:36) ===

current code:
=== 7 passed in 160.45s (0:02:40) ====

newest code:
=== 7 passed in 52.91s ===

* fixing a unit test compile error

* unit test fixes

* another file improvement

* fix for legacy level loading taking too long

* making an enum for the search types

* switched the enum to "allow" types to make the input more clear
5 years ago
Aaron Ruiz Mora 7a053d82e1
UX Workflow improvements for Physics Materials (#1237)
- Added button to PhysX Collider Component in PhysX Mesh's field to open FBX Settings.
- Added button Material Selection to open the physics material library in Asset Editor.
- Default Material in PhysX configuration is read only and consistent with the text in combo boxes.
- Material configuration field "Surface Type" renamed to "Name"
- Fixed bug in EditorColliderComponent where the material selection was not updated when changing the library.
- Fixed bug where the materials selection was not set to default when a physics material from the asset was not found in the library.
- Added attributes 'BrowseButtonEnabled' and 'BrowseButtonVisible' to PropertyAssetCtrl.
- Updated physx configuration setreg files of AutomatedTesting project.
5 years ago
Aaron Ruiz Mora 9d41954d0e
Added configurable physics materials per asset in PhysX group in FBX Settings. (#1186)
- Added back the' Physics Materials from Asset' tick in the collider components.
- Made physics materials names case insensitive.
- Refactored how to gather material information from fbx and used the same code for exporter and physx groups.
5 years ago
AMZN-koppersr 4ad0560d06 Removed AddOn(De)SpawnedHandler from Spawnable Entities Interface
The calls AddOnSpawnedHandler and AddOnDespawnedHandler were removed from the SpawnableEntitiesInterface. These functions will eventually be called from multiple threads and AZ::Event currently doesn't have a thread-safe version to support this. There's also a performance concern as these callbacks are called for each individual (de)spawn requests which can lead to multiple handlers being called without information that's relevant to the callback. It would be better to batch up all (de)spawn requests per ProcessQueue call and only have a single event do a single signal. Since both events are currently not being used they have been removed for now, but can be introduced -with the previously mentioned concerns in mind- when needed.
5 years ago
AMZN-puvvadar 5bdf9e3c6d
Merge pull request #1175 from aws-lumberyard-dev/mp_session_integ
Integrating AzFramework Session hooks to Multiplayer
5 years ago
puvvadar fa55b495c4 Add handling for session provider ticket 5 years ago
amzn-sean 47e5c72f2e
fixed missing methods in SC from Trigger and Collision events (#1185) 5 years ago
puvvadar 6f4c0c2ce8 Rename interfaces for clarity 5 years ago
puvvadar 40c7a6bd2d Integrate remaining requests and rename Handling Requests interfaces for clarity 5 years ago
jackalbe 1a6b6d5bc0
{LYN-4230} Fixed loading *.pak files in Release builds (#1127)
* {LYN-4230} Fixed loading *.pak files in Release builds

* Helios - Release mode should load all *.pak files
* Tests: made a separate installation folder with a reduced "engine.pak" and a full "game.pak" which loads in release

* added unit test to regress the bug fix
5 years ago
Tom Hulton-Harrop cf8a6761bf
Formatting-only change - Update Manipulator and Viewport AzToolsFramework files (#1143)
* formatting changes to AzToolsFramework viewport related types + API comment style updates

* minor format change - include ordering

* improve formatting by moving comment

* fix compile error and switch to use AZ_Printf

* small polish changes after review feedback
5 years ago
rgba16f 74f474aae2
Add unit tests for the ViewportScreen ndc <-> worldspace utility functions (#1149)
Add ScreenNdcToWorld function to enable round trip testing.
5 years ago
AMZN-koppersr febf53671e Addressed PR feedback. 5 years ago
AMZN-koppersr ce7b81e2e7 Merge branch 'main' into SpawnableEntityIdMapping 5 years ago
lumberyard-employee-dm 4a1d713227
Fix recursive attempts to open the log file in the GameLauncher (#1114)
* Fix recursive attempts to open the log file in the GameLauncher

The AzFramework Application has been updated to default the @user@ and
@log@ aliases to the <engine-root>/user and <engine-root>/user/log
folder respectively if a project isn't set.

Fixed the SystemFile class to support negative offsets if Seek() as per
standard seek function such as fseek

Updated the CrySystem CLog class to use SystemFile instead of FileIOBase
to avoid any asserts that would cause CLog::OpenFile to be recursively
called infinitely

* Removing unused Force Closed variable

* AZ::IO::SystemFile build fixes for Unix platforms. Added a copy constructor for LUAEditorContextInterface.h to fix the LuaEditor build

* Adding missing includes to the WindowsAPI and Android SystemFile headers
5 years ago
AMZN-koppersr 1e7ac60949 Reintroduced spawning multiple instances of the same entity
The following was changed:
- The remapper in AZ::IdUtils now has an additional argument to tell it what to do when it encounters the same source entity id. The original behavior of ignoring the new entity id and returning the first occurrence is the default. The alternative behavior is to store the last known entity id and return that instead.
- Split the optional arguments for SpawnAllEntities and SpawnEntities.
- SpawnEntities now has an option to continue with the entity mapping from a previous spawn call or to start with a fresh mapping. The latter is the default as the former will come at a performance cost since the mapping table has to be reconstructed.
- Entities spawned using SpawnEntities and ReloadEntities now also get the correct entity mapping applied.
- Added several new unit tests to cover most of the new functionality.
- Fixed some places where the older API version was still called.
5 years ago
AMZN-koppersr 8c541b5205 Moved default values to object in the Spawnable Entities Interface 5 years ago
AMZN-koppersr 1bf8c599e3 External Serialize Context for spawning
This change makes it possible to provide a Serialize Context for spawning entities from spawnables. This also removes the need for the Serialize Context to be retrieved multiple times per frame.
5 years ago
Esteban Papp 29c71b4e53
SPEC-2513 Fixes to enable w4701 (#1105)
* Some fixes

* more fixes

* fixes for debug
5 years ago
Vincent Liu dfd63737c3
[SPEC-6720] Update session common interfaces (#956) 5 years ago
Alex Peterson afe20906db
Add Project Manager File menu options to Editor 5 years ago
AMZN-koppersr b32507bd4b
Merge pull request #973 from aws-lumberyard-dev/SpawnablePriorityQueue
Spawnable priority queue
5 years ago
Nicholas Van Sickle 087677b326
Fix several viewport issues (#1045)
* Fix some FOV calculation viewport issues:
-Avoid calculating FOV if we've got an invalid viewport
-Don't override game mode FOV, let the active camera components manage it instead

* Fix viewport font positioning

This updates code in a few places to respect an API change/fix made to AtomFont - also switched the default value of m_virtual800x600ScreenSize to false as it's really behavior you want to opt into

* Don't activate CameraComponentController when in the Editor / not in game mode
5 years ago
AMZN-koppersr c0dade8883 Merge branch 'main' into SpawnablePriorityQueue 5 years ago
Tom Hulton-Harrop 3947dcf213
Add some extra cvars to control orbit point appearance and remove unused ones (#1032) 5 years ago
greerdv 2c36d6a19a
Merge pull request #1039 from aws-lumberyard-dev/transform-float-scale-3
refactor vector scale in Transform to float scale
5 years ago
sconel 57b961c113
Merge pull request #997 from aws-lumberyard-dev/Spawnable/ScriptCanvas/Integration
Add dynamic spawn node to Script Canvas
5 years ago
Aaron Ruiz Mora 00e860f326
Physics material system for spectra launch
- Invalidate 'Physics Materials From Mesh' boolean from collider component
- Removed material library from material selector. Default material library will always be used instead.
- Marking failing automated test as xfail
- Added default material to physics configuration.
- Moved material library asset from physx configuration to physics configuration, as it doesn't need to be physx specific.
- Refactor physics material system having into account that there is only one material library in the project.
- Renaming code from DefaultMaterialLibrary to MaterialLibrary.
- All queries about physics materials unified under PhysicsMaterialRequests bus.
- PhysXSystem only manages the material library asset.
- Saving and reloading the same physics material asset with different content didn't trigger a events that the material library has changed.
- Changing Physics Material Request interface to use shared_ptr instead of weak_ptr to be simpler to handle the returned materials and having a more consistent code.
- Refactored Material Manager to improve its implementation. Still following the same approach of "creating materials on the fly as they are requested", but now it's doing it consistently across the interface, with private helpers functions FindOrCreateMaterial that simplify vastly the implementation.
- Material Manager now listens to change event of material library asset and default material configuration so it updates its materials accordingly.
- Complete Material move constructor and operator.
5 years ago
Esteban Papp ff9a052ce6
Merge pull request #1011 from aws-lumberyard-dev/ly-as-sdk/LYN-2948
Integration of the LY as an SDK work
5 years ago
greerdv 34abf7376e Merge branch 'main' into transform-float-scale-3 5 years ago
sconel 0a32951e7e Merge branch 'main' of https://github.com/aws-lumberyard/o3de into Spawnable/ScriptCanvas/Integration 5 years ago
greerdv 55d3d18c9b update transform component to remove vector scale transform function 5 years ago
pappeste eece07efd3 Merge branch 'main' into ly-as-sdk/LYN-2948 5 years ago
pereslav 090234f1f0 Merge branch 'main' into MultiplayerPipeline 5 years ago
pereslav 42b3e3817a SPEC-7012 Added rewind-aware scene query utilities. Added frame ID to SimulatedBody 5 years ago
Tom Hulton-Harrop 36ceff84c9
Support mesh intersection for camera orbit (#982)
* wip support for mesh intersection with intersector bus

* WIP camera mesh intersection orbit logic

* remove unneeded template argument

* add bus connect/disconnect

* fix intersection logic

* small updates, additional comments, some tidy-up

* update formatting options slightly

* use aznumeric_cast

* temp workaround for negative distances with RayIntersection
5 years ago
greerdv d73566565e remove most vector scale functions from transform bus 5 years ago
greerdv e4f73d44fe remove vector scale and add uniform scale as animatable properties 5 years ago
pappeste 8b9f5230f6 Merge branch 'main' into ly-as-sdk/LYN-2948 5 years ago
AMZN-koppersr 40dbf22b00 Merge branch 'main' into SpawnablePriorityQueue 5 years ago
AMZN-koppersr 2550c3e1ff Spawnable Entity Manager threshold default to "m_highPriorityThreshold" 5 years ago
AMZN-koppersr c946d57928 Addressed PR feedback. 5 years ago
jackalbe 5b5d02baa4
{LYN-4060} Helios - Fix to load PAK Archive files (#964)
* {LYN-4060} Helios - Fix to load PAK Archive files

{LYN-4060} Helios - Fix to load PAK Archive files

* Helios - Archive does not load from PAK files due to IsFileExists() error
* the decompression tag does not need to be ZCRY, so removed it
* the PAK files are on disk, so a "on disk file exists" method is used
* the mapped files m_mapFiles need to track the file path, not just the filename

Tests: Release Launcher with a new level

* re-adding the read only flag check so that ZIP files can be created
5 years ago
pappeste 01933f45b1 Merge branch 'main' into ly-as-sdk/LYN-2948
# Conflicts:
#	Gems/AtomLyIntegration/TechnicalArt/DccScriptingInterface/gem.json
5 years ago
pappeste f1b688f435 Merge branch 'main' into ly-as-sdk/LYN-2948
# Conflicts:
#	CMakeLists.txt
#	Code/Tools/ProjectManager/Source/GemCatalog/GemInfo.h
#	Gems/AtomLyIntegration/AtomViewportDisplayInfo/gem.json
#	cmake/LYWrappers.cmake
#	cmake/SettingsRegistry.cmake
#	scripts/o3de/tests/unit_test_current_project.py
5 years ago
amzn-sean 529e29071c
update Ragdoll component to only uses Handles (#981) 5 years ago
greerdv 34c59a81b8 update rigid body to use non-deprecated function and remove many deprecated transform bus functions 5 years ago
Tom Hulton-Harrop 4205a69106
Allow ComponentAdapter (and related types) to work with EntityComponentIdPairs as well as EntityIds (#920)
* provide the ability for component adapters to support multiple components per entity

* add missing explicit keywords

* updates following review feedback - update how template logic works

* small updats (fix typo, remove redundant includes)

* add missing this->

* naming change, common -> controller

* add [[maybe_unused]]
5 years ago
michabr 8bd4c8d974
Add back text drawing using Draw2d (#928)
This is used by the UI Editor's viewport and also by LyShine to display debug text.
5 years ago
sconel 07ecb938e7 Merge branch 'main' of https://github.com/aws-lumberyard/o3de into Spawnable/ScriptCanvas/Integration 5 years ago
sconel b5599ca739 Add asset picker support to spawn SC node and thread safety measures 5 years ago
AMZN-koppersr 1248dc5fb4 Spawning priority threshold through SetReg
The priority threshold to consider a task high priority can now be configured through the Settings Registry under key "/O3DE/AzFramework/Spawnables/HighPriorityThreshold".
5 years ago
AMZN-koppersr e0948a26bc Fixed early ticket delete crash
This commit fixes a crash that could happen when a spawnable ticket was deleted before all requests in the queue had completed. Because of this crash the requests now only hold on to the payload of the ticket but not the ticket itself. As a side effect, callbacks can no longer provide the ticket itself so instead a unique id for the ticket is returned.
5 years ago
AMZN-koppersr 76827ff95e Added support for a priority lane for entity spawning
It's now possible to have high and normal priority calls on the spawnable entities manager. This allows for events like (de)spawning and retrieving information to be executed before already queued requests, though requests cannot be reordered on the same ticket. High priority calls are executed twice per frame, while normal priority calls are called only once.
5 years ago
AMZN-koppersr 37b53c0680 Spawnables can no longer be moved.
Spawnables had support for moving, but as the base class AZ::Data::AssetData doesn't support moving this was causing subtle issues. Moving spawnables wasn't used so it was removed.
5 years ago
Mike Balfour 6c17c7bfb3
Add new API to convert absolute source paths to relative paths. (#930)
There are already APIs for getting a relative product path from an absolute source path, or getting a relative source path for an *existing* source file, but there were no APIs for getting a relative source path for a *new* source file.  Prefabs will need this ability to be able to correctly generate a relative source path inside the prefab file before the file has been saved.
The logic for relative source paths is a little bit tricky because the paths are relative to the watch folders, and the watch folders can be nested, with different priorities to explain which should take precedence.  The input paths can also include specifiers like "." and "..", which need to be reconciled before creating the final correct relative path.  The included unit tests test all of the tricky edge cases that I was able to identify.
5 years ago
AMZN-koppersr a82f4440ea Fixed release compile error 5 years ago
AMZN-koppersr f3212902aa Merge branch 'main' into SpawnableIndexQuery 5 years ago
SJ 8ca3b078a2
Remove bootstrap.cfg and some references to it.
Merge pull request #836 from aws-lumberyard-dev/LYN-2461
5 years ago
lumberyard-employee-dm 76fe7f3666 Merge branch 'main' of https://github.com/aws-lumberyard/o3de into ly-as-sdk/LYN-2948-phistere 5 years ago
lumberyard-employee-dm 4e362a2a04 Removing the initialization of the "@root@" alias to the EngineRoot since it really represents the Asset Cache Root and any paths within it are lowercased. Moved the ordering to set the @assets@ alias before the @projectplatformcache@ so that the "ArchiveTestFixture.IResourceList_Add_AbsolutePath_RemovesAndReplacesWithAlias" test is able to convert it's absolute path to an alias path that starts with @assets@ 5 years ago
AMZN-koppersr e4efc467f2 Updated comment for ListEntities in SpawnableEntitiesInterface.
Updated the comment for ListEntities to be more descriptive. This hopefully clears up the confusion about what the index in a spawnable ticket exactly refers to.
5 years ago
Alex Peterson 82b4b83256
Launch o3de.exe instead of project_manager.py
Launch the o3de project manager application instead of project_manager.py when the editor is started but no project is specified.
5 years ago
amzn-sj 4bfc000974 The @assets@ alias should not be set to an empty string. 5 years ago
AMZN-koppersr a807c0b4d8 Additional list function added to Spawnables.
A new list function was added to the SpawnableEntitiesInterface that list entities together with the id of the entity in the spawnable that was used to create it.
This change also include the setup for testing the SpawnableEntitiesManager plus a few tests to cover the newly added functionality.
5 years ago
greerdv 42c5801c52 Merge branch 'main' into transform-float-scale 5 years ago
rgba16f d4bad61f9a
DebugDraw gem fixes for Atom (#885)
* Work in progress on adapting the DebugDraw gem to use AzFramework::DebugDisplayRequests API

* Cleanup fixes for DebugDisplayRequestBus & DebugDraw gem.

Remove SandboxIntegration implementation of the DebugDisplayRequestBus
Add DrawWireCylinder & DrawWireCone to the DebugDisplayRequestBus interface
Remove SetFillMode & DrawTexture functions from the DebugDisplayRequestBus interface
Fixup uses of the SetFillMode api, replace with new Draw[Wire|Solid]X functions.
Fixes to the DebugDraw gem to get it compiling with new warnings settings.

* Changes to get the DebugDraw gem working with Atom/RHI/Code/Include/Atom/RHI

Add GetWidth, GetHeight, GetDepth utility accessors to RHI::Viewport
Start cleaning out unnecessary Cry includes from DebugDraw gem
Fixes for AtomFont FFont.cpp 3d screen aligned text drawing.
Clean out no longer supported code for 3d text to render multiple strings for the same entity location

* Cleanup some unused or commented code

* Update with PR feedback from Nick Van Sickle
5 years ago
Tommy Walton 838202873a
Fix for ATOM-15595 : OctreeNode silently evicts entries that are larger than the size of the root node (#870)
- Fixed a bug where an entry would get removed from the octree when being updated if it was too large to be fully contained by the root node (the desired behavior is that it just lives in the root node)
- Added a unit test to ensure that large entries can exist in the root node
- Updated the unit tests to manually count the number of entries instead of relying on GetEntryCount, since GetEntryCount was reporting an unreliable count before this bug was fixed.
5 years ago
greerdv fadd227698 fix aztoolsframework tests 5 years ago
greerdv 945f55378e merge from main 5 years ago
amzn-sj d369912727 Merge branch 'main' into LYN-2461 5 years ago
greerdv 1a4bdcf651
Merge pull request #855 from aws-lumberyard-dev/non-uniform-scale-blast
remove vector scale from Blast in preparation for its removal from Transform
5 years ago
Tom Hulton-Harrop 74a2735766
Add better support for mouse deltas with camera system (#846)
* add better support for mouse deltas with camera system

* small fixes spotted during review

* rename after review feedback

* small refactor to reduce duplication
5 years ago
greerdv 726597ad34 Merge branch 'main' into non-uniform-scale-blast 5 years ago
greerdv 87b1a19df4 remove vector scale from Blast in preparation for removal from Transform 5 years ago
Tom Hulton-Harrop eb31d90ad9
Updates to fix BoxSelect when using Orbit with the new Camera (#825)
* update camera controller to block box select during orbit

* simplify update for modern viewport camera controller

* wip working lmb box select with orbit

* add test for changes to click detector

* add unit test for camera system to validate events

* remove debugging code, tidy-up changes for PR

* small updates before posting PR

* fix for linux build failure
5 years ago
amzn-sj 268fd8b714 Remove bootstrap.cfg and references to it. 5 years ago
sconel 6a108c0515
Merge pull request #806 from aws-lumberyard-dev/Spawnable/Instantiation/EntityIdReferenceFix
Updating SpawnAllEntities to handle entity references during spawn
5 years ago
Vincent Liu ad2d2381a4
[SPEC-6713] Add common session interfaces and notifications (#773) 5 years ago
sconel 31e5a312b4 Updated loadAll check to set to false if previous entities already spawned on ticket 5 years ago
sconel 4769664e9e Updating the loadAll flag after a SpawnAllCommand 5 years ago
amzn-sean 8dbcd9f199
increase physics max frame time to 0.1 seconds (10fps) (#824) 5 years ago
sconel d8126d59c7 Moved to iterative clone instead of bulk, addressed PR feedback 5 years ago
greerdv 7def4741cd merge from main 5 years ago
sconel 8733f0e492 Remove extra newline 5 years ago
sconel 66a7db44f7 Reduced scope of change to focus on SpawnAllEntities 5 years ago
sconel fb290a27af Merge branch 'main' of https://github.com/aws-lumberyard/o3de into Spawnable/Instantiation/EntityIdReferenceFix 5 years ago
SergeyAMZN 6626a7cf8e
Merge pull request #682 from aws-lumberyard-dev/MultiplayerPipeline
Added support for parent-child networked entities
5 years ago
sconel 4dccfa0d74 Merge branch 'main' of https://github.com/aws-lumberyard/o3de into Spawnable/Instantiation/EntityIdReferenceFix 5 years ago
bosnichd 7a557c05ac
Remove or update some remaining non-inclusive terms. (#793) 5 years ago
Tom Hulton-Harrop 43258be51c
Merge pull request #786 from aws-lumberyard-dev/hultonha_LYN-2215_camera-viewport-3
Add new orbit functionality for camera
5 years ago
pereslav 85374ea7fc Merged from main 5 years ago
amzn-sean 672dad7fea
combined the 2 physics shape collider config pair types into 1(#778) 5 years ago
sconel 8792cac88a Updating SpawnableEntitiesManager to handle entity references during spawn 5 years ago
pereslav b758a1920f removed useless todo comment 5 years ago
pereslav 970c87b487 Refactored spawning network entities to use SpawnableEntityManager instead of duplicating the code in NetworkEntityManager 5 years ago
hultonha bb05993355 add new orbit functionality for camrea 5 years ago
Tom Hulton-Harrop f4106fe73f
Add 'Goto entity' support for the new Editor camera (#743)
* add find entity in viewport functionality to new camera

* fix AZ_CVAR usage

* updates following review feedback

- updated comment styles from /// to //!
- retrieve fov of camera (add test for fov access)

* update namespace naming, fix AZ_CVAR usage

* update missed namespace and use AZ::Transform::CreateLookAt

* add missing include

* move EditorViewportSettings to EditorLib

* update DLL import/export API and rename namespace usage
5 years ago
Benjamin Jillich 6ebea13783
[LYN-2520] Gem Catalog - Gem Inspector / Info Panel (#718)
* [LYN-2520] Gem Catalog - Gem Inspector / Info Panel

* Extended the gem info with a directory and documentation link, binary size in bytes and added some helper functions.
* Added the gem inspector widget that hooks into the selection model.
* Info panel is vertically scrollable and based on the UX designs.
* Added a gem sub widget which holds several gem tags, a title and a description and is reused for the depending and conflicting gems.
* Extended the gem model with several new roles and data elements.
* Added more gem info test data before we got access to the real data.
5 years ago
phistere 0a8621ba0a Merge branch 'main' into ly-as-sdk/LYN-2948 5 years ago
phistere 74fda49ca4 Fixes paths to AssetProcessor when being run from SDK. 5 years ago
lumberyard-employee-dm 0b35d27833
Added support to the AZ Console to be notified when the Settings Registry modifies a particular path (#691)
* Updated the SettingsRegistry CommandLineArgumentSettings delimiter function to no longer work on a character basis, but on a line basis.
This provides more control by the user to determine how to the argument into the JSON pointer and JSON value parts

Added function o the Settings Registry to specify the JSON Apply Patch settings to use when performing a JSON Patch/Merge Patch operation

Fixed the SettingsRegistryImpl::CommandLineArgument function to properly set unsigned 64-bit values into the SettingsRegistry by checking the ERRNO of strtoll and strtoull

* Updated the reporting of the JSON Patching operations to supply a JSON pointer of the patched element to the Issue Reporting callback when the patch operation is successful. This allows using the Issue Reporting callback as a notification system when field is updated during a patch operation

* Added support to the AZ Console to be able to run Console Commands based
on notifications from the Settings Registry when a field underneath the
"/Amazon/AzCore/Runtime/ConsoleCommands" object is modified.

This takes advantage of the Settings Registry RegisterNotifier API to
determine when a field is modified as well as the JSON Merger
JsonApplyPatchSettings Issue Reporting Callback to determine when a
field is modified or updated.

As a Side Note also fixed an issue with the AZ Console incorrectly
converting unsigned 64-bit types using strtoll

* Making the Console constructor which accepts an AZ::SettingsRegistryInterface explicit

* Updating string format calls which use *.s for formatting string_views, to use the AZ_STRING_ARG macro

* Addressed typos in comments around the SettingsRegistry AZ Console functions

* Fixed the SettingsRegistryTest that look for an empty value

* clang 6.0.0 constexpr build fix. For some reason clang cannot make a constexpr AZStd::string_view out of a constexpr AZStd::fixed_string despite there being a valid constexpr operator AZStd::string_view

* Mac build fix

* SettingsRegistryTest.MergeSettingsFolder_ConflictingSpecializations_ReportsErrorAndReturnsFalse test fix on Mac

* Updated the LoadSettingsFile test to validate running a console with 0 arguments

Replace the static_cast in the ConsoleTypeHelpers.inl code to convert a str to long long with an aznumeric_cast

* Added printf logging to the ConsoleCommandKeyNotificationHandler to determine if the console commands are being performed on the Jenkins Linux node

* Fixed Dangling string_view reference in the ConsoleCommandKeyNotificationHandler that was causing command execution from a file to fail.

Renamed the second TestFreeFunc function in the ConsoleTests.cpp to validate thath the first TestFreeFunc function is being tested

* Updated the Component Application AZ Console to use the SettingsRegistry as the backend when loading config and Settings Rgistry json files
5 years ago
Nicholas Van Sickle 46c0c35c26
Merge pull request #734 from aws-lumberyard-dev/nvsickle/DebugInfoDisplay
Restore debug rendering to the viewport
5 years ago
bosnichd 9ecbbe471b
Remove lots of unused things from CrySystem (#765)
Remove lots of unused things from CrySystem
5 years ago
nvsickle f7a9b28000 Make AtomFont's API use copy semantics for string_view 5 years ago
nvsickle cc986f563a Merge remote-tracking branch 'upstream/main' into nvsickle/DebugInfoDisplay 5 years ago
lumberyard-employee-dm 5cc0cc9ee7
Fixed the loading of uicanvas assets due to the NetBindable class being (#755)
removed from the SerializeContext.
The TransformComponent and ScriptComponent which used to Serialize a
NetBindable instance didn't have their version numbers bumped in order
to skip the old data when loading a binary ObjectStream
5 years ago
bosnichd a9d986c10f
Red code legacy MemoryManager, StreamEngine, ResourceManager, ImageHandler, AsyncPakManager, and more (#758)
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
5 years ago
Tom Hulton-Harrop 795aa114e6
Improve selection in the viewport (#720)
* improve selection in the viewport

* remove debug code

* updates following review feedback

- update API comments from /// to //! from
- add [[nodiscard]] attribute to member function
- move constructor implementations to .cpp files

* use lambda instead of ternary operator

* fix unit test failure caused by typo
5 years ago
amzn-sean 7f79cc8796
RemoveSimulatedBody automatically updates the requested handle to be invalid once removed. (#740) 5 years ago
greerdv 2ef0e70fff
Merge pull request #730 from aws-lumberyard-dev/non-uniform-scale-compatibility
update compatibility for non-uniform scale service
5 years ago
amzn-sean d690c3fee4
static rigid body and rigid body component use Handles instead of pointers (#662) 5 years ago
greerdv ce3842ac84 Merge branch 'main' into non-uniform-scale-compatibility 5 years ago
greerdv 059f69e5e6 tidy up NonUniformScaleService compatibility 5 years ago
nvsickle 559798251d Merge remote-tracking branch 'upstream/main' into nvsickle/DebugInfoDisplay 5 years ago
Tom Hulton-Harrop f9fb61cc5d
Fix issue with viewport interaction ordering and viewport matrix changed handler (#695)
* fix for ctrl+mouse-wheel to cycle transform modes in the viewport

* ensure correct callback function is invoked

* remove redundant check in CameraInput
5 years ago
karlberg 35500981eb More removal fixes 5 years ago
karlberg 3169b3477d Adding missing files to azframework_files.cmake and fixing include errors due to network removal 5 years ago
karlberg 74385a575f Merge remote-tracking branch 'origin' into MultiplayerComponents 5 years ago
karlberg 3e13dd52d1 First pass, removing gridmate touchpoints from AzFramework and non inclusive terminology purge 5 years ago
nvsickle 7ff5c0e105 Add multiline spacing and GetTextSize to Atom Font 5 years ago
Tom Hulton-Harrop b5e5a3bfee
More camera fixes for the new CameraInput system (#667)
* use new ViewportContext interface to set camera transform on load

* WIP fixes for camera viewport handler callbacks

* disable synchonization with old camera when new camera system is enabled

* further updates to camera-input

* ensure event is signalled when camera transform is set

* updates to ModernViewportCameraController

* fix for right click menu appearing with camera

* updates following review feedback

* convert std:: usage to AZStd::
5 years ago
kberg-amzn bdaa7eb3c1
Merge pull request #544 from aws-lumberyard-dev/MultiplayerComponents
Multiplayer components, visibility fixes for gameplay runtime and localprediction player controller component.
5 years ago
bosnichd 440c40e490
Remove (almost) all references to pRenderer (#651)
Remove all references to pRenderer, except from the DebugDraw and LyShine Gems that are still being updated.
5 years ago
karlberg 9c23e637a0 Fix for white box test weirdness 5 years ago
karlberg 851323e112 One more test crash fix due to nullptr component application 5 years ago
karlberg 6b9ecc69c9 two more unit test touchpoints where core systems may not be initialized 5 years ago
karlberg 1df2fe1d48 Merging latest origin 5 years ago
Nicholas Van Sickle b026b6818b
Merge pull request #483 from aws-lumberyard-dev/nvsickle/ViewportControllerAPI
Give MultiViewportControllerInstances a pointer to their parent
5 years ago
greerdv 9f5987d431 Merge branch 'main' into non-uniform-scale-ux 5 years ago