Commit Graph

2914 Commits

Author SHA1 Message Date
Benjamin Jillich 79dd65e1cc Quaternion shortest equivalent (#6472)
* Added new helper functions to get the shortest equivalent of the rotation. In case the w component of the quaternion is negative the rotation is > 180° and taking the longer path. The quaternion will be inverted in that case to take the shortest path of rotation.
* Added unit test.
* Renamed the angle parameter of the CreateRotationX/Y/Z() functions into angleInRadians.

Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2022-01-03 10:20:27 +01:00
Michael Pollind 81b2841bd2 chore: correct text for assertion
Signed-off-by: Michael Pollind <mpollind@gmail.com>
2021-12-28 09:16:48 -08:00
Chris Galvan 24a3014e06 Merge pull request #6318 from aws-lumberyard-dev/PathSerializationSupport
Introduced a Json Serializer for the AzCore mutable path classes
2021-12-27 13:16:39 -06:00
Chris Galvan e09a4d20d3 Merge pull request #6240 from tjmgd/bug-keyword-prefab-23
Fix for bug in entity outliner search box
2021-12-27 13:12:08 -06:00
Jeremy Ong c3de8034eb Merge pull request #6560 from aws-lumberyard-dev/RemoveTimeTests
Remove time tests that relied on main-thread sleeps
2021-12-24 10:34:10 -07:00
Jeremy Ong 174e27cbfb Merge pull request #6559 from aws-lumberyard-dev/NullVariableInterfaceOptimization
Disambiguate null interface case
2021-12-24 10:33:58 -07:00
Jeremy Ong 5b76d47e17 Remove time tests that relied on main-thread sleeps
Sleeping in tests and attempting to rely on fine-grained measurements to
check code validity is intrinsically brittle. Wall-clock time is
unreliable in an environment where tests are run under a hypervisor that
may choose to suspend your VM at any point, or in situations where the
OS cannot schedule your thread in time. The correct way to reintroduce
these tests in the future is provide an override for the timestamp
queries that can be injected in the test environment to control the wall
time deterministically.

Signed-off-by: Jeremy Ong <jcong@amazon.com>
2021-12-23 17:15:49 -07:00
Jeremy Ong 6660c365b9 Disambiguate null interface case
In some cases, the interface being queried may be persistently nullptr
(e.g. a gem isn't active, or a feature was disabled by a cvar). In this
case, querying the interface would always enter the writer-lock branch
with existing code because nullptr was synonmous with "we haven't
queried for this variable yet."

This PR adds an additional state variable that is set when s_instance is
assigned to, so that after the variable is queried and found to be null,
future queries can enter the read-lock branch.

Signed-off-by: Jeremy Ong <jcong@amazon.com>
2021-12-23 16:25:44 -07:00
Michael Pollind 7dac0bac0d chore: remove "using namespace " from AZCore Math (#6372)
* chore: remove "using namespace " from AZCore Math

REF: https://github.com/o3de/o3de/issues/6281

Signed-off-by: Michael Pollind <mpollind@gmail.com>

* chore: fix formatting

Signed-off-by: Michael Pollind <mpollind@gmail.com>
2021-12-22 13:11:41 -08:00
Nicholas Van Sickle 8732fab192 One more compile fix
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
2021-12-22 12:35:44 -08:00
Michael Pollind cb740a3b3e chore: remove "using namespace AZ" from AZCore Script (#6366)
* chore: remove "using namespace AZ" from AZCore Script

REF: https://github.com/o3de/o3de/issues/6281

Signed-off-by: Michael Pollind <mpollind@gmail.com>

* chore: address changes

Signed-off-by: Michael Pollind <mpollind@gmail.com>
2021-12-22 11:51:47 -08:00
tjmgd a6240ff6bc Editor issue after clicking Find Layer in Asset Browser and (#6327)
Find Slice in Asset Browser in Slice mode

Signed-off-by: T.J. McGrath-Daly <tj.mcgrath.daly@huawei.com>
2021-12-22 11:51:33 -08:00
tjmgd 33495e4858 Slice save path incorrect, and error message incomplete (#6214)
Signed-off-by: T.J. McGrath-Daly <tj.mcgrath.daly@huawei.com>
2021-12-22 11:32:14 -08:00
Nicholas Van Sickle f69b9b817c Round of clang compile fixes
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
2021-12-22 11:03:51 -08:00
tjmgd 3f766629bc Lua Editor log - text ghosted (#6329)
Signed-off-by: T.J. McGrath-Daly <tj.mcgrath.daly@huawei.com>
2021-12-22 09:36:34 -08:00
Nicholas Van Sickle fd70a2207e Address a few other small pieces of feedback
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
2021-12-21 16:47:13 -08:00
Nicholas Van Sickle deb3568aaa Fix up a couple opaque value cases
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
2021-12-21 16:19:32 -08:00
Nicholas Van Sickle 68c93273d6 Add 8 and 16 bit numeric type API
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
2021-12-21 16:09:11 -08:00
Nicholas Van Sickle 37330c43a9 Address some more Generic Dom Value perf feedback
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
2021-12-21 15:47:42 -08:00
Mike Balfour 37bb001040 Merge pull request #6517 from aws-lumberyard-dev/mbalfour/gitflow_211220_stabilization_2111RTE
Merge from stabilization/2111RTE
2021-12-21 08:21:58 -06:00
John Jones-Steele 219653a75b Fixes rounding error display in Slider control (#6477)
Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>
2021-12-21 10:43:18 +00:00
Nicholas Van Sickle 1da99eaea0 Add type-safe GetTypeIndex instead of hardcoded index lookups
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
2021-12-20 18:27:00 -08:00
Nicholas Van Sickle bbd00adade Address some AZ::Dom::Value feedback
- Use a vector for shared string storage (to avoid the double heap allocation for AZStd::string)
- Use a shared heap allocated any for opaque types (instead of an unsafe ref)
- Add a string comparison key lookup benchmark to measure the impact of Name

Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
2021-12-20 16:54:06 -08:00
Mike Balfour 1845eba6ee Fixed compile error.
Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
2021-12-20 16:33:36 -06:00
Mike Balfour a07534ea51 Merge commit '7e5115114ca9500abf67095acb71fbb6087d06c8' into mbalfour/gitflow_211220_stabilization_2111RTE 2021-12-20 14:43:13 -06:00
Nicholas Van Sickle 748f2a5c05 Merge remote-tracking branch 'upstream/development' into nvsickle/GenericDomDocument 2021-12-20 11:51:15 -08:00
AMZN-Igarri bb14675db7 Fix tests Debug (#6405)
Signed-off-by: AMZN-Igarri <82394219+AMZN-Igarri@users.noreply.github.com>
2021-12-20 16:53:41 +00:00
amzn-sean fea4d0e6b1 adding TimeSystem unit tests (#6446)
Signed-off-by: amzn-sean <75276488+amzn-sean@users.noreply.github.com>
2021-12-20 14:32:25 +00:00
Michael Pollind e58d8815f1 chore: add assertions to plane to ensure normalization
Signed-off-by: Michael Pollind <mpollind@gmail.com>
2021-12-18 17:40:44 -08:00
Nemerle d8e06d9d95 Apply reviewer suggestions
Signed-off-by: Nemerle <nemerle5+git@gmail.com>
2021-12-17 16:02:33 +01:00
Michael Pollind 2ddf55474e chore: remove "using namespace " from AZCore Memory (#6373)
* chore: remove "using namespace " from AZCore Memory

REF: https://github.com/o3de/o3de/issues/6281

Signed-off-by: Michael Pollind <mpollind@gmail.com>

* chore: fix formatting

Signed-off-by: Michael Pollind <mpollind@gmail.com>

* chore: fix indentation for AllocatorBase.cpp

Signed-off-by: Michael Pollind <mpollind@gmail.com>

* chore: fix formatting

Signed-off-by: Michael Pollind <mpollind@gmail.com>

* chore: address minor checkstyle problems

Signed-off-by: Michael Pollind <mpollind@gmail.com>
2021-12-17 13:26:31 +00:00
Benjamin Jillich d20aa935ba Quaternion to scaled-axis angle representation (and back) helpers (#6421)
Direct conversion helpers for quaternion to the scaled axis-angle representation and back without the need to convert them first to the axis-angle format and manually scale (or normalize on the way back). This also avoids having to deal with the special case of an identity representation which is 0,0,0 in the scaled axis-angle format while our convention for axis-angle is 0,1,0 for the axis and 0 for the angle.

Added unit tests that check the conversion round-trips from quaternion -> (scaled) axis-angle -> quaternion as well as comparing the scaled axis-angle representations from the direct helper functions as well as the axis-angle while manually scaling/normalizing.

Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-12-17 09:43:35 +01:00
Esteban Papp d108fe4804 Addresses PR comments
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-12-16 18:31:19 -08:00
AMZN-koppersr 34edd4d0c0 Fixed post rebase Spawnable issues.
Signed-off-by: AMZN-koppersr <82230785+AMZN-koppersr@users.noreply.github.com>
2021-12-16 18:06:25 -08:00
AMZN-koppersr e8366040df Added unit test to cover the updates to the Spawnable Entities Aliases.
Signed-off-by: AMZN-koppersr <82230785+AMZN-koppersr@users.noreply.github.com>
2021-12-16 16:01:22 -08:00
AMZN-koppersr 1efbb7216f Addressed issues found in/by the Spawnables benchmarks and unit tests.
Signed-off-by: AMZN-koppersr <82230785+AMZN-koppersr@users.noreply.github.com>
2021-12-16 16:01:17 -08:00
AMZN-koppersr 02137e2219 Fixed existing tests for Prefab processing.
Signed-off-by: AMZN-koppersr <82230785+AMZN-koppersr@users.noreply.github.com>
2021-12-16 16:01:13 -08:00
AMZN-koppersr 43c42f63c6 Cleaned up some unused code in the Prefab processor.
Signed-off-by: AMZN-koppersr <82230785+AMZN-koppersr@users.noreply.github.com>
2021-12-16 16:01:04 -08:00
AMZN-koppersr 7b5868d198 Added additional functions to edit prefabs during processing to PrefabDocument.
Signed-off-by: AMZN-koppersr <82230785+AMZN-koppersr@users.noreply.github.com>
2021-12-16 16:00:54 -08:00
AMZN-koppersr b8e3b27ea9 Added a PrefabDocument for Prefab to simplify working with Prefabs during conversion to spawnables.
The new PrefabDocument handles the Prefab and the Instance. This reduces the number of times the Instance has to be reloaded from the Prefab and keeps the entity ids stable between steps. The intention is for all the PrefabDocument to conceptually manipulate the Prefab DOM, although behind the scenes it will manipulate the Instance for now. The Instance should only be directly used in case the PrefabDocument doesn't provide the functionality yet.

Signed-off-by: AMZN-koppersr <82230785+AMZN-koppersr@users.noreply.github.com>
2021-12-16 16:00:00 -08:00
AMZN-koppersr 9def902e1c Fixes up parents for entities that are moved to another Prefab.
This fixes issues with entities that are moved to another Prefab and have a parent that was also moved to the same Prefab. Entities that have their parent moved to another Prefab continue to work as is because a placeholder entity is always left behind. Entities that are moved to another Prefab but have a parent that's still in the original Prefab will currently not work correctly. This will be a addressed in a future commit.

Signed-off-by: AMZN-koppersr <82230785+AMZN-koppersr@users.noreply.github.com>
2021-12-16 15:35:51 -08:00
AMZN-koppersr 76a913882c Resolving links in the Prefab Processing Stack now also makes sure that entity ids of aliased entities are appropriately unique or match.
Signed-off-by: AMZN-koppersr <82230785+AMZN-koppersr@users.noreply.github.com>
2021-12-16 15:35:47 -08:00
AMZN-koppersr cbea11c452 Minor performance optimization to Prefab Instance.
Signed-off-by: AMZN-koppersr <82230785+AMZN-koppersr@users.noreply.github.com>
2021-12-16 15:35:43 -08:00
AMZN-koppersr 7e38a5f35c Fixed entity registration issue when setting up Spawnable Entity Aliases.
In some cases entities created for use as a Spawnable Entity Alias would share an entity id with their original. This is no longer working due to a reverse lookup from an entity id to its PrefabDOM. Upon further investigation this turned out to not matter as instances that are created by the PrefabCatchmentProcessor would create new entity ids any way. This cause unexpected behavior at runtime as entity relations may be broken. This will be addressed in a future fix.
Testing the above also highlighted a possible double delete in the builder when aliases were registered. This has also been fixed.

Signed-off-by: AMZN-koppersr <82230785+AMZN-koppersr@users.noreply.github.com>
2021-12-16 15:35:38 -08:00
AMZN-koppersr 016eda6cf1 Fixed infinite recursion when adding prefabs
While processing prefabs into spawnables new prefabs can be added for later processing. Because the new prefabs were immediately added to the list of prefabs it could happen that the new prefabs would be added to the active processor for processing, which could lead to infinite recursion. Adding prefabs while iterating prefabs now delays the addition until the iteration has completed.

Signed-off-by: AMZN-koppersr <82230785+AMZN-koppersr@users.noreply.github.com>
2021-12-16 15:35:33 -08:00
amzn-mike 18cfcd659b Fix missing parent class reflection for ProceduralPrefabSystemComponent (#6413)
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
2021-12-16 07:49:32 -08:00
Tom Hulton-Harrop 01770a1574 Fixes for CameraInput handling (#6425)
* add temporary optimize off calls

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

* fix + tests for camera input issue

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

* simplify boolean expression (PR feedback)

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
2021-12-16 09:35:39 +00:00
Tom Hulton-Harrop d065eb9498 Initial improvements to fix viewport icon selection and draw order (#6284)
* wip fixes for entity viewport icons displaying in the correct order and handling selection correctly

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

* add additional comment about z value

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

* move manual sorting and some small tidy-up

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

* update comment

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

* updates following initial round of PR feedback

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

* additional changes to support tests for entity icon intersection

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

* add support to enable/disable icons separately from helpers

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

* final tests added and small tidy-up to display EntityId correctly

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

* update some manipulator test framework calls after utility functions were moved

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

* fix for implicit cast

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

* move icon scale values to AZ_CVARS

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

* fix failing tests caught in AR and update some naming conventions for tests

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

* update naming convention for members of ProjectedViewportRay

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

* update other references to ProjectedViewportRay

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

* update more references to ProjectedViewportRay change

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

* update menus for python tests

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
2021-12-16 09:35:23 +00:00
Nicholas Van Sickle 10cb618ba6 Merge remote-tracking branch 'upstream/development' into nvsickle/GenericDomDocument 2021-12-15 10:24:39 -08:00
Nicholas Van Sickle 352b4ab690 Make DomValue final
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
2021-12-15 10:23:58 -08:00