* proof of concept change for fixing camera yaw rotation being ignored
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* updates to fully support camera roll
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* small fixes for PR
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* undo changes in EditorCameraComponent
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* add test to verify interaction between editor viewport view entity change and modular camera controller
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* add additional tests for updated camera behaviors
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* revert change to Camera Gem Output Name
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* move location of new files
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* fix tab/spaces issue
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* remove static from potentially unused functions
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* set camera lib name in CMakeLists.txt file
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* cosmetic CMakeLists.txt change
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* Provisional impl and testing of central state tracker.
Signed-off-by: John <jonawals@amazon.com>
* Add missing namespace comment.
Signed-off-by: John <jonawals@amazon.com>
* ViewportEditorModeState -> ViewportEditorModes
Signed-off-by: John <jonawals@amazon.com>
* ViewportEditorModesTracker -> ViewportEditorModeTracker
Signed-off-by: John <jonawals@amazon.com>
* GetEditorModeState ->GetViewportEditorModes
Signed-off-by: John <jonawals@amazon.com>
* GetNumTrackedViewports -> GetTrackedViewportCount
Signed-off-by: John <jonawals@amazon.com>
* IsViewportStateBeingTracked -> IsViewportModeTracked
Signed-off-by: John <jonawals@amazon.com>
* Fix API comments.
Signed-off-by: John <jonawals@amazon.com>
* Delete hangover file.
Signed-off-by: John <jonawals@amazon.com>
* Delete more hangover files.
Signed-off-by: John <jonawals@amazon.com>
* Minor member name refactor.
Signed-off-by: John <jonawals@amazon.com>
* Refactor nonclemanture.
Signed-off-by: John <jonawals@amazon.com>
* Rename Enter/ExitMode to Register/UnregisterMode.
Signed-off-by: John <jonawals@amazon.com>
* Error and warning msgs now return AZ::Outcomes.
Signed-off-by: John <jonawals@amazon.com>
* Change all nomenclature to Activate/Deactivate for consistency.
Signed-off-by: John <jonawals@amazon.com>
* Change tense of notification bus methods.
Signed-off-by: John <jonawals@amazon.com>
* Fix malformed string format.
Signed-off-by: John <jonawals@amazon.com>
* Fix malformed string format (again).
Signed-off-by: John <jonawals@amazon.com>
* Fix Linux warning.
Signed-off-by: John <jonawals@amazon.com>
* Restores the branch to the old status from old branch
Signed-off-by: aaguilea <aaguilea@amazon.com>
* Changes that didnt make it from merge manually fixed
Signed-off-by: aaguilea <aaguilea@amazon.com>
* forgot one
Signed-off-by: aaguilea <aaguilea@amazon.com>
* Added Ebus in order to remove rigidbody's dependencies
Signed-off-by: aaguilea <aaguilea@amazon.com>
* answering some of the comments in the PR
Signed-off-by: aaguilea <aaguilea@amazon.com>
* Small typo changed
Signed-off-by: aaguilea <aaguilea@amazon.com>
* Added string and string_view class constructor overloads which is deleted that prevents initializing them from a nullptr or an integer type
Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
* Fixed locations where string and string_view were initialized with
nullptr
Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
* Fix IArchive::IsInstalledToHDD signature
Updated calls to ConvertAbsolutePathToAliasedPath to use an
list initialization instead of nullptr
Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
* expose sticky select option to the SettingsRegistry
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* update missed callsites after API change to Manipulator Test Framework
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* updates following review feedback
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* Fixes to icon generation. Generating a pixmap out of a size won't take the screen scaling factor into account, resulting in blurry results.
Note that this is not a catchall solution, every case needs to be addressed manually.
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* HighDpi fixes for startup splashscreen and About dialog
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* Add helper function to generate appropriate pixmaps for a screen based on its dpi settings.
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* remove redundant API calls from EditorViewportWidget and use new WorldToScreen call
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* remove additional pre/post widget render calls that are no longer required
Signed-off-by: hultonha <hultonha@amazon.co.uk>
Many of these are just extra noise in the profile, but the one in Archive.cpp could also cause PIX to crash.
Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
* WIP changes for viewport single select and better integration tests
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* update test to verify single click selection in the viewport
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* temporarily remove changes for single select
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* temporarily remove ChangeSelectedEntity call
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* initial tests to validate current viewport selection model
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* some tidy-up before publishing PR
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* add reference to const type in loop
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* temporarily disable box select test
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* preparatory work to allow for more viewport integration tests
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* minor grammatical fix
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* fix for missed bus call update
Signed-off-by: hultonha <hultonha@amazon.co.uk>
- Protected python execution of OnEventGenericHook by trying to lock the GIL and show a descriptive error when it was not possible to lock.
- Improved mechanism to lock python mutex and GIL in PhytonSystemComponent. Acquiring/releasing GIL once per thread.
- Added unit test to verify errors are fired when trying to execute OnEventGenericHook from another thread (as it should not able to acquire the GIL).
- Improved python threading tests to actually using python buses.
Signed-off-by: moraaar moraaar@amazon.com
* add a new implementation for cone/ray intersect to simplify and fix existing issue
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* move new ray/cone intersection function to AzToolsFramework - repond to PR comments
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* updates following PR feedback
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* add additional comment to give more context to the intersection function
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* update google test expect usage
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* Modernization + small fix.
Modernize ( `bool`/`override`/other) code in AzCore, AzFramework, AzQtComponents, AzToolsFramework, etc.
Replaced a `bind` or two, use `using` in a few places as well.
Fix nullptr comparison of AZStd::function.
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
* Apply review-based changes
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
- Fixed cloth asset, which stopped working due to Updated skeleton logic: #2957 which changes how fbx graph nodes are collected (affecting its names, which is used by cloth modifier).
- Fixed cloth test suite active call to base's run_test function. It stopped working when its signature was changed here: 182d410#diff-3f5d93b0a76c838893693f19f2eacfe3e67040d445d6463c5c425ef5075cb409
- Renamed nvcloth TestSuite_Active.py to TestSuite_Main.py to be consistent with the other test folders.
- Fixed ModelAsset creator clone function. It was missing to copy the material slots, ultimately causing Material Component to show 0 material slots.
- Fixed crash where the revert overrides menu was not created when checking changes for selected component and selected entities.
Signed-off-by: moraaar moraaar@amazon.com
-Fix a missing QPainter::restore call
-Remove 0px font sizes from our qss, which was just getting ignored by Qt and triggering a warning
Signed-off-by: nvsickle <nvsickle@amazon.com>
* Release build fix for Windows
* Release build fix for Android
* Release build fix for Windows
* Release build fix for Android
* Release build fix for Linux
* Release build fix for Mac
* Release build fix for iOS
Signed-off-by: Steve Pham <spham@amazon.com>
Changes in this commit :
- Added AreDirtyTemplatesPresent() method to PrefabSystemComponentInterface
- Added ConstructSaveLevelDialog() helper method to create the save level dialog
- Added ExecuteSavePrefabsDialog() helper method to create and execute the save prefabs dialog
Signed-off-by: srikappa-amzn <srikappa@amazon.com>
* Add linux equivalents for all the places that enumerate platforms
Signed-off-by: Chris Burel <burelc@amazon.com>
* Fix the AssetFileInfoListComparisonTest fixture to not hardcode the PC platform
Signed-off-by: Chris Burel <burelc@amazon.com>
NOTE: The memory driller is still intact for now to avoid needing to
modify allocators, but the frame/cpu portions of driller and the
standalone executable are now gone.
Signed-off-by: Jeremy Ong <jcong@amazon.com>
* updates to camera tests to support different delta times and some further tidy-up
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* support variable delta time in mouse move test
Signed-off-by: hultonha <hultonha@amazon.co.uk>
This is the initial Terrain Gem. In this PR, it doesn't do anything, but it contains all of the initial code, icons, and build scripts for the gem to compile and build successfully. The follow-up PR will contain the first round of functioning code.
Also, with the creation of the gem, the TerrainSurfaceDataSystemComponent is getting relocated from the SurfaceData Gem to the Terrain Gem. This should have no impact, as that component has provided no active functionality in o3de. (It will start working again with the initial terrain system code in the next PR)
This also adds a couple of null guards to prefab code to prevent AP crashes, and fixed an incorrect service dependency in the VegetationSystemComponent that was exposed by moving the TerrainSurfaceDataSystemComponent.
Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
* fix for drift accumulating in the viewport camera
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* fix typo and update how events are stored
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* respond to PR feedback and fix linux and windows build issues
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* fix failing unit tests in camera input
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* fix for events that should have been consumed by manipulators making their way to the main viewport handler
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* add missing include for SANDBOX_API macro
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* add dependency on Qt::Test for AzToolsFrameworkTestCommon
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* fix order of buttons passed to QMouseEvent
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* potential fix for vtable error on linux
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* potential fix for vtable error on linux again
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* Sever dependency on legacy resource selector host
Audio resource selectors (browse dialogs) no longer need to be
registered with the legacy IResourceSelectorHost system. Set up a new
EBus specifically to handle browse button presses and directly invokes
the dialog.
Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
* Hook up legacy audio control selector to new EBus
Remaining use of legacy audio selectors (trackview) need to be able to
bypass ResourceSelectorHost now.
Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
* Removes ResourceSelectorHost and legacy selectors
This removes various Variable types that were tied to resource
selectors, such as GeomCache, Model, Animation, File. Removes the
ResourceSelectorHost completely. The two things that still appeared to
have selectors in TrackView are Audio Controls and Texture. Fixed the
audio control selector to work via EBus and the Texture selector didn't
seem to work at all, but left it in as it was.
Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
* Make the default audio selector return old value
Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
* Fix some signed/unsigned comparison warnings
Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
* Remove deleted function from Editor Mock
Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
* Change audio selector api to use string_view
Per feedback.
Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
Adds a new ebus for prefab apis and refactored the apis
Removed an empty test level
Auto delete tmp level when teardown tests
Add Base test level in Prefab folder
Removed unused comments
Checked if absolute path as an input of Create Prefab functions
Changed created prefab file path to support all platfroms
Added missing includes
Signed-off-by: chiyteng <chiyteng@amazon.com>
* Update storage of Prefab Dom info to be best effort
Signed-off-by: sconel <sconel@amazon.com>
* Update IssueReporter to Skipped instead of PartialSkip
Signed-off-by: sconel <sconel@amazon.com>
* Address PR feedback
Signed-off-by: sconel <sconel@amazon.com>
* Fix failing Prefab Unit Test that expected default values to be stripped
Signed-off-by: sconel <sconel@amazon.com>
* Minimal TypeInfo header/reduce std interdependencies.
TypeInfoSimple.h is a small header that can replace the use of
TypeInfo.h in some cases.
Signed-off-by: Nemerle <nemerle5+git@gmail.com>
* Windows build fixed
Removed algorithm.h from string_view.h
smoke-test passed
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
* Resotore dynamic_pointer_cast in intrusive_ptr
Requested by reviewer.
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
* Fix CI build
string.h - missed alogorithm.h, since it was removed from string_view
NodeWrapper.h - missing smart_ptr.h
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
Co-authored-by: Nemerle <nemerle5+git@gmail.com>
* add an integration test to validate pick mode crash
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* update to test after review feedback
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* Fixed AzToolsFramework unit tests.
Signed-off-by: moraaar <moraaar@amazon.com>
* Include missing header.
Signed-off-by: moraaar <moraaar@amazon.com>
* Using util's class to generate temp directory, instead of qt.
Signed-off-by: moraaar <moraaar@amazon.com>
* Added empty line
Signed-off-by: moraaar <moraaar@amazon.com>
* Fixed warning in MessageTest fixture that CacheProjectRootFolder was not set
Signed-off-by: moraaar <moraaar@amazon.com>
* Additional checks in CreateDefaultEditorEntity helper function.
Signed-off-by: moraaar <moraaar@amazon.com>
* Updated the AzToolsFrameworkTest logic to set the project cache path
The Project Cache Path and Project Path is set through the CommandLine functionality of the ComponentApplication.
This allows those Project Cache Path and Project Path to be set within the Settings Registry during the ComponentApplication constructor
Removed the explicitly calls to delete the temporary directory and fixed the ScopedTemporaryDirectory class to recursively delete the temporary directory
Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
* Setup correctly @assets@ alias for PlatformAddressedAssetCatalogManagerTest and AssetSeedManagerTest fixtures.
- These 2 test fixtures need to manually set the @asset@ alias to not include the platform at the end (which it does by default), because they are looping over platforms in their setup.
- Also initializing pointers to nullptr, so if setup fail in the future the teardown doesn't crash trying to delete garbage.
Signed-off-by: moraaar <moraaar@amazon.com>
Co-authored-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
* Clear prefab templates on new level creations and loads
Signed-off-by: srikappa-amzn <srikappa@amazon.com>
* Fixed failing prefab unit tests after change to clear templates
Signed-off-by: srikappa-amzn <srikappa@amazon.com>
* Fix a bug in patching templates and improve error messaging
* Fixed incorrect order of function arguments
* Fix build errors regarding c style strings and casting entity ids
Signed-off-by: srikappa-amzn <srikappa@amazon.com>
* Add an Orthogonal Projection option to the Camera Gem
This adds a check-box to opt into an ortho projection along with a half-width parameter to adjust the size of the visible area. Includes some light tweaks to ensure debug rendering looks OK and that we generate a correct camera state for these non-perspective views.
Known issue: while in "Be this camera" mode in the Editor using an ortho projection manipulators aren't working correctly. This appears to be a downstream issue with CameraState consumers not actually checking the ortho flag.
Signed-off-by: nvsickle <nvsickle@amazon.com>
* Fix some typos
Signed-off-by: nvsickle <nvsickle@amazon.com>
* Account for reversed depth buffer
Signed-off-by: nvsickle <nvsickle@amazon.com>
* Clarify depth reversal for MakeOrthographicMatrixRH
Signed-off-by: nvsickle <nvsickle@amazon.com>
Engine improvements/fixes
Fixed behavior that made the editor automated test to be sometimes stuck if lost the focus is lost.
Added support for specifying multiple tests to in batch to the editor, this is achieved by passing --runpythontest with the tests separated by ';'
Added new cmdline argument --project-user-path for overriding the user path. This allows to have multiple editors running writing logs and crash logs in different locations.
Moved responsability of exiting after a test finishes/passes out of ExecuteByFilenameAsTest, callers will use the bool return to know if the test passed.
Editor test batch and parallelization implementation:
Now the external python portion of the editor tests will be specified via test specs which will generate the test. Requiring no code. This is almost a data-driven approach.
Tests can be specified as single tests, parallel, batchable or batchable+parallel
Command line arguments for pytest to override the maximum number of editors, disable parallelization or batching.
Automated tests for testing this new editor testing utility
Signed-off-by: Garcia Ruiz <aljanru@amazon.co.uk>
Co-authored-by: Garcia Ruiz <aljanru@amazon.co.uk>
* Remove dirty entities correctly when prefab entities get destroyed
Signed-off-by: srikappa-amzn <srikappa@amazon.com>
* Remove call to clear dirty entity for single entity delete
Signed-off-by: srikappa-amzn <srikappa@amazon.com>
* Removed couple of asserts because order of operations is not fixed
Signed-off-by: srikappa-amzn <srikappa@amazon.com>