Add tests for planar manipulator draw when dealing with scaling (#6164)

* add support to add a custom debug display request interface for manipulator test framework

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

* wip changes to support tests for manipulator view drawing

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

* add test for planar manipulator draw when dealing with scaling

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

* additional comments for added context

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

* small updates/fixes after PR feedback

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

* fix for missing NullDebugDisplayRequests

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
This commit is contained in:
Tom Hulton-Harrop
2021-12-06 14:53:45 +00:00
committed by GitHub
parent 09c9548ba4
commit 969dbf407a
30 changed files with 244 additions and 106 deletions
@@ -22,6 +22,7 @@
#include <AzCore/IO/Path/Path.h>
#include <AzCore/Math/Matrix3x3.h>
#include <AzFramework/Entity/EntityDebugDisplayBus.h>
#include <AzFramework/UnitTest/TestDebugDisplayRequests.h>
#include <AzFramework/Viewport/CameraState.h>
#include <AzManipulatorTestFramework/AzManipulatorTestFramework.h>
#include <AzManipulatorTestFramework/AzManipulatorTestFrameworkUtils.h>
@@ -38,10 +39,6 @@ namespace UnitTest
static const AzToolsFramework::ManipulatorManagerId TestManipulatorManagerId =
AzToolsFramework::ManipulatorManagerId(AZ::Crc32("TestManipulatorManagerId"));
class NullDebugDisplayRequests : public AzFramework::DebugDisplayRequests
{
};
class WhiteBoxManipulatorFixture : public WhiteBoxTestFixture
{
public:
@@ -67,7 +64,8 @@ namespace UnitTest
// create the direct call manipulator viewport interaction and an immediate mode dispatcher
AZStd::unique_ptr<AzManipulatorTestFramework::ManipulatorViewportInteraction> viewportManipulatorInteraction =
AZStd::make_unique<AzManipulatorTestFramework::DirectCallManipulatorViewportInteraction>();
AZStd::make_unique<AzManipulatorTestFramework::DirectCallManipulatorViewportInteraction>(
AZStd::make_shared<NullDebugDisplayRequests>());
AZStd::unique_ptr<AzManipulatorTestFramework::ImmediateModeActionDispatcher> actionDispatcher =
AZStd::make_unique<AzManipulatorTestFramework::ImmediateModeActionDispatcher>(
*viewportManipulatorInteraction);