Commit Graph

855 Commits (acc6248ec98ef8cd24ea057f679d90ca6be812e5)

Author SHA1 Message Date
Nicholas Van Sickle acc6248ec9 Move deep comparison / copy to utils
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago
Nicholas Van Sickle 41c0fb2b02 Address some review feedback
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago
Nicholas Van Sickle e518faa8be Merge remote-tracking branch 'upstream/development' into nvsickle/GenericDomDocument 4 years ago
Chris Galvan aa17120f09
Merge pull request #6496 from pollend/chore/add-assets-plane
chore: add assertions to plane to ensure normalization
4 years ago
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>
4 years ago
Michael Pollind 81b2841bd2 chore: correct text for assertion
Signed-off-by: Michael Pollind <mpollind@gmail.com>
4 years ago
Chris Galvan 24a3014e06
Merge pull request #6318 from aws-lumberyard-dev/PathSerializationSupport
Introduced a Json Serializer for the AzCore mutable path classes
4 years ago
Jeremy Ong c3de8034eb
Merge pull request #6560 from aws-lumberyard-dev/RemoveTimeTests
Remove time tests that relied on main-thread sleeps
4 years ago
Jeremy Ong 174e27cbfb
Merge pull request #6559 from aws-lumberyard-dev/NullVariableInterfaceOptimization
Disambiguate null interface case
4 years ago
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>
4 years ago
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>
4 years ago
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>
4 years ago
Nicholas Van Sickle 8732fab192 One more compile fix
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago
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>
4 years ago
Nicholas Van Sickle f69b9b817c Round of clang compile fixes
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago
Nicholas Van Sickle fd70a2207e Address a few other small pieces of feedback
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago
Nicholas Van Sickle deb3568aaa Fix up a couple opaque value cases
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago
Nicholas Van Sickle 68c93273d6 Add 8 and 16 bit numeric type API
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago
Nicholas Van Sickle 37330c43a9 Address some more Generic Dom Value perf feedback
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago
Nicholas Van Sickle 1da99eaea0 Add type-safe GetTypeIndex instead of hardcoded index lookups
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago
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>
4 years ago
Mike Balfour 1845eba6ee Fixed compile error.
Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
4 years ago
Mike Balfour a07534ea51 Merge commit '7e5115114ca9500abf67095acb71fbb6087d06c8' into mbalfour/gitflow_211220_stabilization_2111RTE 4 years ago
Nicholas Van Sickle 748f2a5c05 Merge remote-tracking branch 'upstream/development' into nvsickle/GenericDomDocument 4 years ago
amzn-sean fea4d0e6b1
adding TimeSystem unit tests (#6446)
Signed-off-by: amzn-sean <75276488+amzn-sean@users.noreply.github.com>
4 years ago
Michael Pollind e58d8815f1 chore: add assertions to plane to ensure normalization
Signed-off-by: Michael Pollind <mpollind@gmail.com>
4 years ago
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>
4 years ago
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>
4 years ago
Nicholas Van Sickle 10cb618ba6 Merge remote-tracking branch 'upstream/development' into nvsickle/GenericDomDocument 4 years ago
Nicholas Van Sickle 352b4ab690 Make DomValue final
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago
amzn-sean 33bfdc0bd3
corrected implementation of GetRealElapseTime (#6422)
Signed-off-by: amzn-sean <75276488+amzn-sean@users.noreply.github.com>
4 years ago
Chris Galvan 50e06ea8c5
Merge pull request #6328 from tjmgd/bug-lua-debugging-62
Fix: Lua script debugging loading problem
4 years ago
Chris Galvan 0a31483faa
Merge pull request #6333 from tjmgd/bug-lua-breakpoint-67
Fix: Lua breakpoint error
4 years ago
lumberyard-employee-dm dc9d1a2f31 Introduced a Json Serializer for the AzCore mutable path classes
Added UnitTest for Json Serialization of AzCore Path types

resolves #2477

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
4 years ago
Nicholas Van Sickle f71b134a84 Ensure JsonSerializer::StoreTypeName stores the correct type for generic types
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago
Nicholas Van Sickle aa9799a63b Use the high perf allocator for DomValueWriter
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago
amzn-mike 71bb200e0a
[LYN-7064] Hot Loading of Procedural Prefabs (#4923)
* Prefab hotloading - load and maintain asset references

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

* Working hotloading

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

* Clean up code, add comments

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

* Add missing includes

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

* Add event for template removal.

Clear ProceduralPrefabSystemComponent lookup when templates are removed.

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

* Add unit test.

Fix missing include, make sure source name is set

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

* Fix missing include

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

* Fix missing include

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

* Update comments to make ebus event behavior more clear

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

* Fix missing include

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

* Fix missing includes

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

* Fix missing include

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

* Fix temp directory usage which doesn't work on linux

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

* Fix temp directory usage which doesn't work on linux

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

* Use AZ::IO::Path for comparison.  Print paths on failure

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

* Fix unit test - register asset with catalog so it can be looked up later

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
4 years ago
Nicholas Van Sickle 946a77e914 Document ValueWriter, add basic OpaqueValue handling
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago
Nicholas Van Sickle af91cea8ef Add copy-on-write note
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago
Nicholas Van Sickle 202226c2cb Document short string usage
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago
Nicholas Van Sickle d044f51a89 Remove DomDocument for now
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago
Nicholas Van Sickle 8da04f15d3 Add some Value documentation
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago
Nicholas Van Sickle 0216d0ae9f Clarify shared string semantics
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago
Nicholas Van Sickle e080ade885 Switch high perf allocator back on for containers, modest perf boost
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago
Nicholas Van Sickle d9ac3c2120 Tidy up Type enum
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago
Nicholas Van Sickle cc120c772c Add RapidjsonCopyAndMutate to compare w/ shallow copy
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago
Nicholas Van Sickle c53c97cf5f Add another round of benchmarks
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago
Nicholas Van Sickle 1f2635d24b Switch to the high pref heap allocator, roll back pool interface changes
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago
Nicholas Van Sickle 809ee2dce9 Fix "force string copy" logic
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago
Nicholas Van Sickle 1af39a5c5c Add benchmarks, some light optimizations like SSO
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
4 years ago