Commit Graph

1118 Commits

Author SHA1 Message Date
Esteban Papp 4b3d0d1054 LYN-4327 [SDK] External Gem's aren't added to the project solution when using SDK (#1191)
* should pickup the external directories registered by the project

* Add support for AzTest and AzTestRunner in the SDK

* missing IMPORT_LIB

* Moved where .Assets targets get generated so they are visible in the SDK

* generate the Directory.Build.props in the right path

* excluding target on platforms that dont support it
2021-06-08 14:01:50 -07:00
Danilo Aimini 80f62d0523 LYN-3708 | Optimize Prefab instance propagation to stabilize UX (#700)
* Add instanceToIgnore to calls leading to instances being added to the queue for propagation.

* Change PrefabUndoEntityUpdate to make it so that the instance triggering the prefab template change is not reloaded on propagation, since it will already be up to date due to the way we generated the patch to begin with.

* Add FindPrefabDomValue utility function for paths

* Expose the level root prefab template id in the Prefab EOS Interface

* Fix Instance Alias Path generation to work with the new FindValueInPrefabDom function

* Stop reloading ancestors on propagation, and fix instance reloading so that the level dom is used (and overrides are preserved)

* Remove commented out code, refactor FindPrefabDomValue for paths (was handling an edge case incorrectly, and it's not even triggered)

* Fix issue with PathView reference - with PathView already being a reference, this resulted in a copy and triggered a warning during automated review builds.

* Additional fix to the build warning, remove redundant error message

* Revert changes to Instance::GetAbsoluteInstanceAliasPath(), as they were impacting serialization.

* Remove the dependency to the level root prefab template in the propagation code, climb up the hierarchy instead. This allows tests to work despite not using the EOS properly.
Also use PrefabDomPaths to retrieve the instance dom from the root dom instead of iterating.

* Remove now unused PrefabDomUtils function, extend optimization to link updates.

* Trigger a full instance propagation to correctly refresh alias references.
This is an issue in the test because some operations are called from the backend API and will not trigger propagation properly. Tests will soon be rewritten to more properly represent frontend workflows.

* Fixes lingering issues with propagation:
- Restores code that fixes the selection if entityIds have changed;
- Fixes Do() function on link update. Prefab containers will propagate correctly while still being stable during editing.

* Remove GetRootPrefabInstanceTemplateId (no longer necessary after the code has been rewritten)

* Fix optimization code to account for instances being removed and propagation being run out of order in Create Prefab undo.

* Renamed variable, added comments for clarity.

* Restore asserts on instance not being found; Rename Do to Redo for clarity; Add comments.

* Fixed incomplete comment.
2021-06-08 10:44:20 -07:00
amzn-sean 47e5c72f2e fixed missing methods in SC from Trigger and Collision events (#1185) 2021-06-08 18:20:34 +01:00
Danilo Aimini 2d1e47793d Move Duplicate menu items and shortcuts out of the Prefab Wip flag
Make duplicate prefab workflows available by default in Prefab mode.
2021-06-08 10:06:25 -07:00
Terry Michaels 0fcd6e84ec Added mechanism for viewpanes to request buttons on the main toolbar (#1189) 2021-06-08 12:02:02 -05:00
Alex Peterson 7ca7ad9b72 Fix missing user_tags exception and configure gems button 2021-06-07 19:50:40 -07:00
Terry Michaels 593b679fa3 Main toolbar consolidation and cleanup (#1167)
* Moving menu options around

* Consolidation and moving of toolbar functioanlity

* Fixed non-unity build missing header

* Updated camera icon to the correct one

* Addressed review feedback

* Addressed review feedback

* Moved icons to new folder structure/naming
2021-06-07 18:11:56 -05:00
Esteban Papp 36cb0f6d40 SPEC-7178 Removal of precompiled cpp files (#1171)
* SPEC-7178  Removal of precompiled cpp files

* Missing files...
2021-06-07 15:59:58 -07:00
amzn-mgwynn 38865c95e2 Merge pull request #1162 from aws-lumberyard-dev/Prism/gem-db
Adding python bindings for modifying project properties
2021-06-07 16:59:10 -04:00
mgwynn 1900a42203 remove const ref from iterator for python object conversion since pybind only returns copies and produces a clang error 2021-06-07 15:43:47 -04:00
mgwynn 01b200ad42 removing unused define 2021-06-07 14:19:48 -04:00
mgwynn 6d6f8413c8 Incorporating review comments. Some parameter modifications. Some cli edge case handling. Remove remove_tag member from project info 2021-06-07 14:14:32 -04:00
Nicholas Van Sickle 9e3d472700 Switch EditorContextMenu back to using popup instead of exec (#1158)
Switch EditorContextMenu back to using popup instead of exec

The switch to exec was a deliberate change, but upon further testing with the latest version of our camera input controllers (both the Legacy and Modern variants) it is no longer necessary to call exec, and doing so can cause a bug in which the cursor is still hidden when the context menu appears.
2021-06-07 09:21:10 -07:00
jackalbe 1a6b6d5bc0 {LYN-4230} Fixed loading *.pak files in Release builds (#1127)
* {LYN-4230} Fixed loading *.pak files in Release builds

* Helios - Release mode should load all *.pak files
* Tests: made a separate installation folder with a reduced "engine.pak" and a full "game.pak" which loads in release

* added unit test to regress the bug fix
2021-06-07 09:04:37 -05:00
Tom Hulton-Harrop cf8a6761bf Formatting-only change - Update Manipulator and Viewport AzToolsFramework files (#1143)
* formatting changes to AzToolsFramework viewport related types + API comment style updates

* minor format change - include ordering

* improve formatting by moving comment

* fix compile error and switch to use AZ_Printf

* small polish changes after review feedback
2021-06-07 14:50:49 +01:00
Hasareej 5b940e8ed6 Viewport Ui Cluster Locked State Overlay (#1139)
* Viewport Ui Cluster Locked State Overlay

* PR feedback changes.
2021-06-07 13:32:13 +01:00
Alex Peterson aeaf1bcdbe Fix engine settings not populating or saving
* Allow multiple settings to be registered at once
* Old manifests versions may not have default_third_party_folder
2021-06-04 21:29:36 -07:00
amzn-hdoke bf29b27937 Add AWSAttribution feature (#1164)
* LYN-3601: Provide skeleton classes for AWS Attribution (#31)

Provide skeleton classes for AWS Attribution, along with some basic unit tests

* Add AWS Attribution UI and settings (#56)

* Adding AWS Attributions UX and corresponding editor preference s setting

* Fix serialized field description

* Fixed update frequency to be  a day

* Handling editor startup with default values for AWSAttribution

* Add missing header and remove AWSCoreSystemComponentMock fron test

* Generate and post AWSAttribution metric (#69)

* Adding AWS Attribution Api service job

* Adding support for config endpoint override

* Update Api endpoint formatting, fix default region

* Remove extra header

* Fixes for link issues

* Fix Unittest namespace

* Instantiating AWSAttributionSystemComponent in AWS.Editor module

* Update AttributionMetric with engine version and AWS enabled gems (#77)

* Update AttributionMetric with engine version and AWS enabled gems

* Fix warnings

* Undoing accidental change

* Saving level PrefabLevel_OpensLevelWithEntities

* Remove overriding editorprefrences.setreg

* Revert "Saving level PrefabLevel_OpensLevelWithEntities"

This reverts commit 529af70c55ece70fc6bc29ceb83bef60413713a3.

* Move AWS preferences to its own temp settings file

* Undo accidental file add

* Add missing string params in warning messages

Co-authored-by: Pip Potter <61438964+lmbr-pip@users.noreply.github.com>
2021-06-04 20:48:35 -07:00
amzn-mgwynn ffdce2ef7f Merge branch 'main' into Prism/gem-db 2021-06-04 23:19:47 -04:00
mgwynn d2f8e49037 resolving merge conflict due to variable name change from main 2021-06-04 23:16:25 -04:00
mgwynn 155271a0ee Fixed data type changed by mistake for project info image path 2021-06-04 23:07:36 -04:00
mgwynn 7984f82e48 Bing project_properties CLI to updateProject method. Update project info struct.
Update project properties cli to support lists for tags. Minor adjustments to support
changes.
2021-06-04 23:03:17 -04:00
AMZN-nggieber 3b60bcc0f1 Project Manager Build Project from Projects Page (#1142)
* Added loading bar mode to project button

* Added ProjectBuilder files

* commmit current progress for project building

* Push current project building work

* Full build commands built out and message boxes for lots of situation

* Replaced defaultProjectImage placeholder

* Added installed cmake path to builder process env PATH
2021-06-04 18:41:30 -07:00
lumberyard-employee-dm 77f0d983c8 Mac SystemFile_Apple.h build fix (#1159) 2021-06-04 19:34:28 -05:00
mgwynn accd473ff5 Adding python bindings for modifying project properties 2021-06-04 20:19:38 -04:00
Alex Peterson 9b17754278 Project Template details and preview changes 2021-06-04 16:14:25 -07:00
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
AMZN-koppersr 7613797810 Merge pull request #1126 from aws-lumberyard-dev/SpawnableEntityIdMapping
Spawnable entity id mapping
2021-06-04 15:15:46 -07:00
Benjamin Jillich 8a079da914 GemCatalog: Gem cart widget and overlay window
* [LYN-4174] Added icons for gem catalog summary cart

* [LYN-4174] Gem Catalog: Text eliding for too long gem names and creators

* [LYN-4174] Gem catalog: Resetting filters when re-initializing for another project

* [LYN-4174] Gem Catalog: Fixed a bug with filters being applied/remembered after leaving gem catalog and coming back editing another project

* [LYN-4174] GemCatalog: Gem cart widget and overlay window

* Added cart button with dynamic label to display the number of gems to be enabled/disabled and a arrow down button to indicate some sort of pop-up/overlay window will appear on click.
* Overlay gem tags update dynamically while the dialog is open based on the gem model.
* Moved some styling from C++ to the style sheet.
2021-06-04 15:04:26 -07:00
AMZN-koppersr f7cbc1cbba Merge pull request #1152 from aws-lumberyard-dev/SpawnableDespawnAllEntitiesUnitTestFix
Disabled writing UserSettings.xml in Spawnable tests.
2021-06-04 15:03:03 -07:00
Esteban Papp 50d6e36ccd Bug and improvements to Editor/AP debugging settings (#1146) 2021-06-04 14:36:46 -07:00
AMZN-koppersr 4eb5b3554e Merge branch 'main' into SpawnableEntityIdMapping 2021-06-04 14:00:06 -07:00
AMZN-koppersr 40d90c49a3 Disabled writing UserSettings.xml in Spawnable tests. 2021-06-04 13:44:07 -07:00
AMZN-koppersr febf53671e Addressed PR feedback. 2021-06-04 11:09:44 -07:00
Esteban Papp 76a6df341b SPEC-2513 Fixes to enable w4457 2021-06-04 10:51:47 -07:00
AMZN-koppersr ce7b81e2e7 Merge branch 'main' into SpawnableEntityIdMapping 2021-06-04 10:11:47 -07: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
Alex Peterson f20ae8345a Add Open Project folder menu item 2021-06-03 21:58:46 -07:00
lumberyard-employee-dm 4a1d713227 Fix recursive attempts to open the log file in the GameLauncher (#1114)
* Fix recursive attempts to open the log file in the GameLauncher

The AzFramework Application has been updated to default the @user@ and
@log@ aliases to the <engine-root>/user and <engine-root>/user/log
folder respectively if a project isn't set.

Fixed the SystemFile class to support negative offsets if Seek() as per
standard seek function such as fseek

Updated the CrySystem CLog class to use SystemFile instead of FileIOBase
to avoid any asserts that would cause CLog::OpenFile to be recursively
called infinitely

* Removing unused Force Closed variable

* AZ::IO::SystemFile build fixes for Unix platforms. Added a copy constructor for LUAEditorContextInterface.h to fix the LuaEditor build

* Adding missing includes to the WindowsAPI and Android SystemFile headers
2021-06-03 22:36:34 -05:00
Nicholas Van Sickle 30eedc1c55 Avoid more sources of camera update re-entrancy that can lead to stack overflow (#1136) 2021-06-03 20:09:15 -07:00
Nicholas Van Sickle f39460e617 Fix rare re-entrancy issue with CCryEditApp::IdleProcessing (#1134)
This issue manifested in a crash in rare circumstances when the Editor lost and gained focus while a modal dialog was active. After investigation, it was discovered that native event processing can lead to IdleProcessing being called again from the main thread while idle processing is still happening. As this is unintentional and generally undesirable, we now guard against this within the IdleProcessing method.
2021-06-03 20:08:51 -07:00
Scott Romero 64872e024e [main] add 3rd party to engine registration
Merge pull request #1131 from aws-lumberyard-dev/default_3rdparty
2021-06-03 19:32:59 -07:00
scottr 9e7f8e45eb [default_3rdparty] fixed typo 2021-06-03 18:23:54 -07:00
scottr 08a2e50ee3 [default_3rdparty] missed updating a call to register 2021-06-03 16:28:15 -07:00
scottr d30fd8b1dd Merge branch 'main' into default_3rdparty 2021-06-03 16:24:55 -07: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
lumberyard-employee-dm 816d05ef2d Updating manifest.py template query functions (#1113)
* Updating manifest.py template query functions
The get_project_templates, get_gem_templates and get_generic_templates
methods have been renamed to indicate that the methods return the
templates that can be used in a create-project, create-gem and
create-from-template command of the engine_template.py

Updated the print_registration.py script to support outputing project
specific gems and templates.
Add a unit test script for the manifest.py script.
Added unit test to validate the new functions:
`get_templates_for_project_creation`
`get_templates_for_gem_creation`
`get_templates_for_generic_creation`

* Implementing the project print registration methods

Added implementations of the project print registration methods and tested them locally
Removed implementations of the download print registration methods, since they have not went through app-sec review.

* Renaming get_restricted_data to get_restricted_json_data

Fixed the get_registered method in manifest.py when looking up projects

* Updated the print_manifest_json_data calls to return the result
2021-06-03 18:16:22 -05:00
scottr 85e6d06c2c [default_3rdparty] add 3rd party to engine registration + specific path registration fixes 2021-06-03 16:09:10 -07:00
carlitosan 96572888a9 Merge pull request #1125 from aws-lumberyard-dev/carlitosan-beta-fixes
Demo support updates and fixes to be integrated into main
2021-06-03 15:24:52 -07:00
Eric Phister 3634277317 Project dll is not loaded by the AP when opened from the launcher (#1123)
* Fixes locating the project dll when using SDK

SDK engine usage has project dll in the project build path, but
searching for module filepaths for loading would have a passing
SystemFile::Exists check but no full filepath was amended to the module.
This causes the module to fail to load.

* Fix locating project module for UnixLike platforms

Fixes the issue with project-centric workflows running GameLauncher, and
it opens AP which can't find the project dynamic module.  From AP's
perspective, the project module is not in the executable directory,
which is in engine bin.  The SystemFile::Exists check is true on the
file because it uses the 'cwd'.  In that situation, an absolute path
must be obtained for the module to be loaded.

* Add missing header to fix UnixLike builds

* Applies a suggested change from PR

Use operator-> on the AZStd::optional

* Add semicolon to a class macro line

Prevent auto formatting indenting the following line.
2021-06-03 16:15:46 -05:00