Commit Graph

130 Commits

Author SHA1 Message Date
Alex Peterson da24f4ccde Launch editor from Project Manager 2021-05-26 13:17:16 -07:00
SJ 8ca3b078a2 Remove bootstrap.cfg and some references to it.
Merge pull request #836 from aws-lumberyard-dev/LYN-2461
2021-05-26 09:32:57 -07:00
Benjamin Jillich 05f3144055 [LYN-2522] Gem catalog header widgets (#919)
* Added header widget with the name based filter
* Added column title header together with the the number of currently shown/filtered gems
2021-05-26 16:01:12 +02:00
lumberyard-employee-dm 791e044457 Fixed PlatformConfigurationUnitTests.TestFailReadConfigFile_RegularScanfolder test by setting a project path in the AssetProcessorTest fixture 2021-05-25 23:38:03 -05:00
lumberyard-employee-dm 4b75b7bb63 Fixed the AssetBundler unit test by moving the retrieval of the Engine Root Path after the Settings Registry has merged the runtime paths 2021-05-25 20:30:59 -05:00
greerdv ec1d129100 Merge branch 'main' into transform-float-scale 2021-05-25 19:21:32 +01:00
sharmajs-amzn 3aa6969d19 disabling rccontrollertest (#874) 2021-05-25 11:13:29 -07:00
Mike Balfour 0be75732cc Added initial support for nested slices to slice-prefab converter (#881)
Nested slices are now detected, converted into prefabs, and the top-level prefab will get linked to the nested prefabs with the proper number of instances.  However, the nested prefabs won't retain any of the slice override values or parent entity hierarchy.  That will (hopefully) be added in a separate PR.

This also adds support for better relative source paths for nested prefabs.  To support this, the tool now needs to connect/disconnect with the AssetProcessor to be able to turn a slice asset ID into a relative source path, so that nested templates can be looked up and converted correctly.
2021-05-25 12:44:34 -05:00
AMZN-nggieber 1d50d7ed64 Project Manager Projects Screen Dynamically Shows Projects Loaded from O3DE (#873)
* Projects Home Screen Dynamically displays Projects from O3DE and can open Project settings editor

* Seperated out CreateProjectCtrl and UpdateProjectCtrl

* Moved source level statics back into class headers

* Updated background image location
2021-05-25 10:16:11 -07:00
amzn-sj 83b7122128 project_path must be set before call to Application::Start() in order to set aliases. 2021-05-25 09:30:55 -07:00
AMZN-stankowi 1da8c50e8e Temporarily backing out STL changes to unblock mainline (#921)
* Revert "FBX settings can be opened again: g_fbxImporter is set, and if the ex… (#878)"

This reverts commit 58adcf168f.

* Revert "Merge pull request #753 from aws-lumberyard-dev/Helios_DataDrivenAssetImporter"

This reverts commit 798d96f1a2, reversing
changes made to eb31d90ad9.
2021-05-25 08:54:42 -07:00
greerdv d8b74110ff Merge branch 'main' into transform-float-scale 2021-05-25 16:28:28 +01:00
greerdv ccccfb2c5b more tidying up 2021-05-25 14:56:08 +01:00
Benjamin Jillich 36c23b5d1a [LYN-2522] Filtering for gem catalog (#867)
* Added sort filter proxy model for gem model that can filter based on name, gem origin, supported platform, features and/or types.
* Added new filter pane on the left with several filter categories for gem origin, type, platform and feature.
* Added filter category widget which is a collapsable generalized checkbox group that can interact with the proxy model and thus control filtering.
* Removed fixed size of the project manager. The application should always be resizable.
2021-05-25 07:17:23 +02:00
amzn-sj e056fdda6b Revert changes to tests where segfault occurs 2021-05-24 15:42:34 -07:00
amzn-sj 1a360094d2 Unregister custom SettingsRegistries in the test Teardown 2021-05-24 15:06:04 -07:00
greerdv 42c5801c52 Merge branch 'main' into transform-float-scale 2021-05-24 23:01:29 +01:00
amzn-sj 89cde021b2 Test fix for segfault in Linux tests 2021-05-24 14:27:19 -07:00
amzn-sj 090b770d7e Fix segfault in failing tests on Linux 2021-05-24 14:01:41 -07:00
amzn-sj 86932f95d6 Fix more Linux test failures. 2021-05-24 13:08:25 -07:00
amzn-sj 115f18fcdc Fix Linux test failures 2021-05-24 12:24:46 -07:00
AMZN-stankowi b37be6cdbf New AssImp build, just for Windows. This has the crash fix with bones. (#875) 2021-05-24 10:41:19 -07:00
AMZN-stankowi 58adcf168f FBX settings can be opened again: g_fbxImporter is set, and if the ex… (#878)
* FBX settings can be opened again: g_fbxImporter is set, and if the extension list is empty, it is reloaded.

* auto -> auto*, .size() == 0 -> .empty()
2021-05-24 10:05:12 -07:00
greerdv 945f55378e merge from main 2021-05-24 11:27:43 +01:00
Alex Peterson d112ae403b Engine settings UX update and basic functionality 2021-05-21 22:47:41 -07:00
amzn-sj d369912727 Merge branch 'main' into LYN-2461 2021-05-21 16:41:46 -07:00
amzn-sj e54963f0a9 Set project_path in the SettingsRegistry in the test SetUp() functions for tests that require a project to be set 2021-05-21 11:00:50 -07:00
AMZN-stankowi ead54c85d7 Helios - SPEC-6963 - Fixed unused variables in release builds (#856) 2021-05-21 06:21:26 -07:00
Alex Peterson cfbae9a18b add/remove gem python bindings 2021-05-20 15:13:39 -07:00
Benjamin Jillich 03b41b620d [LYN-2522] Preparation work for the filter pane (#799)
* [LYN-2522] Preparation work for the filter pane

* Added arrow up/down icons.
* Extended the gem info with the type (Asset, Code, Tool).
* Extended the model with the type and a helper for converting gem uuids into display names.
* Extended the link widget to be clickable with a custom action, needed for the "Show all/less" for the filters.
* Converting the uuids we get from Python to AZ::Uuids and then back to strings to have them all in the same format.
2021-05-20 18:42:37 +02:00
amzn-sj d33fa7dccc Fix for tests that are failing due to project_path not being set 2021-05-20 09:27:47 -07:00
amzn-mike 798d96f1a2 Merge pull request #753 from aws-lumberyard-dev/Helios_DataDrivenAssetImporter
[LYN-3689] AssImp: Data driven supported filetypes
2021-05-20 10:36:29 -05:00
amzn-mike ca94c59e28 Switch FbxImportRequestHandler to inherit from AZ::Component instead of BehaviorComponent
Previously FbxImportRequestHandler used to be activated as part of DllMain init and never had CreateDescriptor called, which meant reflect was not called.  BehaviorComponents get created and Activated as part of special SceneCore logic.  Since this component now needs to be activated as part of the normal flow, reflecting it caused it to be picked up by the SceneCore activate logic, causing it to be created/activated twice
2021-05-19 23:22:44 -05:00
amzn-sj 268fd8b714 Remove bootstrap.cfg and references to it. 2021-05-19 13:57:35 -07:00
AMZN-stankowi f779821ac0 Helios - LYN-3250 - Fixed morph targets for meshes that had multiple … (#696)
* Helios - LYN-3250 - Fixed morph targets for meshes that had multiple materials (#374)

Fixed morph targets for meshes that had multiple materials and were split by AssImp: Recombined them into one mesh in the O3DE scene graph, so the behavior would match FBX SDK.
2021-05-19 13:02:31 -07:00
AMZN-nggieber 25e811ff6c Completed FirstTimeUseScreen with Final UX Look (#812)
* Forced Project Manager window to 1200x800

* Final look for FirstTimeUseScreen, essentially complete

* Remove margins on screens

* Added License info for image
2021-05-19 12:48:55 -07:00
greerdv 7def4741cd merge from main 2021-05-19 12:14:25 +01:00
bosnichd 7a557c05ac Remove or update some remaining non-inclusive terms. (#793) 2021-05-18 11:43:57 -06:00
Aaron Ruiz Mora 87ec96fbf4 Fix compilation errors in windows release 2021-05-18 15:26:45 +01:00
Alex Peterson 2d54275cc6 Initial project creation logic
* Add GetProjects, GetProjectTemplates, GetGems
* Redirect python output to AZ_TracePrintf
* Allow creating projects in empty folders
* Enable project creation
2021-05-17 15:07:20 -07:00
bosnichd e2f5677bbc Remove a number of unused CryCommon interfaces and docs related folders. (#788) 2021-05-17 14:32:44 -06:00
Mike Balfour d084027b6e Bugfixes to enable slice-to-prefab conversion to run with less warnings/errors/crashes (#768)
While trying to process all slices and levels in Automated Testing, a few bugs came up that needed to be addressed:
- [LYN-3832] TransformComponent had a field removed without updating the version number and converter, which caused a lot of excessive warnings
- SliceComponent would crash in debug builds on instantiation failures due to a null dereference that was guarded against in most but not all places
- SliceConverter now detects when nested slices exist and gracefully warns about it.
- InstanceUpdateExecutor / TemplateInstanceMapper will now immediately remove instances that are unregistered, so that any in the queue don't get processed on a subsequent tick.  This was causing crashes when the instance was destroyed before the processing occurred.  It also has a side benefit of preventing the same instance from executing multiple times.
- Minor logic bugfix to the pack close warning, the boolean check was flipped.

Also added an early-out on SetTemplateId, since this was causing some unnecessary instance queue entries.
2021-05-17 14:58:18 -05:00
amzn-mike f5fab7e974 Merge branch 'main' into Helios_DataDrivenAssetImporter 2021-05-17 11:00:41 -05:00
Benjamin Jillich 6ebea13783 [LYN-2520] Gem Catalog - Gem Inspector / Info Panel (#718)
* [LYN-2520] Gem Catalog - Gem Inspector / Info Panel

* Extended the gem info with a directory and documentation link, binary size in bytes and added some helper functions.
* Added the gem inspector widget that hooks into the selection model.
* Info panel is vertically scrollable and based on the UX designs.
* Added a gem sub widget which holds several gem tags, a title and a description and is reused for the depending and conflicting gems.
* Extended the gem model with several new roles and data elements.
* Added more gem info test data before we got access to the real data.
2021-05-17 15:38:30 +02:00
amzn-mike ee4e9af465 Rename AssetImporterSettings to SceneImporterSettings 2021-05-17 08:27:04 -05:00
Alex Peterson 9b9ae22d23 Update Prism Python bindings interface
Add GetProjects, GetProjectTemplates, GetGems, GetProject and GetGem.
CreateProject and UpdateProject and the engine functions are not implemented yet
2021-05-14 14:53:32 -07:00
lumberyard-employee-dm 8b8a582f02 External Project Build Path Support using SDK Binaries (#690)
* Updated the DynamicModuleHandle code to search within the
SettingsRegistry for the FilePathKey_ProjectBuildPath setting in order
to determine the binary directory for the Project.

This is used to locate shared libraries and executables built by the
project when running and Engine SDK binary from within the Engine SDK

* Added a generation step within the Projects.cmake file to generate a
.setreg file containing the CMake build directory root.
The file is output to the <project-root>/user/Registry/build_path.setreg
file.
This occurs only on non-host platforms when configuring for
non-Monolithic builds, since the Build Directory is used to located the
project binary directory in order to located the project's generated
${CMAKE_BINARY_DIR}/bin/$<CONFIG>/Registry directory containing the
cmake_dependencies.<project-name>.<application-name>.setreg file
containing the list of gem modules to load for a given application

Updated the SettingsRegistryMergeUtils AddRuntimeFilePaths function to
be read in the new "/Amazon/Project/Settings/Build/project_build_path"
and use that to form an absolute path to the project build directory by
appending it to the FilePathKey_ProjectPath key.
That key is set in the 'FilePathKey_ProjectBuildPath' constant
Next updated the SettingsRegistryMergeUtils
MergeSettingsToRegistry_TargetBuildDependencyRegistry function to look
within the project build directory to locate the
cmake_dependencies.*.setreg file to load

Tweaked the Settings Registry merge order of the ComponentApplication,
GameApplication and Settings Registry builder to merge the command line
after merging the global user registry and after merging the project
user registry.
Moved the call to MergeSettingsToRegistry_TargetBuildDependencyRegistry
to occur after the above calls to make sure the properly overriden
projects' user registry was merged in order for the correct project
build path to be stored in the SettingsRegistry

* Added a ProjectConfigurationBinPath key which contains the path to the <build-dir>/bin/$<CONFIG> directory for a project which is used to load gem dlls and the Registry/cmake_dependencies.*.setreg files when using an pre-built Editor/AssetProcessor on an external project

* Fixed variable reference to fileNamePath variable

* Removing the default Project Build Path from the Settings Registry
Runtime Filepaths.

Any paths would have to be set explicitly via .setreg/.setregpatch file
or the --project-build-path parameter

Updated the setting of the project build path and project binary
directory to perform existance checks on the paths before setting the
keys of /Amazon/AzCore/Runtime/FilePaths/ProjectBuildPath and
/Amazon/AzCore/Runtime/FilePaths/ProjectConfigurationBinPath

Added a backup project binary path of
<project-build-path>/bin/$<PLATFORM>/$<CONFIG> which is used if the path
of <project-build-path>/bin/$<CONFIG> has not been found

Fixed compile error in DynamicModuleHandle_Apple.cpp

* UnixLike Platform Build fix for the DynamicModuleHandle code
2021-05-14 13:01:11 -05:00
Mike Balfour 77278a0329 First version of the slice-to-prefab converter
It converts .slice and .ly files to .prefab files, but doesn't handle nested or complicated slices correctly yet.
2021-05-14 11:18:15 -05:00
amzn-mike ba4439c397 Remove call to deleted init function 2021-05-13 19:52:00 -05:00
amzn-mike b7891f4fb6 Code cleanup 2021-05-13 18:43:51 -05:00