Commit Graph

2914 Commits

Author SHA1 Message Date
John 921612594a Add placeholder icon for back button.
Signed-off-by: John <jonawals@amazon.com>
2021-11-16 17:54:19 +00:00
AMZN-stankowi c3dacb1e52 Unlocked a mutex after modifying the associated variable (#5625)
* Unlocked a mutex after modifying the variable the mutex was meant for.
This fixes an issue where mounting bundles in the Editor was causing the Editor to freeze up, because the following line, m_levelOpenEvent.Signal, resulted in another attempt to lock that same mutex.

Signed-off-by: AMZN-stankowi <4838196+AMZN-stankowi@users.noreply.github.com>

* Added a comment describing why the unlock is necessary.

Signed-off-by: AMZN-stankowi <4838196+AMZN-stankowi@users.noreply.github.com>
2021-11-16 08:07:20 -08:00
John 1546247922 Trivial refactor of comments.
Signed-off-by: John <jonawals@amazon.com>
2021-11-16 16:02:22 +00:00
John f369fcb3d1 Merge remote-tracking branch 'origin/stabilization/2110' into viewport/EditorModeUIBackButton 2021-11-16 15:56:53 +00:00
John 6b201bf97c Add back button to editor mode UI.
Signed-off-by: John <jonawals@amazon.com>
2021-11-16 15:55:22 +00:00
bosnichd b20a9b5f39 Some modifications required for restricted platforms: (#5624)
- Replace AZ_TRAIT_MAX_JOB_MANAGER_WORKER_THREADS with AZ_TRAIT_THREAD_NUM_JOB_MANAGER_WORKER_THREADS that allows the number of threads created by the job manager to be set directly.
- Add AZ_TRAIT_THREAD_NUM_TASK_GRAPH_WORKER_THREADS that allows the number of threads created by the task graph to be set directly.
- Add a define that forces the AsyncUploadQueue to use the primary copy queue instead of creating a secondary copy queue.

Signed-off-by: bosnichd <bosnichd@amazon.com>
2021-11-16 08:27:32 -07:00
AMZN-Igarri a5adf33427 Deactivate new Asset Picker View by default in the Editor (#5614)
Signed-off-by: AMZN-Igarri <82394219+AMZN-Igarri@users.noreply.github.com>
2021-11-16 10:47:02 +00:00
santorac 7d849cc0d2 Changed the overall strategy for how to handle missing image references. Instead of replacing it with one of the placeholder assets, we replace it with an random UUID which will be interpreted as a missing asset (unless some discovers discovers a UUID collision). This eventually gets replaced by one of the placeholder textures at runtime. This approach gives more consistent results in how missing texture are handled between Material Editor and Material Component.
I actually tried this approach before and it didn't seem to work the way we needed, but I realized that's because PropertyAssetCtrl wasn't handling missing assets properly. I fixed a few issues there including showing the error button when the asset can't be found, and fixing a broken reference to the error icon file.

Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
2021-11-15 16:51:22 -08:00
Chris Galvan 7031147e32 Added event to signal when the Editor is fully initialized so test scripts can listen for that instead of needed arbitrary wait commands. (#5623)
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
2021-11-15 17:01:47 -06:00
amzn-mike 8b7e538dd3 Cherry Pick: [LYN-7463] Fix insert streaming request failure (#5604) (#5622)
* Fix race condition where asset would finish loading and another request would start before the streamer request could be cleared

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>

* Re-enable disabled test which was failing for the same reason.

Fix test timeout which was way too long.
Reduce test iterations to keep test time safely under 5 seconds.

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>

* Instead of using a mutex, re-order the statements to remove the streamer request first

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
(cherry picked from commit 0cea59d669)
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
2021-11-15 14:14:43 -08:00
Gene Walters e1ace4a8f6 WiP. fwrites are being stopped by AZCoreLogSink; need a long term solution to work around this...
Signed-off-by: Gene Walters <genewalt@amazon.com>
2021-11-15 12:37:52 -08:00
Gene Walters 4d161f42df WiP. fwrites are being stopped by AZCoreLogSink; need a long term solution to work around this...
Signed-off-by: Gene Walters <genewalt@amazon.com>
2021-11-15 12:37:21 -08:00
amzn-mike 63713ca284 Fix AssetBus connection policy to re-lock the mutex afterward since some destructors in the calling methods are still altering the context (#5575)
Also made the unlock conditional.

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
2021-11-15 12:23:56 -08:00
amzn-sj fc547d902c Add message to indicate Json serialization of bitset is not supported (#5590)
Signed-off-by: amzn-sj <srikkant@amazon.com>
2021-11-15 14:09:43 -06:00
amzn-mike 0cea59d669 [LYN-7463] Fix insert streaming request failure (#5604)
* Fix race condition where asset would finish loading and another request would start before the streamer request could be cleared

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>

* Re-enable disabled test which was failing for the same reason.

Fix test timeout which was way too long.
Reduce test iterations to keep test time safely under 5 seconds.

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>

* Instead of using a mutex, re-order the statements to remove the streamer request first

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
2021-11-15 11:28:06 -08:00
Mikhail Naumov b3e2c3f075 SetComponentProperty is now supported by undo operation (#5599)
* Adding undo support to SetComponentProperty to make it function with prefab system

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

* Renaming a variable

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

* PR feedback

Signed-off-by: Mikhail Naumov <mnaumov@amazon.com>
2021-11-15 11:01:42 -08:00
SergeyAMZN f9824fc4ee Merge pull request #5586 from aws-lumberyard-dev/IMGUI_EntityOutlinerFix
Fixed IMGUI Entity Outliner to show net entities
2021-11-15 14:23:10 +00:00
amzn-sean 38a03817bb Removal and Replacement of the CryTimer (gEnv->pTimer) (#5409)
Replaced and removed the CryTimer (gEnv->pTimer). The new TimeSystem is a merger of the current time functionality found in the engine.

* Rename TimeSystemComponent.h/.cpp to TimeSystem.h/.cpp
* Adding New TimeSystem
* remove old timer cvars
* small improvements to the time system.
 - updated parts to use the time conversion functions.
 - in AdvanceTickDeltaTimes applying t_simulationTickScale is now uses doubles instead of floats.
* Replace gEnv->pTimer / ITimer usages with TimeSystem
* Updating usages of AZ::TimeMs{ 0 } and AZ::TimeUs{ 0 } to AZ::Time::ZeroTimeMs and AZ::Time::ZeroTimeUs
* red code the CryTimer
* using TimeUs instead of TimeMs is some cases + updating usages of old cvars to new

Signed-off-by: amzn-sean <75276488+amzn-sean@users.noreply.github.com>
2021-11-15 12:11:58 +00:00
Danilo Aimini 5ec5824849 Hide the "up one level" button temporarily. (#5595)
Signed-off-by: Danilo Aimini <daimini@amazon.com>
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
2021-11-12 14:16:44 -08:00
rgba16f 57adfd795e Add a name to JobManager (#5576)
* Add a name to JobManager, all worker threads use that name to label their threads

Signed-off-by: rgba16f <82187279+rgba16f@users.noreply.github.com>

* update with PR feedback, changed to use AZStd::fixed_string::format

Signed-off-by: rgba16f <82187279+rgba16f@users.noreply.github.com>

* Fix copy paste errors using local variable names

Signed-off-by: rgba16f <82187279+rgba16f@users.noreply.github.com>
2021-11-12 13:15:41 -06:00
Sergey Pereslavtsev 435f839666 Fixed IMGUI Entity Outliner to show net entities
Signed-off-by: Sergey Pereslavtsev <pereslav@amazon.com>
2021-11-12 13:36:14 +00:00
Guthrie Adams 92c0e598d5 Starting to remove MTL asset references
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
2021-11-11 19:20:04 -06:00
chcurran facfdf4e7a Merge branch 'development' of https://github.com/o3de/o3de into sc-editor-asset-redux
Signed-off-by: chcurran <82187351+carlitosan@users.noreply.github.com>
2021-11-11 16:07:18 -08:00
Nicholas Van Sickle 2c2c1d8137 Merge pull request #5562 from aws-lumberyard-dev/nvsickle/StabToDevNov21
Merge `stabilization/2110` as of `fac3d0b1bf` into `development`
2021-11-11 15:04:18 -08:00
galibzon e0d736dd84 Fixed the other call to CreateVariable (#5561)
in favor of CreateVariableEx

Signed-off-by: galibzon <66021303+galibzon@users.noreply.github.com>
2021-11-11 16:04:22 -06:00
bosnichd 19acf94606 Remove the legacy ViewSystem and some other tangentially related legacy code. (#5558)
Signed-off-by: bosnichd <bosnichd@amazon.com>
2021-11-11 13:29:51 -07:00
Nicholas Van Sickle 8d5dd4e35f Merge remote-tracking branch 'upstream/stabilization/2110' into nvsickle/StabToDevNov21
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
2021-11-11 10:15:52 -08:00
Tom Hulton-Harrop 2812ec2024 Fix brute force mesh intersection function (#5447)
* fix brute force mesh intersection function

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

* add test for brute force ray intersection fix

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

* refactor tests to remove as much duplication and provide API for future tests if required

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

* small updates after review feedback

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

* update following review feedback

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

* fix for pointer offset

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
2021-11-11 16:33:08 +00:00
AMZN-AlexOteiza edefb57cfd Fixed crash when typing asset name and clicking browse (#5495) 2021-11-11 13:58:00 +00:00
jonawals de4e2d6308 Merge pull request #5544 from aws-lumberyard-dev/viewport/LYN-7989
Remove SurfaceManipulator.
2021-11-11 13:36:55 +00:00
John 039d2fc0c4 Remove SurfaceManipulator.
Signed-off-by: John <jonawals@amazon.com>
2021-11-11 12:13:55 +00:00
galibzon f24c3d3457 ASV Trace::Assert Environment.h(438) You are using an invalid variable, (#5521)
the owner has removed it!

This fixes the issue by forcing NameDictionary to not transfer
ownership. This means ComponentApplication()::Destroy will fully destroy
the NameDictionary before the OS::Allocator is destroyed.

In Windows the bug was not happening when running AssetProcessorBatch
because for Windows, _exit() is called before the application shutsdown
forcing all module to properly decrease the reference count of
EnvironmentVaqriableHolderBase::m_useCount for NameDictionary.

In MacOS, there's no _exit() so when the NameDictionary destructor was being called
before existing the application the reference count wouldn't be 0, and
would eventually try to destry the NameDictionary BUT the OS::Allocator
was already destroyed.

Signed-off-by: galibzon <66021303+galibzon@users.noreply.github.com>
2021-11-11 05:24:33 -06:00
jonawals f564903f37 Merge pull request #5497 from aws-lumberyard-dev/viewport/select_rect_fix
Fix attempted rendering of invalid Entity selection boxes.
2021-11-11 09:15:27 +00:00
Gene Walters fe5aeb9a5f Merging latest dev
Signed-off-by: Gene Walters <genewalt@amazon.com>
2021-11-10 19:41:36 -08:00
Danilo Aimini 27f0aa7f13 LYN-7468 | Viewport manipulators for the container of the focused prefab should be hidden (#5432)
* Extend the level entity behavior to open prefab containers in focus mode. Disable manipulators for these entities too.

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

* Minor adjustments

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

* Fix enum casing in Entity Inspector.

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

* Split views between for Level and FocusedContainer entities.

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

* Slightly different fix to support components on focused containers.

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

* Minor fixesto RefreshSelectedEntityIds.

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
2021-11-10 14:43:32 -08:00
Nicholas Van Sickle 609469d5e4 Fix a couple build issues
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
2021-11-10 14:08:59 -08:00
Nicholas Van Sickle e9a57380bb Generic DOM: Add DomBackend abstraction and JSON support
This change adds a `DomBackend` interface and a `DomBackendRegistry` for backend discovery (currently not hooked up to anything) alongside a JSON backend implementation.

The JSON backend comes with a small suite of unit and performance tests. The unit tests validate generic DOM conversion to and from serialized JSON and rapidjson::Document objects (the support for which lives in `JsonSerializationUtils.h`).

The performance tests show a throughput decrease compared to directly using the rapidjson serializer when mirroring our current pattern of copying strings from the serialized JSON representation, but with the coming in-memory store we have the opportunity to keep the buffer in memory and deserialize in-situ using rapidjson's API, which is consistently at least 100MiB/s faster on my machine (Ryzen Threadripper 3970X). The first parameter is the nested object complexity (N*N, objects with N keys comprised of arrays with N values) and the second parameter is the base size of the strings within each entry of this object.
```
----------------------------------------------------------------------------------------------------------------------
Benchmark                                                            Time             CPU   Iterations UserCounters...
----------------------------------------------------------------------------------------------------------------------
DomJsonBenchmark/DomDeserializeToDocumentInPlace/10/5            0.050 ms        0.050 ms        10000 bytes_per_second=355.816M/s
DomJsonBenchmark/DomDeserializeToDocumentInPlace/10/50           0.057 ms        0.057 ms        11200 bytes_per_second=386.064M/s
DomJsonBenchmark/DomDeserializeToDocumentInPlace/100/5            4.77 ms         4.88 ms          112 bytes_per_second=364.046M/s
DomJsonBenchmark/DomDeserializeToDocumentInPlace/100/500          11.6 ms         11.7 ms           64 bytes_per_second=554.518M/s
DomJsonBenchmark/DomDeserializeToDocumentWithCopies/10/5         0.084 ms        0.084 ms         7467 bytes_per_second=212.55M/s
DomJsonBenchmark/DomDeserializeToDocumentWithCopies/10/50        0.099 ms        0.100 ms         6400 bytes_per_second=220.608M/s
DomJsonBenchmark/DomDeserializeToDocumentWithCopies/100/5         8.22 ms         8.16 ms           90 bytes_per_second=217.847M/s
DomJsonBenchmark/DomDeserializeToDocumentWithCopies/100/500       23.2 ms         22.9 ms           30 bytes_per_second=283.56M/s
DomJsonBenchmark/JsonUtilsDeserializeToDocument/10/5             0.070 ms        0.070 ms        11200 bytes_per_second=255.049M/s
DomJsonBenchmark/JsonUtilsDeserializeToDocument/10/50            0.086 ms        0.087 ms         8960 bytes_per_second=253.258M/s
DomJsonBenchmark/JsonUtilsDeserializeToDocument/100/5             6.86 ms         6.84 ms          112 bytes_per_second=260.033M/s
DomJsonBenchmark/JsonUtilsDeserializeToDocument/100/500           22.8 ms         22.9 ms           32 bytes_per_second=283.158M/s
```

For `AZ::DOM::Document`, the current plan is to offer helper methods that can load from a file path or string using a given backend that can take advantage of in-place parsing by internally storing the serialized buffer.

Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
2021-11-10 12:32:34 -08:00
bosnichd 528a747876 Don't allocate memory when processing WM_INPUT messages. (#5491)
This change was made years ago in CrySystem (see CSystem::HandleMessage in System.cpp), but looks like it never made it into the NativeWindow_Windows version.

Signed-off-by: bosnichd <bosnichd@amazon.com>
2021-11-10 11:28:21 -07:00
John 3ced915f8e Fix attempted rendering of invalid Entity selection boxes.
Signed-off-by: John <jonawals@amazon.com>
2021-11-10 17:36:21 +00:00
Esteban Papp 21f9a789c1 Merged the Editor.Camera.Tests with the Editor.Tests (#5463)
* Merged the Edtiror.Camera.Tests witht eh Editor.Tests

Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

* Adds dependency to Camera.Editor gem which is used by the test

Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

* Inheirts from TraceBusHook instead of adding the default env to the test

Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

* makes order consistent between Setup/Teardown

Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

* adds missing header for non-unity builds

Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

* Removes dependency to Camera gem

Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-11-10 08:57:39 -08:00
bosnichd eb775a48dc Make InputDeviceId's constructor constexpr. (#5433)
* Make InputDeviceId's constructor constexpr.

See also https://github.com/o3de/o3de/pull/4220

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

* Updates based on review feedback.

Signed-off-by: bosnichd <bosnichd@amazon.com>
2021-11-10 08:06:27 -07:00
jonawals adf3357176 Merge pull request #5486 from aws-lumberyard-dev/viewport/ghi_5239
Fix for Issue #5239: Component Edit Mode does not disable Entity Inspector interaction
2021-11-10 14:50:36 +00:00
AMZN-Igarri 027b0f86ae Activate AssetBrowserTableView feature (#5367)
Signed-off-by: igarri <igarri@amazon.com>
2021-11-10 13:41:59 +00:00
John 0e3df14ea2 Add missing bus connection/disconnection.
Signed-off-by: John <jonawals@amazon.com>
2021-11-10 11:59:28 +00:00
moraaar 15586ee53e Adding missing pragma once at XcbInputDeviceMouse.h (#5448)
Signed-off-by: moraaar <moraaar@amazon.com>
2021-11-09 15:42:01 -08:00
lsemp3d 934c0f2ec7 Made SerializeContext and BehaviorContext consistent with their class name
Signed-off-by: lsemp3d <58790905+lsemp3d@users.noreply.github.com>
2021-11-09 15:25:06 -08:00
lsemp3d d3b8b761fd Improved messaging on assert about argument types lacking reflection for scripting
Signed-off-by: lsemp3d <58790905+lsemp3d@users.noreply.github.com>
2021-11-09 14:51:10 -08:00
Mikhail Naumov e1d53395fe Propagation Optimization (#5355)
* Merge changes

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

* removing leftover immediate flag

Signed-off-by: Mikhail Naumov <mnaumov@amazon.com>
2021-11-09 14:05:15 -08:00
Ronald Koppers e6a1f8ed0a Merge pull request #5108 from aws-lumberyard-dev/Prefabs/SpawnableEntityAlias
Ability to setup aliases for entities spawned from spawnables.
2021-11-09 13:17:59 -08:00
Gene Walters 5d5087e0d3 Moving CommunicatorTracePrinter to a place that AP and Multiplayer gem can use it. MultiplayerEditorSystemComponent now watching the server process and pumping the trace printer. Wip; for some reason not all the server logs are reaching the editor
Signed-off-by: Gene Walters <genewalt@amazon.com>
2021-11-09 11:11:15 -08:00