Commit Graph

667 Commits (9b14d49f87c27610c86df83acb6b94e5a014b44c)

Author SHA1 Message Date
Chris Galvan e924ed0b86 Merged stabilization/2106 to development; Resolved merge conflicts
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
4 years ago
Benjamin Jillich c9ff634080
Aftermath for PR-1956 and PR-2025 (#2035)
Signed-off-by: Benjamin Jillich <jillich@amazon.com>
4 years ago
AMZN-Phil b92848ed88 Move the show log text to be part of building label.
Signed-off-by: AMZN-Phil <pconroy@amazon.com>
5 years ago
Chris Galvan b65c972392
Merge pull request #2007 from aws-lumberyard-dev/daimini/NewsBuilder/removal
Remove NewsBuilder project from Editor solution.
5 years ago
jackalbe 7ce6eec39e
{SPEC-7645} Disabling FileWatcherUnitTests for Linux (#2012)
* Disabling FileWatcherUnitTests for Linux

Signed-off-by: jackalbe <23512001+jackalbe@users.noreply.github.com>

* added comments to explain the update

Signed-off-by: jackalbe <23512001+jackalbe@users.noreply.github.com>
5 years ago
lumberyard-employee-dm 6ebf3a93d1
Added protection in the register python script queries of the default folders against a non-existent key causing a KeyError in python (#1946)
Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
5 years ago
evanchia a9c3bbe0b0 Merge branch 'development' into aztestrunner_retry_command 5 years ago
Benjamin Jillich 76cef6e91f
Project Manager: Showing a progress bar when copying projects (#2025)
Signed-off-by: Benjamin Jillich <jillich@amazon.com>
5 years ago
AMZN-Phil 443e8071e7 Show link to log while building for currently building build.
Signed-off-by: AMZN-Phil <pconroy@amazon.com>
5 years ago
Benjamin Jillich 595ac3fb08
Project Manager: Feature tag filtering for header of the gem catalog (#1956)
* [LYN-4440] Added new feature tag remove icon

Signed-off-by: Benjamin Jillich <jillich@amazon.com>

* [LYN-4440] Added new gem filter tag widget

Signed-off-by: Benjamin Jillich <jillich@amazon.com>

* [LYN-4440] Added feature tag widget used for showing the filtered tags in the gem catalog header

Signed-off-by: Benjamin Jillich <jillich@amazon.com>

* [LYN-4440] Added filter tag widget container to the gem catalog header and connected it to the gem model

Signed-off-by: Benjamin Jillich <jillich@amazon.com>

* [LYN-4440] Syncing the feature tag filters on the left panel with the tag widgets in the header and styling the item delegates

Signed-off-by: Benjamin Jillich <jillich@amazon.com>
5 years ago
AMZN-nggieber 5b44ea9b9a
Project Manager: Added Per Project Template Previews and Icon Overlays (#1994)
* Project Manager: Added Per Project Template Previews and Icon Overlays

Signed-off-by: nggieber <nggieber@amazon.com>

* Remove template icon overlays and bake them into template preview

Signed-off-by: nggieber <nggieber@amazon.com>

* Remove unused variables and headers

Signed-off-by: nggieber <nggieber@amazon.com>
5 years ago
Danilo Aimini 242b4923ae Remove NewsBuilder project from Editor solution, as it is no longer used.
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
5 years ago
evanchia fd6a5134ec Adding C++ retry command
Signed-off-by: evanchia <evanchia@amazon.com>
5 years ago
jonawals 06c65be40a
Add handling for integrity failures when applying and resolving change lists (#1993)
* ApplyAndResoveChangeList integration failure policy

Signed-off-by: John <jonawals@amazon.com>

* Default integrity failure policy for TIAF sequences

Signed-off-by: John <jonawals@amazon.com>

* Fix superfluous quotation marks

Signed-off-by: John <jonawals@amazon.com>

* Remove superfluous args parse

Signed-off-by: John <jonawals@amazon.com>

* Fix broken storage of last commit hash

Signed-off-by: John <jonawals@amazon.com>
5 years ago
lumberyard-employee-dm 02922806a5
Updated gem.json for all top-level Gems. (#1715) (#1917)
* Updated gem.json for all top-level Gems. All the top level gems now have identical gem.json formats based on the DefautlGem template gem.json. Two additional fields have been added, a type: field and a requirements: field. These fields are for display in Project Mananger. All gem.json files have a default requirements: value of None. Devs are responsible for providing requirements. Gem descriptions and tags have been signed off by developers.

Signed-off-by: Cronin <mikecro@amazon.com>

* Fixed minor formatting issues with RADTelemetry gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to QtForPython gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to the Twitch gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to AWSCore gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to the AtomTressFX gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to the end of the AudioEngineWwise gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to the end of the CertificateManager gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Removing extra whitespace in summary of CrashReporting gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to the end of the CustomAssetExample gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Removing extra whitespace in editorPythonBindings gem summary

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to the end of the ScriptedEntityTweener gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to the end of the Gestures gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Removing extra whitetspace in the summary of the GameStateSamples gem

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to the end of the ExpressionEvaluation gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated the ProjectManager PythonBindings.cpp code to reference the
newer fields in the gem.json files

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updating the Gem and Project templates gem.json files to include the
"type" and the "requirements" field.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated the default "requirments" field value to be empty string instead
of "None"

This works better with the ProjectManager GemInfoFromPath function.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Correcting "summary" field name

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Added the requirements text to the AudioEngineWwise Gem

This gem requires downloading the Wwise 3rdParty library from AudioKinetic's website

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

Co-authored-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

Co-authored-by: Mike Cronin <58789750+micronAMZN@users.noreply.github.com>
5 years ago
hultonha 9bfb90a513 Merge branch 'stabilization/2106' into hultonha/gitflow_210707_o3de
Signed-off-by: hultonha <hultonha@amazon.co.uk>
5 years ago
Benjamin Jillich 2ab2503337
Revert "[MeshOptimizer] Determine the original vertex index based on the position (#1562)" (#1902)
This reverts commit ef1f95f1d0.

Signed-off-by: Benjamin Jillich <jillich@amazon.com>
5 years ago
hultonha 707d153a87 Merge branch 'stabilization/2106' into hultonha/gitflow_210706
Signed-off-by: hultonha <hultonha@amazon.co.uk>
5 years ago
Chris Burel ef1f95f1d0
[MeshOptimizer] Determine the original vertex index based on the position (#1562)
* Determine the original vertex index based on the position

The Assimp library does not expose the FBX control point indices. This
change causes vertices that are close enough in their position to be
considered as coming from the same control point. This allows the mesh
optimizer to consider vertices with the same control point index (or
"original vertex index" as it is called in the code) for deduplication.

Signed-off-by: Chris Burel <burelc@amazon.com>

* Use a filter view instead of reimplementing a filter view

Signed-off-by: Chris Burel <burelc@amazon.com>

* Don't attempt to weld similar vertices if there's blendshapes

Signed-off-by: Chris Burel <burelc@amazon.com>

* Add test for the mesh optimizer's ability to weld nearby vertices

Signed-off-by: Chris Burel <burelc@amazon.com>

* Add logging call to show mesh optimizer effect on vertex count

Signed-off-by: Chris Burel <burelc@amazon.com>

* Use a bunch of temporaries in order to make `position` `const`

Signed-off-by: Chris Burel <burelc@amazon.com>
5 years ago
hultonha 1b8de9fe9a Merge branch 'stabilization/2106' into hultonha/gitflow_210706 5 years ago
Mike Balfour 71c6b3e506
Refresh cached transforms before saving. (#1858)
If the prefab template saves default values for a cached transform, but *shouldn't* have default values, it will get patch application errors at runtime due to missing cached transform fields.

Signed-off-by: mbalfour <mbalfour@amazon.com>
5 years ago
hultonha 2ea9bfb144 merge stabilization/2106 into development
Signed-off-by: hultonha <hultonha@amazon.co.uk>
5 years ago
Benjamin Jillich 049469463e
[LYN-4439] Added tags to gem item delegate (#1853)
* Added new helper function to draw the feature tags below the summary for each gem item.
* In case no feature tags belong to a gem, the available space will be used by the summary.

Signed-off-by: Benjamin Jillich <jillich@amazon.com>
5 years ago
John c5a4fd382d Address PR comments 5 years ago
John f86708a812 Fix run payload checking logic 5 years ago
John 2003d81aba Fix missing log call site 5 years ago
John b63468d95e Fix API comments 5 years ago
John 0d7d507889 Fix instrumented non-gtests treated as failures 5 years ago
AMZN-Phil 4575de137e
Merge pull request #1844 from aws-lumberyard-dev/LYN-4776-gitfix
Open editor button and new project and failed warnings.
5 years ago
lumberyard-employee-dm d73a98aa2f
Added detection of gems which are not directly under an external subdirectory root (#1841)
* Added proper detection of the list of Gems in the Project Templates
enabled_gems.cmake file

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Added a CMake alias target for the Atom Gem and the AtomLyIntegration

Both of those targets just aliases the Atom_AtomBridge gem
Therefore they turn on Atom

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Replacing the Atom_AtomBridge gem in the project template with the Atom gem

The Atom gem is just an alias to the Atom_AtomBridge gem

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated the manifest.py gem gathering logic to recurse through the external subdirecotories locating gem.json files to discover all gems in a subdirectory

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
5 years ago
AMZN-nggieber d4e4ebc2a7
Change Standard Project Template to Default and Change Open 3D Foundation to Open 3D Engine in gem catalog (#1842)
Made Standard Template Always Show First and Default Selection
    Changed Open 3D Foundation to Open 3D Engine in Gem Catalog and setup detection of Origin based on gem creator
5 years ago
AMZN-Phil d0dd80099c Open editor button and new project and failed warnings.
Signed-off-by: AMZN-Phil <pconroy@amazon.com>
5 years ago
jackalbe 81e39df248
{LYN-4456} FIX: assign branch token for LegacyTestAdapter (#1833)
* fixes AssetProcessorManagerUnitTests unexpectedly fails due to writing out the branch token
* instead, the branch token is calculated ahead of time and added to the settings registry

Tests: --gtest_filter=Test/LegacyTestAdapter.*
5 years ago
Chris Galvan f47e71da36 Merged conflicts from pulling down latest development
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
5 years ago
Chris Galvan 40f9761f86 Fixed more copyright header issues caused by script replacement
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
5 years ago
Chris Galvan b9e06e70d9 Fixed copyright header issues per new validator
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
5 years ago
Mike Cronin e9dd032a75
Updated gem.json for all top-level Gems. (#1715)
* Updated gem.json for all top-level Gems. All the top level gems now have identical gem.json formats based on the DefautlGem template gem.json. Two additional fields have been added, a type: field and a requirements: field. These fields are for display in Project Mananger. All gem.json files have a default requirements: value of None. Devs are responsible for providing requirements. Gem descriptions and tags have been signed off by developers.

Signed-off-by: Cronin <mikecro@amazon.com>

* Fixed minor formatting issues with RADTelemetry gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to QtForPython gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to the Twitch gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to AWSCore gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to the AtomTressFX gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to the end of the AudioEngineWwise gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to the end of the CertificateManager gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Removing extra whitespace in summary of CrashReporting gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to the end of the CustomAssetExample gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Removing extra whitespace in editorPythonBindings gem summary

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to the end of the ScriptedEntityTweener gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to the end of the Gestures gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Removing extra whitetspace in the summary of the GameStateSamples gem

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to the end of the ExpressionEvaluation gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated the ProjectManager PythonBindings.cpp code to reference the
newer fields in the gem.json files

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updating the Gem and Project templates gem.json files to include the
"type" and the "requirements" field.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated the default "requirments" field value to be empty string instead
of "None"

This works better with the ProjectManager GemInfoFromPath function.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Correcting "summary" field name

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Added the requirements text to the AudioEngineWwise Gem

This gem requires downloading the Wwise 3rdParty library from AudioKinetic's website

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

Co-authored-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
5 years ago
Chris Galvan d7574777a8 Resolved merge conflicts
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
5 years ago
AMZN-Phil dfef909b51
Merge pull request #1610 from aws-lumberyard-dev/LYN-4507
Remove deleted projects from project manager
5 years ago
amzn-victor c845517ee7
Merge pull request #1729 from aws-lumberyard-dev/Helios_LYN-4548-FixAPNames
[LYN-4548] Changed AP window title and popup message titles
5 years ago
Benjamin Jillich 4c3e27f3ca
Merge pull request #1759 from aws-lumberyard-dev/jillich/prism/LYN-4437
[LYN-4437] Replaced the background images and added a semi-transparent overlay for the Project Manager

Signed-off-by: Benjamin Jillich <jillich@amazon.com>
5 years ago
AMZN-Phil b3fd63a0f3
Merge branch 'stabilization/2106' into LYN-4507 5 years ago
Benjamin Jillich 2a42e7a012
[LYN-4393] As a dev I want to Enable Gems in O3DE.exe with Keyboard (#1760)
Enabling and disabling the selected gem is now possible by pressing the space bar.

Signed-off-by: Benjamin Jillich <jillich@amazon.com>
5 years ago
AMZN-stankowi 0c43493e29
FBX to Scene part 3, tangent generation rule FBX -> SourceScene (#1747)
* Tangent space FromFBX -> FromSourceScene

Signed-off-by: stankowi <4838196+AMZN-stankowi@users.noreply.github.com>
5 years ago
Benjamin Jillich 5f9c066626 [LYN-4437] Added 30% opaque overlay to the background image of the Project Manager
* 30% opaque overlay image to darken down the colors and increase usability and accessibility.
* Some code cleaning.

Signed-off-by: Benjamin Jillich <jillich@amazon.com>
5 years ago
Aaron Ruiz Mora 6459375b4e
Fixed compilation error in release configuration (#1757)
Signed-off-by: moraaar <moraaar@amazon.com>
5 years ago
Benjamin Jillich 4a3772d96a [LYN-4437] Replaced the background images for the Project Manager
* Added the two new background images.
* Background is now dynamically changing based on whether the user opens the PM the first time or has already created a project.

Signed-off-by: Benjamin Jillich <jillich@amazon.com>
5 years ago
AMZN-nggieber 9758aea3d6
Project Manager Can Cancel Project Builds (#1694)
* Fixed misc building and project screen bugs, added ability to cancel active builds and queued builds

* Cancelling in-progress cmake build working

Signed-off-by: nggieber <nggieber@amazon.com>
5 years ago
AMZN-nggieber e6cb13f14f
Made intial startup screen text more exciting! (#1743) 5 years ago
pconroy ae6a424064 Make remove_invalid_o3de_projects take a path and return a value
Signed-off-by: pconroy <pconroy@amazon.com>
5 years ago
pconroy e0c3d15d5a Remove deleted projects from project manager
Signed-off-by: pconroy <pconroy@amazon.com>
5 years ago
AMZN-stankowi 73522e90c9
FBX -> Scene, part 2. Code changes, file renames (#1704)
* First pass FBX -> Scene File conversion.
This is the simple pass, minimizing code changes and focused on comments.

Signed-off-by: stankowi <4838196+AMZN-stankowi@users.noreply.github.com>

* Step 1 of part 2 of the FBX -> Scene rename

Signed-off-by: stankowi <4838196+AMZN-stankowi@users.noreply.github.com>

* Renaming FbxSceneBuilder folder to SceneBuilder

Signed-off-by: stankowi <4838196+AMZN-stankowi@users.noreply.github.com>

* Renamed files

Signed-off-by: stankowi <4838196+AMZN-stankowi@users.noreply.github.com>

* More FBX -> Scene

Signed-off-by: stankowi <4838196+AMZN-stankowi@users.noreply.github.com>
5 years ago
amzn-mike 8f7a0a0dbd
Merge pull request #1656 from aws-lumberyard-dev/Helios_LYN-4880-IncorrectBoneNodes
[LYN-4880] Fix incorrect detection of bone nodes
5 years ago
Mike Balfour d34d088191
Miscellaneous prefab/converter bugfixes to support TrackView (#1701)
This has a small bundle of bugfixes and improvements all based around improving prefab TrackView support:

* JsonMerger - improved the error message when patch remove operations fail to make the specific failure more obvious
Instance - swapped the order of destroying entities vs clearing the lookup tables so that lookups still produce valid results during destruction. (This could happen while creating undo caches)
* InstanceEntityIdMapper - in the case where an id isn't found, it now returns an invalid id instead of an "attempted-valid" one that still generally turned out to be not-valid
* PrefabUndo - downgraded a potential crash to an error message if for some reason the patch contains changes to an entity that doesn't currently have an alias. (This case can be caused occasionally by other bugs and error conditions)
* EditorSequenceComponent - downgraded a potential crash to an assert for the times when it tries to remove components, fails, but thinks it succeeded. (This case can currently be caused by using Maestro with Prefabs enabled)
* EditorSequenceAgentComponent - added an undo cache refresh whenever the component deletes itself, so that deleting itself during an EditorSequenceComponent destruction chain of events leaves the undo cache in the correct state.
* SliceConverter - fixed the conversion of entity references in top-level slice instance entities that refer down to nested slice entities. There was a chicken-and-egg problem in terms of which entities need to be created first to make the references and the prefab patching & serialization happy. This was worked around by creating placeholder top-level entities, then the nested slice entities, then replacing the top-level entities with the fully-realized ones.

Specific changes:
* Added more informative error message.

Signed-off-by: mbalfour <mbalfour@amazon.com>
(cherry picked from commit 672608a6c833c07295996cd9b3449825222b74d0)

* Changed the error condition to produce a "valid" invalid id instead of a deterministic but not-valid id

Signed-off-by: mbalfour <mbalfour@amazon.com>
(cherry picked from commit 3673950c949de8e067b32ddafaffd07e648a13d8)

* Guard against invalid reference assert/crash

Signed-off-by: mbalfour <mbalfour@amazon.com>
(cherry picked from commit 268d4ef3447f268a1372d07e028b9e67bac5c64e)

* Downgrade an invalid reference crash to an assert

Signed-off-by: mbalfour <mbalfour@amazon.com>
(cherry picked from commit 38c9303770845f4e863273dd6fb8fc7e83380425)

* Improved logic for handling entity references across nested slices.

Signed-off-by: mbalfour <mbalfour@amazon.com>
(cherry picked from commit 7e89a016d95fb72cb5f119e1e3768daa60e6bfb4)

* Changed order of entities.clear() call so that instance lookups are still valid during entity destruction.

Signed-off-by: mbalfour <mbalfour@amazon.com>

* Add undo cache notification when removing Maestro components.

Signed-off-by: mbalfour <mbalfour@amazon.com>
5 years ago
Victor Huang b93dd36c61 Changed AP window title and popup messages
Signed-off-by: Victor Huang <huavicto@amazon.com>
5 years ago
Benjamin Jillich 1586c00fc8
[LYN-4929] Correct gems not showing as enabled for a template (#1722)
* When there are multiple project templates present, we re-gather the gems when changing the selected the project template.
* In case the user enabled or disabled any gem and they select a new project template, we show a warning dialog where users can either cancel the operation or proceed to the new project template. The warning dialog will only appear in case the enabled gems actually differ from the currently used template's default.
* New helper function to select the used project template.
* Storing the currently used project template index and only update the template details and emitting the changed event in case the user has actually chosen another template. This avoids emitting signals in case the user clicks on the already selected template.

Signed-off-by: Benjamin Jillich <jillich@amazon.com>
5 years ago
Benjamin Jillich ea42ef78b8
[LYN-4938] Prism: Paths in Engine settings page do not use consistent slashes (#1721)
* Corrected focus for form line edit widgets.
* Consistent slash usage for folder browse edit widgets.

Signed-off-by: Benjamin Jillich <jillich@amazon.com>
5 years ago
Alex Peterson f492949626
Removed mention of sample project from welcome screen (#1664) 5 years ago
amzn-mike af45aa299e Merge branch 'stabilization/2106' into Helios_LYN-4880-IncorrectBoneNodes 5 years ago
Steve Pham b4a2edec6a
Final update copyright headers to reference license files at the repo root (#1693)
* Final update copyright headers to reference license files at the repo root

Signed-off-by: spham <spham@amazon.com>

* Fix copyright validator unit tests to support the stale O3DE header scenario

Signed-off-by: spham <spham@amazon.com>
5 years ago
amzn-mike 0a241d8fd0 Bump version
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
5 years ago
amzn-mike d2d8e8bc3e unsigned to unsigned int
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
5 years ago
Esteban Papp 5fa495380c Merge branch 'stabilization/2106' into redcode/SPEC-7563 5 years ago
Benjamin Jillich 3a5b8808a0
[LYN-4879] Incorrect colour UI issue on Gem Configure (#1678)
* Aligned the column headers to the elements
* Moved the styling of the gem column header labels to the qss
* Fixed the scrollbar for the gem list view

Signed-off-by: Benjamin Jillich <jillich@amazon.com>
5 years ago
Esteban Papp d6caff7842 Some sandbox references I was missing
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
5 years ago
Gene Walters 9814e9dc6c Adding missing o3de copyright headers
Signed-off-by: Gene Walters <genewalt@amazon.com>
5 years ago
Gene Walters 6fb2558e44 Merge branch 'upstream/development' into genewalt/gitflow_210628
Signed-off-by: Gene Walters <genewalt@amazon.com>
5 years ago
Gene Walters f905b71844 Adding missing o3de copyright headers
Signed-off-by: Gene Walters <genewalt@amazon.com>
5 years ago
amzn-mike 598c890cbc Fix nodes being incorrectly treated as bones
Some nodes have aiBones created by AssImp even though they aren't bones.  Filter these out by looking through the node graph and only considering

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
5 years ago
Terry Michaels 149863c527
Removed Amazon as Company for QSettings (#1649)
* Removed Amazon as Company for QSettings

Signed-off-by: Terry Michaels <miterenc@amazon.com>
5 years ago
John c145a9a74a Add missing files from addressing PR comments
Signed-off-by: John <jonawals@amazon.com>
5 years ago
jackalbe a9227e1962
{LYN-4456} FileIO hooks for LegacyTestAdapter (#1635)
* Could not reproduce the unit test fail for the m_app->BeforeRun() failure,
* so I am adding file IO hooks to listen for errors during the fixture setup

Tests: failed to repro the issue
Signed-off-by: Jackson <23512001+jackalbe@users.noreply.github.com>
5 years ago
Danilo Aimini a76a7291b5
Replace Asset Processor system tray icon with a more readable one. (#1639)
Signed-off-by: daimini <82231674+AMZN-daimini@users.noreply.github.com>
5 years ago
AMZN-nggieber a5e66505a0
Fix issue moving and renaming projects at the same time (#1620) 5 years ago
Gene Walters 4e14c0069b Merge branch 'upstream/stabilization/2106' into genewalt/gitflow_210628 5 years ago
AMZN-Phil a67ce87102
Merge pull request #1612 from aws-lumberyard-dev/LYN-4768
Fix gem name and author bounding rects and make headings readable
5 years ago
Terry Michaels 7a2a2dc0d7
Updated branding for application names (#1617) 5 years ago
jackalbe 580bd11715
{LYN-4372} fix for Python exit crash (#1600)
There is a crash when sys.exit() was being called since embedded Python
should not have control of the application lifetime. The Py_InspectFlag
puts the Python VM into 'inspection mode' which prevents the app
shutdown when any sys.exit() is invoked.

Notes:
* skips 'regset' extra command line in PythonBindingsExample
* added methods for handling PythonBindingsExample errors

Test: added Application_SystemExit_Blocked and
fixed up Application_Run_Fails now is Application_Run_Works
5 years ago
pconroy 196abb4af7 Fix gem name and author bounding rects and make headings readable 5 years ago
AMZN-nggieber ba0f1ad758
Updated Project Manager O3DE Logos with Rotated Squares Version (#1595) 5 years ago
Terry Michaels 21ebff5709
Updated help search and all docs.o3de.org links to o3de.org (#1594) 5 years ago
AMZN-Phil ce4bd9ffbe
Merge pull request #1546 from aws-lumberyard-dev/LYN-4435
Show mouse cursor as busy when copying project
5 years ago
AMZN-Phil 514edf049f
Merge pull request #1545 from aws-lumberyard-dev/LYN-4443
Show mouse cursor as busy when deleting project
5 years ago
AMZN-Phil 16c4fbfe10
Merge pull request #1576 from aws-lumberyard-dev/LYN-4566
Hide cart popup in project manager when going back to previous page
5 years ago
lumberyard-employee-dm 8530e783ca
Setting the build timeout for the ProjectBuilder CMake commands to -1 (#1583)
This prevents Project build step from timing out

Moving the project build directory to be under the <project-path>/build/ folder to prevent two issues
1. The AssetProcessor from scanning that folder for assets.
   [Bb]uild is part of the excluded folders
2. To prevent git from seeing modified files in the build directory as
   the default .gitignore file ignores [Bb]uild
5 years ago
pconroy 875cd0c858 Hide cart popup when going back to previous page 5 years ago
jackalbe 143b8f1131
{SPEC-7465} Fix DeleteCachedAssets_AssetsReprocessed fails on Debug Nightly Builds (#1535)
* Fix for DeleteCachedAssets_AssetsReprocessed fails on Debug Nightly Builds
* added -ap_disableAssetTreeView=true to disable the Qt tree view for the asset tab to get the parts that want to be tested finish
* only shows up on Debug

Tests:
=== test session starts ===
AutomatedTesting/Gem/PythonTests/assetpipeline/asset_processor_tests/asset_processor_batch_tests_2.py::TestsAssetProcessorBatch_AllPlatforms::test_AllSupportedPlatforms_FastScanWorks_FasterThanFullScan[windows-AutomatedTesting] PASSED [ 50%]
AutomatedTesting/Gem/PythonTests/assetpipeline/asset_processor_tests/asset_processor_batch_tests_2.py::TestsAssetProcessorBatch_Windows::test_WindowsPlatforms_RunAPBatchAndConnectGui_RunsWithoutEditor[windows-AutomatedTesting] PASSED [100%]
--- generated xml file: F:\amazon\o3de\build\vs2019\Testing\Pytest\AssetPipelineTests.Batch_2_Sandbox.xml ---
=== 2 passed, 4 deselected in 18.32s ===
5 years ago
pconroy 5b277cc061 Show mouse cursor as busy when copying project 5 years ago
pconroy b9b55c3eed Show mouse cursor as busy when deleting project 5 years ago
amzn-mike 63dd82aed3
Merge pull request #1498 from aws-lumberyard-dev/Helios_LYN-3723-FixPBRNormalMapImport
[LYN-3723] Fix Stingray PBR normal map import
5 years ago
amzn-mike 8e98f7bb28
Merge pull request #1505 from aws-lumberyard-dev/Helios_LYN-4742-AssImpRootTransformFix
[LYN 4742] AssImp Root Transform Fix
5 years ago
AMZN-nggieber 10dcae90a4
Replaced editor logo with new project manager logo for Project Manager (#1531) 5 years ago
amzn-mike 03a6d1e0f5 Merge branch 'stabilization/2106' into Helios_LYN-4742-AssImpRootTransformFix 5 years ago
amzn-mike 0e8a2ca110 Merge branch 'stabilization/2106' into Helios_LYN-3723-FixPBRNormalMapImport 5 years ago
amzn-mike 3d0093307f
Merge pull request #1490 from aws-lumberyard-dev/Helios_AssImpAnimationOnAllBones
[AssImp] Add placeholder animations for all bones
5 years ago
amzn-mike 56f250baaf
Merge pull request #1457 from aws-lumberyard-dev/Helios_FixCacheCopyFailure
[LYN-4508] Fix AP cache copy failure
5 years ago
amzn-mike 64e139aa97 Merge branch 'stabilization/2106' into Helios_LYN-3723-FixPBRNormalMapImport 5 years ago
amzn-mike 09b7d57dc4 Merge branch 'stabilization/2106' into Helios_AssImpAnimationOnAllBones 5 years ago
amzn-mike 9e2f1aed91 Add comment 5 years ago
Terry Michaels 1e457928f5
Update help URLs and remove unneeded links (#1520) 5 years ago
amzn-mike fd6f68ce91 Merge branch 'stabilization/2106' into Helios_FixCacheCopyFailure 5 years ago
Steve Pham 70042fcdcd
O3DE Copyright Updates for Linux Foundation (#1504) 5 years ago
Alex Peterson aa885e5d0b
Fix project creation (#1445)
* Add ability to change project name

* Fixed several issues where path types were changed

* Added PythonBindings CreateProject unit test

* Fix python warning format

* Validate new project name in CLI

* Fix issue creating pathview on linux

* Use better testing macros

* Refactored the unit_test_engine_template.py test to actually test
against the current engine_template.py commands

The commands of create-template, create-from-template, create-project
and create-gem is now being validated.

Registered the unit_test_engine_template.py script with CTest in the smoke test
suite so that it runs in Automated Review

Fixed issues in the engine_template.py script where the template_restricted_path parameter was required in the create_project and create_gem functions

Co-authored-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
5 years ago
amzn-mike c27e0fe6e5 Merge branch 'stabilization/2106' into Helios_LYN-3723-FixPBRNormalMapImport 5 years ago
amzn-mike bacb612dd1 Merge branch 'stabilization/2106' into Helios_AssImpAnimationOnAllBones 5 years ago
amzn-mike 74022447dd Merge branch 'stabilization/2106' into Helios_FixCacheCopyFailure 5 years ago
amzn-mike feb58fac5e Fix calculation for root transform 5 years ago
AMZN-nggieber bc3aa45ed9
Prism Show Gem Requirements and Prompt when Adding Gems with Requirements (#1478)
* Added requirements section to gem inspector

* Added Dialog when configuring for gems with extra requirements
5 years ago
AMZN-nggieber e21443b5d6
Added Project Preview to Project Settings and Fixed Issues with Moving Projects (#1380)
* Updated Project Settings Screen with preview and fixed moving projects

* Tests for some Project Utils

* Remove old defined consts

* Update UX to use display name when avaliable where appropriate

* Use newPreviewImagePath for temp changing preview.png otherwise use iconPath for preview in UX

* Removed use of newPreviewImagePath in ProjectButton
5 years ago
amzn-mike 1137c2d09d Fix importing normals on PBR materials
Some normals are flagged as "NORMAL_CAMERA" by AssImp, so if we can't find NORMALS we fallback to looking for NORMAL_CAMERA
5 years ago
amzn-mike e4e5178261 Add in placeholder animations for all bones as some models require this for correct animations
Matches with previous FBX SDK behavior
5 years ago
mbalfour df648db62e Merge branch 'stabilization/2106' into mbalfour/gitflow_210622
# Conflicts:
#	Code/Framework/AzQtComponents/AzQtComponents/Components/Style.cpp
#	Code/Framework/AzToolsFramework/AzToolsFramework/Viewport/ViewportMessages.h
#	Gems/AWSCore/Code/Source/Editor/UI/AWSCoreEditorMenu.cpp
5 years ago
Terry Michaels 858dee2210
Need to keep full asset paths around in LuaIDE (#1470) 5 years ago
Nicholas Van Sickle b032177418
Merge pull request #1443 from aws-lumberyard-dev/nvsickle/MergeStabilizationJun18
Merge stabilization/2106 into development
5 years ago
amzn-mike 514cfc3b4c Fix compile error 5 years ago
amzn-mike 4c7a46850d Update comments 5 years ago
amzn-mike d2d588901e Address PR feedback 5 years ago
amzn-mike bfe391b4bb Merge branch 'stabilization/2106' into Helios_TransformImporterFixV2_stabilization_2106 5 years ago
amzn-mike 582c936e3b Move begin/end cache file update calls into move/copy code 5 years ago
AMZN-koppersr c333824673
Merge pull request #1001 from yuriy0/SerializeContextToolsConvertHandleAnyValidation
Bug fix: handle the case where the data source type is `any' in the SCT converter command validation step.
5 years ago
nvsickle e55580af57 Merge remote-tracking branch 'upstream/stabilization/2106' into nvsickle/MergeStabilizationJun18 5 years ago
lumberyard-employee-dm 9f2fd0b573
Merge branch 'aws-lumberyard:development' into SerializeContextToolsConvertHandleAnyValidation 5 years ago
lumberyard-employee-dm 7dabe8b6e9
Updated Several Engine Gem's CMakeLists.txt to add themselves as required Gems (#1262)
* Fixed organization of the AssetProcessor SourceAssetBrowser

Assets within the Engine Root were grouped under a '/' entry.
That has been fixed to use the relative path within the engine root for
those assets
Assets outside of the Engine Root, but on the same drive were using
absolute paths before. Now there are child entries that navigate up the
directory hierarchy to those asset locations

* Added ly_enable_gems call to Atom gems targets that are required

The DefaultLevel.prefab contains several Atom components, that require
the Atom RHI, RPI, Common_Feature, ShaderBuilder and AtomLyIntegration CommonFeatures
gems to be enabled in order to successfully process in the
AssetProcessor.

* Added ly_enable_gems call to make the Camera gem required in Tools,
Builders and Clients.

This is needed as the DefaultLevel.prefab contains an Editor Camera
Component

* Adding the ly_enable_gem call to make the Maestro gem required

CrySystem currently requires Maestro to be enabled in order to
initialize

* Added ly_enable_gems call to the SceneProcessing gem to make it required

The SceneCore and SceneData libraries that are part of the core engine
Code folder requires the SceneProcessing gem to be enabled in order to
invoke the InitializeDynamicModule hooks in DllMain.cpp in order to
initialize those libraries.

* Fixed bad argument in comment for Prefab CMakeLists.txt

* Fixed Assert in Asset Builders due to the Atom RPI Builder

The Atom RPI Builder was enabling the Asset Catalog for the ScriptAsset a second time

The Atom Feature Common EditorSystemCommonComponent.cpp which also loads
in the AssetBuilder is enabling the Asset Catalog for the ScriptAsset

Added BehaviorContext reflection to the OutputDeviceTransformType enum
to fix the BehaviorContext errors about reflecting a method that returns
such an enum

* Added TypeId output to the JsonDeserializer report message about missing
ClassData

Previously the report callback would indicate that the target type was
missing Serialization class data, but didn't indicate the TypeId of the
target type

* Added support to the ly_enable_gems function to be able to support
0 gems being enabled.

Updated the Install step for CMake to propagate any ly_enable_gems
within a CMakeLists.txt for a target into the generated CMakeLists.txt
that is made for each installed IMPORTED target

* Adding newline to the end of the Camera Gem CMakeLists.txt

* Fixing target TYPE parameter for actual Gem Modules to use the GEM_MODULE tag instead of MODULE

* Reverting change to the DESTINATION directory for the installed CMakeLists.txt to use the relative path to the installed directory

* Adding the Atom_Bootstrap gem as a required gem

The Client and GameLaunchers required the Atom_Bootstrap gem in order to create the NativeWindow
Added Atom_Feature_Common client module as a runtime dependency of the AtomLyIntegration CommonsFeature client module

* Fixed register.py --all-projects-path and --all-gems-path arguments to
NOT register projects or gems that are within a template folder
Fixed reading of old pre-1.0 o3de_manifest.json files where the
"engines" key was a json array

* Changed how the relative target source directory is calculated when that source directroy resides outside of the engine root.
The final dirname component is used with a unique SHA256 has to form a <dirname>-<8 char SHA256> folder for installing files into

* Adding newline to the end of Atom_Bootstrap CMakeLists.txt

* Moving ly_enable_gems variants for Tools and Builders inside of PAL_TRAIT_BUILD_HOST_TOOLS block

* Adding a comment to AWSCore.ResourceMappingTool target to indicate that it is not a GEM_MODULE.
Furthermore it cannot be loaded with the Gem system because the library is in a different directory the executable
5 years ago
John 43b1d0444d Fix PythonBindingsExampleTest name 5 years ago
amzn-mike ff81b0bfd6 Use contains method instead of find. Rename parentFillerAnimations -> fillerAnimations 5 years ago
John 8e9ffc458c Fix PythonBindingsExampleTest.Application_Run_Fails 5 years ago
Benjamin Jillich 7bd42e1f8d
[LYN-4410] Back buttons should preserve selected gems (#1359) 5 years ago
amzn-mike 4c9b3b12cb Merge branch 'stabilization/2106' into V2Mainline 5 years ago
amzn-mike 57b19feca5 Cleanup code 5 years ago
John 15bf2d20ed Merge branch 'development' into TIF/Runtime 5 years ago
AMZN-stankowi 1fd0886b70
Updated AssImp to v10 for Windows Invert PostRotation matrix in animation chains (#1340) 5 years ago
John 0e6a266e89 Remove frontend console tests 5 years ago
Eric Phister 74491c88b8
Fix AssetBuilders when project-path has a trailing slash (#1345)
* Fixes issues with project paths w/ trailing slash

When launching AP with a --project-path that has a trailing slash, the
AssetBuilders would get that slash instead of a normalized version.
This would mess up the params sent to AssetBuilders.

* Missed a variable name replacement

* Addresses feedback on code style guidelines

Removed 'auto' keyword in favor of explicit types.
5 years ago
yuriy0 e40a598648
Bug fix: check for valid extension in case insensitive manner (#1339) 5 years ago
Mike Balfour ab3aa904f0
Fixed misc slice conversion bugs
* Fixed crash caused by nesting the same slice twice
If the same slice is nested at multiple levels in the same slice hierarchy, the second conversion would reregister the prefab and crash.  Now that case is detected and the slice isn't reconverted.

* Fixed json array patches where multiple elements are removed.
The patches now generate removals from back to front, instead of front to back, so that the indices remain valid as each patch is applied.
5 years ago
amzn-mike 625e1326e3 Merge branch 'stabilization/2106' into V2Mainline 5 years ago
Alex Peterson ecded991b5
Display error when unable to start Python
Added AzFramework Application, logging, unit tests
5 years ago
amzn-mike 364187a87b
Merge pull request #1047 from aws-lumberyard-dev/Helios_AssImp_TransformImporterFix
Fix AssImpTransformImporter logic for bone nodes
5 years ago
AMZN-nggieber 948075fa61
Gem Catalog Allows Filtering by Gem Selected Status Live (#1274) 5 years ago
sharmajs-amzn 86d0acf76c
fixes for invalid drive letter casing for scanfolder (#1281) 5 years ago
Mike Balfour 6f61454be4
Added support for remapping entity refs across slice instances (#1284)
* Fixed memory assert on shutdown.
Cleaned up the entity pointers on serialization, so that they no longer leak themselves, their asset references, or anything else within them.

* Added support for remapping entity refs across slice instances.
Slice instances can have components with entity references that have been modified to reference entities in other slice instances, or even in the parent.  This change detects and remaps those references so that they work correctly.
5 years ago
amzn-mike a3ae330e6d Merge branch 'stabilization/2106' into Helios_AssImp_TransformImporterFix 5 years ago
amzn-mike 7dc4d8438b Fix non-bone transforms setting the wrong matrix variable
(cherry picked from commit 838a8b47da73e50fca4ea9ee5abc7c33250bf25d)
5 years ago
amzn-mike 9b039c1f9d Fix creating bone data for non-bones
(cherry picked from commit 8d1bdd1456e70e4efc47aa36dce660bc91e7dfcf)
5 years ago
amzn-mike 10999b6999 All bones have animations
(cherry picked from commit d17a8070010cdc5bc4e08d17b1549736d031414a)
5 years ago
amzn-mike 66a030b800 Fix transform data
Use first offsetMatrix for a bone (there may be multiple) and calculate using offsetOfParent * inverseRootOffset * rootOffset * inverseOffset

(cherry picked from commit a8eae976dda39ad28f9aa235e1e6ba34715ac48a)

# Conflicts:
#	Code/Tools/SceneAPI/FbxSceneBuilder/Importers/AssImpTransformImporter.cpp
5 years ago
amzn-mike d841f0c0db Got transform result close for 3 bone chain, longer chains are still not correct
(cherry picked from commit 5ac65de6148dcc03b9f2953e97dd943493f23ed9)

# Conflicts:
#	Code/Tools/SceneAPI/FbxSceneBuilder/Importers/AssImpTransformImporter.cpp
5 years ago
amzn-mike 9ff007024d Merge branch 'main' into Helios_AssImp_TransformImporterFix 5 years ago
amzn-sj e6b8dc2ce1 Disable AzTest and AzTestRunner in monolithic builds 5 years ago
Mike Balfour ffe913a2d6
Added ability to convert multiply-nested slices (#1239) (#1245)
* Addressed feedback from previous PR
* Change missing entity aliases to be deterministic.
When converting slices, this helps produce the same results on multiple reconversions of the same data.
* Exposed the asset filter callback.
This allows the slice converter to specifically load nested slices as opposed to not loading *any* referenced assets.
* Added support for multiply-nested slice instance conversion.

(cherry picked from commit 86136ddfa6)
5 years ago
Steve Pham b2bafc44ab
LYN-2705: Remove 'AZ_TRAIT_DISABLE_FAILED_ASSET_PROCESSOR_TESTS' trait for Linux (#1235)
* Fix Delete_Real_Readonly_Fails to mark parent directory as read-only as well

Read-only files in Windows cannot be deleted. The previous version of this
code relied on that fact, and would attempt to delete a file even when
`skipReadOnly = true`, relying on the OS to refuse to delete the file if it
is read only. On Linux, it is the writable state of the *directory* that
determines if a file can be deleted or not. This fixes the test to set up
the correct situation where a file deletion would fail.

* Remove excluded items from a vector before iterating over it

Removing items from the `pathMatches` `QStringList` while iterating over it
was causing a segfault on Linux. This change separates out the item removal
from the item iteration, which allows the item iteration loop to use a
range-for loop instead of directly manipulating iterators.

* Remove invalid test that asserts a file's metadata file can have differing file casing

This test is asserting that a given source file and its accompanying
metadata file can have the the same name but differing case. This is really
testing whether or not the underlying filesystem that those files live on
is case sensitive or not. The 99% chance is that users are using the
default filesystem that their host OS gives them, NTFS on Windows, EXT* on
Linux, and APFS on Mac. Even though NTFS is case-insensitive by default,
it [can be configured per-directory](https://devblogs.microsoft.com/commandline/improved-per-directory-case-sensitivity-support-in-wsl/).
APFS as well can be configured to be case-sensitive. For users with case
sensitive filesystems, this test makes no sense. We could extend this test
to inspect the case-sensitivity of the underlying filesystem, but then it
is just testing the filesystem's behavior, which seems out of scope of this
test.

* Use a non-priviliged port for the Asset Processor tests

From https://www.w3.org/Daemon/User/Installation/PrivilegedPorts.html:

> The TCP/IP port numbers below 1024 are special in that normal users are not
> allowed to run servers on them. This is a security feaure, in that if you
> connect to a service on one of these ports you can be fairly sure that you
> have the real thing, and not a fake which some hacker has put up for you.
>
> When you run a server as a test from a non-priviliged account, you will
> normally test it on other ports, such as 2784, 5000, 8001 or 8080.

* Fix for `QDir::rmdir(".")` not working in Linux

Qt uses `::rmdir` to remove directories on Linux. This comes from
[unistd.h](https://pubs.opengroup.org/onlinepubs/007904875/functions/rmdir.html)
The documentation for that function states:

> If the path argument refers to a path whose final component is either dot
> or dot-dot, rmdir() shall fail.

So calling `dir.rmdir(".")` will never work on Linux.

Instead, get the parent directory, and remove the child directory by name.

* Avoid lowercasing source asset paths when resolving dependencies

Source asset paths may be case sensitive, so their case must be preserved
when doing operations that hit the underlying filesystem. This method was
always lowercasing them, which would cause dependencies to not be found.

* Correct test to expect product filenames to be lowercase

The modtime tests were failing in Linux due to something unrelated to file
modtime checking. The Asset Processor Manager does this during AnalyzeJob:

```
if (foundInDatabase && jobs[0].m_fingerprint == jobDetails.m_jobEntry.m_computedFingerprint)
{
    // If the fingerprint hasn't changed, we won't process it.. unless...is it missing a product.
```

In this case, the test was setting up a product whose file case was the
same as the source asset, and would write it to the cache dir using mixed
case, but use the normal asset processor API to write the product file path
to the database, which recorded the path in lowercase. When the manager
then went to check if the source asset's products all exist, it checked the
lowercase path, which didn't exist.

This fixes that test failure, by updating the test to write the product
file to the cache using the proper lowercased path.

* Update test to define a "not current platform" for Linux

This test was failing because it was setting some "not current platform"
variable to be set to "pc" on Linux, when
`AssetSystem::GetHostAssetPlatform()` is defined to:

```cpp
inline const char* GetHostAssetPlatform()
{
    return "mac";
    return "pc";
    // set this to pc because that's what bootstrap.cfg currently defines the platform to "pc", even on Linux
    return "pc";
    #error Unimplemented Host Asset Platform
}
```

The test would go on to assert that "pc" was simultaneously in a list and
not in the same list.

This fixes the test by updating the code to set the "not the current
platform" variable appropriately on Linux.

The expectations were also updated to improve the output on test failure.
Instead of this:
```
Value of: recogs["rend"].m_platformSpecs.contains(platformWhichIsNotCurrentPlatform)
  Actual: true
Expected: false
```

You now get this:
```
Value of: recogs["rend"].m_platformSpecs.keys()
Expected: (has 3 elements and there exists some permutation of elements such that:
 - element #0 is equal to pc, and
 - element #1 is equal to es3, and
 - element #2 is equal to server) and (doesn't contain any element that is equal to pc)
  Actual: { pc, server, es3 } (of type QList<QString>), whose element #0 matches
```

* Prevent windows supported path separators to be included in the test paths for UpdateToCorrectCase_ExistingFile_ReturnsTrue_CorrectsCase

* Fix failing linux unit test "PlatformConfigurationUnitTests.TestFailReadConfigFile_RegularScanfolder"
caused by static variable not being reset from a different test run when using AssetUtilities::ComputeProjectPath

* Fix AZ_RTTI declaration for RequestEscalateAsset Message

* Implement FileWatcher for Linux to fix AssetProcessorMessages.All test (RequestAssetStatus)

* Split AssetProcessorMessages into 2 tests, one with RequestAssetStatus/ResponseAssetStatus and one without
Add The RequestAssetStatus/ResponseAssetStatus as a sandbox test because it relies on FileWatcher thread and seems to be timing related

* Remove FileWatcher_win.cpp from the Linux specific folder for FileWatcher

* - Fix build error related to non-unity builds
- Fixed failed linux test 'Test/LegacyTestAdapter.AllTests/UtilitiesUnitTest' caused by misplaced windows only EXPECT
- Remove test trait AZ_TRAIT_DISABLE_FAILED_ASSET_PROCESSOR_TESTS for linux to expose remaining failed tests

* Fixed failed linux test 'Test/LegacyTestAdapter.AllTests/RCcontrollerUnitTests' caused by misplaced windows only EXPECT

* - Fix FileWatcher unit test, disable incompatible subtests for Linux
- Fix errors in FileWatcher_linux from results of the FileWatcher Unit Test

* Remove AZ::AssetProcessor.Tests.Sandbox tests from definition and restore the original AssetProcessorMessages.All tests now that Filewatcher_linux was fixed

* Fixes for failed unit tests: AssetProcessorManagerUnitTests and AssetProcessorManagerUnitTests_JobDependencies_Fingerprint
- Caused by differences between between case-sensitive files (Linux) and non-case-sensitive Filesystems (Windows)

* Update consts in FileWatcher_linux.cpp to constexpr

* Fixes related to PR comment suggestions

* - Removed std::bind and replaced with lambda in FileWatcher_linux
- Replaced String replace functions for path separators to use AZ::IO::Path::LexicallyNormal() instead

* Restoring string replace function in PathDependencyManager::ResolveDependencies due to unit test failure

Co-authored-by: Chris Burel <burelc@amazon.com>
5 years ago
John 1cef72ab8d Fix uncommented tests 5 years ago
Scott Romero 5436e08d15
[stabilization/2106] fixed startup crash in project manager from installer build (#1231) 5 years ago
John af0bcb0636 Remove test files 5 years ago
John 169d4da288 Address PR comments 5 years ago
scottr 5061241992 [cpack/stabilization/2106] early out if sys import fails in PythonBindings::StartPython 5 years ago
lumberyard-employee-dm a9e59fd75f
Updating the DefaultProject template to not insert the project-path parameter (#1223)
* Updating the DefaultProject template to not insert the project-path parameter into the VS Debugger Arguments for any applications

Added project-path injection directly within the LauncherUnified and AssetBuilder cmake scripts where their targets are defined

* Removing the add_vs_debugger_arguments call from the AutomatedTesting CMakeLists.txt
5 years ago
AMZN-nggieber 5330309cb1
Set Desktop Icon for Project Manager (#1225)
* Set executable icon for O3DE
5 years ago
scottr 2eefc08d2e [cpack/stabilization/2106] fixed startup crash in project manager from installer build 5 years ago
lumberyard-employee-dm 217eddc8bd
Fixing the enable_gem.py and disable_gem.py commands (#1207)
* Fixing the enable_gem.py and disable_gem.py commands
The project path wasn't taking into account when querying for gems,
templates and restricted directories registered with the project

Fixing the cmake.py add_gem_dependency and remove_gem_dependency methods
to properly detect a gem within a `set(ENABLED_GEM ...)` cmake variable
Also updated the add_gem_dependency to add the gem right before the end
marker of ')'
Updated the remove_gem_dependency to remove each instance of a gem with
a content that is in between in the `set(ENABLED_GEM ...)` cmake
variable

* Correct Typo in manifest.get_registered doc string
5 years ago
AMZN-nggieber b26b472bba
Fix Editor being opened twice by project (#1213) 5 years ago
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
5 years ago
jonawals e2d601ad59 Merge branch 'TIF/Runtime' into TIF/Jenkins 5 years ago
jonawals dd93c42342 Fix missing keys 5 years ago
jonawals a9e6eaa57a Fix anon enum clash with uber files 5 years ago
jonawals 98670a21bc Fix missing copyright header 5 years ago
jonawals 6db9a00315 Merge branch 'TIF/Runtime' into TIF/Jenkins 5 years ago
jonawals a2a9c23c7c Merge branch 'main' into TIF/Runtime 5 years ago
jonawals 656aa528d8 Implement new handling of tiaf seed data 5 years ago
jonawals 7a884c85b3 Address PR comments 5 years ago
jonawals 9e187d67a4 Fix typo with delete files filter 5 years ago
jonawals c9351f4d45 Make TestEngine clean up artifact dir before runs 5 years ago
jonawals e0f953cf6b Address PR comments 5 years ago
Alex Peterson 7ca7ad9b72
Fix missing user_tags exception and configure gems button 5 years ago
Esteban Papp 36cb0f6d40
SPEC-7178 Removal of precompiled cpp files (#1171)
* SPEC-7178  Removal of precompiled cpp files

* Missing files...
5 years ago
amzn-mgwynn 38865c95e2
Merge pull request #1162 from aws-lumberyard-dev/Prism/gem-db
Adding python bindings for modifying project properties
5 years ago
mgwynn 1900a42203 remove const ref from iterator for python object conversion since pybind only returns copies and produces a clang error 5 years ago
mgwynn 01b200ad42 removing unused define 5 years ago
mgwynn 6d6f8413c8 Incorporating review comments. Some parameter modifications. Some cli edge case handling. Remove remove_tag member from project info 5 years ago
jonawals a56591fa12 Address PR comments 5 years ago
jonawals f603b08d05 Address PR comments 5 years ago
jonawals cc9e8a72e4 Fix coverage clear bug and other minor refactors 5 years ago
jonawals 796b5be286 Address PR comments 5 years ago
jonawals a0feeec608 Add console output to runtime 5 years ago
jonawals d341dab7f5 Address PR comments 5 years ago
jonawals 0da739ef18 Add curiously missing comments 5 years ago
jonawals 4ed0c7b1d8 Add drafting of failed tests 5 years ago
jonawals b00f569090 Address PR comments 5 years ago
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
5 years ago
amzn-mgwynn ffdce2ef7f
Merge branch 'main' into Prism/gem-db 5 years ago
mgwynn d2f8e49037 resolving merge conflict due to variable name change from main 5 years ago
mgwynn 155271a0ee Fixed data type changed by mistake for project info image path 5 years ago
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.
5 years ago
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
5 years ago
mgwynn accd473ff5 Adding python bindings for modifying project properties 5 years ago
Alex Peterson 9b17754278
Project Template details and preview changes 5 years ago
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.
5 years ago
Esteban Papp 50d6e36ccd
Bug and improvements to Editor/AP debugging settings (#1146) 5 years ago
jonawals ac42a9a748 Changes for read-only runs and new test suites 5 years ago
Alex Peterson f20ae8345a
Add Open Project folder menu item 5 years ago
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
5 years ago
scottr 9e7f8e45eb [default_3rdparty] fixed typo 5 years ago
scottr 08a2e50ee3 [default_3rdparty] missed updating a call to register 5 years ago
scottr d30fd8b1dd Merge branch 'main' into default_3rdparty 5 years ago
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
5 years ago
scottr 85e6d06c2c [default_3rdparty] add 3rd party to engine registration + specific path registration fixes 5 years ago
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.
5 years ago
jonawals 7eb6e0e7d5 Merge branch 'main' into TIF/Runtime 5 years ago
scottr c41283c3ec Merge branch 'main' into ftue_auto_register 5 years ago
Benjamin Jillich 5dff212398 Fixing non-unity build 5 years ago
Benjamin Jillich 1b96fc4361 Merge branch 'main' of https://github.com/aws-lumberyard/o3de into prism/LYN-2514
# Conflicts:
#	Code/Tools/ProjectManager/Source/UpdateProjectCtrl.cpp
5 years ago
AMZN-nggieber 8a28107299
Project Manager Setup Update Project Settings Screen and Flow
* Filled out and connected up UpdateProjectCtrl and UpdateProjectsSettingsScreen
5 years ago
Benjamin Jillich e7e85f91d6 Addressing PR feedback 5 years ago
AMZN-stankowi fc0de9e0e3
Added [[maybe unused]] to fix release build compile issue (#1090) 5 years ago
Esteban Papp 1f65c3ba3a
LYN-4134 Automatically add `--project-path=<project>` to debugging parameters in Editor/AP for engine-centric (#1081) 5 years ago
Benjamin Jillich 39bb0bf2fc [LYN-2514] Create a new project control now reinits the gem catalog and enables gems based on the user selection 5 years ago
Benjamin Jillich b0ef89edf9 [LYN-2514] Update project control now reinits for the selected project and enabled/disables gems based on the user selection in the gem catalog 5 years ago
Benjamin Jillich f106273667 [LYN-2514] Adding functionality to reinit the gem catalog for a given project and enable/disable the changed gems
* Removed test data from gem catalog screen as we can now extract the real data.
* Reiniting the catalog to a project updates the filters, and clears and fills the gem model.
* Added functionality to enable/disable gems based on the user adjustments on the gem catalog.
5 years ago
Benjamin Jillich 53615230c1 [LYN-2514] Adding get engine gem infos to the python bindings 5 years ago
scottr 5554bdf329 [ftue_auto_register] use early return in registered engines loop instead of break 5 years ago
scottr 39d1f27021 [ftue_auto_register] post merge and linux build fixes 5 years ago
scottr 85fcac60a1 Merge branch 'main' into ftue_auto_register 5 years ago
Benjamin Jillich bcdb541b7c [LYN-2514] Sorting gems in the gem catalog after retrieving all gem infos
Added <operator() for sorting the gems after retrieving the list of all gems.
5 years ago
Benjamin Jillich ede8daaece [LYN-2514] Extending pythin bindings to adapt CLI changes for the gem catalog
* Added ExecuteWithLockErrorHandling() which returns an outcome with the actual error we get from python so that we can expose that to the UI.
* Added cmake pybind.
* Get gems now calling get_all_gems and alphabetically sorting the result.
* Added get enabled gems function which first gets the cmake enabled gems file path from the project path and then the list of gem names that are enabled.
* Some changes to the enable and disable gem functions.
5 years ago
jonawals 105eca52d7 Address PR comments 5 years ago
Benjamin Jillich 7b6226a8aa [LYN-2514] GemCatalog: Item delegate changes enabled/disabled state in the gem model
When clicking the button on the right side of the gem item delegate, it changes the enabled/disabled state of the gem in the model.
5 years ago
Benjamin Jillich 553318ed17 [LYN-2514] Extending gem model
* Added was previously added state for gems.
* Added helpers to add/remove gems from the model.
* Helpers for extracting the gem model indices to be added/removed.
5 years ago
Alex Peterson a3e73948c5
Improved project creation validation
No longer requires project name to be part of the project path.
5 years ago
Alex Peterson afe20906db
Add Project Manager File menu options to Editor 5 years ago
jonawals 9be54d4e5b Address PR comments 5 years ago
jonawals c7753f472b Add API comment and rename factory 5 years ago
jonawals 6432582b7f Add configuration factory 5 years ago
jonawals 9fe91ec705 Address PR comments 5 years ago
Steve Pham 74ec7a362b
Update Android Project Generation to support AGP 4.2.0, Cmake 3.20, and newer versions of NDK&SDK
- build.gradle format updates for newer Android Gradle Plugin
- Remove hard coded Android Gradle Plugin version 3.6.4 to be passed in from command args
- Set Android Gradle Plugin min version 4.2.0 in order to support Min CMake version 3.20
- Add ability to use the android sdk to install missing components if needed rather than doing it externally
- Removed argument to pass in the NDK folder to use the android, use the android-sdk instead. Can request specific NDK versions if possible
- Android Gradle Plugin has dependencies by version and is being managed
- More defaults based on tools on path, agp version made possible so they are no longer needed in the command args
5 years ago
greerdv 2c36d6a19a
Merge pull request #1039 from aws-lumberyard-dev/transform-float-scale-3
refactor vector scale in Transform to float scale
5 years ago
amzn-mike 00a529ad74 Fix AssImpTransformImporter logic for bone nodes
For bone nodes, the Transform is computed by multiplying the parent offsetMatrix by the inverse of the node's offsetMatrix

Note that this currently disables the LimitBoneWeights option since that results in the removal of bone nodes that are not attached to a mesh.
Without the bones there is no way to retrieve the offsetMatrix, so the Transform cannot be computed correctly

Fixes LYN-3755
5 years ago
Esteban Papp ff9a052ce6
Merge pull request #1011 from aws-lumberyard-dev/ly-as-sdk/LYN-2948
Integration of the LY as an SDK work
5 years ago
greerdv 34abf7376e Merge branch 'main' into transform-float-scale-3 5 years ago
AMZN-stankowi 1369e29c73
Abort calls in AssImp, which occur when an assert is hit in builds th… (#1012)
* Abort calls in AssImp, which occur when an assert is hit in builds that have asserts enabled (like debug) no longer generate a popup. Instead, they are captured as errors and an asset processing failure.

* Added missing include

* Added check for _WRITE_ABORT_MSG, so platforms that don't have it but have signals enabled (Linux profile) compile correctly
5 years ago
pappeste ddab4cf53a Fix for register python bindings 5 years ago
pappeste 9ad70608e8 Fixing compilation failure 5 years ago
pappeste 95b560ba3b Merge branch 'main' into ly-as-sdk/LYN-2948
# Conflicts:
#	Code/Tools/ProjectManager/Source/PythonBindings.cpp
5 years ago
AMZN-nggieber 96080d85e4
Project Manager Support Add Existing Projects, Removing, Copying, and Deleting (#961)
* Add Add/RemoveProject to Python Bindings

* Support Project, Add, Remove, Copy, Delete

* Open parent directory when duplicating to discourage path in owning dir

* Remove extra connects for new projects button

* Center project image
5 years ago
pappeste eece07efd3 Merge branch 'main' into ly-as-sdk/LYN-2948 5 years ago
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.
5 years ago
jonawals f21794b193 Add missing namespace comments 5 years ago
jonawals 5fd23cef35 Merge branch 'TIF/Jenkins' into TIF/Jenkins_Console 5 years ago
jonawals c63de35b68 Address PR feedback 5 years ago
jonawals 728d3b4b98 Address PR comments 5 years ago
jonawals f50f02eb4a Add console entry points 5 years ago