Commit Graph

381 Commits

Author SHA1 Message Date
rgba16f 74f474aae2 Add unit tests for the ViewportScreen ndc <-> worldspace utility functions (#1149)
Add ScreenNdcToWorld function to enable round trip testing.
2021-06-04 18:02:09 -05:00
Tom Hulton-Harrop 05e20803a8 First pass for getting things ready for grid snap button (#1118)
* first pass of change to simplify snapping for snap-to-grid button and fix snapping bug caused by non-uniform scale
2021-06-04 14:32:06 +01:00
cgalvan deb3c5e74a [LYN-2446] Implemented support for duplicating instances. (#1097)
* [LYN-2446] Implemented support for duplicating instances.

* [LYN-2446] Addressed PR feedback.

* [LYN-2446] Addressed additional PR feedback.
2021-06-03 16:20:59 -07:00
Danilo Aimini fda28bb7b2 LYN-1818 | [USE CASE] Reparenting between different prefab instances by drag/drop in the Outliner (#1088)
* Add the last known parent to the prefab undo cache to detect changes in the owning instance.
Still WIP.

* Progress in handling reparenting. Still WIP, need a change in CreateLink that will be addressed in a separate branch and then merged back.

* A few fixes, reparenting now works with entities. Still working on instances.

* Fix assert crashing the Editor because of the arguments being in the wrong order.

* Handle moving the patches when removing and recreating links when reparenting nested instances.

* Rearrange some code to prevent including instance removal in instance update undo node, as it would be redundant and cause errors in some edge cases.

* Reorder instance reparenting to account for correct order of operation during undo/redo

* Fix order of operations to support multiple operations in one edit (reparenting to non-container entities while changing instance)

* Add function to refresh patches on links to allow aliases to be restored correctly on reparenting.

* Removed RefreshEntityPatchOnLink function. Introduced a simpler way of handling porting patches.

* Removing unnecessary code that was left after testing.

* Minor fixes to naming and comments.

* Restore previous error, no longer printing the failed patch.

* Remove unused includes.

* Restore include removed by mistake.

* Simplified patches retrieval by using internal function. Renamed some internal functions and variables to be more accurate.
2021-06-03 14:02:40 -07:00
Mike Balfour d90a3d46a7 Support for nested slice conversions (#1121)
This set of changes enables conversions for singly-nested slices. Multiple nesting hierarchies are only partially supported at this point. Conversion is also significantly more deterministic, which makes it easier to convert single slices without needing to reconvert every slice or level that relies on it as well.
Changes:

- Added version of Instance::AddInstance() that takes in an alias to allow for deterministic aliases
- Added a "SliceConverterEditorEntityContextComponent" that's used to specifically disable entity activation on creation. The disabling is done this way vs adding a new public API, because the disable shouldn't be required in any normal case outside of this tool.
- Disabled more AWS gems for the SliceConverter, as they're unneeded and cause issues if they're around in the tool.
- Added a small null check to the Camera Controller.
- Added the actual support for slice instance conversion. This instantiates the entities, applies the data patches, turns them into a prefab instance, and generates a JSON patch out of the changes.
2021-06-03 15:59:45 -05:00
rgba16f 54fdca353b Fix editor axis gizmo text rendering above gizmo
Add AzToolsFramework utility function to query the display scale for a viewport.
Use new function to fix the text location on the axis gizmo.
2021-06-03 12:54:14 -05:00
srikappa 574563adaf Merge branch 'main' into DetachPrefab 2021-06-02 15:09:40 -07:00
Danilo Aimini 8a7f156e2c LYN-4133 | Prefab Container Transform stores non-default values to template on Create Prefab (#1038)
* Show container transforms, reset container transform to zero before saving a prefab after create.

* Fix order of operations to prevent patching issues

* Reset the entity to the Identity Transform instead of the default constructor to correctly set the scale to 1.0
2021-06-02 14:45:43 -07:00
Hasareej 274e1972f3 Adding a shortcut to hide clusters. (#1071)
Adding the shortcut "U" to hide the TransformModeSelection & SpaceSelection clusters from the viewport.
2021-06-02 15:54:30 +01:00
srikappa 9fd690f004 Changed a function parameter name 2021-06-01 17:03:50 -07:00
srikappa a9d030b454 Merge branch 'main' into DetachPrefab 2021-06-01 11:12:52 -07:00
srikappa e8e9096dda Changed a function name and removed a comment 2021-06-01 11:11:13 -07:00
AMZN-koppersr c0dade8883 Merge branch 'main' into SpawnablePriorityQueue 2021-06-01 09:57:27 -07:00
Mike Balfour 895bbafa9e Fixed CreatePrefab to use correct absolute path (#1044)
The initial CreatePrefab flow was trying to go from absolute -> relative -> absolute path before the file had ever been saved, so the relative -> absolute path conversion generated an error and always produced a project-relative path, even if the initial path was in a gem.  For example, trying to save "c:/o3de/Gems/Camera/Assets/Entity1.prefab" would instead create "c:/o3de/AutomatedTesting/Entity1.prefab".  This change preserves the absolute path throughout the initial creation flow so that the file is saved in the correct location.
2021-06-01 10:50:10 -05:00
michabr aedc270304 Fix path not showing up in asset property control (#1037) 2021-05-28 13:40:08 -07:00
greerdv 2c36d6a19a Merge pull request #1039 from aws-lumberyard-dev/transform-float-scale-3
refactor vector scale in Transform to float scale
2021-05-28 21:20:03 +01:00
sconel 57b961c113 Merge pull request #997 from aws-lumberyard-dev/Spawnable/ScriptCanvas/Integration
Add dynamic spawn node to Script Canvas
2021-05-28 13:09:25 -07:00
Terry Michaels e79c65d454 Clear dirty flag after doing an initial save or save as in Asset Editor (#1033) 2021-05-28 14:28:36 -05:00
chiyteng da0ab84f1c Add helper function to update entity aliases in link patch 2021-05-28 11:42:36 -07:00
chiyteng de4cfdb5d7 Add helper function to update entity aliases in link patch 2021-05-28 11:33:58 -07:00
greerdv 34abf7376e Merge branch 'main' into transform-float-scale-3 2021-05-28 19:14:45 +01:00
chiyteng 984db9c1b4 Remove selection command and update undo batch in DetachPrefab function 2021-05-28 10:56:03 -07:00
sconel 0a32951e7e Merge branch 'main' of https://github.com/aws-lumberyard/o3de into Spawnable/ScriptCanvas/Integration 2021-05-28 10:48:44 -07:00
Terry Michaels e73541c751 Allow selected click to edit entity names in the outliner (#1028) 2021-05-28 12:23:49 -05:00
greerdv 7f8bd83d4a remove SetScale and CreateScale vector scale functions from Transform 2021-05-28 17:54:30 +01:00
greerdv faa2d4ea6a fix initialization of uniform scale in editor transform component 2021-05-28 16:36:48 +01:00
greerdv 8d0051bae9 update editor transform component to uniform scale 2021-05-28 16:25:58 +01:00
greerdv 4442ca5485 remove registration of custom transform scale UI handler 2021-05-28 16:16:21 +01:00
greerdv 1a0152c063 remove custom transform scale UI handler 2021-05-28 16:06:05 +01:00
greerdv fc0a720468 add version converter for editor transform to handle migration to uniform scale 2021-05-28 16:01:03 +01:00
Mike Balfour 96905a26d7 Add support for AP-compliant relative paths (#998)
The method "PrefabLoader::GetRelativePathToProject" has been changed to "PrefabLoader::GenerateRelativePath", and reworked to get a correct relative path.  GetFullPath has also been modified to get correct relative paths too.  This requires an Asset Processor connection - if one isn't available (like during unit tests), the methods have fallback logic to produce project-relative paths.

With this change, SliceConverter can't use SaveTemplate() to save the file any more, because GetFullPath now expects to find an existing path, which doesn't work for not-yet-created files.  Instead, it now has to use the same technique as the Editor and call SaveTemplateToString then save the string out as a file.
2021-05-28 09:57:17 -05:00
greerdv d73566565e remove most vector scale functions from transform bus 2021-05-28 14:18:26 +01:00
greerdv e1b9c4f22e remove some vector scale functions from Transform 2021-05-28 13:44:12 +01:00
srikappa 55e1da64bb Renamed a function and improved comments 2021-05-28 02:29:09 -07:00
srikappa be6cee806d Show detach prefab only when a single instance is selected 2021-05-28 02:14:28 -07:00
srikappa dc4a15628f Remove unused GetNestedInstance method in Prefab Instance class 2021-05-28 00:43:31 -07:00
srikappa 57913d8378 A couple of bug fixes 2021-05-27 18:19:28 -07:00
chiyteng c21a59af50 Remove print dom for debug previously 2021-05-27 17:19:32 -07:00
AMZN-koppersr c45697fd51 Fixed unit test compile error with spawnables 2021-05-27 16:57:15 -07:00
Nicholas Van Sickle 5e87250f67 Fix viewport icon rendering on high DPI devices (#1006)
* Clarify ViewportWorldToScreen being in widget space and add DeviceScalingFactor

* -Fix viewport icons being draw wrong on high DPI displays
-Fix loading viewport icons from absolute paths, which

* Address review feedback, fix build
2021-05-27 16:31:30 -07:00
AMZN-koppersr 40dbf22b00 Merge branch 'main' into SpawnablePriorityQueue 2021-05-27 16:16:10 -07:00
sconel 933f012def Code cleanup, removed pragma optimize macro 2021-05-27 10:50:56 -07:00
Tom Hulton-Harrop b4ab2032e8 Fix for viewport ui crash and small refactor (#992) 2021-05-27 18:03:01 +01:00
greerdv 066de9d365 Merge pull request #987 from aws-lumberyard-dev/manipulator-transform-scale
update manipulators to avoid using vector scale Transform functions
2021-05-27 17:55:37 +01:00
Terry Michaels fd8fe8b939 Fixed newly created level having the right source field set (#986)
* Fixed an issue with the source field a newly created level not being set correctly
2021-05-27 11:40:16 -05:00
greerdv f286057046 update manipulators to avoid using vector scale Transform functions 2021-05-27 16:05:18 +01:00
greerdv 34c59a81b8 update rigid body to use non-deprecated function and remove many deprecated transform bus functions 2021-05-27 10:51:36 +01:00
Tom Hulton-Harrop 4205a69106 Allow ComponentAdapter (and related types) to work with EntityComponentIdPairs as well as EntityIds (#920)
* provide the ability for component adapters to support multiple components per entity

* add missing explicit keywords

* updates following review feedback - update how template logic works

* small updats (fix typo, remove redundant includes)

* add missing this->

* naming change, common -> controller

* add [[maybe_unused]]
2021-05-27 09:34:52 +01:00
srikappa 053e273b97 Clear dirty entities at the end of InstantiatePrefab logic 2021-05-26 18:24:49 -07:00
Terry Michaels 9b1be43367 Renamed osx_gl to mac and es3 to android for cache folders (#949) 2021-05-26 19:17:17 -05:00