From 7e85cdd045d913b08b18a8d573f8565e73ee181c Mon Sep 17 00:00:00 2001 From: jjjoness <82226755+jjjoness@users.noreply.github.com> Date: Mon, 19 Apr 2021 10:58:26 +0100 Subject: [PATCH 01/54] Part 1 of changing colors to O3DE. --- .../Components/Widgets/ProgressBar.qss | 2 +- .../Components/Widgets/PushButtonConfig.ini | 16 ++++++++-------- .../Components/Widgets/SliderConfig.ini | 2 +- .../AzQtComponents/Components/Widgets/Text.cpp | 2 +- .../Components/Widgets/TextConfig.ini | 2 +- .../Components/img/UI20/checkbox/on-disabled.svg | 2 +- .../Components/img/UI20/checkbox/on-focus.svg | 2 +- .../Components/img/UI20/checkbox/on.svg | 2 +- .../UI20/checkbox/partial-selected-disabled.svg | 2 +- .../img/UI20/checkbox/partial-selected-focus.svg | 2 +- .../img/UI20/checkbox/partial-selected.svg | 2 +- .../img/UI20/radiobutton/checked-disabled.svg | 2 +- .../img/UI20/radiobutton/checked-focus.svg | 2 +- .../Components/img/UI20/radiobutton/checked.svg | 2 +- .../img/UI20/toggleswitch/checked-disabled.svg | 2 +- .../img/UI20/toggleswitch/checked-focus.svg | 2 +- .../Components/img/UI20/toggleswitch/checked.svg | 2 +- .../AzQtComponents/Components/img/loading.svg | 2 +- 18 files changed, 25 insertions(+), 25 deletions(-) diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/Widgets/ProgressBar.qss b/Code/Framework/AzQtComponents/AzQtComponents/Components/Widgets/ProgressBar.qss index 3542aa4764..76f834bf70 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/Widgets/ProgressBar.qss +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/Widgets/ProgressBar.qss @@ -24,5 +24,5 @@ QProgressBar QProgressBar::chunk { - background: #54AFD0; + background: #1E70EB; } diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/Widgets/PushButtonConfig.ini b/Code/Framework/AzQtComponents/AzQtComponents/Components/Widgets/PushButtonConfig.ini index 05744772fa..d94664346e 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/Widgets/PushButtonConfig.ini +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/Widgets/PushButtonConfig.ini @@ -13,14 +13,14 @@ Width=24; ArrowWidth=10; [PrimaryColorSet] -Disabled\Start=#7092A7 -Disabled\End=#7092A7 -Sunken\Start=#0073BB -Sunken\End=#0073BB -Hovered\Start=#44BAFF -Hovered\End=#4AB2F8 +Disabled\Start=#2A4875 +Disabled\End=#2A4875 +Sunken\Start=#1E70EB +Sunken\End=#1E70EB +Hovered\Start=#4ABAFF +Hovered\End=#94D2FF Normal\Start=#0095F2 -Normal\End=#0073BB +Normal\End=#1E70EB [SecondaryColorSet] Disabled\Start=#666666 @@ -45,7 +45,7 @@ Thickness=1 Color=#00A1C9 [IconButton] -ActiveColor=#00A1C9 +ActiveColor=#1E70EB DisabledColor=#999999 SelectedColor=#FFFFFF diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/Widgets/SliderConfig.ini b/Code/Framework/AzQtComponents/AzQtComponents/Components/Widgets/SliderConfig.ini index 44f4f6d093..018f29ed41 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/Widgets/SliderConfig.ini +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/Widgets/SliderConfig.ini @@ -12,7 +12,7 @@ HandleBorder\Color=#FFFFFF HandleBorder\Radius=1.5 [Slider] -Handle\Color=#0185D7 +Handle\Color=#1E70EB Handle\ColorDisabled=#999999 Handle\Size=12 Handle\SizeMinusMargin=8 diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/Widgets/Text.cpp b/Code/Framework/AzQtComponents/AzQtComponents/Components/Widgets/Text.cpp index b88209a36b..377f5ecdcf 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/Widgets/Text.cpp +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/Widgets/Text.cpp @@ -46,7 +46,7 @@ namespace AzQtComponents Text::Config Text::defaultConfig() { Config config; - config.hyperlinkColor = QStringLiteral("#44B2F8"); + config.hyperlinkColor = QStringLiteral("#94D2FF"); return config; } diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/Widgets/TextConfig.ini b/Code/Framework/AzQtComponents/AzQtComponents/Components/Widgets/TextConfig.ini index f2eea957c7..3755b61867 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/Widgets/TextConfig.ini +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/Widgets/TextConfig.ini @@ -1,2 +1,2 @@ [Hyperlink] -Color=#44B2F8 \ No newline at end of file +Color=#94D2FF \ No newline at end of file diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/on-disabled.svg b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/on-disabled.svg index 4435ad3862..249bf68af9 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/on-disabled.svg +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/on-disabled.svg @@ -5,7 +5,7 @@ Created with Sketch. - + diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/on-focus.svg b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/on-focus.svg index 90a183a292..5ebe0a47fd 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/on-focus.svg +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/on-focus.svg @@ -5,7 +5,7 @@ Created with Sketch. - + diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/on.svg b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/on.svg index ad78731eb9..353f7b64a4 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/on.svg +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/on.svg @@ -5,7 +5,7 @@ Created with Sketch. - + diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/partial-selected-disabled.svg b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/partial-selected-disabled.svg index a08724b9b9..53c4a6593e 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/partial-selected-disabled.svg +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/partial-selected-disabled.svg @@ -5,7 +5,7 @@ Created with Sketch. - + diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/partial-selected-focus.svg b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/partial-selected-focus.svg index a1093037c6..ccf9416e0e 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/partial-selected-focus.svg +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/partial-selected-focus.svg @@ -5,7 +5,7 @@ Created with Sketch. - + diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/partial-selected.svg b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/partial-selected.svg index 6f678f2682..005e97486e 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/partial-selected.svg +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/partial-selected.svg @@ -5,7 +5,7 @@ Created with Sketch. - + diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/radiobutton/checked-disabled.svg b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/radiobutton/checked-disabled.svg index ffda1ccb1c..61071bbd08 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/radiobutton/checked-disabled.svg +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/radiobutton/checked-disabled.svg @@ -4,7 +4,7 @@ Selection Controls / Radio Button / On - Disabled Created with Sketch. - + \ No newline at end of file diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/radiobutton/checked-focus.svg b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/radiobutton/checked-focus.svg index 7bee259df0..bc1252689c 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/radiobutton/checked-focus.svg +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/radiobutton/checked-focus.svg @@ -4,7 +4,7 @@ Selection Controls / Radio Button / On-focus Created with Sketch. - + \ No newline at end of file diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/radiobutton/checked.svg b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/radiobutton/checked.svg index 70e3d200e3..3ab05eef07 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/radiobutton/checked.svg +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/radiobutton/checked.svg @@ -5,7 +5,7 @@ Created with Sketch. - + diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/toggleswitch/checked-disabled.svg b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/toggleswitch/checked-disabled.svg index 2fea1baf62..d46a6e2c5c 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/toggleswitch/checked-disabled.svg +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/toggleswitch/checked-disabled.svg @@ -5,7 +5,7 @@ Created with Sketch. - + diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/toggleswitch/checked-focus.svg b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/toggleswitch/checked-focus.svg index 46f072b9fd..e5eeac85fd 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/toggleswitch/checked-focus.svg +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/toggleswitch/checked-focus.svg @@ -5,7 +5,7 @@ Created with Sketch. - + diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/toggleswitch/checked.svg b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/toggleswitch/checked.svg index 549f16326d..13c31acd97 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/toggleswitch/checked.svg +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/toggleswitch/checked.svg @@ -5,7 +5,7 @@ Created with Sketch. - + diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/loading.svg b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/loading.svg index d24c0c2b12..7f6fcc2175 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/loading.svg +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/loading.svg @@ -1,6 +1,6 @@ - + Date: Mon, 19 Apr 2021 18:24:27 +0100 Subject: [PATCH 02/54] WIP changes to fix White Box rendering with Atom --- Gems/WhiteBox/Assets/materials/DefaultPBR.material | 4 ++++ Gems/WhiteBox/Code/Source/Rendering/Atom/WhiteBoxBuffer.h | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 Gems/WhiteBox/Assets/materials/DefaultPBR.material diff --git a/Gems/WhiteBox/Assets/materials/DefaultPBR.material b/Gems/WhiteBox/Assets/materials/DefaultPBR.material new file mode 100644 index 0000000000..f0990f148c --- /dev/null +++ b/Gems/WhiteBox/Assets/materials/DefaultPBR.material @@ -0,0 +1,4 @@ +{ + "materialType": "Materials/Types/StandardPBR.materialtype", + "parentMaterial": "Materials/Presets/PBR/default_grid.material" +} diff --git a/Gems/WhiteBox/Code/Source/Rendering/Atom/WhiteBoxBuffer.h b/Gems/WhiteBox/Code/Source/Rendering/Atom/WhiteBoxBuffer.h index bea6de5898..a8f709c361 100644 --- a/Gems/WhiteBox/Code/Source/Rendering/Atom/WhiteBoxBuffer.h +++ b/Gems/WhiteBox/Code/Source/Rendering/Atom/WhiteBoxBuffer.h @@ -98,7 +98,7 @@ namespace WhiteBox // specify the data format for vertex stream data AZ::RHI::BufferDescriptor bufferDescriptor; - bufferDescriptor.m_bindFlags = AZ::RHI::BufferBindFlags::InputAssembly | AZ::RHI::BufferBindFlags::ShaderRead; + bufferDescriptor.m_bindFlags = AZ::RHI::BufferBindFlags::DynamicInputAssembly | AZ::RHI::BufferBindFlags::ShaderRead; bufferDescriptor.m_byteCount = bufferSize; bufferDescriptor.m_alignment = elementSize; From 47ed211bf6aeff944d54bd814710961013d869a0 Mon Sep 17 00:00:00 2001 From: Peng Date: Wed, 21 Apr 2021 13:33:29 -0700 Subject: [PATCH 03/54] [ATOM][RHI][Vulkan][Android] -Add different pass for screen space blur for mobile. -Add macro for constant buffer limits for android vulkan. JIRA: https://jira.agscollab.com/browse/ATOM-14947 https://jira.agscollab.com/browse/ATOM-14949 --- .../Platform/Android/Vulkan/AzslcHeader.azsli | 4 + .../ReflectionScreenSpaceBlurMobile.pass | 43 ++++++ .../Passes/ReflectionScreenSpaceMobile.pass | 137 ++++++++++++++++++ .../Assets/Passes/Reflections_nomsaa.pass | 4 +- 4 files changed, 186 insertions(+), 2 deletions(-) create mode 100644 Gems/Atom/Feature/Common/Assets/Passes/ReflectionScreenSpaceBlurMobile.pass create mode 100644 Gems/Atom/Feature/Common/Assets/Passes/ReflectionScreenSpaceMobile.pass diff --git a/Gems/Atom/Asset/Shader/Code/AZSL/Platform/Android/Vulkan/AzslcHeader.azsli b/Gems/Atom/Asset/Shader/Code/AZSL/Platform/Android/Vulkan/AzslcHeader.azsli index 12fd787150..91036909c6 100644 --- a/Gems/Atom/Asset/Shader/Code/AZSL/Platform/Android/Vulkan/AzslcHeader.azsli +++ b/Gems/Atom/Asset/Shader/Code/AZSL/Platform/Android/Vulkan/AzslcHeader.azsli @@ -19,3 +19,7 @@ #define AZ_TRAIT_ASTC_COMPRESSION 1 static const float4 s_AzslDebugColor = float4(165.0 / 255.0, 30.0 / 255.0, 36.0 / 255.0, 1); + +// Uniform limitation need to be taken into consideration for mobile devices +// https://jira.agscollab.com/browse/ATOM-14949 +#define AZ_TRAIT_CONSTANT_BUFFER_LIMITATIONS 1 \ No newline at end of file diff --git a/Gems/Atom/Feature/Common/Assets/Passes/ReflectionScreenSpaceBlurMobile.pass b/Gems/Atom/Feature/Common/Assets/Passes/ReflectionScreenSpaceBlurMobile.pass new file mode 100644 index 0000000000..e11bcac78d --- /dev/null +++ b/Gems/Atom/Feature/Common/Assets/Passes/ReflectionScreenSpaceBlurMobile.pass @@ -0,0 +1,43 @@ +{ + "Type": "JsonSerialization", + "Version": 1, + "ClassName": "PassAsset", + "ClassData": { + "PassTemplate": { + "Name": "ReflectionScreenSpaceBlurMobilePassTemplate", + "PassClass": "ReflectionScreenSpaceBlurPass", + "Slots": [ + { + "Name": "PreviousFrameInputOutput", + "SlotType": "InputOutput", + "ScopeAttachmentUsage": "Shader" + } + ], + "ImageAttachments": [ + { + "Name": "PreviousFrameImage", + "SizeSource": { + "Source": { + "Pass": "Parent", + "Attachment": "SpecularInput" + } + }, + "ImageDescriptor": { + "Format": "R8G8B8A8_SINT", + "MipLevels": "8", + "SharedQueueMask": "Graphics" + } + } + ], + "Connections": [ + { + "LocalSlot": "PreviousFrameInputOutput", + "AttachmentRef": { + "Pass": "This", + "Attachment": "PreviousFrameImage" + } + } + ] + } + } +} diff --git a/Gems/Atom/Feature/Common/Assets/Passes/ReflectionScreenSpaceMobile.pass b/Gems/Atom/Feature/Common/Assets/Passes/ReflectionScreenSpaceMobile.pass new file mode 100644 index 0000000000..648d643496 --- /dev/null +++ b/Gems/Atom/Feature/Common/Assets/Passes/ReflectionScreenSpaceMobile.pass @@ -0,0 +1,137 @@ +{ + "Type": "JsonSerialization", + "Version": 1, + "ClassName": "PassAsset", + "ClassData": { + "PassTemplate": { + "Name": "ReflectionScreenSpaceMobilePassTemplate", + "PassClass": "ParentPass", + "Slots": [ + { + "Name": "NormalInput", + "SlotType": "Input", + "ScopeAttachmentUsage": "Shader" + }, + { + "Name": "SpecularF0Input", + "SlotType": "Input", + "ScopeAttachmentUsage": "Shader" + }, + { + "Name": "SpecularInput", + "SlotType": "Input", + "ScopeAttachmentUsage": "Shader" + }, + { + "Name": "DepthStencilInput", + "SlotType": "Input", + "ScopeAttachmentUsage": "DepthStencil" + }, + { + "Name": "ReflectionInputOutput", + "SlotType": "InputOutput", + "ScopeAttachmentUsage": "RenderTarget" + } + ], + "PassRequests": [ + { + "Name": "ReflectionScreenSpaceBlurMobilePass", + "TemplateName": "ReflectionScreenSpaceBlurMobilePassTemplate" + }, + { + "Name": "ReflectionScreenSpaceTracePass", + "TemplateName": "ReflectionScreenSpaceTracePassTemplate", + "Connections": [ + { + "LocalSlot": "DepthStencilTextureInput", + "AttachmentRef": { + "Pass": "Parent", + "Attachment": "DepthStencilInput" + } + }, + { + "LocalSlot": "NormalInput", + "AttachmentRef": { + "Pass": "Parent", + "Attachment": "NormalInput" + } + }, + { + "LocalSlot": "DepthStencilInput", + "AttachmentRef": { + "Pass": "Parent", + "Attachment": "DepthStencilInput" + + } + }, + { + "LocalSlot": "SpecularF0Input", + "AttachmentRef": { + "Pass": "Parent", + "Attachment": "SpecularF0Input" + } + } + ] + }, + { + "Name": "ReflectionScreenSpaceCompositePass", + "TemplateName": "ReflectionScreenSpaceCompositePassTemplate", + "ExecuteAfter": [ + "ReflectionScreenSpaceBlurPass" + ], + "Connections": [ + { + "LocalSlot": "TraceInput", + "AttachmentRef": { + "Pass": "ReflectionScreenSpaceTracePass", + "Attachment": "Output" + } + }, + { + "LocalSlot": "PreviousFrameBufferInput", + "AttachmentRef": { + "Pass": "ReflectionScreenSpaceBlurPass", + "Attachment": "PreviousFrameInputOutput" + } + }, + { + "LocalSlot": "NormalInput", + "AttachmentRef": { + "Pass": "Parent", + "Attachment": "NormalInput" + } + }, + { + "LocalSlot": "SpecularF0Input", + "AttachmentRef": { + "Pass": "Parent", + "Attachment": "SpecularF0Input" + } + }, + { + "LocalSlot": "DepthStencilTextureInput", + "AttachmentRef": { + "Pass": "Parent", + "Attachment": "DepthStencilInput" + } + }, + { + "LocalSlot": "DepthStencilInput", + "AttachmentRef": { + "Pass": "Parent", + "Attachment": "DepthStencilInput" + } + }, + { + "LocalSlot": "Output", + "AttachmentRef": { + "Pass": "Parent", + "Attachment": "ReflectionInputOutput" + } + } + ] + } + ] + } + } +} diff --git a/Gems/Atom/Feature/Common/Assets/Passes/Reflections_nomsaa.pass b/Gems/Atom/Feature/Common/Assets/Passes/Reflections_nomsaa.pass index 1973727719..7c15a419a4 100644 --- a/Gems/Atom/Feature/Common/Assets/Passes/Reflections_nomsaa.pass +++ b/Gems/Atom/Feature/Common/Assets/Passes/Reflections_nomsaa.pass @@ -273,8 +273,8 @@ } }, { - "Name": "ReflectionScreenSpacePass", - "TemplateName": "ReflectionScreenSpacePassTemplate", + "Name": "ReflectionScreenSpaceMobilePass", + "TemplateName": "ReflectionScreenSpaceMobilePassTemplate", "Enabled": false, "Connections": [ { From 012ab89a23f9f453512fbcf581e209a668573881 Mon Sep 17 00:00:00 2001 From: jjjoness <82226755+jjjoness@users.noreply.github.com> Date: Thu, 22 Apr 2021 15:45:55 +0100 Subject: [PATCH 04/54] Changed Play Console to right of toolbar. --- Code/Sandbox/Editor/MainWindow.cpp | 16 ++++++++++++++-- Code/Sandbox/Editor/MainWindow.h | 1 + Code/Sandbox/Editor/Resource.h | 1 + Code/Sandbox/Editor/ToolbarManager.cpp | 17 ++++++++++++++--- Code/Sandbox/Editor/ToolbarManager.h | 1 + 5 files changed, 31 insertions(+), 5 deletions(-) diff --git a/Code/Sandbox/Editor/MainWindow.cpp b/Code/Sandbox/Editor/MainWindow.cpp index d7659c2512..e6f30cc6d3 100644 --- a/Code/Sandbox/Editor/MainWindow.cpp +++ b/Code/Sandbox/Editor/MainWindow.cpp @@ -761,6 +761,7 @@ void MainWindow::InitActions() am->AddAction(ID_TOOLBAR_WIDGET_SNAP_GRID, QString()); am->AddAction(ID_TOOLBAR_WIDGET_ENVIRONMENT_MODE, QString()); am->AddAction(ID_TOOLBAR_WIDGET_DEBUG_MODE, QString()); + am->AddAction(ID_TOOLBAR_WIDGET_SPACER_RIGHT, QString()); // File actions am->AddAction(ID_FILE_NEW, tr("New Level")) @@ -1252,9 +1253,9 @@ void MainWindow::InitActions() .Connect(&QAction::triggered, this, &MainWindow::OnRefreshAudioSystem); // Fame actions - am->AddAction(ID_VIEW_SWITCHTOGAME, tr("Play &Game")) + am->AddAction(ID_VIEW_SWITCHTOGAME, tr("Play Console")) .SetShortcut(tr("Ctrl+G")) - .SetToolTip(tr("Play Game (Ctrl+G)")) + .SetToolTip(tr("Play Console (Ctrl+G)")) .SetStatusTip(tr("Activate the game input mode")) .SetApplyHoverEffect() .SetCheckable(true) @@ -1626,6 +1627,14 @@ QToolButton* MainWindow::CreateDebugModeButton() return debugModeButton; } +QWidget* MainWindow::CreateSpacerRightWidget() +{ + QWidget* spacer = new QWidget(); + spacer->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred); + spacer->setVisible(true); + return spacer; +} + void MainWindow::InitEnvironmentModeMenu(CVarMenu* environmentModeMenu) { environmentModeMenu->clear(); @@ -2535,6 +2544,9 @@ QWidget* MainWindow::CreateToolbarWidget(int actionId) case ID_TOOLBAR_WIDGET_DEBUG_MODE: w = CreateDebugModeButton(); break; + case ID_TOOLBAR_WIDGET_SPACER_RIGHT: + w = CreateSpacerRightWidget(); + break; default: qWarning() << Q_FUNC_INFO << "Unknown id " << actionId; return nullptr; diff --git a/Code/Sandbox/Editor/MainWindow.h b/Code/Sandbox/Editor/MainWindow.h index c40d732cee..e5936f7c42 100644 --- a/Code/Sandbox/Editor/MainWindow.h +++ b/Code/Sandbox/Editor/MainWindow.h @@ -228,6 +228,7 @@ private: QWidget* CreateSnapToGridWidget(); QWidget* CreateSnapToAngleWidget(); + QWidget* CreateSpacerRightWidget(); QComboBox* CreateRefCoordComboBox(); diff --git a/Code/Sandbox/Editor/Resource.h b/Code/Sandbox/Editor/Resource.h index d72c2d76d4..fcb8b57a1e 100644 --- a/Code/Sandbox/Editor/Resource.h +++ b/Code/Sandbox/Editor/Resource.h @@ -408,4 +408,5 @@ #define ID_TOOLBAR_WIDGET_SNAP_GRID 50008 #define ID_TOOLBAR_WIDGET_ENVIRONMENT_MODE 50011 #define ID_TOOLBAR_WIDGET_DEBUG_MODE 50012 +#define ID_TOOLBAR_WIDGET_SPACER_RIGHT 50013 #define ID_TOOLBAR_WIDGET_LAST 50020 diff --git a/Code/Sandbox/Editor/ToolbarManager.cpp b/Code/Sandbox/Editor/ToolbarManager.cpp index 12fd9b1a03..f855c33c41 100644 --- a/Code/Sandbox/Editor/ToolbarManager.cpp +++ b/Code/Sandbox/Editor/ToolbarManager.cpp @@ -511,6 +511,7 @@ void ToolbarManager::InitializeStandardToolbars() m_standardToolbars.reserve(5 + macroToolbars.size()); m_standardToolbars.push_back(GetEditModeToolbar()); m_standardToolbars.push_back(GetObjectToolbar()); + m_standardToolbars.push_back(GetPlayConsoleToolbar()); IPlugin* pGamePlugin = GetIEditor()->GetPluginManager()->GetPluginByGUID("{71CED8AB-54E2-4739-AA78-7590A5DC5AEB}"); IPlugin* pDescriptionEditorPlugin = GetIEditor()->GetPluginManager()->GetPluginByGUID("{4B9B7074-2D58-4AFD-BBE1-BE469D48456A}"); @@ -519,6 +520,7 @@ void ToolbarManager::InitializeStandardToolbars() m_standardToolbars.push_back(GetMiscToolbar()); } + std::copy(std::begin(macroToolbars), std::end(macroToolbars), std::back_inserter(m_standardToolbars)); // Save that default state to future versions can reason about updating modified standard toolbars @@ -597,8 +599,6 @@ AmazonToolbar ToolbarManager::GetEditModeToolbar() const t.AddAction(ID_EDITMODE_SCALE, ORIGINAL_TOOLBAR_VERSION); t.AddAction(ID_EDITMODE_SELECTAREA, ORIGINAL_TOOLBAR_VERSION); - t.AddAction(ID_VIEW_SWITCHTOGAME, TOOLBARS_WITH_PLAY_GAME); - t.AddAction(ID_TOOLBAR_SEPARATOR, ORIGINAL_TOOLBAR_VERSION); t.AddAction(ID_TOOLBAR_WIDGET_REF_COORD, ORIGINAL_TOOLBAR_VERSION); t.AddAction(ID_SELECT_AXIS_X, ORIGINAL_TOOLBAR_VERSION); @@ -636,6 +636,17 @@ AmazonToolbar ToolbarManager::GetObjectToolbar() const return t; } +AmazonToolbar ToolbarManager::GetPlayConsoleToolbar() const +{ + AmazonToolbar t = AmazonToolbar("PlayConsole", QObject::tr("Play Console Toolbar")); + t.SetMainToolbar(true); + + t.AddAction(ID_TOOLBAR_WIDGET_SPACER_RIGHT, ORIGINAL_TOOLBAR_VERSION); + t.AddAction(ID_TOOLBAR_SEPARATOR, ORIGINAL_TOOLBAR_VERSION); + t.AddAction(ID_VIEW_SWITCHTOGAME, TOOLBARS_WITH_PLAY_GAME); + return t; +} + AmazonToolbar ToolbarManager::GetEditorsToolbar() const { AmazonToolbar t = AmazonToolbar("Editors", QObject::tr("Editors Toolbar")); @@ -767,7 +778,7 @@ void ToolbarManager::InstantiateToolbars() for (int i = 0; i < numToolbars; ++i) { InstantiateToolbar(i); - if (i == 1) + if (i == 2) { // Hack. Just copying how it was m_mainWindow->addToolBarBreak(); diff --git a/Code/Sandbox/Editor/ToolbarManager.h b/Code/Sandbox/Editor/ToolbarManager.h index a0a9c83029..70228636f5 100644 --- a/Code/Sandbox/Editor/ToolbarManager.h +++ b/Code/Sandbox/Editor/ToolbarManager.h @@ -167,6 +167,7 @@ public: AmazonToolbar GetObjectToolbar() const; AmazonToolbar GetEditorsToolbar() const; AmazonToolbar GetMiscToolbar() const; + AmazonToolbar GetPlayConsoleToolbar() const; private: Q_DISABLE_COPY(ToolbarManager); From 62564e68dec909b7315b520c05da9d6fa8478a3a Mon Sep 17 00:00:00 2001 From: pappeste Date: Thu, 15 Apr 2021 15:02:02 -0700 Subject: [PATCH 05/54] Fixing hang when parameters are passed --- Code/CryEngine/CrySystem/CmdLine.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/Code/CryEngine/CrySystem/CmdLine.cpp b/Code/CryEngine/CrySystem/CmdLine.cpp index 15e655ddcb..07fbf6aa15 100644 --- a/Code/CryEngine/CrySystem/CmdLine.cpp +++ b/Code/CryEngine/CrySystem/CmdLine.cpp @@ -185,6 +185,7 @@ string CCmdLine::Next(char*& src) return string(org, src - 1); case ' ': + ch = *src++; continue; default: org = src - 1; From c920e98da7f6c4879e99bc562e7ef518e9208d88 Mon Sep 17 00:00:00 2001 From: pereslav Date: Thu, 22 Apr 2021 17:29:49 +0100 Subject: [PATCH 06/54] Added optional activation of selective entities spawning --- Gems/Multiplayer/Code/Source/MultiplayerTypes.h | 6 ++++++ .../EntityReplication/EntityReplicationManager.cpp | 5 +---- .../Code/Source/NetworkEntity/INetworkEntityManager.h | 3 ++- .../Code/Source/NetworkEntity/NetworkEntityManager.cpp | 7 ++++++- .../Code/Source/NetworkEntity/NetworkEntityManager.h | 2 +- 5 files changed, 16 insertions(+), 7 deletions(-) diff --git a/Gems/Multiplayer/Code/Source/MultiplayerTypes.h b/Gems/Multiplayer/Code/Source/MultiplayerTypes.h index 7ffaa8a56e..db4517b90b 100644 --- a/Gems/Multiplayer/Code/Source/MultiplayerTypes.h +++ b/Gems/Multiplayer/Code/Source/MultiplayerTypes.h @@ -70,6 +70,12 @@ namespace Multiplayer True }; + enum class AutoActivate : uint8_t + { + DoNotActivate, + Activate + }; + // This is just a placeholder // The level/prefab cooking will devise the actual solution for identifying a dynamically spawnable entity within a prefab struct PrefabEntityId diff --git a/Gems/Multiplayer/Code/Source/NetworkEntity/EntityReplication/EntityReplicationManager.cpp b/Gems/Multiplayer/Code/Source/NetworkEntity/EntityReplication/EntityReplicationManager.cpp index 8db582f6e5..18fa338223 100644 --- a/Gems/Multiplayer/Code/Source/NetworkEntity/EntityReplication/EntityReplicationManager.cpp +++ b/Gems/Multiplayer/Code/Source/NetworkEntity/EntityReplication/EntityReplicationManager.cpp @@ -542,11 +542,8 @@ namespace Multiplayer // Create an entity if we don't have one if (createEntity) { - // @pereslav - //replicatorEntity = GetNetworkEntityManager()->CreateSingleEntityImmediateInternal(prefabEntityId, EntitySpawnType::Replicate, AutoActivate::DoNotActivate, netEntityId, localNetworkRole, AZ::Transform::Identity()); INetworkEntityManager::EntityList entityList = GetNetworkEntityManager()->CreateEntitiesImmediate( - prefabEntityId, netEntityId, localNetworkRole, - AZ::Transform::Identity()); + prefabEntityId, netEntityId, localNetworkRole, AutoActivate::DoNotActivate, AZ::Transform::Identity()); if (entityList.size() == 1) { diff --git a/Gems/Multiplayer/Code/Source/NetworkEntity/INetworkEntityManager.h b/Gems/Multiplayer/Code/Source/NetworkEntity/INetworkEntityManager.h index 557a912a31..c79e45864d 100644 --- a/Gems/Multiplayer/Code/Source/NetworkEntity/INetworkEntityManager.h +++ b/Gems/Multiplayer/Code/Source/NetworkEntity/INetworkEntityManager.h @@ -55,7 +55,8 @@ namespace Multiplayer //! Creates new entities of the given archetype //! @param prefabEntryId the name of the spawnable to spawn virtual EntityList CreateEntitiesImmediate( - const PrefabEntityId& prefabEntryId, NetEntityId netEntityId, NetEntityRole netEntityRole, const AZ::Transform& transform) = 0; + const PrefabEntityId& prefabEntryId, NetEntityId netEntityId, NetEntityRole netEntityRole, AutoActivate autoActivate, + const AZ::Transform& transform) = 0; //! Returns an ConstEntityPtr for the provided entityId. //! @param netEntityId the netEntityId to get an ConstEntityPtr for diff --git a/Gems/Multiplayer/Code/Source/NetworkEntity/NetworkEntityManager.cpp b/Gems/Multiplayer/Code/Source/NetworkEntity/NetworkEntityManager.cpp index 43302efdaa..2eb93d706d 100644 --- a/Gems/Multiplayer/Code/Source/NetworkEntity/NetworkEntityManager.cpp +++ b/Gems/Multiplayer/Code/Source/NetworkEntity/NetworkEntityManager.cpp @@ -356,7 +356,7 @@ namespace Multiplayer INetworkEntityManager::EntityList NetworkEntityManager::CreateEntitiesImmediate( const PrefabEntityId& prefabEntryId, NetEntityId netEntityId, NetEntityRole netEntityRole, - const AZ::Transform& transform) + AutoActivate autoActivate, const AZ::Transform& transform) { INetworkEntityManager::EntityList returnList; @@ -402,6 +402,11 @@ namespace Multiplayer transformComponent->SetWorldTM(transform); } + if (autoActivate == AutoActivate::DoNotActivate) + { + clone->SetRuntimeActiveByDefault(false); + } + AzFramework::GameEntityContextRequestBus::Broadcast( &AzFramework::GameEntityContextRequestBus::Events::AddGameEntity, clone); diff --git a/Gems/Multiplayer/Code/Source/NetworkEntity/NetworkEntityManager.h b/Gems/Multiplayer/Code/Source/NetworkEntity/NetworkEntityManager.h index 148645c638..f67d28bd7a 100644 --- a/Gems/Multiplayer/Code/Source/NetworkEntity/NetworkEntityManager.h +++ b/Gems/Multiplayer/Code/Source/NetworkEntity/NetworkEntityManager.h @@ -49,7 +49,7 @@ namespace Multiplayer EntityList CreateEntitiesImmediate( const PrefabEntityId& prefabEntryId, NetEntityId netEntityId, NetEntityRole netEntityRole, - const AZ::Transform& transform) override; + AutoActivate autoActivate, const AZ::Transform& transform) override; uint32_t GetEntityCount() const override; NetworkEntityHandle AddEntityToEntityMap(NetEntityId netEntityId, AZ::Entity* entity) override; From 57cbeaff0a74ad4a155746650cd7fa4300dff979 Mon Sep 17 00:00:00 2001 From: pereslav Date: Thu, 22 Apr 2021 17:32:06 +0100 Subject: [PATCH 07/54] Added a cmd argument support for custom cfg files --- Code/LauncherUnified/Launcher.cpp | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/Code/LauncherUnified/Launcher.cpp b/Code/LauncherUnified/Launcher.cpp index 36d6a432f5..4721e3f0a7 100644 --- a/Code/LauncherUnified/Launcher.cpp +++ b/Code/LauncherUnified/Launcher.cpp @@ -46,6 +46,21 @@ extern "C" void CreateStaticModules(AZStd::vector& modulesOut); namespace { + void ExecuteCustomConfig(AzFramework::Application& application) + { + const AZStd::string_view customCfgKey = "customcfg"; + const AZ::CommandLine* commandLine = application.GetCommandLine(); + if (commandLine->HasSwitch(customCfgKey) && commandLine->GetNumSwitchValues(customCfgKey) > 0) + { + const AZStd::string& customCfg = commandLine->GetSwitchValue(customCfgKey, 0); + if (!customCfg.empty()) + { + AZStd::string execString = "exec " + customCfg; + gEnv->pConsole->ExecuteString(execString.c_str()); + } + } + } + #if AZ_TRAIT_LAUNCHER_USE_CRY_DYNAMIC_MODULE_HANDLE // mimics AZ::DynamicModuleHandle but uses CryLibrary under the hood, // which is necessary to properly load legacy Cry libraries on some platforms @@ -639,6 +654,8 @@ namespace O3DELauncher // Execute autoexec.cfg to load the initial level gEnv->pConsole->ExecuteString("exec autoexec.cfg"); + ExecuteCustomConfig(gameApplication); + gEnv->pSystem->ExecuteCommandLine(false); // Run the main loop From 991fb071a5258cd6f128cbf2eb8e53ba7f63003c Mon Sep 17 00:00:00 2001 From: Tommy Walton Date: Fri, 23 Apr 2021 16:04:17 -0700 Subject: [PATCH 08/54] Add a wildcard source dependecy to the scene builder for wrinklemasks --- .../Code/Source/SceneBuilder/SceneBuilderWorker.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/Gems/SceneProcessing/Code/Source/SceneBuilder/SceneBuilderWorker.cpp b/Gems/SceneProcessing/Code/Source/SceneBuilder/SceneBuilderWorker.cpp index fa562a2986..bf12e91ef9 100644 --- a/Gems/SceneProcessing/Code/Source/SceneBuilder/SceneBuilderWorker.cpp +++ b/Gems/SceneProcessing/Code/Source/SceneBuilder/SceneBuilderWorker.cpp @@ -98,7 +98,7 @@ namespace SceneBuilder descriptor.m_jobKey = "Scene compilation"; descriptor.SetPlatformIdentifier(enabledPlatform.m_identifier.c_str()); descriptor.m_failOnError = true; - descriptor.m_priority = 11; // more important than static mesh files, since these may control logic (actors and motions specifically) + descriptor.m_priority = 11; // these may control logic (actors and motions specifically) descriptor.m_additionalFingerprintInfo = GetFingerprint(); AZ::SceneAPI::SceneBuilderDependencyBus::Broadcast(&AZ::SceneAPI::SceneBuilderDependencyRequests::ReportJobDependencies, @@ -107,11 +107,17 @@ namespace SceneBuilder response.m_createJobOutputs.push_back(descriptor); } - // Adding corresponding material file as a source file dependency + // Adding corresponding _wrinklemask folder as a source file dependency + // This enables morph target assets to get references to the wrinkle masks + // in the MorphTargetExporter, so they can be automatically applied at runtime AssetBuilderSDK::SourceFileDependency sourceFileDependencyInfo; AZStd::string relPath = request.m_sourceFile.c_str(); - AzFramework::StringFunc::Path::ReplaceExtension(relPath, "mtl"); + AzFramework::StringFunc::Path::StripExtension(relPath); + relPath += "_wrinklemasks"; + AzFramework::StringFunc::Path::AppendSeparator(relPath); + relPath += "*_wrinklemask.*"; sourceFileDependencyInfo.m_sourceFileDependencyPath = relPath; + sourceFileDependencyInfo.m_sourceDependencyType = AssetBuilderSDK::SourceFileDependency::SourceFileDependencyType::Wildcards; response.m_sourceFileDependencyList.push_back(sourceFileDependencyInfo); response.m_result = AssetBuilderSDK::CreateJobsResultCode::Success; From 008c65352476feea64c7cc723ce5656ca3208d64 Mon Sep 17 00:00:00 2001 From: pereslav Date: Mon, 26 Apr 2021 13:30:35 +0100 Subject: [PATCH 09/54] Added ReadyForEntityUpdates message allowing the server to send entity updates --- Gems/Multiplayer/Code/Include/IMultiplayer.h | 4 ++++ .../AutoGen/Multiplayer.AutoPackets.xml | 4 ++++ .../ServerToClientConnectionData.h | 5 +++-- .../ServerToClientConnectionData.inl | 8 ++++++- .../Source/MultiplayerSystemComponent.cpp | 22 +++++++++++++++++++ .../Code/Source/MultiplayerSystemComponent.h | 2 ++ .../NetworkEntity/NetworkEntityManager.cpp | 20 ++++++++++++----- 7 files changed, 56 insertions(+), 9 deletions(-) diff --git a/Gems/Multiplayer/Code/Include/IMultiplayer.h b/Gems/Multiplayer/Code/Include/IMultiplayer.h index 94744dbb54..0f28bef403 100644 --- a/Gems/Multiplayer/Code/Include/IMultiplayer.h +++ b/Gems/Multiplayer/Code/Include/IMultiplayer.h @@ -92,6 +92,10 @@ namespace Multiplayer //! @return the stats object bound to this multiplayer instance MultiplayerStats& GetStats() { return m_stats; } + //! Sends a packet telling if entity update messages can be sent + //! @param readyForEntityUpdates Ready for entity updates or not + virtual void SendReadyForEntityUpdates(bool readyForEntityUpdates) = 0; + private: MultiplayerStats m_stats; }; diff --git a/Gems/Multiplayer/Code/Source/AutoGen/Multiplayer.AutoPackets.xml b/Gems/Multiplayer/Code/Source/AutoGen/Multiplayer.AutoPackets.xml index e5549e90d6..758ea27ad7 100644 --- a/Gems/Multiplayer/Code/Source/AutoGen/Multiplayer.AutoPackets.xml +++ b/Gems/Multiplayer/Code/Source/AutoGen/Multiplayer.AutoPackets.xml @@ -14,6 +14,10 @@ + + + + diff --git a/Gems/Multiplayer/Code/Source/ConnectionData/ServerToClientConnectionData.h b/Gems/Multiplayer/Code/Source/ConnectionData/ServerToClientConnectionData.h index 02b045e63f..596bdc88d9 100644 --- a/Gems/Multiplayer/Code/Source/ConnectionData/ServerToClientConnectionData.h +++ b/Gems/Multiplayer/Code/Source/ConnectionData/ServerToClientConnectionData.h @@ -36,7 +36,8 @@ namespace Multiplayer void Update(AZ::TimeMs serverGameTimeMs) override; //! @} - bool CanSendUpdates(); + bool CanSendUpdates() const; + void SetCanSendUpdates(bool canSendUpdates); NetworkEntityHandle GetPrimaryPlayerEntity(); const NetworkEntityHandle& GetPrimaryPlayerEntity() const; @@ -51,7 +52,7 @@ namespace Multiplayer EntityStopEvent::Handler m_controlledEntityRemovedHandler; EntityMigrationEvent::Handler m_controlledEntityMigrationHandler; AzNetworking::IConnection* m_connection = nullptr; - bool m_canSendUpdates = true; + bool m_canSendUpdates = false; }; } diff --git a/Gems/Multiplayer/Code/Source/ConnectionData/ServerToClientConnectionData.inl b/Gems/Multiplayer/Code/Source/ConnectionData/ServerToClientConnectionData.inl index 07bfb51536..0a4215a363 100644 --- a/Gems/Multiplayer/Code/Source/ConnectionData/ServerToClientConnectionData.inl +++ b/Gems/Multiplayer/Code/Source/ConnectionData/ServerToClientConnectionData.inl @@ -12,11 +12,17 @@ namespace Multiplayer { - inline bool ServerToClientConnectionData::CanSendUpdates() + inline bool ServerToClientConnectionData::CanSendUpdates() const { return m_canSendUpdates; } + inline void ServerToClientConnectionData::SetCanSendUpdates(bool canSendUpdates) + { + m_canSendUpdates = canSendUpdates; + } + + inline NetworkEntityHandle ServerToClientConnectionData::GetPrimaryPlayerEntity() { return m_controlledEntity; diff --git a/Gems/Multiplayer/Code/Source/MultiplayerSystemComponent.cpp b/Gems/Multiplayer/Code/Source/MultiplayerSystemComponent.cpp index e40e9e9d66..49a0f63b63 100644 --- a/Gems/Multiplayer/Code/Source/MultiplayerSystemComponent.cpp +++ b/Gems/Multiplayer/Code/Source/MultiplayerSystemComponent.cpp @@ -381,6 +381,19 @@ namespace Multiplayer return false; } + bool MultiplayerSystemComponent::HandleRequest( AzNetworking::IConnection* connection, + [[maybe_unused]] const AzNetworking::IPacketHeader& packetHeader, MultiplayerPackets::ReadyForEntityUpdates& packet) + { + auto* connectionData = reinterpret_cast(connection->GetUserData()); + if (connectionData) + { + connectionData->SetCanSendUpdates(packet.GetReadyForEntityUpdates()); + return true; + } + + return false; + } + ConnectResult MultiplayerSystemComponent::ValidateConnect ( [[maybe_unused]] const IpAddress& remoteAddress, @@ -503,6 +516,15 @@ namespace Multiplayer handler.Connect(m_shutdownEvent); } + void MultiplayerSystemComponent::SendReadyForEntityUpdates(bool readyForEntityUpdates) + { + IConnectionSet& connectionSet = m_networkInterface->GetConnectionSet(); + connectionSet.VisitConnections([readyForEntityUpdates](IConnection& connection) + { + connection.SendReliablePacket(MultiplayerPackets::ReadyForEntityUpdates(readyForEntityUpdates)); + }); + } + void MultiplayerSystemComponent::DumpStats([[maybe_unused]] const AZ::ConsoleCommandContainer& arguments) { const MultiplayerStats& stats = GetStats(); diff --git a/Gems/Multiplayer/Code/Source/MultiplayerSystemComponent.h b/Gems/Multiplayer/Code/Source/MultiplayerSystemComponent.h index 1e10f9841e..8695dea7dd 100644 --- a/Gems/Multiplayer/Code/Source/MultiplayerSystemComponent.h +++ b/Gems/Multiplayer/Code/Source/MultiplayerSystemComponent.h @@ -71,6 +71,7 @@ namespace Multiplayer bool HandleRequest(AzNetworking::IConnection* connection, const AzNetworking::IPacketHeader& packetHeader, MultiplayerPackets::ClientMigration& packet); bool HandleRequest(AzNetworking::IConnection* connection, const AzNetworking::IPacketHeader& packetHeader, MultiplayerPackets::NotifyClientMigration& packet); bool HandleRequest(AzNetworking::IConnection* connection, const AzNetworking::IPacketHeader& packetHeader, MultiplayerPackets::EntityMigration& packet); + bool HandleRequest(AzNetworking::IConnection* connection, const AzNetworking::IPacketHeader& packetHeader, MultiplayerPackets::ReadyForEntityUpdates& packet); //! IConnectionListener interface //! @{ @@ -88,6 +89,7 @@ namespace Multiplayer void AddConnectionAcquiredHandler(ConnectionAcquiredEvent::Handler& handler) override; void AddSessionInitHandler(SessionInitEvent::Handler& handler) override; void AddSessionShutdownHandler(SessionShutdownEvent::Handler& handler) override; + void SendReadyForEntityUpdates(bool readyForEntityUpdates) override; //! @} //! Console commands. diff --git a/Gems/Multiplayer/Code/Source/NetworkEntity/NetworkEntityManager.cpp b/Gems/Multiplayer/Code/Source/NetworkEntity/NetworkEntityManager.cpp index 2eb93d706d..131e7be3f1 100644 --- a/Gems/Multiplayer/Code/Source/NetworkEntity/NetworkEntityManager.cpp +++ b/Gems/Multiplayer/Code/Source/NetworkEntity/NetworkEntityManager.cpp @@ -11,19 +11,19 @@ */ #include -#include -#include -#include + +#include #include #include +#include #include #include +#include #include #include -#include #include #include -#include +#include namespace Multiplayer { @@ -462,7 +462,9 @@ namespace Multiplayer m_rootSpawnableAsset = netSpawnableAsset; - const auto agentType = AZ::Interface::Get()->GetAgentType(); + auto* iMultiplayer = AZ::Interface::Get(); + + const auto agentType = iMultiplayer->GetAgentType(); const bool spawnImmediately = (agentType == MultiplayerAgentType::ClientServer || agentType == MultiplayerAgentType::DedicatedServer); @@ -470,6 +472,12 @@ namespace Multiplayer { CreateEntitiesImmediate(*netSpawnable, NetEntityRole::Authority); } + else + { + // If we don't spawn net entities immediately (i.e. it is a client), + // tell the server/host it can start sending updates that will instantiate entities. + iMultiplayer->SendReadyForEntityUpdates(true); + } } void NetworkEntityManager::OnRootSpawnableReleased([[maybe_unused]] uint32_t generation) From 8f200ed3cf462cd56a1415baa26df62a05a1f38d Mon Sep 17 00:00:00 2001 From: hultonha Date: Mon, 26 Apr 2021 13:50:49 +0100 Subject: [PATCH 10/54] undo InputAssembly change --- Gems/WhiteBox/Code/Source/Rendering/Atom/WhiteBoxBuffer.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gems/WhiteBox/Code/Source/Rendering/Atom/WhiteBoxBuffer.h b/Gems/WhiteBox/Code/Source/Rendering/Atom/WhiteBoxBuffer.h index c3683607f7..9d8f327616 100644 --- a/Gems/WhiteBox/Code/Source/Rendering/Atom/WhiteBoxBuffer.h +++ b/Gems/WhiteBox/Code/Source/Rendering/Atom/WhiteBoxBuffer.h @@ -98,7 +98,7 @@ namespace WhiteBox // specify the data format for vertex stream data AZ::RHI::BufferDescriptor bufferDescriptor; - bufferDescriptor.m_bindFlags = AZ::RHI::BufferBindFlags::DynamicInputAssembly | AZ::RHI::BufferBindFlags::ShaderRead; + bufferDescriptor.m_bindFlags = AZ::RHI::BufferBindFlags::InputAssembly | AZ::RHI::BufferBindFlags::ShaderRead; bufferDescriptor.m_byteCount = bufferSize; bufferDescriptor.m_alignment = elementSize; From 73df05529ceeaa7672076a0ec10bfa79374bb9a0 Mon Sep 17 00:00:00 2001 From: jjjoness <82226755+jjjoness@users.noreply.github.com> Date: Mon, 26 Apr 2021 13:59:05 +0100 Subject: [PATCH 11/54] Completed new Play Console button. --- .../Editor/Core/LevelEditorMenuHandler.cpp | 2 +- Code/Sandbox/Editor/CryEdit.cpp | 2 +- Code/Sandbox/Editor/MainWindow.cpp | 26 +++++++++++++++++-- Code/Sandbox/Editor/MainWindow.h | 1 + Code/Sandbox/Editor/Resource.h | 2 +- Code/Sandbox/Editor/ToolbarManager.cpp | 2 +- 6 files changed, 29 insertions(+), 6 deletions(-) diff --git a/Code/Sandbox/Editor/Core/LevelEditorMenuHandler.cpp b/Code/Sandbox/Editor/Core/LevelEditorMenuHandler.cpp index aed53d6e8b..10d9928259 100644 --- a/Code/Sandbox/Editor/Core/LevelEditorMenuHandler.cpp +++ b/Code/Sandbox/Editor/Core/LevelEditorMenuHandler.cpp @@ -685,7 +685,7 @@ QMenu* LevelEditorMenuHandler::CreateGameMenu() auto gameMenu = m_actionManager->AddMenu(tr("&Game"), s_gameMenuId); // Play Game - gameMenu.AddAction(ID_VIEW_SWITCHTOGAME); + gameMenu.AddAction(ID_TOOLBAR_WIDGET_SWITCHTOGAME); // Enable Physics/AI gameMenu.AddAction(ID_SWITCH_PHYSICS); diff --git a/Code/Sandbox/Editor/CryEdit.cpp b/Code/Sandbox/Editor/CryEdit.cpp index a474706910..d27450fc88 100644 --- a/Code/Sandbox/Editor/CryEdit.cpp +++ b/Code/Sandbox/Editor/CryEdit.cpp @@ -384,7 +384,7 @@ void CCryEditApp::RegisterActionHandlers() ON_COMMAND(ID_EDIT_FETCH, OnEditFetch) ON_COMMAND(ID_GENERATORS_STATICOBJECTS, OnGeneratorsStaticobjects) ON_COMMAND(ID_FILE_EXPORTTOGAMENOSURFACETEXTURE, OnFileExportToGameNoSurfaceTexture) - ON_COMMAND(ID_VIEW_SWITCHTOGAME, OnViewSwitchToGame) + ON_COMMAND(ID_TOOLBAR_WIDGET_SWITCHTOGAME, OnViewSwitchToGame) ON_COMMAND(ID_EDIT_SELECTALL, OnEditSelectAll) ON_COMMAND(ID_EDIT_SELECTNONE, OnEditSelectNone) ON_COMMAND(ID_EDIT_DELETE, OnEditDelete) diff --git a/Code/Sandbox/Editor/MainWindow.cpp b/Code/Sandbox/Editor/MainWindow.cpp index 5411511eb8..5c710f318a 100644 --- a/Code/Sandbox/Editor/MainWindow.cpp +++ b/Code/Sandbox/Editor/MainWindow.cpp @@ -1172,7 +1172,8 @@ void MainWindow::InitActions() .Connect(&QAction::triggered, this, &MainWindow::OnRefreshAudioSystem); // Fame actions - am->AddAction(ID_VIEW_SWITCHTOGAME, tr("Play Console")) + am->AddAction(ID_TOOLBAR_WIDGET_SWITCHTOGAME, tr("Play Console")) + .SetIcon(QIcon(":/stylesheet/img/UI20/toolbar/Play.svg")) .SetShortcut(tr("Ctrl+G")) .SetToolTip(tr("Play Console (Ctrl+G)")) .SetStatusTip(tr("Activate the game input mode")) @@ -1498,6 +1499,24 @@ QWidget* MainWindow::CreateSpacerRightWidget() return spacer; } +QWidget* MainWindow::CreateSwitchToGameButton() +{ + QWidget* playConsole = new QWidget(); + QHBoxLayout* layout = new QHBoxLayout(); + playConsole->setLayout(layout); + + QLabel* label = new QLabel(); + label->setText(tr("Play Console")); + + QToolButton*play = new QToolButton(); + play->setAutoRaise(true); + play->setDefaultAction(m_actionManager->GetAction(ID_TOOLBAR_WIDGET_SWITCHTOGAME)); + layout->addWidget(label); + layout->addWidget(play); + return playConsole; +} + + void MainWindow::InitEnvironmentModeMenu(CVarMenu* environmentModeMenu) { environmentModeMenu->clear(); @@ -1705,7 +1724,7 @@ void MainWindow::OnGameModeChanged(bool inGameMode) { menuBar()->setDisabled(inGameMode); m_toolbarManager->SetEnabled(!inGameMode); - QAction* action = m_actionManager->GetAction(ID_VIEW_SWITCHTOGAME); + QAction* action = m_actionManager->GetAction(ID_TOOLBAR_WIDGET_SWITCHTOGAME); action->blockSignals(true); // avoid a loop action->setChecked(inGameMode); action->blockSignals(false); @@ -2406,6 +2425,9 @@ QWidget* MainWindow::CreateToolbarWidget(int actionId) break; case ID_TOOLBAR_WIDGET_SPACER_RIGHT: w = CreateSpacerRightWidget(); + break; + case ID_TOOLBAR_WIDGET_SWITCHTOGAME: + w = CreateSwitchToGameButton(); break; default: qWarning() << Q_FUNC_INFO << "Unknown id " << actionId; diff --git a/Code/Sandbox/Editor/MainWindow.h b/Code/Sandbox/Editor/MainWindow.h index cafa719589..05cc6e7640 100644 --- a/Code/Sandbox/Editor/MainWindow.h +++ b/Code/Sandbox/Editor/MainWindow.h @@ -216,6 +216,7 @@ private: QWidget* CreateSnapToGridWidget(); QWidget* CreateSnapToAngleWidget(); QWidget* CreateSpacerRightWidget(); + QWidget* CreateSwitchToGameButton(); QToolButton* CreateUndoRedoButton(int command); diff --git a/Code/Sandbox/Editor/Resource.h b/Code/Sandbox/Editor/Resource.h index 56f1fc86a1..e2944a3e14 100644 --- a/Code/Sandbox/Editor/Resource.h +++ b/Code/Sandbox/Editor/Resource.h @@ -132,7 +132,6 @@ #define ID_EDIT_HOLD 33464 #define ID_EDIT_FETCH 33465 #define ID_FILE_EXPORTTOGAMENOSURFACETEXTURE 33473 -#define ID_VIEW_SWITCHTOGAME 33477 #define ID_EDIT_DELETE 33480 #define ID_MOVE_OBJECT 33481 #define ID_RENAME_OBJ 33483 @@ -398,4 +397,5 @@ #define ID_TOOLBAR_WIDGET_ENVIRONMENT_MODE 50011 #define ID_TOOLBAR_WIDGET_DEBUG_MODE 50012 #define ID_TOOLBAR_WIDGET_SPACER_RIGHT 50013 +#define ID_TOOLBAR_WIDGET_SWITCHTOGAME 50014 #define ID_TOOLBAR_WIDGET_LAST 50020 diff --git a/Code/Sandbox/Editor/ToolbarManager.cpp b/Code/Sandbox/Editor/ToolbarManager.cpp index 9d2f57f44b..cdeee570ca 100644 --- a/Code/Sandbox/Editor/ToolbarManager.cpp +++ b/Code/Sandbox/Editor/ToolbarManager.cpp @@ -629,7 +629,7 @@ AmazonToolbar ToolbarManager::GetPlayConsoleToolbar() const t.AddAction(ID_TOOLBAR_WIDGET_SPACER_RIGHT, ORIGINAL_TOOLBAR_VERSION); t.AddAction(ID_TOOLBAR_SEPARATOR, ORIGINAL_TOOLBAR_VERSION); - t.AddAction(ID_VIEW_SWITCHTOGAME, TOOLBARS_WITH_PLAY_GAME); + t.AddAction(ID_TOOLBAR_WIDGET_SWITCHTOGAME, TOOLBARS_WITH_PLAY_GAME); return t; } From fbaa59f28f2a7ecdff72f20d867e927d93d5676e Mon Sep 17 00:00:00 2001 From: hultonha Date: Mon, 26 Apr 2021 15:03:29 +0100 Subject: [PATCH 12/54] updates following review feedback --- .../Json/ByteStreamSerializer.cpp | 98 ++++++++----------- 1 file changed, 41 insertions(+), 57 deletions(-) diff --git a/Code/Framework/AzCore/AzCore/Serialization/Json/ByteStreamSerializer.cpp b/Code/Framework/AzCore/AzCore/Serialization/Json/ByteStreamSerializer.cpp index 6077a66682..f15178dd00 100644 --- a/Code/Framework/AzCore/AzCore/Serialization/Json/ByteStreamSerializer.cpp +++ b/Code/Framework/AzCore/AzCore/Serialization/Json/ByteStreamSerializer.cpp @@ -10,91 +10,75 @@ * */ -#include "ByteStreamSerializer.h" - #include #include +#include #include #include namespace AZ { - namespace ByteSerializerInternal - { - static JsonSerializationResult::Result Load(void* outputValue, const rapidjson::Value& inputValue, JsonDeserializerContext& context) - { - using JsonSerializationResult::Outcomes; - using JsonSerializationResult::Tasks; - - AZ_Assert(outputValue, "Expected a valid pointer to load from json value."); - - switch (inputValue.GetType()) - { - case rapidjson::kStringType: { - JsonByteStream buffer; - if (AZ::StringFunc::Base64::Decode(buffer, inputValue.GetString(), inputValue.GetStringLength())) - { - JsonByteStream* valAsByteStream = static_cast(outputValue); - *valAsByteStream = AZStd::move(buffer); - return context.Report(Tasks::ReadField, Outcomes::Success, "Successfully read ByteStream."); - } - return context.Report(Tasks::ReadField, Outcomes::Invalid, "Decode of Base64 encoded ByteStream failed."); - } - case rapidjson::kArrayType: - case rapidjson::kObjectType: - case rapidjson::kNullType: - case rapidjson::kFalseType: - case rapidjson::kTrueType: - case rapidjson::kNumberType: - return context.Report( - Tasks::ReadField, Outcomes::Unsupported, - "Unsupported type. ByteStream values cannot be read from arrays, objects, nulls, booleans or numbers."); - default: - return context.Report(Tasks::ReadField, Outcomes::Unknown, "Unknown json type encountered for ByteStream value."); - } - } - - static JsonSerializationResult::Result StoreWithDefault( - rapidjson::Value& outputValue, const void* inputValue, const void* defaultValue, JsonSerializerContext& context) - { - using JsonSerializationResult::Outcomes; - using JsonSerializationResult::Tasks; - - const JsonByteStream& valAsByteStream = *static_cast(inputValue); - if (context.ShouldKeepDefaults() || !defaultValue || (valAsByteStream != *static_cast(defaultValue))) - { - const auto base64ByteStream = AZ::StringFunc::Base64::Encode(valAsByteStream.data(), valAsByteStream.size()); - outputValue.SetString(base64ByteStream.c_str(), base64ByteStream.size(), context.GetJsonAllocator()); - return context.Report(Tasks::WriteValue, Outcomes::Success, "ByteStream successfully stored."); - } - - return context.Report(Tasks::WriteValue, Outcomes::DefaultsUsed, "Default ByteStream used."); - } - } // namespace ByteSerializerInternal - AZ_CLASS_ALLOCATOR_IMPL(JsonByteStreamSerializer, SystemAllocator, 0); JsonSerializationResult::Result JsonByteStreamSerializer::Load( void* outputValue, [[maybe_unused]] const Uuid& outputValueTypeId, const rapidjson::Value& inputValue, JsonDeserializerContext& context) { + using JsonSerializationResult::Outcomes; + using JsonSerializationResult::Tasks; + AZ_Assert( azrtti_typeid() == outputValueTypeId, "Unable to deserialize AZStd::vector> to json because the provided type is %s", outputValueTypeId.ToString().c_str()); + AZ_Assert(outputValue, "Expected a valid pointer to load from json value."); - return ByteSerializerInternal::Load(outputValue, inputValue, context); + switch (inputValue.GetType()) + { + case rapidjson::kStringType: { + JsonByteStream buffer; + if (AZ::StringFunc::Base64::Decode(buffer, inputValue.GetString(), inputValue.GetStringLength())) + { + JsonByteStream* valAsByteStream = static_cast(outputValue); + *valAsByteStream = AZStd::move(buffer); + return context.Report(Tasks::ReadField, Outcomes::Success, "Successfully read ByteStream."); + } + return context.Report(Tasks::ReadField, Outcomes::Invalid, "Decode of Base64 encoded ByteStream failed."); + } + case rapidjson::kArrayType: + case rapidjson::kObjectType: + case rapidjson::kNullType: + case rapidjson::kFalseType: + case rapidjson::kTrueType: + case rapidjson::kNumberType: + return context.Report( + Tasks::ReadField, Outcomes::Unsupported, + "Unsupported type. ByteStream values cannot be read from arrays, objects, nulls, booleans or numbers."); + default: + return context.Report(Tasks::ReadField, Outcomes::Unknown, "Unknown json type encountered for ByteStream value."); + } } JsonSerializationResult::Result JsonByteStreamSerializer::Store( rapidjson::Value& outputValue, const void* inputValue, const void* defaultValue, [[maybe_unused]] const Uuid& valueTypeId, JsonSerializerContext& context) { + using JsonSerializationResult::Outcomes; + using JsonSerializationResult::Tasks; + AZ_Assert( azrtti_typeid() == valueTypeId, "Unable to serialize AZStd::vector to json because the provided type is %s", valueTypeId.ToString().c_str()); - return ByteSerializerInternal::StoreWithDefault(outputValue, inputValue, defaultValue, context); + const JsonByteStream& valAsByteStream = *static_cast(inputValue); + if (context.ShouldKeepDefaults() || !defaultValue || (valAsByteStream != *static_cast(defaultValue))) + { + const auto base64ByteStream = AZ::StringFunc::Base64::Encode(valAsByteStream.data(), valAsByteStream.size()); + outputValue.SetString(base64ByteStream.c_str(), base64ByteStream.size(), context.GetJsonAllocator()); + return context.Report(Tasks::WriteValue, Outcomes::Success, "ByteStream successfully stored."); + } + + return context.Report(Tasks::WriteValue, Outcomes::DefaultsUsed, "Default ByteStream used."); } } // namespace AZ From 1db6c9236a668e6f91404f15c32913a433b7f8a3 Mon Sep 17 00:00:00 2001 From: pereslav Date: Mon, 26 Apr 2021 15:50:41 +0100 Subject: [PATCH 13/54] Made Launcher use AZ Console instead of CryConsole. Updated the exec function according to PR comments --- Code/LauncherUnified/Launcher.cpp | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/Code/LauncherUnified/Launcher.cpp b/Code/LauncherUnified/Launcher.cpp index 4721e3f0a7..568c202eee 100644 --- a/Code/LauncherUnified/Launcher.cpp +++ b/Code/LauncherUnified/Launcher.cpp @@ -26,7 +26,6 @@ #include #include -#include #include #include #include @@ -46,17 +45,20 @@ extern "C" void CreateStaticModules(AZStd::vector& modulesOut); namespace { - void ExecuteCustomConfig(AzFramework::Application& application) + void ExecuteConsoleCommandFile(AzFramework::Application& application) { - const AZStd::string_view customCfgKey = "customcfg"; + const AZStd::string_view customConCmdKey = "console_command_file"; const AZ::CommandLine* commandLine = application.GetCommandLine(); - if (commandLine->HasSwitch(customCfgKey) && commandLine->GetNumSwitchValues(customCfgKey) > 0) + AZStd::size_t numSwitchValues = commandLine->GetNumSwitchValues(customConCmdKey); + if (numSwitchValues > 0) { - const AZStd::string& customCfg = commandLine->GetSwitchValue(customCfgKey, 0); - if (!customCfg.empty()) + // The expectations for command line parameters is that the "last one wins" + // That way it allows users and test scripts to override previous command line options by just listing them later on the invocation line + const AZStd::string& consoleCmd = commandLine->GetSwitchValue(customConCmdKey, numSwitchValues - 1); + if (!consoleCmd.empty()) { - AZStd::string execString = "exec " + customCfg; - gEnv->pConsole->ExecuteString(execString.c_str()); + AZStd::string execString = "exec " + consoleCmd; + AZ::Interface::Get()->PerformCommand(execString.c_str()); } } } @@ -652,9 +654,11 @@ namespace O3DELauncher if (gEnv && gEnv->pConsole) { // Execute autoexec.cfg to load the initial level - gEnv->pConsole->ExecuteString("exec autoexec.cfg"); + AZ::Interface::Get()->PerformCommand("exec autoexec.cfg"); - ExecuteCustomConfig(gameApplication); + // Find out if console command file was passed + // via --console_command_file=%filename% and execute it + ExecuteConsoleCommandFile(gameApplication); gEnv->pSystem->ExecuteCommandLine(false); From 33d210b79376fd13aa6b6f21b695518775d5e7a7 Mon Sep 17 00:00:00 2001 From: nvsickle Date: Mon, 26 Apr 2021 12:53:52 -0700 Subject: [PATCH 14/54] Fix "Configure Layout..." being greyed out in the viewport menu --- Code/Sandbox/Editor/ViewPane.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Code/Sandbox/Editor/ViewPane.cpp b/Code/Sandbox/Editor/ViewPane.cpp index 52146bdf09..c66a5f3f38 100644 --- a/Code/Sandbox/Editor/ViewPane.cpp +++ b/Code/Sandbox/Editor/ViewPane.cpp @@ -589,7 +589,7 @@ void CLayoutViewPane::ShowTitleMenu() action->setChecked(IsFullscreen()); action = root.addAction(tr("Configure Layout...")); - if (AZ::Interface::Get()) + if (!CViewManager::IsMultiViewportEnabled()) { action->setDisabled(true); } From 2b77d434353a21984198e29370f9d65a87c1d2de Mon Sep 17 00:00:00 2001 From: pereslav Date: Mon, 26 Apr 2021 21:30:52 +0100 Subject: [PATCH 15/54] Exposed exec console command to AZ Console --- Code/CryEngine/CrySystem/ConsoleBatchFile.cpp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/Code/CryEngine/CrySystem/ConsoleBatchFile.cpp b/Code/CryEngine/CrySystem/ConsoleBatchFile.cpp index 946edb9b64..7d6bc3709f 100644 --- a/Code/CryEngine/CrySystem/ConsoleBatchFile.cpp +++ b/Code/CryEngine/CrySystem/ConsoleBatchFile.cpp @@ -23,9 +23,27 @@ #include #include "System.h" #include +#include IConsole* CConsoleBatchFile::m_pConsole = NULL; +namespace +{ + static void exec(const AZ::ConsoleCommandContainer& args) + { + if (args.size() == 1) + { + CConsoleBatchFile::ExecuteConfigFile(args.front().data()); + } + else + { + AZ_Warning("editor", false, "exec requires exactly one file name."); + } + } + + AZ_CONSOLEFREEFUNC(exec, AZ::ConsoleFunctorFlags::Null, "Executes a batch file of console commands."); +} + void CConsoleBatchFile::Init() { m_pConsole = gEnv->pConsole; From 6dfa33816b39ff8ed3bb832c608a7588452fb14d Mon Sep 17 00:00:00 2001 From: AMZN-koppersr <82230785+AMZN-koppersr@users.noreply.github.com> Date: Mon, 26 Apr 2021 15:12:59 -0700 Subject: [PATCH 16/54] Fixed a bug with type ids for inherited classes with a custom serializer. The code that adds a $type field for pointers where needed was still assuming that custom serializer were always for primitives, which isn't the case anymore. This changes updates the behavior to allow $type to be added to those as well as long as they use an object. This does now however rely more heavily on earlier checks that the data needs a $type because it otherwise can't tell the difference between a primitive getting a default value (an empty object). In the original code this situation would have resulted in failed serialization though, so it's unlikely to be a problem. --- .../Serialization/Json/JsonSerializer.cpp | 44 +++++++--- .../Serialization/Json/JsonSerializer.h | 3 + .../Json/JsonSerializationTests.cpp | 86 +++++++++++++++++++ 3 files changed, 123 insertions(+), 10 deletions(-) diff --git a/Code/Framework/AzCore/AzCore/Serialization/Json/JsonSerializer.cpp b/Code/Framework/AzCore/AzCore/Serialization/Json/JsonSerializer.cpp index c3ca2bf33f..7f261061c1 100644 --- a/Code/Framework/AzCore/AzCore/Serialization/Json/JsonSerializer.cpp +++ b/Code/Framework/AzCore/AzCore/Serialization/Json/JsonSerializer.cpp @@ -104,13 +104,12 @@ namespace AZ auto serializer = context.GetRegistrationContext()->GetSerializerForType(classData.m_typeId); if (serializer) { - if (storeTypeId == StoreTypeId::Yes) + ResultCode result = serializer->Store(node, object, defaultObject, classData.m_typeId, context); + if (storeTypeId == StoreTypeId::Yes && result.GetProcessing() != Processing::Halted) { - return context.Report(Tasks::WriteValue, Outcomes::Catastrophic, - "Unable to store type information in a JSON Serializer primitive."); + result.Combine(InsertTypeId(node, classData, context)); } - - return serializer->Store(node, object, defaultObject, classData.m_typeId, context); + return result; } if (classData.m_azRtti && (classData.m_azRtti->GetTypeTraits() & AZ::TypeTraits::is_enum) == AZ::TypeTraits::is_enum) @@ -128,13 +127,12 @@ namespace AZ serializer = context.GetRegistrationContext()->GetSerializerForType(classData.m_azRtti->GetGenericTypeId()); if (serializer) { - if (storeTypeId == StoreTypeId::Yes) + ResultCode result = serializer->Store(node, object, defaultObject, classData.m_typeId, context); + if (storeTypeId == StoreTypeId::Yes && result.GetProcessing() != Processing::Halted) { - return context.Report(Tasks::WriteValue, Outcomes::Catastrophic, - "Unable to store type information in a JSON Serializer primitive."); + result.Combine(InsertTypeId(node, classData, context)); } - - return serializer->Store(node, object, defaultObject, classData.m_typeId, context); + return result; } } @@ -149,6 +147,7 @@ namespace AZ ResultCode result(Tasks::WriteValue); if (storeTypeId == StoreTypeId::Yes) { + // Not using InsertTypeId here to avoid needing to create the temporary value and swap it in that call. node.AddMember(rapidjson::StringRef(JsonSerialization::TypeIdFieldIdentifier), StoreTypeName(classData, context), context.GetJsonAllocator()); result = ResultCode(Tasks::WriteValue, Outcomes::Success); @@ -569,6 +568,31 @@ namespace AZ } } + JsonSerializationResult::ResultCode JsonSerializer::InsertTypeId( + rapidjson::Value& output, const SerializeContext::ClassData& classData, JsonSerializerContext& context) + { + using namespace JsonSerializationResult; + + if (output.IsObject()) + { + rapidjson::Value insertedObject(rapidjson::kObjectType); + insertedObject.AddMember( + rapidjson::StringRef(JsonSerialization::TypeIdFieldIdentifier), StoreTypeName(classData, context), + context.GetJsonAllocator()); + + for (auto& [key, element] : output.GetObject()) + { + insertedObject.AddMember(AZStd::move(key), AZStd::move(element), context.GetJsonAllocator()); + } + output = AZStd::move(insertedObject); + return ResultCode(Tasks::WriteValue, Outcomes::Success); + } + else + { + return context.Report(Tasks::WriteValue, Outcomes::Catastrophic, "Only able to store type information in a JSON Object."); + } + } + rapidjson::Value JsonSerializer::GetExplicitDefault() { return rapidjson::Value(rapidjson::kObjectType); diff --git a/Code/Framework/AzCore/AzCore/Serialization/Json/JsonSerializer.h b/Code/Framework/AzCore/AzCore/Serialization/Json/JsonSerializer.h index e7ce1e766f..24acd28e81 100644 --- a/Code/Framework/AzCore/AzCore/Serialization/Json/JsonSerializer.h +++ b/Code/Framework/AzCore/AzCore/Serialization/Json/JsonSerializer.h @@ -80,6 +80,9 @@ namespace AZ static JsonSerializationResult::ResultCode StoreTypeName(rapidjson::Value& output, const Uuid& typeId, JsonSerializerContext& context); + static JsonSerializationResult::ResultCode InsertTypeId( + rapidjson::Value& output, const SerializeContext::ClassData& classData, JsonSerializerContext& context); + static rapidjson::Value GetExplicitDefault(); }; } // namespace AZ diff --git a/Code/Framework/AzCore/Tests/Serialization/Json/JsonSerializationTests.cpp b/Code/Framework/AzCore/Tests/Serialization/Json/JsonSerializationTests.cpp index 378e1f6953..2399bd0463 100644 --- a/Code/Framework/AzCore/Tests/Serialization/Json/JsonSerializationTests.cpp +++ b/Code/Framework/AzCore/Tests/Serialization/Json/JsonSerializationTests.cpp @@ -449,6 +449,46 @@ namespace JsonSerializationTests } + TEST_F(JsonSerializationTests, Load_PrimitiveForInheritedClass_LoadsCorrectClass) + { + using namespace AZ::JsonSerializationResult; + using namespace ::testing; + + AZStd::string json = AZStd::string::format(R"( + { + "%s": "SimpleInheritence", + "base_var": -88.0, + "var1": 88, + "var2": 42 + })", + AZ::JsonSerialization::TypeIdFieldIdentifier); + m_jsonDocument->Parse(json.c_str()); + + SimpleInheritence::Reflect(m_serializeContext, true); + m_serializeContext->RegisterGenericType>(); + m_jsonRegistrationContext->Serializer()->HandlesType(); + JsonSerializerMock* mock = + reinterpret_cast(m_jsonRegistrationContext->GetSerializerForType(azrtti_typeid())); + EXPECT_CALL(*mock, Load(_, _, _, _)) + .Times(Exactly(1)) + .WillRepeatedly(Return(Result(m_deserializationSettings->m_reporting, "Test", Tasks::ReadField, Outcomes::Success, ""))); + + AZStd::unique_ptr instance; + ResultCode result = AZ::JsonSerialization::Load(instance, *m_jsonDocument, *m_deserializationSettings); + EXPECT_NE(Processing::Halted, result.GetProcessing()); + + EXPECT_EQ(azrtti_typeid(), azrtti_typeid(*instance)); + + m_serializeContext->EnableRemoveReflection(); + SimpleInheritence::Reflect(m_serializeContext, true); + m_serializeContext->DisableRemoveReflection(); + + m_jsonRegistrationContext->EnableRemoveReflection(); + m_serializeContext->RegisterGenericType>(); + m_jsonRegistrationContext->Serializer()->HandlesType(); + m_jsonRegistrationContext->DisableRemoveReflection(); + } + TEST_F(JsonSerializationTests, Store_TemplatedClassWithRegisteredHandler_StoreOnHandlerCalled) { using namespace AZ::JsonSerializationResult; @@ -474,6 +514,52 @@ namespace JsonSerializationTests m_jsonRegistrationContext->DisableRemoveReflection(); } + TEST_F(JsonSerializationTests, Store_PrimitiveForInheritedClass_StoreSucceedsAndTypeIdIsAdded) + { + using namespace AZ::JsonSerializationResult; + using namespace ::testing; + + SimpleInheritence::Reflect(m_serializeContext, true); + m_serializeContext->RegisterGenericType>(); + m_jsonRegistrationContext->Serializer()->HandlesType(); + JsonSerializerMock* mock = + reinterpret_cast(m_jsonRegistrationContext->GetSerializerForType(azrtti_typeid())); + EXPECT_CALL(*mock, Store(_, _, _, _, _)) + .Times(Exactly(1)) + .WillRepeatedly(Invoke([](rapidjson::Value& output, const void*, const void*, const AZ::Uuid&, AZ::JsonSerializerContext& context) + { + // Insert some values to allow verification later on. + output.SetObject(); + output.AddMember("base_var", -88.0, context.GetJsonAllocator()); + output.AddMember("var1", 88, context.GetJsonAllocator()); + output.AddMember("var2", 42, context.GetJsonAllocator()); + return context.Report(Tasks::WriteValue, Outcomes::Success, ""); + })); + + AZStd::unique_ptr instance{ aznew SimpleInheritence() }; + ResultCode result = AZ::JsonSerialization::Store(*m_jsonDocument, m_jsonDocument->GetAllocator(), instance, *m_serializationSettings); + EXPECT_NE(Processing::Halted, result.GetProcessing()); + + AZStd::string compare = AZStd::string::format(R"( + { + "%s": "SimpleInheritence", + "base_var": -88.0, + "var1": 88, + "var2": 42 + })", + AZ::JsonSerialization::TypeIdFieldIdentifier); + Expect_DocStrEq(compare.c_str()); + + m_serializeContext->EnableRemoveReflection(); + m_serializeContext->RegisterGenericType>(); + SimpleInheritence::Reflect(m_serializeContext, true); + m_serializeContext->DisableRemoveReflection(); + + m_jsonRegistrationContext->EnableRemoveReflection(); + m_jsonRegistrationContext->Serializer()->HandlesType(); + m_jsonRegistrationContext->DisableRemoveReflection(); + } + TEST_F(JsonSerializationTests, Store_StoreWithNullPtr_ReturnsCatastrophic) { using namespace AZ::JsonSerializationResult; From a8a60eeea71d33c972a406c92d941af2f37bb77e Mon Sep 17 00:00:00 2001 From: Peng Date: Mon, 26 Apr 2021 18:12:50 -0700 Subject: [PATCH 17/54] ATOM-14947 -Fix vulkan graphics pipeline creation failure having depth clamp off with devices not supporting depth clip. -Added reason for the mobile version of screen space reflection --- .../Atom/Feature/Common/Assets/Passes/Reflections_nomsaa.pass | 2 ++ Gems/Atom/RHI/Vulkan/Code/Source/RHI/GraphicsPipeline.cpp | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/Gems/Atom/Feature/Common/Assets/Passes/Reflections_nomsaa.pass b/Gems/Atom/Feature/Common/Assets/Passes/Reflections_nomsaa.pass index 498b751e0e..a35352b9f0 100644 --- a/Gems/Atom/Feature/Common/Assets/Passes/Reflections_nomsaa.pass +++ b/Gems/Atom/Feature/Common/Assets/Passes/Reflections_nomsaa.pass @@ -247,6 +247,8 @@ } }, { + // Using cut-down version of screen space reflection for handling the attachment format compatibility issues. + // This is used for mobile devices with limited capabilities. "Name": "ReflectionScreenSpaceMobilePass", "TemplateName": "ReflectionScreenSpaceMobilePassTemplate", "Enabled": false, diff --git a/Gems/Atom/RHI/Vulkan/Code/Source/RHI/GraphicsPipeline.cpp b/Gems/Atom/RHI/Vulkan/Code/Source/RHI/GraphicsPipeline.cpp index 7b39e56274..605fd6abb1 100644 --- a/Gems/Atom/RHI/Vulkan/Code/Source/RHI/GraphicsPipeline.cpp +++ b/Gems/Atom/RHI/Vulkan/Code/Source/RHI/GraphicsPipeline.cpp @@ -287,8 +287,8 @@ namespace AZ } else if (!rasterState.m_depthClipEnable) { - AZ_Error("Vulkan", false, "Depth clipping is being used but it's not supported on this device"); - return RHI::ResultCode::InvalidArgument; + // depth clamp must be disabled if physical device does not support it + info.depthClampEnable = VK_FALSE; } switch (rasterState.m_fillMode) From 44ce664730291cfdb22c38a0cca0f87bcd04f2c6 Mon Sep 17 00:00:00 2001 From: pereslav Date: Tue, 27 Apr 2021 12:36:17 +0100 Subject: [PATCH 18/54] Changed handling --console_command_file to use AZ::Console::ExecuteConfigFile --- Code/CryEngine/CrySystem/ConsoleBatchFile.cpp | 18 ------------------ Code/LauncherUnified/Launcher.cpp | 5 ++--- 2 files changed, 2 insertions(+), 21 deletions(-) diff --git a/Code/CryEngine/CrySystem/ConsoleBatchFile.cpp b/Code/CryEngine/CrySystem/ConsoleBatchFile.cpp index 7d6bc3709f..946edb9b64 100644 --- a/Code/CryEngine/CrySystem/ConsoleBatchFile.cpp +++ b/Code/CryEngine/CrySystem/ConsoleBatchFile.cpp @@ -23,27 +23,9 @@ #include #include "System.h" #include -#include IConsole* CConsoleBatchFile::m_pConsole = NULL; -namespace -{ - static void exec(const AZ::ConsoleCommandContainer& args) - { - if (args.size() == 1) - { - CConsoleBatchFile::ExecuteConfigFile(args.front().data()); - } - else - { - AZ_Warning("editor", false, "exec requires exactly one file name."); - } - } - - AZ_CONSOLEFREEFUNC(exec, AZ::ConsoleFunctorFlags::Null, "Executes a batch file of console commands."); -} - void CConsoleBatchFile::Init() { m_pConsole = gEnv->pConsole; diff --git a/Code/LauncherUnified/Launcher.cpp b/Code/LauncherUnified/Launcher.cpp index 568c202eee..1cc4450cea 100644 --- a/Code/LauncherUnified/Launcher.cpp +++ b/Code/LauncherUnified/Launcher.cpp @@ -57,8 +57,7 @@ namespace const AZStd::string& consoleCmd = commandLine->GetSwitchValue(customConCmdKey, numSwitchValues - 1); if (!consoleCmd.empty()) { - AZStd::string execString = "exec " + consoleCmd; - AZ::Interface::Get()->PerformCommand(execString.c_str()); + AZ::Interface::Get()->ExecuteConfigFile(consoleCmd.c_str()); } } } @@ -654,7 +653,7 @@ namespace O3DELauncher if (gEnv && gEnv->pConsole) { // Execute autoexec.cfg to load the initial level - AZ::Interface::Get()->PerformCommand("exec autoexec.cfg"); + AZ::Interface::Get()->ExecuteConfigFile("autoexec.cfg"); // Find out if console command file was passed // via --console_command_file=%filename% and execute it From e3b016debac7ec42b0745d195fe5f14a36a63b1d Mon Sep 17 00:00:00 2001 From: pereslav Date: Tue, 27 Apr 2021 14:57:36 +0100 Subject: [PATCH 19/54] PR feedback addressing --- .../Source/ConnectionData/ClientToServerConnectionData.h | 4 ++-- .../ConnectionData/ClientToServerConnectionData.inl | 7 ++++++- .../Code/Source/ConnectionData/IConnectionData.h | 8 ++++++++ .../Source/ConnectionData/ServerToClientConnectionData.h | 5 ++--- .../Code/Source/MultiplayerSystemComponent.cpp | 2 +- .../Code/Source/NetworkEntity/NetworkEntityManager.cpp | 6 +++--- 6 files changed, 22 insertions(+), 10 deletions(-) diff --git a/Gems/Multiplayer/Code/Source/ConnectionData/ClientToServerConnectionData.h b/Gems/Multiplayer/Code/Source/ConnectionData/ClientToServerConnectionData.h index b63ffee9a3..76a809b351 100644 --- a/Gems/Multiplayer/Code/Source/ConnectionData/ClientToServerConnectionData.h +++ b/Gems/Multiplayer/Code/Source/ConnectionData/ClientToServerConnectionData.h @@ -33,10 +33,10 @@ namespace Multiplayer AzNetworking::IConnection* GetConnection() const override; EntityReplicationManager& GetReplicationManager() override; void Update(AZ::TimeMs serverGameTimeMs) override; + bool CanSendUpdates() const override; + void SetCanSendUpdates(bool canSendUpdates) override; //! @} - bool CanSendUpdates(); - private: EntityReplicationManager m_entityReplicationManager; AzNetworking::IConnection* m_connection = nullptr; diff --git a/Gems/Multiplayer/Code/Source/ConnectionData/ClientToServerConnectionData.inl b/Gems/Multiplayer/Code/Source/ConnectionData/ClientToServerConnectionData.inl index 1ee5711341..6d4a332b6e 100644 --- a/Gems/Multiplayer/Code/Source/ConnectionData/ClientToServerConnectionData.inl +++ b/Gems/Multiplayer/Code/Source/ConnectionData/ClientToServerConnectionData.inl @@ -12,8 +12,13 @@ namespace Multiplayer { - inline bool ClientToServerConnectionData::CanSendUpdates() + inline bool ClientToServerConnectionData::CanSendUpdates() const { return m_canSendUpdates; } + + inline void ClientToServerConnectionData::SetCanSendUpdates(bool canSendUpdates) + { + m_canSendUpdates = canSendUpdates; + } } diff --git a/Gems/Multiplayer/Code/Source/ConnectionData/IConnectionData.h b/Gems/Multiplayer/Code/Source/ConnectionData/IConnectionData.h index ebff75fd9b..a7ceffd289 100644 --- a/Gems/Multiplayer/Code/Source/ConnectionData/IConnectionData.h +++ b/Gems/Multiplayer/Code/Source/ConnectionData/IConnectionData.h @@ -44,5 +44,13 @@ namespace Multiplayer //! Creates and manages sending updates to the remote endpoint. //! @param serverGameTimeMs current server game time in milliseconds virtual void Update(AZ::TimeMs serverGameTimeMs) = 0; + + //! Returns whether update messages can be sent to the connection. + //! @return true if update messages can be sent + virtual bool CanSendUpdates() const = 0; + + //! Sets the state of connection whether update messages can be sent or not. + //! @param canSendUpdates the state value + virtual void SetCanSendUpdates(bool canSendUpdates) = 0; }; } diff --git a/Gems/Multiplayer/Code/Source/ConnectionData/ServerToClientConnectionData.h b/Gems/Multiplayer/Code/Source/ConnectionData/ServerToClientConnectionData.h index 596bdc88d9..7ea62b15fd 100644 --- a/Gems/Multiplayer/Code/Source/ConnectionData/ServerToClientConnectionData.h +++ b/Gems/Multiplayer/Code/Source/ConnectionData/ServerToClientConnectionData.h @@ -34,11 +34,10 @@ namespace Multiplayer AzNetworking::IConnection* GetConnection() const override; EntityReplicationManager& GetReplicationManager() override; void Update(AZ::TimeMs serverGameTimeMs) override; + bool CanSendUpdates() const override; + void SetCanSendUpdates(bool canSendUpdates) override; //! @} - bool CanSendUpdates() const; - void SetCanSendUpdates(bool canSendUpdates); - NetworkEntityHandle GetPrimaryPlayerEntity(); const NetworkEntityHandle& GetPrimaryPlayerEntity() const; diff --git a/Gems/Multiplayer/Code/Source/MultiplayerSystemComponent.cpp b/Gems/Multiplayer/Code/Source/MultiplayerSystemComponent.cpp index 49a0f63b63..c0570b054e 100644 --- a/Gems/Multiplayer/Code/Source/MultiplayerSystemComponent.cpp +++ b/Gems/Multiplayer/Code/Source/MultiplayerSystemComponent.cpp @@ -384,7 +384,7 @@ namespace Multiplayer bool MultiplayerSystemComponent::HandleRequest( AzNetworking::IConnection* connection, [[maybe_unused]] const AzNetworking::IPacketHeader& packetHeader, MultiplayerPackets::ReadyForEntityUpdates& packet) { - auto* connectionData = reinterpret_cast(connection->GetUserData()); + IConnectionData* connectionData = reinterpret_cast(connection->GetUserData()); if (connectionData) { connectionData->SetCanSendUpdates(packet.GetReadyForEntityUpdates()); diff --git a/Gems/Multiplayer/Code/Source/NetworkEntity/NetworkEntityManager.cpp b/Gems/Multiplayer/Code/Source/NetworkEntity/NetworkEntityManager.cpp index 131e7be3f1..4832ba487a 100644 --- a/Gems/Multiplayer/Code/Source/NetworkEntity/NetworkEntityManager.cpp +++ b/Gems/Multiplayer/Code/Source/NetworkEntity/NetworkEntityManager.cpp @@ -462,9 +462,9 @@ namespace Multiplayer m_rootSpawnableAsset = netSpawnableAsset; - auto* iMultiplayer = AZ::Interface::Get(); + auto* multiplayer = AZ::Interface::Get(); - const auto agentType = iMultiplayer->GetAgentType(); + const auto agentType = multiplayer->GetAgentType(); const bool spawnImmediately = (agentType == MultiplayerAgentType::ClientServer || agentType == MultiplayerAgentType::DedicatedServer); @@ -476,7 +476,7 @@ namespace Multiplayer { // If we don't spawn net entities immediately (i.e. it is a client), // tell the server/host it can start sending updates that will instantiate entities. - iMultiplayer->SendReadyForEntityUpdates(true); + multiplayer->SendReadyForEntityUpdates(true); } } From 0f8e6cbda11d8a33eddd182f62d83839fc15384f Mon Sep 17 00:00:00 2001 From: AMZN-koppersr <82230785+AMZN-koppersr@users.noreply.github.com> Date: Tue, 27 Apr 2021 10:36:43 -0700 Subject: [PATCH 20/54] Fixed a Linux build error. --- .../AzCore/AzCore/Serialization/Json/JsonSerializer.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Code/Framework/AzCore/AzCore/Serialization/Json/JsonSerializer.cpp b/Code/Framework/AzCore/AzCore/Serialization/Json/JsonSerializer.cpp index 7f261061c1..7c52260691 100644 --- a/Code/Framework/AzCore/AzCore/Serialization/Json/JsonSerializer.cpp +++ b/Code/Framework/AzCore/AzCore/Serialization/Json/JsonSerializer.cpp @@ -580,9 +580,9 @@ namespace AZ rapidjson::StringRef(JsonSerialization::TypeIdFieldIdentifier), StoreTypeName(classData, context), context.GetJsonAllocator()); - for (auto& [key, element] : output.GetObject()) + for (auto& element : output.GetObject()) { - insertedObject.AddMember(AZStd::move(key), AZStd::move(element), context.GetJsonAllocator()); + insertedObject.AddMember(AZStd::move(element.name), AZStd::move(element.value), context.GetJsonAllocator()); } output = AZStd::move(insertedObject); return ResultCode(Tasks::WriteValue, Outcomes::Success); From 0607f6efa650a11b426da90d0156931e64d4fdd0 Mon Sep 17 00:00:00 2001 From: jjjoness <82226755+jjjoness@users.noreply.github.com> Date: Tue, 27 Apr 2021 18:37:14 +0100 Subject: [PATCH 21/54] Changed Play Console from comments in PR. --- .../Editor/Core/LevelEditorMenuHandler.cpp | 2 +- Code/Sandbox/Editor/CryEdit.cpp | 2 +- Code/Sandbox/Editor/MainWindow.cpp | 31 ++++--------------- Code/Sandbox/Editor/MainWindow.h | 1 - Code/Sandbox/Editor/Resource.h | 3 +- Code/Sandbox/Editor/ToolbarManager.cpp | 8 ++--- 6 files changed, 14 insertions(+), 33 deletions(-) diff --git a/Code/Sandbox/Editor/Core/LevelEditorMenuHandler.cpp b/Code/Sandbox/Editor/Core/LevelEditorMenuHandler.cpp index 10d9928259..aed53d6e8b 100644 --- a/Code/Sandbox/Editor/Core/LevelEditorMenuHandler.cpp +++ b/Code/Sandbox/Editor/Core/LevelEditorMenuHandler.cpp @@ -685,7 +685,7 @@ QMenu* LevelEditorMenuHandler::CreateGameMenu() auto gameMenu = m_actionManager->AddMenu(tr("&Game"), s_gameMenuId); // Play Game - gameMenu.AddAction(ID_TOOLBAR_WIDGET_SWITCHTOGAME); + gameMenu.AddAction(ID_VIEW_SWITCHTOGAME); // Enable Physics/AI gameMenu.AddAction(ID_SWITCH_PHYSICS); diff --git a/Code/Sandbox/Editor/CryEdit.cpp b/Code/Sandbox/Editor/CryEdit.cpp index a18c839bdd..c6a2ece984 100644 --- a/Code/Sandbox/Editor/CryEdit.cpp +++ b/Code/Sandbox/Editor/CryEdit.cpp @@ -384,7 +384,7 @@ void CCryEditApp::RegisterActionHandlers() ON_COMMAND(ID_EDIT_FETCH, OnEditFetch) ON_COMMAND(ID_GENERATORS_STATICOBJECTS, OnGeneratorsStaticobjects) ON_COMMAND(ID_FILE_EXPORTTOGAMENOSURFACETEXTURE, OnFileExportToGameNoSurfaceTexture) - ON_COMMAND(ID_TOOLBAR_WIDGET_SWITCHTOGAME, OnViewSwitchToGame) + ON_COMMAND(ID_VIEW_SWITCHTOGAME, OnViewSwitchToGame) ON_COMMAND(ID_EDIT_SELECTALL, OnEditSelectAll) ON_COMMAND(ID_EDIT_SELECTNONE, OnEditSelectNone) ON_COMMAND(ID_EDIT_DELETE, OnEditDelete) diff --git a/Code/Sandbox/Editor/MainWindow.cpp b/Code/Sandbox/Editor/MainWindow.cpp index 5c710f318a..e96723a1b8 100644 --- a/Code/Sandbox/Editor/MainWindow.cpp +++ b/Code/Sandbox/Editor/MainWindow.cpp @@ -1171,15 +1171,17 @@ void MainWindow::InitActions() am->AddAction(ID_AUDIO_REFRESH_AUDIO_SYSTEM, tr("Refresh Audio")) .Connect(&QAction::triggered, this, &MainWindow::OnRefreshAudioSystem); - // Fame actions - am->AddAction(ID_TOOLBAR_WIDGET_SWITCHTOGAME, tr("Play Console")) + // Game actions + am->AddAction(ID_VIEW_SWITCHTOGAME, tr("Play Game")) .SetIcon(QIcon(":/stylesheet/img/UI20/toolbar/Play.svg")) .SetShortcut(tr("Ctrl+G")) - .SetToolTip(tr("Play Console (Ctrl+G)")) + .SetToolTip(tr("Play Game (Ctrl+G)")) .SetStatusTip(tr("Activate the game input mode")) .SetApplyHoverEffect() .SetCheckable(true) .RegisterUpdateCallback(cryEdit, &CCryEditApp::OnUpdatePlayGame); + am->AddAction(ID_TOOLBAR_WIDGET_PLAYCONSOLE_LABEL, tr("Play Console")) + .SetText(tr("Play Console")); am->AddAction(ID_SWITCH_PHYSICS, tr("Simulate")) .SetShortcut(tr("Ctrl+P")) .SetToolTip(tr("Simulate (Ctrl+P)")) @@ -1499,24 +1501,6 @@ QWidget* MainWindow::CreateSpacerRightWidget() return spacer; } -QWidget* MainWindow::CreateSwitchToGameButton() -{ - QWidget* playConsole = new QWidget(); - QHBoxLayout* layout = new QHBoxLayout(); - playConsole->setLayout(layout); - - QLabel* label = new QLabel(); - label->setText(tr("Play Console")); - - QToolButton*play = new QToolButton(); - play->setAutoRaise(true); - play->setDefaultAction(m_actionManager->GetAction(ID_TOOLBAR_WIDGET_SWITCHTOGAME)); - layout->addWidget(label); - layout->addWidget(play); - return playConsole; -} - - void MainWindow::InitEnvironmentModeMenu(CVarMenu* environmentModeMenu) { environmentModeMenu->clear(); @@ -1724,7 +1708,7 @@ void MainWindow::OnGameModeChanged(bool inGameMode) { menuBar()->setDisabled(inGameMode); m_toolbarManager->SetEnabled(!inGameMode); - QAction* action = m_actionManager->GetAction(ID_TOOLBAR_WIDGET_SWITCHTOGAME); + QAction* action = m_actionManager->GetAction(ID_VIEW_SWITCHTOGAME); action->blockSignals(true); // avoid a loop action->setChecked(inGameMode); action->blockSignals(false); @@ -2426,9 +2410,6 @@ QWidget* MainWindow::CreateToolbarWidget(int actionId) case ID_TOOLBAR_WIDGET_SPACER_RIGHT: w = CreateSpacerRightWidget(); break; - case ID_TOOLBAR_WIDGET_SWITCHTOGAME: - w = CreateSwitchToGameButton(); - break; default: qWarning() << Q_FUNC_INFO << "Unknown id " << actionId; return nullptr; diff --git a/Code/Sandbox/Editor/MainWindow.h b/Code/Sandbox/Editor/MainWindow.h index 05cc6e7640..cafa719589 100644 --- a/Code/Sandbox/Editor/MainWindow.h +++ b/Code/Sandbox/Editor/MainWindow.h @@ -216,7 +216,6 @@ private: QWidget* CreateSnapToGridWidget(); QWidget* CreateSnapToAngleWidget(); QWidget* CreateSpacerRightWidget(); - QWidget* CreateSwitchToGameButton(); QToolButton* CreateUndoRedoButton(int command); diff --git a/Code/Sandbox/Editor/Resource.h b/Code/Sandbox/Editor/Resource.h index e2944a3e14..143b4fc0c4 100644 --- a/Code/Sandbox/Editor/Resource.h +++ b/Code/Sandbox/Editor/Resource.h @@ -132,6 +132,7 @@ #define ID_EDIT_HOLD 33464 #define ID_EDIT_FETCH 33465 #define ID_FILE_EXPORTTOGAMENOSURFACETEXTURE 33473 +#define ID_VIEW_SWITCHTOGAME 33477 #define ID_EDIT_DELETE 33480 #define ID_MOVE_OBJECT 33481 #define ID_RENAME_OBJ 33483 @@ -397,5 +398,5 @@ #define ID_TOOLBAR_WIDGET_ENVIRONMENT_MODE 50011 #define ID_TOOLBAR_WIDGET_DEBUG_MODE 50012 #define ID_TOOLBAR_WIDGET_SPACER_RIGHT 50013 -#define ID_TOOLBAR_WIDGET_SWITCHTOGAME 50014 +#define ID_TOOLBAR_WIDGET_PLAYCONSOLE_LABEL 50014 #define ID_TOOLBAR_WIDGET_LAST 50020 diff --git a/Code/Sandbox/Editor/ToolbarManager.cpp b/Code/Sandbox/Editor/ToolbarManager.cpp index cdeee570ca..c1758405ca 100644 --- a/Code/Sandbox/Editor/ToolbarManager.cpp +++ b/Code/Sandbox/Editor/ToolbarManager.cpp @@ -520,7 +520,6 @@ void ToolbarManager::InitializeStandardToolbars() m_standardToolbars.push_back(GetMiscToolbar()); } - std::copy(std::begin(macroToolbars), std::end(macroToolbars), std::back_inserter(m_standardToolbars)); // Save that default state to future versions can reason about updating modified standard toolbars @@ -624,12 +623,13 @@ AmazonToolbar ToolbarManager::GetObjectToolbar() const AmazonToolbar ToolbarManager::GetPlayConsoleToolbar() const { - AmazonToolbar t = AmazonToolbar("PlayConsole", QObject::tr("Play Console Toolbar")); + AmazonToolbar t = AmazonToolbar("PlayConsole", QObject::tr("Play Console")); t.SetMainToolbar(true); - t.AddAction(ID_TOOLBAR_WIDGET_SPACER_RIGHT, ORIGINAL_TOOLBAR_VERSION); + t.AddAction(ID_TOOLBAR_WIDGET_SPACER_RIGHT, ORIGINAL_TOOLBAR_VERSION); t.AddAction(ID_TOOLBAR_SEPARATOR, ORIGINAL_TOOLBAR_VERSION); - t.AddAction(ID_TOOLBAR_WIDGET_SWITCHTOGAME, TOOLBARS_WITH_PLAY_GAME); + t.AddAction(ID_TOOLBAR_WIDGET_PLAYCONSOLE_LABEL, ORIGINAL_TOOLBAR_VERSION); + t.AddAction(ID_VIEW_SWITCHTOGAME, TOOLBARS_WITH_PLAY_GAME); return t; } From 251929d0715d99a7409f6042da9f6d4ab5fd5865 Mon Sep 17 00:00:00 2001 From: mbalfour Date: Tue, 27 Apr 2021 12:54:20 -0500 Subject: [PATCH 22/54] Two misc bugfixes: 1) RayTracing will sometimes crash by dereferencing a null ptr. This guards against it. 2) ViewportContext was missing some BusConnect / BusDisconnect calls. --- .../Code/Source/RayTracing/RayTracingFeatureProcessor.cpp | 2 +- Gems/Atom/RPI/Code/Source/RPI.Public/ViewportContext.cpp | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/Gems/Atom/Feature/Common/Code/Source/RayTracing/RayTracingFeatureProcessor.cpp b/Gems/Atom/Feature/Common/Code/Source/RayTracing/RayTracingFeatureProcessor.cpp index 337d111130..801420b0d2 100644 --- a/Gems/Atom/Feature/Common/Code/Source/RayTracing/RayTracingFeatureProcessor.cpp +++ b/Gems/Atom/Feature/Common/Code/Source/RayTracing/RayTracingFeatureProcessor.cpp @@ -168,7 +168,7 @@ namespace AZ return; } - if (m_rayTracingSceneSrg->IsQueuedForCompile()) + if (!m_rayTracingSceneSrg || m_rayTracingSceneSrg->IsQueuedForCompile()) { //[GFX TODO][ATOM-14792] AtomSampleViewer: Reset scene and feature processors before switching to sample return; diff --git a/Gems/Atom/RPI/Code/Source/RPI.Public/ViewportContext.cpp b/Gems/Atom/RPI/Code/Source/RPI.Public/ViewportContext.cpp index e1e87086e7..b5d3f815fe 100644 --- a/Gems/Atom/RPI/Code/Source/RPI.Public/ViewportContext.cpp +++ b/Gems/Atom/RPI/Code/Source/RPI.Public/ViewportContext.cpp @@ -33,6 +33,7 @@ namespace AZ nativeWindow, &AzFramework::WindowRequestBus::Events::GetClientAreaSize); AzFramework::WindowNotificationBus::Handler::BusConnect(nativeWindow); + AzFramework::ViewportRequestBus::Handler::BusConnect(id); m_onProjectionMatrixChangedHandler = ViewportContext::MatrixChangedEvent::Handler([this](const AZ::Matrix4x4& matrix) { @@ -48,6 +49,9 @@ namespace AZ ViewportContext::~ViewportContext() { + AzFramework::WindowNotificationBus::Handler::BusDisconnect(); + AzFramework::ViewportRequestBus::Handler::BusDisconnect(); + if (m_currentPipeline) { m_currentPipeline->RemoveFromRenderTick(); From d753215d4b7d46506a2d70c2681dbcbc11f04e42 Mon Sep 17 00:00:00 2001 From: mbalfour Date: Tue, 27 Apr 2021 13:12:56 -0500 Subject: [PATCH 23/54] Reversing the fix to RayTracing, this isn't desired because it masks other problems. --- .../Code/Source/RayTracing/RayTracingFeatureProcessor.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gems/Atom/Feature/Common/Code/Source/RayTracing/RayTracingFeatureProcessor.cpp b/Gems/Atom/Feature/Common/Code/Source/RayTracing/RayTracingFeatureProcessor.cpp index 801420b0d2..337d111130 100644 --- a/Gems/Atom/Feature/Common/Code/Source/RayTracing/RayTracingFeatureProcessor.cpp +++ b/Gems/Atom/Feature/Common/Code/Source/RayTracing/RayTracingFeatureProcessor.cpp @@ -168,7 +168,7 @@ namespace AZ return; } - if (!m_rayTracingSceneSrg || m_rayTracingSceneSrg->IsQueuedForCompile()) + if (m_rayTracingSceneSrg->IsQueuedForCompile()) { //[GFX TODO][ATOM-14792] AtomSampleViewer: Reset scene and feature processors before switching to sample return; From f269d92f9085d4d8d83c50ce3359918d65a895e6 Mon Sep 17 00:00:00 2001 From: Chris Galvan Date: Tue, 27 Apr 2021 11:17:24 -0500 Subject: [PATCH 24/54] [LYN-3122] Fixed the viewport Entity hit test logic. This allows the BuildDragDropContext to detect hit position correctly so that assets dragged into the viewport are placed in the correct position. --- Code/Sandbox/Editor/EditorViewportWidget.h | 5 +- Code/Sandbox/Editor/RenderViewport.h | 5 +- Code/Sandbox/Editor/Viewport.cpp | 59 +++++++++++++++++++++- Code/Sandbox/Editor/Viewport.h | 7 +++ 4 files changed, 67 insertions(+), 9 deletions(-) diff --git a/Code/Sandbox/Editor/EditorViewportWidget.h b/Code/Sandbox/Editor/EditorViewportWidget.h index 1244e61242..b0dd2a286c 100644 --- a/Code/Sandbox/Editor/EditorViewportWidget.h +++ b/Code/Sandbox/Editor/EditorViewportWidget.h @@ -234,11 +234,8 @@ public: QPoint ViewportToWidget(const QPoint& point) const; QSize WidgetToViewport(const QSize& size) const; - /// Take raw input and create a final mouse interaction. - /// @attention Do not map **point** from widget to viewport explicitly, - /// this is handled internally by BuildMouseInteraction - just pass directly. AzToolsFramework::ViewportInteraction::MouseInteraction BuildMouseInteraction( - Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers, const QPoint& point); + Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers, const QPoint& point) override; void SetPlayerPos() { diff --git a/Code/Sandbox/Editor/RenderViewport.h b/Code/Sandbox/Editor/RenderViewport.h index 664ed73abc..2edbd86770 100644 --- a/Code/Sandbox/Editor/RenderViewport.h +++ b/Code/Sandbox/Editor/RenderViewport.h @@ -238,11 +238,8 @@ public: QPoint ViewportToWidget(const QPoint& point) const; QSize WidgetToViewport(const QSize& size) const; - /// Take raw input and create a final mouse interaction. - /// @attention Do not map **point** from widget to viewport explicitly, - /// this is handled internally by BuildMouseInteraction - just pass directly. AzToolsFramework::ViewportInteraction::MouseInteraction BuildMouseInteraction( - Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers, const QPoint& point); + Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers, const QPoint& point) override; void SetPlayerPos() { diff --git a/Code/Sandbox/Editor/Viewport.cpp b/Code/Sandbox/Editor/Viewport.cpp index 1041a4f086..44480f530d 100644 --- a/Code/Sandbox/Editor/Viewport.cpp +++ b/Code/Sandbox/Editor/Viewport.cpp @@ -21,6 +21,9 @@ // AzQtComponents #include +#include +#include + // Editor #include "ViewManager.h" #include "Include/ITransformManipulator.h" @@ -1091,6 +1094,13 @@ void QtViewport::SetAxisConstrain(int axis) m_activeAxis = axis; }; +AzToolsFramework::ViewportInteraction::MouseInteraction QtViewport::BuildMouseInteraction( + [[maybe_unused]] Qt::MouseButtons buttons, [[maybe_unused]] Qt::KeyboardModifiers modifiers, [[maybe_unused]] const QPoint& point) +{ + // Implemented by sub-class + return AzToolsFramework::ViewportInteraction::MouseInteraction(); +} + ////////////////////////////////////////////////////////////////////////// bool QtViewport::HitTest(const QPoint& point, HitContext& hitInfo) { @@ -1103,7 +1113,54 @@ bool QtViewport::HitTest(const QPoint& point, HitContext& hitInfo) hitInfo.bUseSelectionHelpers = true; } - return GetIEditor()->GetObjectManager()->HitTest(hitInfo); + const int viewportId = GetViewportId(); + + // TODO: Use the EditorVisibleEntityDataCache instead once we are able to move to EditorViewportWidget + AzToolsFramework::EntityIdList visibleEntityIds; + AzToolsFramework::ViewportInteraction::MainEditorViewportInteractionRequestBus::Event( + viewportId, + &AzToolsFramework::ViewportInteraction::MainEditorViewportInteractionRequests::FindVisibleEntities, + visibleEntityIds); + + // Look through all visible entities to find the closest one to the specified mouse point + AZ::EntityId entityIdUnderCursor; + float closestDistance = std::numeric_limits::max(); + for (auto entityId : visibleEntityIds) + { + using AzFramework::ViewportInfo; + // Check if components provide an aabb + if (const AZ::Aabb aabb = AzToolsFramework::CalculateEditorEntitySelectionBounds(entityId, ViewportInfo{ viewportId }); + aabb.IsValid()) + { + using namespace AzToolsFramework::ViewportInteraction; + + MouseInteraction mouseInteraction = BuildMouseInteraction(QGuiApplication::mouseButtons(), + QGuiApplication::queryKeyboardModifiers(), + point); + + // Coarse grain check + if (AzToolsFramework::AabbIntersectMouseRay(mouseInteraction, aabb)) + { + // If success, pick against specific component + if (AzToolsFramework::PickEntity( + entityId, mouseInteraction, + closestDistance, viewportId)) + { + entityIdUnderCursor = entityId; + } + } + } + } + + // If we hit a valid Entity, then store the distance in the HitContext + // so that the caller can use this for calculations + if (entityIdUnderCursor.IsValid()) + { + hitInfo.dist = closestDistance; + return true; + } + + return false; } ////////////////////////////////////////////////////////////////////////// diff --git a/Code/Sandbox/Editor/Viewport.h b/Code/Sandbox/Editor/Viewport.h index 9979a3bb0a..bd7c749573 100644 --- a/Code/Sandbox/Editor/Viewport.h +++ b/Code/Sandbox/Editor/Viewport.h @@ -17,6 +17,7 @@ #pragma once #if !defined(Q_MOC_RUN) +#include #include #include #include "IPostRenderer.h" @@ -405,6 +406,12 @@ public: void SetAxisConstrain(int axis); + /// Take raw input and create a final mouse interaction. + /// @attention Do not map **point** from widget to viewport explicitly, + /// this is handled internally by BuildMouseInteraction - just pass directly. + virtual AzToolsFramework::ViewportInteraction::MouseInteraction BuildMouseInteraction( + Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers, const QPoint& point); + ////////////////////////////////////////////////////////////////////////// // Selection. ////////////////////////////////////////////////////////////////////////// From 84e0f6f58d2009e746b8e9832777e6f557f9d383 Mon Sep 17 00:00:00 2001 From: Chris Galvan Date: Tue, 27 Apr 2021 13:32:30 -0500 Subject: [PATCH 25/54] [LYN-3122] Moved invariant logic outside of for loop and removed TODO comment. --- Code/Sandbox/Editor/Viewport.cpp | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/Code/Sandbox/Editor/Viewport.cpp b/Code/Sandbox/Editor/Viewport.cpp index 44480f530d..37a9ee5f29 100644 --- a/Code/Sandbox/Editor/Viewport.cpp +++ b/Code/Sandbox/Editor/Viewport.cpp @@ -1115,7 +1115,6 @@ bool QtViewport::HitTest(const QPoint& point, HitContext& hitInfo) const int viewportId = GetViewportId(); - // TODO: Use the EditorVisibleEntityDataCache instead once we are able to move to EditorViewportWidget AzToolsFramework::EntityIdList visibleEntityIds; AzToolsFramework::ViewportInteraction::MainEditorViewportInteractionRequestBus::Event( viewportId, @@ -1123,8 +1122,12 @@ bool QtViewport::HitTest(const QPoint& point, HitContext& hitInfo) visibleEntityIds); // Look through all visible entities to find the closest one to the specified mouse point + using namespace AzToolsFramework::ViewportInteraction; AZ::EntityId entityIdUnderCursor; float closestDistance = std::numeric_limits::max(); + MouseInteraction mouseInteraction = BuildMouseInteraction(QGuiApplication::mouseButtons(), + QGuiApplication::queryKeyboardModifiers(), + point); for (auto entityId : visibleEntityIds) { using AzFramework::ViewportInfo; @@ -1132,12 +1135,6 @@ bool QtViewport::HitTest(const QPoint& point, HitContext& hitInfo) if (const AZ::Aabb aabb = AzToolsFramework::CalculateEditorEntitySelectionBounds(entityId, ViewportInfo{ viewportId }); aabb.IsValid()) { - using namespace AzToolsFramework::ViewportInteraction; - - MouseInteraction mouseInteraction = BuildMouseInteraction(QGuiApplication::mouseButtons(), - QGuiApplication::queryKeyboardModifiers(), - point); - // Coarse grain check if (AzToolsFramework::AabbIntersectMouseRay(mouseInteraction, aabb)) { From eeafb5eaa3f67b62e50540dc53ac83b696c16362 Mon Sep 17 00:00:00 2001 From: guthadam Date: Tue, 27 Apr 2021 16:43:06 -0500 Subject: [PATCH 26/54] ATOM-15370 Fix thumbnail scaling and sizing issues TLDR Thumbnails size will be removed from the system. Each thumbnail class is responsible for determining its stored size. Images and other thumbnail types can be scaled up or down within reason without blurring. The thumbnail system uses the concept of context and size organize thumbnails by size based on their intended use. However, most of the thumbnail classes do not respect or use the specified size, which is 16 by 16 pixels and really only usable for small icons. The thumbnails are currently being used in the asset browser tree control, the larger asset browser previews, the material component property asset controls, the material component inspector for the large preview, and other places. Each of these places use completely different sizes, some of which are large and change dynamically. Whenever the thumbnails are painted they are scaled to the desired size. Material and mesh thumbnails were always being captured at 512x512 regardless of what the rest of the thumbnail system said. Source, product, and folder thumbnails would be stored at the original asset size. The loading movie thumbnail was always drawn at 16 by 16 and scale up so it was always blurry. Image thumbnails were always scaled down to 16 by 16 and scale up for larger previews. Rather than worrying about the size of each context, each thumbnail class will store the image at whenever it deems to be a large enough size that can be scaled down when used. This may eliminate the need for multiple thumbnail contexts which are not being used anyway. https://jira.agscollab.com/browse/ATOM-15370 --- .../Thumbnails/FolderThumbnail.cpp | 7 ++++--- .../AssetBrowser/Thumbnails/FolderThumbnail.h | 2 +- .../Thumbnails/ProductThumbnail.cpp | 12 ++++-------- .../Thumbnails/ProductThumbnail.h | 2 +- .../Thumbnails/SourceThumbnail.cpp | 7 ++++--- .../AssetBrowser/Thumbnails/SourceThumbnail.h | 2 +- .../AssetBrowser/Views/EntryDelegate.cpp | 2 +- .../MaterialBrowserComponent.cpp | 3 +-- .../MaterialBrowser/MaterialThumbnail.cpp | 7 ++++--- .../MaterialBrowser/MaterialThumbnail.h | 2 +- .../Thumbnails/LoadingThumbnail.cpp | 8 +++++--- .../Thumbnails/LoadingThumbnail.h | 2 +- .../Thumbnails/MissingThumbnail.cpp | 8 ++++---- .../Thumbnails/MissingThumbnail.h | 2 +- .../Thumbnails/SourceControlThumbnail.cpp | 10 +++++----- .../Thumbnails/SourceControlThumbnail.h | 2 +- .../AzToolsFramework/Thumbnails/Thumbnail.cpp | 19 +++---------------- .../AzToolsFramework/Thumbnails/Thumbnail.h | 12 ++---------- .../AzToolsFramework/Thumbnails/Thumbnail.inl | 9 +-------- .../Thumbnails/ThumbnailContext.cpp | 8 +++----- .../Thumbnails/ThumbnailContext.h | 6 ++---- .../Thumbnails/ThumbnailerBus.h | 2 +- .../Thumbnails/ThumbnailerComponent.cpp | 7 +++---- .../Thumbnails/ThumbnailerComponent.h | 2 +- .../Tests/ThumbnailerTests.cpp | 17 ++++++----------- .../Source/ThumbnailerNullComponent.cpp | 2 +- .../Source/ThumbnailerNullComponent.h | 2 +- .../Code/Source/Thumbnail/ImageThumbnail.cpp | 8 ++++---- .../Code/Source/Thumbnail/ImageThumbnail.h | 2 +- .../Source/Material/MaterialThumbnail.cpp | 8 ++++---- .../Code/Source/Material/MaterialThumbnail.h | 2 +- .../Code/Source/Mesh/MeshThumbnail.cpp | 8 ++++---- .../Code/Source/Mesh/MeshThumbnail.h | 2 +- .../Rendering/CommonThumbnailRenderer.cpp | 3 ++- .../Rendering/ThumbnailRendererData.h | 1 + 35 files changed, 81 insertions(+), 117 deletions(-) diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/FolderThumbnail.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/FolderThumbnail.cpp index 47b15101ee..d31c0cb84e 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/FolderThumbnail.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/FolderThumbnail.cpp @@ -53,8 +53,8 @@ namespace AzToolsFramework static constexpr const char* FolderIconPath = "Editor/Icons/AssetBrowser/Folder_16.svg"; static constexpr const char* GemIconPath = "Editor/Icons/AssetBrowser/GemFolder_16.svg"; - FolderThumbnail::FolderThumbnail(SharedThumbnailKey key, int thumbnailSize) - : Thumbnail(key, thumbnailSize) + FolderThumbnail::FolderThumbnail(SharedThumbnailKey key) + : Thumbnail(key) {} void FolderThumbnail::LoadThread() @@ -69,7 +69,8 @@ namespace AzToolsFramework AZStd::string absoluteIconPath; AZ::StringFunc::Path::Join(engineRoot, folderIcon, absoluteIconPath); - m_icon = QIcon(absoluteIconPath.c_str()); + m_pixmap.load(absoluteIconPath.c_str()); + m_state = m_pixmap.isNull() ? State::Failed : State::Ready; } ////////////////////////////////////////////////////////////////////////// diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/FolderThumbnail.h b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/FolderThumbnail.h index d1f0a3d7b3..2e984ff8dc 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/FolderThumbnail.h +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/FolderThumbnail.h @@ -47,7 +47,7 @@ namespace AzToolsFramework { Q_OBJECT public: - FolderThumbnail(SharedThumbnailKey key, int thumbnailSize); + FolderThumbnail(SharedThumbnailKey key); void LoadThread() override; }; diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/ProductThumbnail.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/ProductThumbnail.cpp index 9994b19bb1..8bf9382450 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/ProductThumbnail.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/ProductThumbnail.cpp @@ -57,8 +57,8 @@ namespace AzToolsFramework ////////////////////////////////////////////////////////////////////////// static const char* DEFAULT_PRODUCT_ICON_PATH = "Editor/Icons/AssetBrowser/DefaultProduct_16.svg"; - ProductThumbnail::ProductThumbnail(Thumbnailer::SharedThumbnailKey key, int thumbnailSize) - : Thumbnail(key, thumbnailSize) + ProductThumbnail::ProductThumbnail(Thumbnailer::SharedThumbnailKey key) + : Thumbnail(key) {} void ProductThumbnail::LoadThread() @@ -96,12 +96,8 @@ namespace AzToolsFramework iconPath = QString::fromUtf8(DEFAULT_PRODUCT_ICON_PATH); } - m_icon = QIcon(iconPath); - - if (m_icon.isNull()) - { - m_state = State::Failed; - } + m_pixmap.load(iconPath); + m_state = m_pixmap.isNull() ? State::Failed : State::Ready; } ////////////////////////////////////////////////////////////////////////// diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/ProductThumbnail.h b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/ProductThumbnail.h index 5eb16dd436..5aed8e0043 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/ProductThumbnail.h +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/ProductThumbnail.h @@ -44,7 +44,7 @@ namespace AzToolsFramework { Q_OBJECT public: - ProductThumbnail(Thumbnailer::SharedThumbnailKey key, int thumbnailSize); + ProductThumbnail(Thumbnailer::SharedThumbnailKey key); protected: void LoadThread() override; diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/SourceThumbnail.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/SourceThumbnail.cpp index 547c64a75d..db399bb482 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/SourceThumbnail.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/SourceThumbnail.cpp @@ -58,8 +58,8 @@ namespace AzToolsFramework static constexpr const char* DefaultFileIconPath = "Editor/Icons/AssetBrowser/Default_16.svg"; QMutex SourceThumbnail::m_mutex; - SourceThumbnail::SourceThumbnail(SharedThumbnailKey key, int thumbnailSize) - : Thumbnail(key, thumbnailSize) + SourceThumbnail::SourceThumbnail(SharedThumbnailKey key) + : Thumbnail(key) { } @@ -124,7 +124,8 @@ namespace AzToolsFramework iconPathToUse = iconPath.c_str(); } - m_icon = QIcon(iconPathToUse); + m_pixmap.load(iconPathToUse); + m_state = m_pixmap.isNull() ? State::Failed : State::Ready; } ////////////////////////////////////////////////////////////////////////// diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/SourceThumbnail.h b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/SourceThumbnail.h index 41cbd4b254..81afd334c3 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/SourceThumbnail.h +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/SourceThumbnail.h @@ -44,7 +44,7 @@ namespace AzToolsFramework { Q_OBJECT public: - SourceThumbnail(SharedThumbnailKey key, int thumbnailSize); + SourceThumbnail(SharedThumbnailKey key); protected: void LoadThread() override; diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Views/EntryDelegate.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Views/EntryDelegate.cpp index c1ba5ae9ce..e8abaebd6f 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Views/EntryDelegate.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Views/EntryDelegate.cpp @@ -140,7 +140,7 @@ namespace AzToolsFramework else { // Scaling and centering pixmap within bounds to preserve aspect ratio - const QPixmap pixmap = thumbnail->GetPixmap(size).scaled(size, Qt::KeepAspectRatio, Qt::SmoothTransformation); + const QPixmap pixmap = thumbnail->GetPixmap().scaled(size, Qt::KeepAspectRatio, Qt::SmoothTransformation); const QSize sizeDelta = size - pixmap.size(); const QPoint pointDelta = QPoint(sizeDelta.width() / 2, sizeDelta.height() / 2); painter->drawPixmap(point + pointDelta, pixmap); diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/MaterialBrowser/MaterialBrowserComponent.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/MaterialBrowser/MaterialBrowserComponent.cpp index 3a6ed1c241..f64d4af23d 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/MaterialBrowser/MaterialBrowserComponent.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/MaterialBrowser/MaterialBrowserComponent.cpp @@ -36,8 +36,7 @@ namespace AzToolsFramework using namespace Thumbnailer; using namespace AssetBrowser; const char* contextName = "MaterialBrowser"; - int thumbnailSize = qApp->style()->pixelMetric(QStyle::PM_SmallIconSize); - ThumbnailerRequestsBus::Broadcast(&ThumbnailerRequests::RegisterContext, contextName, thumbnailSize); + ThumbnailerRequestsBus::Broadcast(&ThumbnailerRequests::RegisterContext, contextName); ThumbnailerRequestsBus::Broadcast(&ThumbnailerRequests::RegisterThumbnailProvider, MAKE_TCACHE(FolderThumbnailCache), contextName); ThumbnailerRequestsBus::Broadcast(&ThumbnailerRequests::RegisterThumbnailProvider, MAKE_TCACHE(SourceThumbnailCache), contextName); ThumbnailerRequestsBus::Broadcast(&ThumbnailerRequests::RegisterThumbnailProvider, MAKE_TCACHE(MaterialThumbnailCache), contextName); diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/MaterialBrowser/MaterialThumbnail.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/MaterialBrowser/MaterialThumbnail.cpp index 30e7f4d6cb..e04df8937c 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/MaterialBrowser/MaterialThumbnail.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/MaterialBrowser/MaterialThumbnail.cpp @@ -24,8 +24,8 @@ namespace AzToolsFramework ////////////////////////////////////////////////////////////////////////// // MaterialThumbnail ////////////////////////////////////////////////////////////////////////// - MaterialThumbnail::MaterialThumbnail(Thumbnailer::SharedThumbnailKey key, int thumbnailSize) - : Thumbnail(key, thumbnailSize) + MaterialThumbnail::MaterialThumbnail(Thumbnailer::SharedThumbnailKey key) + : Thumbnail(key) { auto productKey = azrtti_cast(m_key.data()); AZ_Assert(productKey, "Incorrect key type, excpected ProductThumbnailKey"); @@ -34,7 +34,8 @@ namespace AzToolsFramework MaterialBrowserRequestBus::BroadcastResult(multiMat, &MaterialBrowserRequests::IsMultiMaterial, productKey->GetAssetId()); QString iconPath = multiMat ? MultiMaterialIconPath : SimpleMaterialIconPath; - m_pixmap = QPixmap(iconPath).scaled(m_thumbnailSize, m_thumbnailSize, Qt::KeepAspectRatio); + m_pixmap.load(iconPath); + m_state = m_pixmap.isNull() ? State::Failed : State::Ready; } ////////////////////////////////////////////////////////////////////////// diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/MaterialBrowser/MaterialThumbnail.h b/Code/Framework/AzToolsFramework/AzToolsFramework/MaterialBrowser/MaterialThumbnail.h index f7873ef765..60a2bb11e5 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/MaterialBrowser/MaterialThumbnail.h +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/MaterialBrowser/MaterialThumbnail.h @@ -28,7 +28,7 @@ namespace AzToolsFramework { Q_OBJECT public: - MaterialThumbnail(Thumbnailer::SharedThumbnailKey key, int thumbnailSize); + MaterialThumbnail(Thumbnailer::SharedThumbnailKey key); }; namespace diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/LoadingThumbnail.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/LoadingThumbnail.cpp index 0664c63a5b..2db93a92f3 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/LoadingThumbnail.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/LoadingThumbnail.cpp @@ -18,13 +18,15 @@ namespace AzToolsFramework { namespace Thumbnailer { + static constexpr const int LoadingThumbnailSize = 128; + ////////////////////////////////////////////////////////////////////////// // LoadingThumbnail ////////////////////////////////////////////////////////////////////////// static const char* LoadingIconPath = "Editor/Icons/AssetBrowser/in_progress.gif"; - LoadingThumbnail::LoadingThumbnail(int thumbnailSize) - : Thumbnail(MAKE_TKEY(ThumbnailKey), thumbnailSize) + LoadingThumbnail::LoadingThumbnail() + : Thumbnail(MAKE_TKEY(ThumbnailKey)) , m_angle(0) { const char* engineRoot = nullptr; @@ -34,7 +36,7 @@ namespace AzToolsFramework AZ::StringFunc::Path::Join(engineRoot, LoadingIconPath, iconPath); m_loadingMovie.setFileName(iconPath.c_str()); m_loadingMovie.setCacheMode(QMovie::CacheMode::CacheAll); - m_loadingMovie.setScaledSize(QSize(m_thumbnailSize, m_thumbnailSize)); + m_loadingMovie.setScaledSize(QSize(LoadingThumbnailSize, LoadingThumbnailSize)); m_loadingMovie.start(); m_pixmap = m_loadingMovie.currentPixmap(); m_state = State::Ready; diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/LoadingThumbnail.h b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/LoadingThumbnail.h index c9a2e88dfe..b8f50278b8 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/LoadingThumbnail.h +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/LoadingThumbnail.h @@ -29,7 +29,7 @@ namespace AzToolsFramework { Q_OBJECT public: - explicit LoadingThumbnail(int thumbnailSize); + LoadingThumbnail(); ~LoadingThumbnail() override; void UpdateTime(float /*deltaTime*/) override; diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/MissingThumbnail.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/MissingThumbnail.cpp index 06921f2606..2bdec58392 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/MissingThumbnail.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/MissingThumbnail.cpp @@ -18,11 +18,11 @@ namespace AzToolsFramework { static const char* MISSING_ICON_PATH = "Editor/Icons/AssetBrowser/Default_16.svg"; - MissingThumbnail::MissingThumbnail(int thumbnailSize) - : Thumbnail(MAKE_TKEY(ThumbnailKey), thumbnailSize) + MissingThumbnail::MissingThumbnail() + : Thumbnail(MAKE_TKEY(ThumbnailKey)) { - m_icon = QIcon(MISSING_ICON_PATH); - m_state = State::Ready; + m_pixmap.load(MISSING_ICON_PATH); + m_state = m_pixmap.isNull() ? State::Failed : State::Ready; } } // namespace Thumbnailer diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/MissingThumbnail.h b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/MissingThumbnail.h index 5858c759c9..e5712c514a 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/MissingThumbnail.h +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/MissingThumbnail.h @@ -24,7 +24,7 @@ namespace AzToolsFramework { Q_OBJECT public: - explicit MissingThumbnail(int thumbnailSize); + MissingThumbnail(); }; } // namespace Thumbnailer } // namespace AzToolsFramework diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/SourceControlThumbnail.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/SourceControlThumbnail.cpp index 705ce5f71b..ce6e04e105 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/SourceControlThumbnail.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/SourceControlThumbnail.cpp @@ -69,8 +69,8 @@ namespace AzToolsFramework bool SourceControlThumbnail::m_readyForUpdate = true; - SourceControlThumbnail::SourceControlThumbnail(SharedThumbnailKey key, int thumbnailSize) - : Thumbnail(key, thumbnailSize) + SourceControlThumbnail::SourceControlThumbnail(SharedThumbnailKey key) + : Thumbnail(key) { const char* engineRoot = nullptr; AzFramework::ApplicationRequests::Bus::BroadcastResult(engineRoot, &AzFramework::ApplicationRequests::GetEngineRoot); @@ -122,16 +122,16 @@ namespace AzToolsFramework { if (fileInfo.HasFlag(AzToolsFramework::SCF_Writeable)) { - m_icon = QIcon(m_writableIconPath.c_str()); + m_pixmap.load(m_writableIconPath.c_str()); } else { - m_icon = QIcon(m_nonWritableIconPath.c_str()); + m_pixmap.load(m_nonWritableIconPath.c_str()); } } else { - m_icon = QIcon(); + m_pixmap = QPixmap(); } m_readyForUpdate = true; emit Updated(); diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/SourceControlThumbnail.h b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/SourceControlThumbnail.h index 03b04a3fd9..23fded57f4 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/SourceControlThumbnail.h +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/SourceControlThumbnail.h @@ -55,7 +55,7 @@ namespace AzToolsFramework { Q_OBJECT public: - SourceControlThumbnail(SharedThumbnailKey key, int thumbnailSize); + SourceControlThumbnail(SharedThumbnailKey key); ~SourceControlThumbnail() override; ////////////////////////////////////////////////////////////////////////// diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/Thumbnail.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/Thumbnail.cpp index 2892e4efce..499f508dcd 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/Thumbnail.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/Thumbnail.cpp @@ -24,8 +24,6 @@ namespace AzToolsFramework { namespace Thumbnailer { - static const int DefaultIconSize = 16; - ////////////////////////////////////////////////////////////////////////// // ThumbnailKey ////////////////////////////////////////////////////////////////////////// @@ -54,10 +52,9 @@ namespace AzToolsFramework ////////////////////////////////////////////////////////////////////////// // Thumbnail ////////////////////////////////////////////////////////////////////////// - Thumbnail::Thumbnail(SharedThumbnailKey key, int thumbnailSize) + Thumbnail::Thumbnail(SharedThumbnailKey key) : QObject() , m_state(State::Unloaded) - , m_thumbnailSize(thumbnailSize) , m_key(key) { connect(&m_watcher, &QFutureWatcher::finished, this, [this]() @@ -91,19 +88,9 @@ namespace AzToolsFramework } } - QPixmap Thumbnail::GetPixmap() const + const QPixmap& Thumbnail::GetPixmap() const { - return GetPixmap(QSize(DefaultIconSize, DefaultIconSize)); - } - - QPixmap Thumbnail::GetPixmap(const QSize& size) const - { - if (m_icon.isNull()) - { - return m_pixmap; - } - - return m_icon.pixmap(size); + return m_pixmap; } SharedThumbnailKey Thumbnail::GetKey() const diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/Thumbnail.h b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/Thumbnail.h index 671960bea5..a517625e61 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/Thumbnail.h +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/Thumbnail.h @@ -19,7 +19,6 @@ AZ_PUSH_DISABLE_WARNING(4127 4251 4800, "-Wunknown-warning-option") // 4127: con // 4800: 'int': forcing value to bool 'true' or 'false' (performance warning) #include #include -#include #include AZ_POP_DISABLE_WARNING #endif @@ -86,12 +85,11 @@ namespace AzToolsFramework Failed }; - Thumbnail(SharedThumbnailKey key, int thumbnailSize); + Thumbnail(SharedThumbnailKey key); ~Thumbnail() override; bool operator == (const Thumbnail& other) const; void Load(); - virtual QPixmap GetPixmap() const; - virtual QPixmap GetPixmap(const QSize& size) const; + const QPixmap& GetPixmap() const; virtual void UpdateTime(float /*deltaTime*/) {} SharedThumbnailKey GetKey() const; State GetState() const; @@ -105,10 +103,8 @@ namespace AzToolsFramework protected: QFutureWatcher m_watcher; State m_state; - int m_thumbnailSize; SharedThumbnailKey m_key; QPixmap m_pixmap; - QIcon m_icon; virtual void LoadThread() {} }; @@ -122,7 +118,6 @@ namespace AzToolsFramework ThumbnailProvider() = default; virtual ~ThumbnailProvider() = default; virtual bool GetThumbnail(SharedThumbnailKey key, SharedThumbnail& thumbnail) = 0; - virtual void SetThumbnailSize(int thumbnailSize) = 0; //! Priority identifies ThumbnailProvider order in ThumbnailContext //! Higher priority means this ThumbnailProvider will take precedence in generating a thumbnail when //! a supplied ThumbnailKey is supported by multiple providers. @@ -185,10 +180,7 @@ namespace AzToolsFramework bool GetThumbnail(SharedThumbnailKey key, SharedThumbnail& thumbnail) override; - void SetThumbnailSize(int thumbnailSize) override; - protected: - int m_thumbnailSize; AZStd::unordered_map m_cache; //! Check if thumbnail key is handled by this provider, overload in derived class diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/Thumbnail.inl b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/Thumbnail.inl index 3182248017..b121f56a75 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/Thumbnail.inl +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/Thumbnail.inl @@ -18,7 +18,6 @@ namespace AzToolsFramework { template ThumbnailCache::ThumbnailCache() - : m_thumbnailSize(0) { BusConnect(); } @@ -49,17 +48,11 @@ namespace AzToolsFramework } if (IsSupportedThumbnail(key)) { - thumbnail = QSharedPointer(new ThumbnailType(key, m_thumbnailSize)); + thumbnail = QSharedPointer(new ThumbnailType(key)); m_cache[key] = thumbnail; return true; } return false; } - - template - void ThumbnailCache::SetThumbnailSize(int thumbnailSize) - { - m_thumbnailSize = thumbnailSize; - } } // namespace Thumbnailer } // namespace AzToolsFramework diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/ThumbnailContext.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/ThumbnailContext.cpp index ae6d7c1178..1cee6946e7 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/ThumbnailContext.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/ThumbnailContext.cpp @@ -24,10 +24,9 @@ namespace AzToolsFramework { namespace Thumbnailer { - ThumbnailContext::ThumbnailContext(int thumbnailSize) - : m_missingThumbnail(new MissingThumbnail(thumbnailSize)) - , m_loadingThumbnail(new LoadingThumbnail(thumbnailSize)) - , m_thumbnailSize(thumbnailSize) + ThumbnailContext::ThumbnailContext() + : m_missingThumbnail(new MissingThumbnail()) + , m_loadingThumbnail(new LoadingThumbnail()) , m_threadPool(this) { ThumbnailContextRequestBus::Handler::BusConnect(); @@ -120,7 +119,6 @@ namespace AzToolsFramework return; } - providerToAdd->SetThumbnailSize(m_thumbnailSize); m_providers.insert(providerToAdd); } diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/ThumbnailContext.h b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/ThumbnailContext.h index 6ba3d637f6..0267d76365 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/ThumbnailContext.h +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/ThumbnailContext.h @@ -45,9 +45,9 @@ namespace AzToolsFramework { Q_OBJECT public: - AZ_CLASS_ALLOCATOR(ThumbnailContext, AZ::SystemAllocator, 0) + AZ_CLASS_ALLOCATOR(ThumbnailContext, AZ::SystemAllocator, 0); - explicit ThumbnailContext(int thumbnailSize); + ThumbnailContext(); ~ThumbnailContext() override; //! Is the thumbnail currently loading or is about to load. @@ -82,8 +82,6 @@ namespace AzToolsFramework SharedThumbnail m_missingThumbnail; //! Default loading thumbnail used when thumbnail is found by is not yet generated SharedThumbnail m_loadingThumbnail; - //! Thumbnail size (width and height in pixels) - int m_thumbnailSize; //! There is only a limited number of threads on global threadPool, because there can be many thumbnails rendering at once //! an individual threadPool is needed to avoid deadlocks QThreadPool m_threadPool; diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/ThumbnailerBus.h b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/ThumbnailerBus.h index 02264e61f8..d191d9c043 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/ThumbnailerBus.h +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/ThumbnailerBus.h @@ -40,7 +40,7 @@ namespace AzToolsFramework { public: //! Add thumbnail context - virtual void RegisterContext(const char* contextName, int thumbnailSize) = 0; + virtual void RegisterContext(const char* contextName) = 0; //! Remove thumbnail context and all associated ThumbnailProviders virtual void UnregisterContext(const char* contextName) = 0; diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/ThumbnailerComponent.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/ThumbnailerComponent.cpp index 044f995a5a..36c9e35314 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/ThumbnailerComponent.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/ThumbnailerComponent.cpp @@ -32,8 +32,7 @@ namespace AzToolsFramework void ThumbnailerComponent::Activate() { - int thumbnailSize = qApp->style()->pixelMetric(QStyle::PM_SmallIconSize); - RegisterContext(ThumbnailContext::DefaultContext, thumbnailSize); + RegisterContext(ThumbnailContext::DefaultContext); BusConnect(); } @@ -62,10 +61,10 @@ namespace AzToolsFramework provided.push_back(AZ_CRC("ThumbnailerService", 0x65422b97)); } - void ThumbnailerComponent::RegisterContext(const char* contextName, int thumbnailSize) + void ThumbnailerComponent::RegisterContext(const char* contextName) { AZ_Assert(m_thumbnails.find(contextName) == m_thumbnails.end(), "Context %s already registered", contextName); - m_thumbnails[contextName] = AZStd::make_shared(thumbnailSize); + m_thumbnails[contextName] = AZStd::make_shared(); } void ThumbnailerComponent::UnregisterContext(const char* contextName) diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/ThumbnailerComponent.h b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/ThumbnailerComponent.h index 814781ea9a..6575f277e9 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/ThumbnailerComponent.h +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/ThumbnailerComponent.h @@ -43,7 +43,7 @@ namespace AzToolsFramework ////////////////////////////////////////////////////////////////////////// // ThumbnailerRequests ////////////////////////////////////////////////////////////////////////// - void RegisterContext(const char* contextName, int thumbnailSize) override; + void RegisterContext(const char* contextName) override; void UnregisterContext(const char* contextName) override; bool HasContext(const char* contextName) const override; void RegisterThumbnailProvider(SharedThumbnailProvider provider, const char* contextName) override; diff --git a/Code/Framework/AzToolsFramework/Tests/ThumbnailerTests.cpp b/Code/Framework/AzToolsFramework/Tests/ThumbnailerTests.cpp index 2c17334043..195e9c54cc 100644 --- a/Code/Framework/AzToolsFramework/Tests/ThumbnailerTests.cpp +++ b/Code/Framework/AzToolsFramework/Tests/ThumbnailerTests.cpp @@ -85,8 +85,6 @@ namespace UnitTest { constexpr const char* contextName1 = "Context1"; constexpr const char* contextName2 = "Context2"; - constexpr int thumbnailSize1 = 128; - constexpr int thumbnailSize2 = 256; auto checkHasContext = [](const char* contextName) { @@ -98,12 +96,12 @@ namespace UnitTest EXPECT_FALSE(checkHasContext(contextName1)); EXPECT_FALSE(checkHasContext(contextName2)); - AzToolsFramework::Thumbnailer::ThumbnailerRequestBus::Broadcast(&AzToolsFramework::Thumbnailer::ThumbnailerRequests::RegisterContext, contextName1, thumbnailSize1); + AzToolsFramework::Thumbnailer::ThumbnailerRequestBus::Broadcast(&AzToolsFramework::Thumbnailer::ThumbnailerRequests::RegisterContext, contextName1); EXPECT_TRUE(checkHasContext(contextName1)); EXPECT_FALSE(checkHasContext(contextName2)); - AzToolsFramework::Thumbnailer::ThumbnailerRequestBus::Broadcast(&AzToolsFramework::Thumbnailer::ThumbnailerRequests::RegisterContext, contextName2, thumbnailSize2); + AzToolsFramework::Thumbnailer::ThumbnailerRequestBus::Broadcast(&AzToolsFramework::Thumbnailer::ThumbnailerRequests::RegisterContext, contextName2); EXPECT_TRUE(checkHasContext(contextName1)); EXPECT_TRUE(checkHasContext(contextName2)); @@ -123,8 +121,6 @@ namespace UnitTest { constexpr const char* contextName1 = "Context1"; constexpr const char* contextName2 = "Context2"; - constexpr int thumbnailSize1 = 128; - constexpr int thumbnailSize2 = 256; auto checkHasContext = [](const char* contextName) { @@ -133,8 +129,8 @@ namespace UnitTest return hasContext; }; - AzToolsFramework::Thumbnailer::ThumbnailerRequestBus::Broadcast(&AzToolsFramework::Thumbnailer::ThumbnailerRequests::RegisterContext, contextName1, thumbnailSize1); - AzToolsFramework::Thumbnailer::ThumbnailerRequestBus::Broadcast(&AzToolsFramework::Thumbnailer::ThumbnailerRequests::RegisterContext, contextName2, thumbnailSize2); + AzToolsFramework::Thumbnailer::ThumbnailerRequestBus::Broadcast(&AzToolsFramework::Thumbnailer::ThumbnailerRequests::RegisterContext, contextName1); + AzToolsFramework::Thumbnailer::ThumbnailerRequestBus::Broadcast(&AzToolsFramework::Thumbnailer::ThumbnailerRequests::RegisterContext, contextName2); EXPECT_TRUE(checkHasContext(contextName1)); EXPECT_TRUE(checkHasContext(contextName2)); @@ -149,12 +145,11 @@ namespace UnitTest TEST_F(ThumbnailerTests, ThumbnailerComponent_RegisterContextTwice_Assert) { constexpr const char* contextName1 = "Context1"; - constexpr int thumbnailSize1 = 128; - AzToolsFramework::Thumbnailer::ThumbnailerRequestBus::Broadcast(&AzToolsFramework::Thumbnailer::ThumbnailerRequests::RegisterContext, contextName1, thumbnailSize1); + AzToolsFramework::Thumbnailer::ThumbnailerRequestBus::Broadcast(&AzToolsFramework::Thumbnailer::ThumbnailerRequests::RegisterContext, contextName1); AZ_TEST_START_TRACE_SUPPRESSION; - AzToolsFramework::Thumbnailer::ThumbnailerRequestBus::Broadcast(&AzToolsFramework::Thumbnailer::ThumbnailerRequests::RegisterContext, contextName1, thumbnailSize1); + AzToolsFramework::Thumbnailer::ThumbnailerRequestBus::Broadcast(&AzToolsFramework::Thumbnailer::ThumbnailerRequests::RegisterContext, contextName1); AZ_TEST_STOP_TRACE_SUPPRESSION(1); } diff --git a/Code/Tools/Standalone/Source/ThumbnailerNullComponent.cpp b/Code/Tools/Standalone/Source/ThumbnailerNullComponent.cpp index 0818291a33..ff429c4981 100644 --- a/Code/Tools/Standalone/Source/ThumbnailerNullComponent.cpp +++ b/Code/Tools/Standalone/Source/ThumbnailerNullComponent.cpp @@ -53,7 +53,7 @@ namespace LUAEditor services.push_back(AZ_CRC("ThumbnailerService", 0x65422b97)); } - void ThumbnailerNullComponent::RegisterContext(const char* /*contextName*/, int /*thumbnailSize*/) + void ThumbnailerNullComponent::RegisterContext(const char* /*contextName*/) { } diff --git a/Code/Tools/Standalone/Source/ThumbnailerNullComponent.h b/Code/Tools/Standalone/Source/ThumbnailerNullComponent.h index bb56a27e8f..9d0c638305 100644 --- a/Code/Tools/Standalone/Source/ThumbnailerNullComponent.h +++ b/Code/Tools/Standalone/Source/ThumbnailerNullComponent.h @@ -42,7 +42,7 @@ namespace LUAEditor ////////////////////////////////////////////////////////////////////////// // ThumbnailerRequests ////////////////////////////////////////////////////////////////////////// - void RegisterContext(const char* contextName, int thumbnailSize) override; + void RegisterContext(const char* contextName) override; void UnregisterContext(const char* contextName) override; bool HasContext(const char* contextName) const override; void RegisterThumbnailProvider(AzToolsFramework::Thumbnailer::SharedThumbnailProvider provider, const char* contextName) override; diff --git a/Gems/Atom/Asset/ImageProcessingAtom/Code/Source/Thumbnail/ImageThumbnail.cpp b/Gems/Atom/Asset/ImageProcessingAtom/Code/Source/Thumbnail/ImageThumbnail.cpp index a586de9724..dda4587588 100644 --- a/Gems/Atom/Asset/ImageProcessingAtom/Code/Source/Thumbnail/ImageThumbnail.cpp +++ b/Gems/Atom/Asset/ImageProcessingAtom/Code/Source/Thumbnail/ImageThumbnail.cpp @@ -22,13 +22,13 @@ namespace ImageProcessingAtom { namespace Thumbnails { - const int ImageThumbnailSize = 200; + static constexpr const int ImageThumbnailSize = 256; ////////////////////////////////////////////////////////////////////////// // ImageThumbnail ////////////////////////////////////////////////////////////////////////// - ImageThumbnail::ImageThumbnail(AzToolsFramework::Thumbnailer::SharedThumbnailKey key, int thumbnailSize) - : Thumbnail(key, thumbnailSize) + ImageThumbnail::ImageThumbnail(AzToolsFramework::Thumbnailer::SharedThumbnailKey key) + : Thumbnail(key) { auto sourceKey = azrtti_cast(key.data()); if (sourceKey) @@ -66,7 +66,7 @@ namespace ImageProcessingAtom AzToolsFramework::Thumbnailer::ThumbnailerRendererRequestBus::QueueEvent( AZ::RPI::StreamingImageAsset::RTTI_Type(), &AzToolsFramework::Thumbnailer::ThumbnailerRendererRequests::RenderThumbnail, m_key, - m_thumbnailSize); + ImageThumbnailSize); // wait for response from thumbnail renderer m_renderWait.acquire(); } diff --git a/Gems/Atom/Asset/ImageProcessingAtom/Code/Source/Thumbnail/ImageThumbnail.h b/Gems/Atom/Asset/ImageProcessingAtom/Code/Source/Thumbnail/ImageThumbnail.h index 85ce9d59e6..a73a742b83 100644 --- a/Gems/Atom/Asset/ImageProcessingAtom/Code/Source/Thumbnail/ImageThumbnail.h +++ b/Gems/Atom/Asset/ImageProcessingAtom/Code/Source/Thumbnail/ImageThumbnail.h @@ -34,7 +34,7 @@ namespace ImageProcessingAtom { Q_OBJECT public: - ImageThumbnail(AzToolsFramework::Thumbnailer::SharedThumbnailKey key, int thumbnailSize); + ImageThumbnail(AzToolsFramework::Thumbnailer::SharedThumbnailKey key); ~ImageThumbnail() override; //! AzToolsFramework::ThumbnailerRendererNotificationBus::Handler overrides... diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Material/MaterialThumbnail.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Material/MaterialThumbnail.cpp index 21f592db4a..b0b9a39780 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Material/MaterialThumbnail.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Material/MaterialThumbnail.cpp @@ -21,13 +21,13 @@ namespace AZ { namespace Thumbnails { - const int MaterialThumbnailSize = 200; + static constexpr const int MaterialThumbnailSize = 512; // 512 is the default size in render to texture pass ////////////////////////////////////////////////////////////////////////// // MaterialThumbnail ////////////////////////////////////////////////////////////////////////// - MaterialThumbnail::MaterialThumbnail(AzToolsFramework::Thumbnailer::SharedThumbnailKey key, int thumbnailSize) - : Thumbnail(key, thumbnailSize) + MaterialThumbnail::MaterialThumbnail(AzToolsFramework::Thumbnailer::SharedThumbnailKey key) + : Thumbnail(key) { m_assetId = GetAssetId(key, RPI::MaterialAsset::RTTI_Type()); if (!m_assetId.IsValid()) @@ -47,7 +47,7 @@ namespace AZ RPI::MaterialAsset::RTTI_Type(), &AzToolsFramework::Thumbnailer::ThumbnailerRendererRequests::RenderThumbnail, m_key, - m_thumbnailSize); + MaterialThumbnailSize); // wait for response from thumbnail renderer m_renderWait.acquire(); } diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Material/MaterialThumbnail.h b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Material/MaterialThumbnail.h index 249426dfe8..612e44fb98 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Material/MaterialThumbnail.h +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Material/MaterialThumbnail.h @@ -36,7 +36,7 @@ namespace AZ { Q_OBJECT public: - MaterialThumbnail(AzToolsFramework::Thumbnailer::SharedThumbnailKey key, int thumbnailSize); + MaterialThumbnail(AzToolsFramework::Thumbnailer::SharedThumbnailKey key); ~MaterialThumbnail() override; //! AzToolsFramework::ThumbnailerRendererNotificationBus::Handler overrides... diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Mesh/MeshThumbnail.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Mesh/MeshThumbnail.cpp index 315eb2a892..fed46f4608 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Mesh/MeshThumbnail.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Mesh/MeshThumbnail.cpp @@ -22,13 +22,13 @@ namespace AZ { namespace Thumbnails { - const int MeshThumbnailSize = 200; + static constexpr const int MeshThumbnailSize = 512; // 512 is the default size in render to texture pass ////////////////////////////////////////////////////////////////////////// // MeshThumbnail ////////////////////////////////////////////////////////////////////////// - MeshThumbnail::MeshThumbnail(AzToolsFramework::Thumbnailer::SharedThumbnailKey key, int thumbnailSize) - : Thumbnail(key, thumbnailSize) + MeshThumbnail::MeshThumbnail(AzToolsFramework::Thumbnailer::SharedThumbnailKey key) + : Thumbnail(key) { m_assetId = GetAssetId(key, RPI::ModelAsset::RTTI_Type()); if (!m_assetId.IsValid()) @@ -48,7 +48,7 @@ namespace AZ RPI::ModelAsset::RTTI_Type(), &AzToolsFramework::Thumbnailer::ThumbnailerRendererRequests::RenderThumbnail, m_key, - m_thumbnailSize); + MeshThumbnailSize); // wait for response from thumbnail renderer m_renderWait.acquire(); } diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Mesh/MeshThumbnail.h b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Mesh/MeshThumbnail.h index 68c7825aaa..75b6c8cf68 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Mesh/MeshThumbnail.h +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Mesh/MeshThumbnail.h @@ -35,7 +35,7 @@ namespace AZ { Q_OBJECT public: - MeshThumbnail(AzToolsFramework::Thumbnailer::SharedThumbnailKey key, int thumbnailSize); + MeshThumbnail(AzToolsFramework::Thumbnailer::SharedThumbnailKey key); ~MeshThumbnail() override; //! AzToolsFramework::ThumbnailerRendererNotificationBus::Handler overrides... diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Thumbnails/Rendering/CommonThumbnailRenderer.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Thumbnails/Rendering/CommonThumbnailRenderer.cpp index 6dff92c170..06d54a20b3 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Thumbnails/Rendering/CommonThumbnailRenderer.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Thumbnails/Rendering/CommonThumbnailRenderer.cpp @@ -82,8 +82,9 @@ namespace AZ return m_data; } - void CommonThumbnailRenderer::RenderThumbnail(AzToolsFramework::Thumbnailer::SharedThumbnailKey thumbnailKey, [[maybe_unused]] int thumbnailSize) + void CommonThumbnailRenderer::RenderThumbnail(AzToolsFramework::Thumbnailer::SharedThumbnailKey thumbnailKey, int thumbnailSize) { + m_data->m_thumbnailSize = thumbnailSize; m_data->m_thumbnailQueue.push(thumbnailKey); if (m_currentStep == Step::None) { diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Thumbnails/Rendering/ThumbnailRendererData.h b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Thumbnails/Rendering/ThumbnailRendererData.h index 8a7bace6aa..28e98082d0 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Thumbnails/Rendering/ThumbnailRendererData.h +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Thumbnails/Rendering/ThumbnailRendererData.h @@ -52,6 +52,7 @@ namespace AZ double m_simulateTime = 0.0f; float m_deltaTime = 0.0f; + int m_thumbnailSize = 512; //! Incoming thumbnail requests are appended to this queue and processed one at a time in OnTick function. AZStd::queue m_thumbnailQueue; From 8e88d746a3d6826521e17114f8f48a461aeeb3e9 Mon Sep 17 00:00:00 2001 From: Chris Galvan Date: Tue, 27 Apr 2021 16:56:20 -0500 Subject: [PATCH 27/54] [LYN-3356] Replaced GetSelectedEntities + size() with new API. --- Code/Sandbox/Editor/EditorViewportWidget.cpp | 8 +++---- .../Editor/TrackView/TrackViewDialog.cpp | 23 +++++++------------ .../Editor/TrackView/TrackViewNodes.cpp | 8 +++---- 3 files changed, 16 insertions(+), 23 deletions(-) diff --git a/Code/Sandbox/Editor/EditorViewportWidget.cpp b/Code/Sandbox/Editor/EditorViewportWidget.cpp index 9ce567c91e..d0855084c7 100644 --- a/Code/Sandbox/Editor/EditorViewportWidget.cpp +++ b/Code/Sandbox/Editor/EditorViewportWidget.cpp @@ -1509,10 +1509,10 @@ bool EditorViewportWidget::AddCameraMenuItems(QMenu* menu) } action = customCameraMenu->addAction(tr("Look through entity")); - AzToolsFramework::EntityIdList selectedEntityList; - AzToolsFramework::ToolsApplicationRequests::Bus::BroadcastResult(selectedEntityList, &AzToolsFramework::ToolsApplicationRequests::GetSelectedEntities); - action->setCheckable(selectedEntityList.size() > 0 || m_viewSourceType == ViewSourceType::AZ_Entity); - action->setEnabled(selectedEntityList.size() > 0 || m_viewSourceType == ViewSourceType::AZ_Entity); + bool areAnyEntitiesSelected = false; + AzToolsFramework::ToolsApplicationRequestBus::BroadcastResult(areAnyEntitiesSelected, &AzToolsFramework::ToolsApplicationRequests::AreAnyEntitiesSelected); + action->setCheckable(areAnyEntitiesSelected || m_viewSourceType == ViewSourceType::AZ_Entity); + action->setEnabled(areAnyEntitiesSelected || m_viewSourceType == ViewSourceType::AZ_Entity); action->setChecked(m_viewSourceType == ViewSourceType::AZ_Entity); connect(action, &QAction::triggered, this, [this](bool isChecked) { diff --git a/Code/Sandbox/Editor/TrackView/TrackViewDialog.cpp b/Code/Sandbox/Editor/TrackView/TrackViewDialog.cpp index a7a801e35a..06184c0fc3 100644 --- a/Code/Sandbox/Editor/TrackView/TrackViewDialog.cpp +++ b/Code/Sandbox/Editor/TrackView/TrackViewDialog.cpp @@ -807,18 +807,11 @@ void CTrackViewDialog::UpdateActions() m_actions[ID_TRACKVIEW_MUTE_ALL]->setEnabled(true); m_actions[ID_ADDSCENETRACK]->setEnabled(true); - AzToolsFramework::EntityIdList entityIds; - AzToolsFramework::ToolsApplicationRequests::Bus::BroadcastResult( - entityIds, &AzToolsFramework::ToolsApplicationRequests::GetSelectedEntities); + bool areAnyEntitiesSelected = false; + AzToolsFramework::ToolsApplicationRequestBus::BroadcastResult( + areAnyEntitiesSelected, &AzToolsFramework::ToolsApplicationRequests::AreAnyEntitiesSelected); - if (entityIds.empty()) - { - m_actions[ID_ADDNODE]->setEnabled(false); - } - else - { - m_actions[ID_ADDNODE]->setEnabled(true); - } + m_actions[ID_ADDNODE]->setEnabled(areAnyEntitiesSelected); } else { @@ -1569,12 +1562,12 @@ void CTrackViewDialog::OnAddSelectedNode() sequence->MarkAsModified(); } - AzToolsFramework::EntityIdList entityIds; - AzToolsFramework::ToolsApplicationRequests::Bus::BroadcastResult( - entityIds, &AzToolsFramework::ToolsApplicationRequests::GetSelectedEntities); + int selectedEntitiesCount = 0; + AzToolsFramework::ToolsApplicationRequestBus::BroadcastResult( + selectedEntitiesCount, &AzToolsFramework::ToolsApplicationRequests::GetSelectedEntitiesCount); // check to make sure all nodes were added and notify user if they weren't - if (addedNodes.GetCount() != entityIds.size()) + if (addedNodes.GetCount() != selectedEntitiesCount) { IMovieSystem* movieSystem = GetIEditor()->GetMovieSystem(); diff --git a/Code/Sandbox/Editor/TrackView/TrackViewNodes.cpp b/Code/Sandbox/Editor/TrackView/TrackViewNodes.cpp index 268ae229b5..3979bf3cca 100644 --- a/Code/Sandbox/Editor/TrackView/TrackViewNodes.cpp +++ b/Code/Sandbox/Editor/TrackView/TrackViewNodes.cpp @@ -1137,12 +1137,12 @@ void CTrackViewNodesCtrl::OnNMRclick(QPoint point) CTrackViewAnimNodeBundle addedNodes = groupNode->AddSelectedEntities(m_pTrackViewDialog->GetDefaultTracksForEntityNode()); undoBatch.MarkEntityDirty(groupNode->GetSequence()->GetSequenceComponentEntityId()); - AzToolsFramework::EntityIdList entityIds; - AzToolsFramework::ToolsApplicationRequests::Bus::BroadcastResult( - entityIds, &AzToolsFramework::ToolsApplicationRequests::GetSelectedEntities); + int selectedEntitiesCount = 0; + AzToolsFramework::ToolsApplicationRequestBus::BroadcastResult( + selectedEntitiesCount, &AzToolsFramework::ToolsApplicationRequests::GetSelectedEntitiesCount); // check to make sure all nodes were added and notify user if they weren't - if (addedNodes.GetCount() != entityIds.size()) + if (addedNodes.GetCount() != selectedEntitiesCount) { IMovieSystem* movieSystem = GetIEditor()->GetMovieSystem(); From 5593350f8426880204232e691f50e9a7fe97e624 Mon Sep 17 00:00:00 2001 From: guthadam Date: Tue, 27 Apr 2021 17:12:42 -0500 Subject: [PATCH 28/54] ATOM-15372 Restoring material browser filter logic Restoring material browser filter logic to only show folders with content that matches the filter. This change was originally introduced with the functionality to create a new folder within the material browser. Creating a new, empty folder would not display the folder in the browser because it did not have any content that matched the filter. While that makes sense to address the issue with the create folder command, it makes it extremely difficult and navigate the browser to find assets that match the filter because every folder that does not match the filter is also displayed in the tree. We can revisit issues with the create folder action later. https://jira.agscollab.com/browse/ATOM-15372 --- .../Code/Source/Window/MaterialBrowserWidget.cpp | 15 ++------------- 1 file changed, 2 insertions(+), 13 deletions(-) diff --git a/Gems/Atom/Tools/MaterialEditor/Code/Source/Window/MaterialBrowserWidget.cpp b/Gems/Atom/Tools/MaterialEditor/Code/Source/Window/MaterialBrowserWidget.cpp index 0dec1c6d23..3c4134b7e0 100644 --- a/Gems/Atom/Tools/MaterialEditor/Code/Source/Window/MaterialBrowserWidget.cpp +++ b/Gems/Atom/Tools/MaterialEditor/Code/Source/Window/MaterialBrowserWidget.cpp @@ -110,30 +110,19 @@ namespace MaterialEditor { using namespace AzToolsFramework::AssetBrowser; - // Material Browser uses the following filters: - // 1. [All source files (no products) that contain products matching the assetType specified by searchWidget (default is materials and textures)] - // 2. [All folders (including empty folders)] - // 3. [All Sources and folders matching the search text typed in search widget] - // Final filter = ((1 OR 2) AND 3) - QSharedPointer sourceFilter(new EntryTypeFilter); sourceFilter->SetEntryType(AssetBrowserEntry::AssetEntryType::Source); - QSharedPointer assetTypeFilter(new CompositeFilter(CompositeFilter::LogicOperatorType::AND)); - assetTypeFilter->AddFilter(sourceFilter); - assetTypeFilter->AddFilter(m_ui->m_searchWidget->GetTypesFilter()); - QSharedPointer folderFilter(new EntryTypeFilter); folderFilter->SetEntryType(AssetBrowserEntry::AssetEntryType::Folder); QSharedPointer sourceOrFolderFilter(new CompositeFilter(CompositeFilter::LogicOperatorType::OR)); - sourceOrFolderFilter->AddFilter(assetTypeFilter); + sourceOrFolderFilter->AddFilter(sourceFilter); sourceOrFolderFilter->AddFilter(folderFilter); QSharedPointer finalFilter(new CompositeFilter(CompositeFilter::LogicOperatorType::AND)); finalFilter->AddFilter(sourceOrFolderFilter); - finalFilter->AddFilter(m_ui->m_searchWidget->GetStringFilter()); - finalFilter->SetFilterPropagation(AssetBrowserEntryFilter::PropagateDirection::Down); + finalFilter->AddFilter(m_ui->m_searchWidget->GetFilter()); return finalFilter; } From e255c49999c6bb6195ce55d23dee900eb7ebd33f Mon Sep 17 00:00:00 2001 From: luissemp Date: Tue, 27 Apr 2021 15:28:12 -0700 Subject: [PATCH 29/54] Removed the ScriptCanvasDiagnosticLibrary gem, it's not Atom compatible --- .../CMakeLists.txt | 12 -- .../Code/CMakeLists.txt | 49 ------- .../DebugDrawBus.h | 45 ------ .../ScriptCanvasDiagnosticLibraryGem.h | 30 ---- .../Code/Source/Debug.h | 30 ---- .../Code/Source/DebugLibraryDefinition.cpp | 57 -------- .../Code/Source/DebugLibraryDefinition.h | 30 ---- .../Source/DrawText.ScriptCanvasGrammar.xml | 54 ------- .../Code/Source/DrawText.cpp | 135 ----------------- .../Code/Source/DrawText.h | 70 --------- .../Code/Source/DrawTextNodeable.cpp | 138 ------------------ .../Code/Source/DrawTextNodeable.h | 91 ------------ .../ScriptCanvasDiagnosticLibraryGem.cpp | 46 ------ .../ScriptCanvasDiagnosticSystemComponent.cpp | 92 ------------ .../ScriptCanvasDiagnosticSystemComponent.h | 60 -------- .../Code/Source/precompiled.cpp | 13 -- .../Code/Source/precompiled.h | 28 ---- .../ScriptCanvasDiagnosticLibraryTest.cpp | 44 ------ ...anvasdiagnosticlibrary_autogen_files.cmake | 19 --- ...canvasdiagnosticlibrary_common_files.cmake | 24 --- ...canvasdiagnosticlibrary_shared_files.cmake | 14 -- Gems/ScriptCanvasDiagnosticLibrary/gem.json | 25 ---- .../ScriptCanvasDiagnosticLibrary/preview.png | 3 - 23 files changed, 1109 deletions(-) delete mode 100644 Gems/ScriptCanvasDiagnosticLibrary/CMakeLists.txt delete mode 100644 Gems/ScriptCanvasDiagnosticLibrary/Code/CMakeLists.txt delete mode 100644 Gems/ScriptCanvasDiagnosticLibrary/Code/Include/ScriptCanvasDiagnosticLibrary/DebugDrawBus.h delete mode 100644 Gems/ScriptCanvasDiagnosticLibrary/Code/Include/ScriptCanvasDiagnosticLibrary/ScriptCanvasDiagnosticLibraryGem.h delete mode 100644 Gems/ScriptCanvasDiagnosticLibrary/Code/Source/Debug.h delete mode 100644 Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DebugLibraryDefinition.cpp delete mode 100644 Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DebugLibraryDefinition.h delete mode 100644 Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DrawText.ScriptCanvasGrammar.xml delete mode 100644 Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DrawText.cpp delete mode 100644 Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DrawText.h delete mode 100644 Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DrawTextNodeable.cpp delete mode 100644 Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DrawTextNodeable.h delete mode 100644 Gems/ScriptCanvasDiagnosticLibrary/Code/Source/ScriptCanvasDiagnosticLibraryGem.cpp delete mode 100644 Gems/ScriptCanvasDiagnosticLibrary/Code/Source/ScriptCanvasDiagnosticSystemComponent.cpp delete mode 100644 Gems/ScriptCanvasDiagnosticLibrary/Code/Source/ScriptCanvasDiagnosticSystemComponent.h delete mode 100644 Gems/ScriptCanvasDiagnosticLibrary/Code/Source/precompiled.cpp delete mode 100644 Gems/ScriptCanvasDiagnosticLibrary/Code/Source/precompiled.h delete mode 100644 Gems/ScriptCanvasDiagnosticLibrary/Code/Tests/ScriptCanvasDiagnosticLibraryTest.cpp delete mode 100644 Gems/ScriptCanvasDiagnosticLibrary/Code/scriptcanvasdiagnosticlibrary_autogen_files.cmake delete mode 100644 Gems/ScriptCanvasDiagnosticLibrary/Code/scriptcanvasdiagnosticlibrary_common_files.cmake delete mode 100644 Gems/ScriptCanvasDiagnosticLibrary/Code/scriptcanvasdiagnosticlibrary_shared_files.cmake delete mode 100644 Gems/ScriptCanvasDiagnosticLibrary/gem.json delete mode 100644 Gems/ScriptCanvasDiagnosticLibrary/preview.png diff --git a/Gems/ScriptCanvasDiagnosticLibrary/CMakeLists.txt b/Gems/ScriptCanvasDiagnosticLibrary/CMakeLists.txt deleted file mode 100644 index 20a680bce9..0000000000 --- a/Gems/ScriptCanvasDiagnosticLibrary/CMakeLists.txt +++ /dev/null @@ -1,12 +0,0 @@ -# -# All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -# its licensors. -# -# For complete copyright and license terms please see the LICENSE at the root of this -# distribution (the "License"). All use of this software is governed by the License, -# or, if provided, by the license below or the license accompanying this file. Do not -# remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# - -add_subdirectory(Code) diff --git a/Gems/ScriptCanvasDiagnosticLibrary/Code/CMakeLists.txt b/Gems/ScriptCanvasDiagnosticLibrary/Code/CMakeLists.txt deleted file mode 100644 index 4593768464..0000000000 --- a/Gems/ScriptCanvasDiagnosticLibrary/Code/CMakeLists.txt +++ /dev/null @@ -1,49 +0,0 @@ -# -# All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -# its licensors. -# -# For complete copyright and license terms please see the LICENSE at the root of this -# distribution (the "License"). All use of this software is governed by the License, -# or, if provided, by the license below or the license accompanying this file. Do not -# remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# - -ly_add_target( - NAME ScriptCanvasDiagnosticLibrary.Static STATIC - NAMESPACE Gem - FILES_CMAKE - scriptcanvasdiagnosticlibrary_common_files.cmake - scriptcanvasdiagnosticlibrary_autogen_files.cmake - INCLUDE_DIRECTORIES - PRIVATE - Source - . - PUBLIC - Include - BUILD_DEPENDENCIES - PUBLIC - AZ::AzCore - Gem::ScriptCanvas - Legacy::CryCommon - AUTOGEN_RULES - *.ScriptCanvasGrammar.xml,ScriptCanvasGrammar_Header.jinja,$path/$fileprefix.generated.h - *.ScriptCanvasGrammar.xml,ScriptCanvasGrammar_Source.jinja,$path/$fileprefix.generated.cpp - *.ScriptCanvasNodeable.xml,ScriptCanvasNodeable_Header.jinja,$path/$fileprefix.generated.h - *.ScriptCanvasNodeable.xml,ScriptCanvasNodeable_Source.jinja,$path/$fileprefix.generated.cpp -) - -ly_add_target( - NAME ScriptCanvasDiagnosticLibrary ${PAL_TRAIT_MONOLITHIC_DRIVEN_MODULE_TYPE} - NAMESPACE Gem - FILES_CMAKE - scriptcanvasdiagnosticlibrary_shared_files.cmake - INCLUDE_DIRECTORIES - PRIVATE - Source - PUBLIC - Include - BUILD_DEPENDENCIES - PRIVATE - Gem::ScriptCanvasDiagnosticLibrary.Static -) diff --git a/Gems/ScriptCanvasDiagnosticLibrary/Code/Include/ScriptCanvasDiagnosticLibrary/DebugDrawBus.h b/Gems/ScriptCanvasDiagnosticLibrary/Code/Include/ScriptCanvasDiagnosticLibrary/DebugDrawBus.h deleted file mode 100644 index d32e0ea1d5..0000000000 --- a/Gems/ScriptCanvasDiagnosticLibrary/Code/Include/ScriptCanvasDiagnosticLibrary/DebugDrawBus.h +++ /dev/null @@ -1,45 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ - -#pragma once - -#include -#include - -struct IRenderer; - -namespace ScriptCanvasDiagnostics -{ - class DebugDrawRequests : public AZ::EBusTraits - { - public: - - static const AZ::EBusAddressPolicy AddressPolicy = AZ::EBusAddressPolicy::ById; - using BusIdType = void*; - - virtual void OnDebugDraw(IRenderer*) = 0; - }; - - using DebugDrawBus = AZ::EBus; - - class SystemRequests : public AZ::EBusTraits - { - public: - - static const AZ::EBusHandlerPolicy HandlerPolicy = AZ::EBusHandlerPolicy::Single; - static const AZ::EBusAddressPolicy AddressPolicy = AZ::EBusAddressPolicy::Single; - - virtual bool IsEditor() = 0; - }; - - using SystemRequestBus = AZ::EBus; -} diff --git a/Gems/ScriptCanvasDiagnosticLibrary/Code/Include/ScriptCanvasDiagnosticLibrary/ScriptCanvasDiagnosticLibraryGem.h b/Gems/ScriptCanvasDiagnosticLibrary/Code/Include/ScriptCanvasDiagnosticLibrary/ScriptCanvasDiagnosticLibraryGem.h deleted file mode 100644 index f86446228e..0000000000 --- a/Gems/ScriptCanvasDiagnosticLibrary/Code/Include/ScriptCanvasDiagnosticLibrary/ScriptCanvasDiagnosticLibraryGem.h +++ /dev/null @@ -1,30 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ - -#pragma once - -#include -#include - -namespace ScriptCanvasDiagnostics -{ - class Module - : public AZ::Module - { - public: - AZ_RTTI(Module, "{4855DE9C-9804-4CE5-BA32-B0123356F48E}", AZ::Module); - - Module(); - - AZ::ComponentTypeList GetRequiredSystemComponents() const override; - }; -} diff --git a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/Debug.h b/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/Debug.h deleted file mode 100644 index 75ba9ebcca..0000000000 --- a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/Debug.h +++ /dev/null @@ -1,30 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ - -#pragma once - -#include - -namespace ScriptCanvas -{ - namespace Libraries - { - struct Debug : public Library::LibraryDefinition - { - AZ_RTTI(Debug, "{3E28E41D-F4C9-4542-A08F-2B1F5DAA9509}", Library::LibraryDefinition); - - static void Reflect(AZ::ReflectContext*); - static void InitNodeRegistry(NodeRegistry& nodeRegistry); - static AZStd::vector GetComponentDescriptors(); - }; - } -} diff --git a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DebugLibraryDefinition.cpp b/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DebugLibraryDefinition.cpp deleted file mode 100644 index 26eac9cbf8..0000000000 --- a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DebugLibraryDefinition.cpp +++ /dev/null @@ -1,57 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ - -#include "precompiled.h" -#include "DebugLibraryDefinition.h" -#include "DrawText.h" -#include "DrawTextNodeable.h" -#include - -namespace ScriptCanvas -{ - namespace Libraries - { - void Debug::Reflect(AZ::ReflectContext* reflection) - { - AZ::SerializeContext* serializeContext = azrtti_cast(reflection); - if (serializeContext) - { - serializeContext->Class() - ->Version(1) - ; - - AZ::EditContext* editContext = serializeContext->GetEditContext(); - if (editContext) - { - editContext->Class("Debug", "")-> - ClassElement(AZ::Edit::ClassElements::EditorData, "")-> - Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Debug.png") - ; - } - } - } - - void Debug::InitNodeRegistry(NodeRegistry& nodeRegistry) - { - Library::AddNodeToRegistry(nodeRegistry); - //Library::AddNodeToRegistry(nodeRegistry); - } - - AZStd::vector Debug::GetComponentDescriptors() - { - return AZStd::vector({ - Nodes::Debug::DrawTextNode::CreateDescriptor(), - // Nodes::DrawTextNodeableNode::CreateDescriptor(), - }); - } - } -} diff --git a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DebugLibraryDefinition.h b/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DebugLibraryDefinition.h deleted file mode 100644 index 75ba9ebcca..0000000000 --- a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DebugLibraryDefinition.h +++ /dev/null @@ -1,30 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ - -#pragma once - -#include - -namespace ScriptCanvas -{ - namespace Libraries - { - struct Debug : public Library::LibraryDefinition - { - AZ_RTTI(Debug, "{3E28E41D-F4C9-4542-A08F-2B1F5DAA9509}", Library::LibraryDefinition); - - static void Reflect(AZ::ReflectContext*); - static void InitNodeRegistry(NodeRegistry& nodeRegistry); - static AZStd::vector GetComponentDescriptors(); - }; - } -} diff --git a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DrawText.ScriptCanvasGrammar.xml b/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DrawText.ScriptCanvasGrammar.xml deleted file mode 100644 index dd21d22ca7..0000000000 --- a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DrawText.ScriptCanvasGrammar.xml +++ /dev/null @@ -1,54 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DrawText.cpp b/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DrawText.cpp deleted file mode 100644 index 6e04ad5850..0000000000 --- a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DrawText.cpp +++ /dev/null @@ -1,135 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ - -#include "precompiled.h" -#include "DrawText.h" - -#include -#include - -#include -#include -#include - -#include - -namespace ScriptCanvas -{ - namespace Nodes - { - namespace Debug - { - void DrawTextNode::OnInputSignal(const SlotId& slotId) - { - if (slotId == GetSlotId("Show")) - { - ScriptCanvasDiagnostics::DebugDrawBus::Handler::BusConnect(this); - - m_duration = DrawTextNodeProperty::GetDuration(this); - if (m_duration > 0.f && !AZ::TickBus::Handler::BusIsConnected()) - { - AZ::TickBus::Handler::BusConnect(); - } - } - else if (slotId == GetSlotId("Hide")) - { - AZ::TickBus::Handler::BusDisconnect(); - ScriptCanvasDiagnostics::DebugDrawBus::Handler::BusDisconnect(); - } - - SignalOutput(GetSlotId("Out")); - - } - - void DrawTextNode::OnInputChanged(const Datum&, const SlotId& slotId) - { - ScriptCanvas::SlotId textSlotId = DrawTextNodeProperty::GetTextSlotId(this); - if (slotId == textSlotId) - { - m_text = DrawTextNodeProperty::GetText(this); - } - } - - void DrawTextNode::OnTick(float deltaTime, AZ::ScriptTimePoint) - { - m_duration -= deltaTime; - if (m_duration <= 0.f) - { - ScriptCanvasDiagnostics::DebugDrawBus::Handler::BusDisconnect(); - AZ::TickBus::Handler::BusDisconnect(); - } - } - - void DrawTextNode::OnDebugDraw(IRenderer* renderer) - { - if (!renderer) - { - return; - } - - if (m_text.empty()) - { - m_text = DrawTextNodeProperty::GetText(this); - } - - if (m_text.empty()) - { - return; - } - - bool editorOnly = DrawTextNodeProperty::GetEditorOnly(this); - - bool isEditor = false; - ScriptCanvasDiagnostics::SystemRequestBus::BroadcastResult(isEditor, &ScriptCanvasDiagnostics::SystemRequests::IsEditor); - - if (editorOnly && !isEditor) - { - return; - } - - AZ::Vector2 position = DrawTextNodeProperty::GetPosition(this); - - // Get correct coordinates - float x = position.GetX(); - float y = position.GetY(); - - if (x < 1.f || y < 1.f) - { - int screenX, screenY, screenWidth, screenHeight; - renderer->GetViewport(&screenX, &screenY, &screenWidth, &screenHeight); - if (x < 1.f) - { - x *= (float)screenWidth; - } - if (y < 1.f) - { - y *= (float)screenHeight; - } - } - - SDrawTextInfo ti; - ti.xscale = ti.yscale = DrawTextNodeProperty::GetScale(this); - ti.flags = eDrawText_2D | eDrawText_FixedSize; - - const AZ::Color& color = DrawTextNodeProperty::GetColor(this); - ti.color[0] = color.GetR(); - ti.color[1] = color.GetG(); - ti.color[2] = color.GetB(); - ti.color[3] = color.GetA(); - - ti.flags |= DrawTextNodeProperty::GetCentered(this) ? eDrawText_Center | eDrawText_CenterV : 0; - - renderer->DrawTextQueued(Vec3(x, y, 0.5f), ti, m_text.c_str()); - } - } - } -} diff --git a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DrawText.h b/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DrawText.h deleted file mode 100644 index 43684bef5b..0000000000 --- a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DrawText.h +++ /dev/null @@ -1,70 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ - -#pragma once - -#include - -#include - -#include - -#include -#include - -#include - -struct IRenderer; - -namespace AZ -{ - class Color; - class Vector2; -} - -namespace ScriptCanvas -{ - namespace Nodes - { - namespace Debug - { - //! Uses the DebugDrawBus to display on-screen debug text - class DrawTextNode - : public Node - , ScriptCanvasDiagnostics::DebugDrawBus::Handler - , AZ::TickBus::Handler - { - - public: - - SCRIPTCANVAS_NODE(DrawTextNode); - - // DebugDrawBus... - void OnDebugDraw(IRenderer*) override; - // - - protected: - - void OnInputSignal(const SlotId& slotId) override; - void OnInputChanged(const Datum& input, const SlotId& slotID) override; - - void OnTick(float deltaTime, AZ::ScriptTimePoint) override; - - private: - - AZStd::string m_text; - float m_duration; - - }; - } - } -} diff --git a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DrawTextNodeable.cpp b/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DrawTextNodeable.cpp deleted file mode 100644 index 17a5f3ea79..0000000000 --- a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DrawTextNodeable.cpp +++ /dev/null @@ -1,138 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ - -#include "precompiled.h" -#include "DrawTextNodeable.h" - -#if 0 - -#include -#include -#include - -#include -#include -#include - -#include - -namespace ScriptCanvas -{ - namespace Nodeables - { - namespace Debug - { - DrawTextNodeable::DrawTextNodeable() - { - ScriptCanvasDiagnostics::SystemRequestBus::BroadcastResult(m_isEditor, &ScriptCanvasDiagnostics::SystemRequests::IsEditor); - } - - DrawTextNodeable::~DrawTextNodeable() - { - Hide(); - } - - void DrawTextNodeable::OnDeactivate() - { - Hide(); - } - - void DrawTextNodeable::Show(AZStd::string text, AZ::Vector2 position, AZ::Color color, float duration, float scale, Data::BooleanType centered, Data::BooleanType editorOnly) - { - if (text.empty()) - { - return; - } - - if (editorOnly && !m_isEditor) - { - return; - } - - ScriptCanvasDiagnostics::DebugDrawBus::Handler::BusConnect(this); - - m_text = text; - m_position = position; - m_color = color; - m_duration = duration; - m_scale = scale; - m_centered = centered; - m_editorOnly = editorOnly; - - if (m_duration > 0.f && !AZ::TickBus::Handler::BusIsConnected()) - { - AZ::TickBus::Handler::BusConnect(); - } - } - - void DrawTextNodeable::Hide() - { - AZ::TickBus::Handler::BusDisconnect(); - ScriptCanvasDiagnostics::DebugDrawBus::Handler::BusDisconnect(); - } - - void DrawTextNodeable::OnTick(float deltaTime, AZ::ScriptTimePoint) - { - m_duration -= deltaTime; - if (m_duration <= 0.f) - { - ScriptCanvasDiagnostics::DebugDrawBus::Handler::BusDisconnect(); - AZ::TickBus::Handler::BusDisconnect(); - } - } - - void DrawTextNodeable::OnDebugDraw(IRenderer* renderer) - { - if (!renderer) - { - return; - } - - // Get correct coordinates - float x = m_position.GetX(); - float y = m_position.GetY(); - - if (x < 1.f || y < 1.f) - { - int screenX, screenY, screenWidth, screenHeight; - renderer->GetViewport(&screenX, &screenY, &screenWidth, &screenHeight); - if (x < 1.f) - { - x *= (float)screenWidth; - } - if (y < 1.f) - { - y *= (float)screenHeight; - } - } - - SDrawTextInfo ti; - ti.xscale = ti.yscale = m_scale; - ti.flags = eDrawText_2D | eDrawText_FixedSize; - - ti.color[0] = m_color.GetR(); - ti.color[1] = m_color.GetG(); - ti.color[2] = m_color.GetB(); - ti.color[3] = m_color.GetA(); - - ti.flags |= m_centered ? eDrawText_Center | eDrawText_CenterV : 0; - - renderer->DrawTextQueued(Vec3(x, y, 0.5f), ti, m_text.c_str()); - } - } - } -} - -#include - - -#endif diff --git a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DrawTextNodeable.h b/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DrawTextNodeable.h deleted file mode 100644 index 48d9e8f74b..0000000000 --- a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/DrawTextNodeable.h +++ /dev/null @@ -1,91 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ - -#pragma once - -#include - -#include -#include -#include - -#include -#if 0 -#include - -struct IRenderer; - -namespace AZ -{ - class Color; - class Vector2; -} - -namespace ScriptCanvas -{ - namespace Nodeables - { - namespace Debug - { - class DrawTextNodeable - : public ScriptCanvas::Nodeable - , public ScriptCanvasDiagnostics::DebugDrawBus::Handler - , public AZ::TickBus::Handler - { - NodeDefinition(DrawTextNodeable, "Draw Text", "Displays text on the viewport.", - NodeTags::Icon("Editor/Icons/ScriptCanvas/DrawTextNode.png"), - NodeTags::Category("Utilities/Debug"), - NodeTags::Version(0) - ); - - public: - DrawTextNodeable(); - virtual ~DrawTextNodeable(); - - // TickBus - void OnTick(float deltaTime, AZ::ScriptTimePoint) override; - - // DebugDrawBus - void OnDebugDraw(IRenderer*) override; - - InputMethod("Show", "Shows the debug text on the viewport") - void Show(AZStd::string text, AZ::Vector2 position, AZ::Color color, float duration, float scale, Data::BooleanType centered, Data::BooleanType editorOnly); - DataInput(AZStd::string, "Text", "", "The text to display on screen.", SlotTags::DisplayGroup("Show")); - DataInput(AZ::Vector2, "Position", AZ::Vector2(20.f, 20.f), "Position of the text on-screen in normalized coordinates [0-1].", SlotTags::DisplayGroup("Show")); - DataInput(AZ::Color, "Color", AZ::Color(1.f, 1.f, 1.f, 1.f), "Color of the text.", SlotTags::DisplayGroup("Show")); - DataInput(float, "Duration", 0.f, "If greater than zero, the text will disappear after this duration (in seconds).", SlotTags::DisplayGroup("Show")); - DataInput(float, "Scale", 1.f, "Scales the font size of the text.", SlotTags::DisplayGroup("Show")); - DataInput(Data::BooleanType, "Centered", false, "Centers the text around the specfied coordinates.", SlotTags::DisplayGroup("Show")); - DataInput(Data::BooleanType, "Editor Only", false, "Only displays this text if the game is being run in-editor, not on launchers.", SlotTags::DisplayGroup("Show")); - - InputMethod("Hide", "Removed the debug text from the viewport") - void Hide(); - - protected: - void OnDeactivate() override; - - private: - AZStd::string m_text; - AZ::Vector2 m_position; - AZ::Color m_color; - float m_duration; - float m_scale; - bool m_centered; - bool m_editorOnly; - - bool m_isEditor = false; - - }; - } - } -} -#endif diff --git a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/ScriptCanvasDiagnosticLibraryGem.cpp b/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/ScriptCanvasDiagnosticLibraryGem.cpp deleted file mode 100644 index 6c13e99077..0000000000 --- a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/ScriptCanvasDiagnosticLibraryGem.cpp +++ /dev/null @@ -1,46 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ - -#include "precompiled.h" - -#include -#include - -#include -#include - -#include "DebugLibraryDefinition.h" - -namespace ScriptCanvasDiagnostics -{ - Module::Module() - : AZ::Module() - { - m_descriptors.insert(m_descriptors.end(), { - ScriptCanvasDiagnostics::SystemComponent::CreateDescriptor(), - }); - - AZStd::vector componentDescriptors(ScriptCanvas::Libraries::Debug::GetComponentDescriptors()); - m_descriptors.insert(m_descriptors.end(), componentDescriptors.begin(), componentDescriptors.end()); - } - - AZ::ComponentTypeList Module::GetRequiredSystemComponents() const - { - return AZ::ComponentTypeList({ ScriptCanvasDiagnostics::SystemComponent::RTTI_Type() }); - } -} - -// DO NOT MODIFY THIS LINE UNLESS YOU RENAME THE GEM -// The first parameter should be GemName_GemIdLower -// The second should be the fully qualified name of the class above -AZ_DECLARE_MODULE_CLASS(Gem_ScriptCanvasDiagnosticLibrary, ScriptCanvasDiagnostics::Module) - diff --git a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/ScriptCanvasDiagnosticSystemComponent.cpp b/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/ScriptCanvasDiagnosticSystemComponent.cpp deleted file mode 100644 index c1323e1450..0000000000 --- a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/ScriptCanvasDiagnosticSystemComponent.cpp +++ /dev/null @@ -1,92 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ - -#include "precompiled.h" - -#include "ScriptCanvasDiagnosticSystemComponent.h" - -#include -#include -#include "DebugLibraryDefinition.h" - -namespace ScriptCanvasDiagnostics -{ - void SystemComponent::Init() - { - AZ::EnvironmentVariable nodeRegistryVariable = AZ::Environment::FindVariable(ScriptCanvas::s_nodeRegistryName); - if (nodeRegistryVariable) - { - ScriptCanvas::NodeRegistry& nodeRegistry = nodeRegistryVariable.Get(); - ScriptCanvas::Libraries::Debug::InitNodeRegistry(nodeRegistry); - } - } - - SystemComponent::~SystemComponent() - { - } - - void SystemComponent::Activate() - { - SystemRequestBus::Handler::BusConnect(); - CrySystemEventBus::Handler::BusConnect(); - } - - void SystemComponent::Deactivate() - { - CrySystemEventBus::Handler::BusDisconnect(); - SystemRequestBus::Handler::BusDisconnect(); - } - - void SystemComponent::OnDebugDraw() - { - DebugDrawBus::Broadcast(&DebugDrawRequests::OnDebugDraw, m_system->GetIRenderer()); - } - - void SystemComponent::OnCrySystemShutdown([[maybe_unused]] ISystem& system) - { - m_system->GetIRenderer()->RemoveRenderDebugListener(this); - } - - void SystemComponent::OnCrySystemInitialized(ISystem& system, [[maybe_unused]] const SSystemInitParams& systemInitParams) - { - m_system = &system; - AZ_Assert(m_system->GetIRenderer(), "ScriptCanvasDiagnostics requires IRenderer"); - - m_system->GetIRenderer()->AddRenderDebugListener(this); - } - - bool SystemComponent::IsEditor() - { - return m_system && m_system->GetGlobalEnvironment() && m_system->GetGlobalEnvironment()->IsEditor(); - } - - void SystemComponent::Reflect(AZ::ReflectContext* context) - { - ScriptCanvas::Libraries::Debug::Reflect(context); - if (auto serialize = azrtti_cast(context)) - { - serialize->Class() - ->Version(0) - ; - - if (AZ::EditContext* ec = serialize->GetEditContext()) - { - ec->Class("Script Canvas Diagnostic", "Script Canvas Diagnostic System Component") - ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Category, "Scripting") - ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("System", 0xc94d118b)) - ->Attribute(AZ::Edit::Attributes::AutoExpand, true) - ; - } - } - } -} diff --git a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/ScriptCanvasDiagnosticSystemComponent.h b/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/ScriptCanvasDiagnosticSystemComponent.h deleted file mode 100644 index 86b1f91978..0000000000 --- a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/ScriptCanvasDiagnosticSystemComponent.h +++ /dev/null @@ -1,60 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ - -#pragma once - -#include - -#include -#include - -#include - - -struct ISystem; - -namespace ScriptCanvasDiagnostics -{ - class SystemComponent - : public AZ::Component - , public IRenderDebugListener - , private CrySystemEventBus::Handler - , private SystemRequestBus::Handler - { - public: - AZ_COMPONENT(SystemComponent, "{6A90B0E7-EB47-48B5-910D-4881E429AC9D}"); - - static void Reflect(AZ::ReflectContext* context); - - SystemComponent() = default; - ~SystemComponent() override; - void Init() override; - - void Activate() override; - void Deactivate() override; - - // IRenderDebugListener - void OnDebugDraw() override; - - // SystemRequestBus - bool IsEditor() override; - - private: - - ISystem * m_system; - - // CrySystemEventBus - void OnCrySystemInitialized(ISystem& system, const SSystemInitParams& systemInitParams) override; - void OnCrySystemShutdown(ISystem& system) override; - - }; -} diff --git a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/precompiled.cpp b/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/precompiled.cpp deleted file mode 100644 index 07c726331b..0000000000 --- a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/precompiled.cpp +++ /dev/null @@ -1,13 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ - -#include "precompiled.h" \ No newline at end of file diff --git a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/precompiled.h b/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/precompiled.h deleted file mode 100644 index 084566c0ca..0000000000 --- a/Gems/ScriptCanvasDiagnosticLibrary/Code/Source/precompiled.h +++ /dev/null @@ -1,28 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ - -#pragma once - -#include -#include -#include -#include -#include -#include - -#if !defined(SCRIPTCANVASDIAGNOSTICSLIBRARY_EDITOR) - -#include - -#else - -#endif \ No newline at end of file diff --git a/Gems/ScriptCanvasDiagnosticLibrary/Code/Tests/ScriptCanvasDiagnosticLibraryTest.cpp b/Gems/ScriptCanvasDiagnosticLibrary/Code/Tests/ScriptCanvasDiagnosticLibraryTest.cpp deleted file mode 100644 index da45b187f8..0000000000 --- a/Gems/ScriptCanvasDiagnosticLibrary/Code/Tests/ScriptCanvasDiagnosticLibraryTest.cpp +++ /dev/null @@ -1,44 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -#include "precompiled.h" - -#include - -class ScriptCanvasDiagnosticLibraryTest - : public ::testing::Test -{ -protected: - static void SetUpTestCase() - { - } - - static void TearDownTestCase() - { - } - - void SetUp() override - { - } - - void TearDown() override - { - } - -}; - -TEST_F(ScriptCanvasDiagnosticLibraryTest, Sanity_Pass) -{ - EXPECT_TRUE(true); -} - - -AZ_UNIT_TEST_HOOK(); \ No newline at end of file diff --git a/Gems/ScriptCanvasDiagnosticLibrary/Code/scriptcanvasdiagnosticlibrary_autogen_files.cmake b/Gems/ScriptCanvasDiagnosticLibrary/Code/scriptcanvasdiagnosticlibrary_autogen_files.cmake deleted file mode 100644 index 90cda4aa60..0000000000 --- a/Gems/ScriptCanvasDiagnosticLibrary/Code/scriptcanvasdiagnosticlibrary_autogen_files.cmake +++ /dev/null @@ -1,19 +0,0 @@ -# -# All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -# its licensors. -# -# For complete copyright and license terms please see the LICENSE at the root of this -# distribution (the "License"). All use of this software is governed by the License, -# or, if provided, by the license below or the license accompanying this file. Do not -# remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# - -set(FILES - ${LY_ROOT_FOLDER}/Gems/ScriptCanvas/Code/Include/ScriptCanvas/AutoGen/ScriptCanvasGrammar_Header.jinja - ${LY_ROOT_FOLDER}/Gems/ScriptCanvas/Code/Include/ScriptCanvas/AutoGen/ScriptCanvasGrammar_Source.jinja - ${LY_ROOT_FOLDER}/Gems/ScriptCanvas/Code/Include/ScriptCanvas/AutoGen/ScriptCanvasNodeable_Header.jinja - ${LY_ROOT_FOLDER}/Gems/ScriptCanvas/Code/Include/ScriptCanvas/AutoGen/ScriptCanvasNodeable_Source.jinja - ${LY_ROOT_FOLDER}/Gems/ScriptCanvas/Code/Include/ScriptCanvas/AutoGen/ScriptCanvas_Macros.jinja - ${LY_ROOT_FOLDER}/Gems/ScriptCanvas/Code/Include/ScriptCanvas/AutoGen/ScriptCanvas_Nodeable_Macros.jinja -) diff --git a/Gems/ScriptCanvasDiagnosticLibrary/Code/scriptcanvasdiagnosticlibrary_common_files.cmake b/Gems/ScriptCanvasDiagnosticLibrary/Code/scriptcanvasdiagnosticlibrary_common_files.cmake deleted file mode 100644 index af3d823a02..0000000000 --- a/Gems/ScriptCanvasDiagnosticLibrary/Code/scriptcanvasdiagnosticlibrary_common_files.cmake +++ /dev/null @@ -1,24 +0,0 @@ -# -# All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -# its licensors. -# -# For complete copyright and license terms please see the LICENSE at the root of this -# distribution (the "License"). All use of this software is governed by the License, -# or, if provided, by the license below or the license accompanying this file. Do not -# remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# - -set(FILES - Source/precompiled.cpp - Source/precompiled.h - Include/ScriptCanvasDiagnosticLibrary/ScriptCanvasDiagnosticLibraryGem.h - Include/ScriptCanvasDiagnosticLibrary/DebugDrawBus.h - Source/ScriptCanvasDiagnosticSystemComponent.h - Source/ScriptCanvasDiagnosticSystemComponent.cpp - Source/DebugLibraryDefinition.h - Source/DebugLibraryDefinition.cpp - Source/DrawText.h - Source/DrawText.cpp - Source/DrawText.ScriptCanvasGrammar.xml -) diff --git a/Gems/ScriptCanvasDiagnosticLibrary/Code/scriptcanvasdiagnosticlibrary_shared_files.cmake b/Gems/ScriptCanvasDiagnosticLibrary/Code/scriptcanvasdiagnosticlibrary_shared_files.cmake deleted file mode 100644 index 9f251cd671..0000000000 --- a/Gems/ScriptCanvasDiagnosticLibrary/Code/scriptcanvasdiagnosticlibrary_shared_files.cmake +++ /dev/null @@ -1,14 +0,0 @@ -# -# All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -# its licensors. -# -# For complete copyright and license terms please see the LICENSE at the root of this -# distribution (the "License"). All use of this software is governed by the License, -# or, if provided, by the license below or the license accompanying this file. Do not -# remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# - -set(FILES - Source/ScriptCanvasDiagnosticLibraryGem.cpp -) diff --git a/Gems/ScriptCanvasDiagnosticLibrary/gem.json b/Gems/ScriptCanvasDiagnosticLibrary/gem.json deleted file mode 100644 index bbcef8940f..0000000000 --- a/Gems/ScriptCanvasDiagnosticLibrary/gem.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "gem_name": "ScriptCanvasDiagnosticLibrary", - "GemFormatVersion": 3, - "Uuid": "d969b997bb7f4342ba0b3eedc378025d", - "Name": "ScriptCanvasDiagnosticLibrary", - "DisplayName": "Script Canvas Diagnostic Library", - "Version": "0.1.0", - "LinkType": "Dynamic", - "Summary": "The Script Canvas Diagnostic Library comes with a library of diagnostic nodes for use in Script Canvas such as logging, debug text, etc.", - "Tags": ["Scripting", "Game"], - "IconPath": "preview.png", - "Dependencies" : [ - { - "Uuid": "869a0d0ec11a45c299917d45c81555e6", - "VersionConstraints": [ ">=0.1.0" ], - "_comment": "ScriptCanvasGem" - }, - { - "Uuid" : "ff06785f7145416b9d46fde39098cb0c", - "VersionConstraints" : [">=0.1.0"], - "_comment" : "LmbrCentral" - } - ] -} - diff --git a/Gems/ScriptCanvasDiagnosticLibrary/preview.png b/Gems/ScriptCanvasDiagnosticLibrary/preview.png deleted file mode 100644 index 0e448c0d14..0000000000 --- a/Gems/ScriptCanvasDiagnosticLibrary/preview.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdc5300d82075d21dd7085290e0ccd0926141f50598ec93a40171c84c10ae1f6 -size 2180 From 06803040ac03828cd72449dcdd52dd73111a4184 Mon Sep 17 00:00:00 2001 From: srikappa Date: Tue, 27 Apr 2021 15:36:44 -0700 Subject: [PATCH 30/54] Fixed an assert during loading a level with prefabs --- .../AzToolsFramework/Prefab/Link/Link.cpp | 6 ++---- .../AzToolsFramework/Prefab/Link/Link.h | 2 +- .../Prefab/PrefabSystemComponent.cpp | 21 +++++++++---------- 3 files changed, 13 insertions(+), 16 deletions(-) diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Link/Link.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Link/Link.cpp index 621a00b0bf..9e88ecf444 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Link/Link.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Link/Link.cpp @@ -108,11 +108,9 @@ namespace AzToolsFramework m_targetTemplateId = id; } - void Link::SetTemplatePatches(const PrefabDomValue& patches) + void Link::SetLinkDom(const PrefabDomValue& linkDom) { - PrefabDom newPatches; - newPatches.CopyFrom(patches, newPatches.GetAllocator()); - m_linkDom.Swap(newPatches); + m_linkDom.CopyFrom(linkDom, m_linkDom.GetAllocator()); } void Link::SetInstanceName(const char* instanceName) diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Link/Link.h b/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Link/Link.h index c36dd75b1b..073e619f20 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Link/Link.h +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Link/Link.h @@ -47,7 +47,7 @@ namespace AzToolsFramework void SetSourceTemplateId(TemplateId id); void SetTargetTemplateId(TemplateId id); - void SetTemplatePatches(const PrefabDomValue& patches); + void SetLinkDom(const PrefabDomValue& linkDom); void SetInstanceName(const char* instanceName); bool IsValid() const; diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/PrefabSystemComponent.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/PrefabSystemComponent.cpp index d89a388e91..f2f743337f 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/PrefabSystemComponent.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/PrefabSystemComponent.cpp @@ -760,21 +760,20 @@ namespace AzToolsFramework PrefabDomValue& instance = instanceIterator->value; + PrefabDomValueReference sourceTemplateName = PrefabDomUtils::FindPrefabDomValue(instance, PrefabDomUtils::SourceName); + AZ_Assert(sourceTemplateName, "Couldn't find source template name in the DOM of the nested instance while creating a link."); + AZ_Assert( + sourceTemplateName->get() == sourceTemplate.GetFilePath().c_str(), + "The name of the source template in the nested instance DOM does not match the name of the source template already loaded"); + PrefabDomValueReference patchesReference = PrefabDomUtils::FindPrefabDomValue(instance, PrefabDomUtils::PatchesName); - if (!patchesReference.has_value()) + if (patchesReference.has_value()) { - PrefabDom& newLinkDom = link.GetLinkDom(); - - newLinkDom.SetObject(); - - newLinkDom.AddMember(rapidjson::StringRef(PrefabDomUtils::SourceName), - rapidjson::StringRef(sourceTemplate.GetFilePath().c_str()), newLinkDom.GetAllocator()); - } - else - { - link.SetTemplatePatches(patchesReference->get()); + AZ_Assert(patchesReference->get().IsArray(), "Patches in the nested instance DOM are not represented as an array."); } + link.SetLinkDom(instance); + if (!link.UpdateTarget()) { AZ_Error("Prefab", false, From 7e8b1e8c80ccaaf3d6d249cc682eb65ebcd924ab Mon Sep 17 00:00:00 2001 From: guthadam Date: Tue, 27 Apr 2021 17:57:09 -0500 Subject: [PATCH 31/54] Fix linux build --- Code/Tools/Standalone/Source/ThumbnailerNullComponent.cpp | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/Code/Tools/Standalone/Source/ThumbnailerNullComponent.cpp b/Code/Tools/Standalone/Source/ThumbnailerNullComponent.cpp index ff429c4981..e33cb8aa51 100644 --- a/Code/Tools/Standalone/Source/ThumbnailerNullComponent.cpp +++ b/Code/Tools/Standalone/Source/ThumbnailerNullComponent.cpp @@ -20,10 +20,8 @@ namespace LUAEditor { namespace Thumbnailer { - const int DEFAULT_THUMBNAIL_SIZE = 100; - ThumbnailerNullComponent::ThumbnailerNullComponent() : - m_nullThumbnail(new AzToolsFramework::Thumbnailer::MissingThumbnail(DEFAULT_THUMBNAIL_SIZE)) + m_nullThumbnail(new AzToolsFramework::Thumbnailer::MissingThumbnail()) { } From ac900a7b5772a1e93d85fedd9937c6873a5d50a7 Mon Sep 17 00:00:00 2001 From: Peng Date: Tue, 27 Apr 2021 16:51:17 -0700 Subject: [PATCH 32/54] ATOM-14947 Take out redundant else case for setting depthclip flag. --- Gems/Atom/RHI/Vulkan/Code/Source/RHI/GraphicsPipeline.cpp | 5 ----- 1 file changed, 5 deletions(-) diff --git a/Gems/Atom/RHI/Vulkan/Code/Source/RHI/GraphicsPipeline.cpp b/Gems/Atom/RHI/Vulkan/Code/Source/RHI/GraphicsPipeline.cpp index 605fd6abb1..96b9f171c8 100644 --- a/Gems/Atom/RHI/Vulkan/Code/Source/RHI/GraphicsPipeline.cpp +++ b/Gems/Atom/RHI/Vulkan/Code/Source/RHI/GraphicsPipeline.cpp @@ -285,11 +285,6 @@ namespace AZ // This is not 100% correct, but in most cases it will give us the correct result. info.depthClampEnable = rasterState.m_depthClipEnable ? VK_FALSE : VK_TRUE; } - else if (!rasterState.m_depthClipEnable) - { - // depth clamp must be disabled if physical device does not support it - info.depthClampEnable = VK_FALSE; - } switch (rasterState.m_fillMode) { From 12a3fe8738f1f70d7fb0fb2cda51715c1b591c06 Mon Sep 17 00:00:00 2001 From: luissemp Date: Tue, 27 Apr 2021 17:48:31 -0700 Subject: [PATCH 33/54] Removed gem entry from CMakeLists.txt --- Gems/CMakeLists.txt | 1 - 1 file changed, 1 deletion(-) diff --git a/Gems/CMakeLists.txt b/Gems/CMakeLists.txt index 782ecda744..b6bda8c16e 100644 --- a/Gems/CMakeLists.txt +++ b/Gems/CMakeLists.txt @@ -52,7 +52,6 @@ add_subdirectory(ScriptCanvas) add_subdirectory(ScriptedEntityTweener) add_subdirectory(StartingPointMovement) add_subdirectory(StartingPointInput) -add_subdirectory(ScriptCanvasDiagnosticLibrary) add_subdirectory(ScriptCanvasPhysics) add_subdirectory(StartingPointCamera) add_subdirectory(Presence) From ff3be54b683ea5e61314b97ff5ac8f0762266fe9 Mon Sep 17 00:00:00 2001 From: karlberg Date: Tue, 27 Apr 2021 19:31:30 -0700 Subject: [PATCH 34/54] This change got clobbered by the file move --- Gems/Multiplayer/Code/Include/MultiplayerTypes.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Gems/Multiplayer/Code/Include/MultiplayerTypes.h b/Gems/Multiplayer/Code/Include/MultiplayerTypes.h index ca3734e4f0..5c690958b5 100644 --- a/Gems/Multiplayer/Code/Include/MultiplayerTypes.h +++ b/Gems/Multiplayer/Code/Include/MultiplayerTypes.h @@ -73,6 +73,12 @@ namespace Multiplayer True }; + enum class AutoActivate : uint8_t + { + DoNotActivate, + Activate + }; + // This is just a placeholder // The level/prefab cooking will devise the actual solution for identifying a dynamically spawnable entity within a prefab struct PrefabEntityId From 5cac07b4c136c749e6beb72b065ce490ad93b227 Mon Sep 17 00:00:00 2001 From: guthadam Date: Wed, 28 Apr 2021 00:17:58 -0500 Subject: [PATCH 35/54] ATOM-14003 adding image thumbnails to material inspector properties https://jira.agscollab.com/browse/ATOM-14003 --- .../UI/PropertyEditor/PropertyAssetCtrl.cpp | 6 +++++- .../UI/PropertyEditor/ThumbnailPropertyCtrl.cpp | 1 + .../AtomToolsFramework/DynamicProperty/DynamicProperty.h | 1 + .../Code/Source/DynamicProperty/DynamicProperty.cpp | 1 + .../Code/Source/Document/MaterialDocument.cpp | 2 ++ .../Source/Material/EditorMaterialComponentInspector.cpp | 1 + 6 files changed, 11 insertions(+), 1 deletion(-) diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/UI/PropertyEditor/PropertyAssetCtrl.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/UI/PropertyEditor/PropertyAssetCtrl.cpp index f19f456816..1fd2680f85 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/UI/PropertyEditor/PropertyAssetCtrl.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/UI/PropertyEditor/PropertyAssetCtrl.cpp @@ -1304,7 +1304,11 @@ namespace AzToolsFramework } else if (attrib == AZ_CRC_CE("Thumbnail")) { - GUI->SetShowThumbnail(true); + bool showThumbnail = false; + if (attrValue->Read(showThumbnail)) + { + GUI->SetShowThumbnail(showThumbnail); + } } else if (attrib == AZ_CRC_CE("ThumbnailCallback")) { diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/UI/PropertyEditor/ThumbnailPropertyCtrl.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/UI/PropertyEditor/ThumbnailPropertyCtrl.cpp index bb9232435a..2247350f52 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/UI/PropertyEditor/ThumbnailPropertyCtrl.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/UI/PropertyEditor/ThumbnailPropertyCtrl.cpp @@ -114,6 +114,7 @@ namespace AzToolsFramework m_thumbnailEnlarged->move(position); m_thumbnailEnlarged->setWindowFlags(Qt::Window | Qt::FramelessWindowHint); m_thumbnailEnlarged->SetThumbnailKey(m_key); + m_thumbnailEnlarged->raise(); m_thumbnailEnlarged->show(); } QWidget::enterEvent(e); diff --git a/Gems/Atom/Tools/AtomToolsFramework/Code/Include/AtomToolsFramework/DynamicProperty/DynamicProperty.h b/Gems/Atom/Tools/AtomToolsFramework/Code/Include/AtomToolsFramework/DynamicProperty/DynamicProperty.h index 5fd2862c65..b17a25a675 100644 --- a/Gems/Atom/Tools/AtomToolsFramework/Code/Include/AtomToolsFramework/DynamicProperty/DynamicProperty.h +++ b/Gems/Atom/Tools/AtomToolsFramework/Code/Include/AtomToolsFramework/DynamicProperty/DynamicProperty.h @@ -63,6 +63,7 @@ namespace AtomToolsFramework AZStd::vector m_vectorLabels; bool m_visible = true; bool m_readOnly = false; + bool m_showThumbnail = false; }; //! Wraps an AZStd::any value and configuration so that it can be displayed and edited in a ReflectedPropertyEditor. diff --git a/Gems/Atom/Tools/AtomToolsFramework/Code/Source/DynamicProperty/DynamicProperty.cpp b/Gems/Atom/Tools/AtomToolsFramework/Code/Source/DynamicProperty/DynamicProperty.cpp index 754c35f0c2..5784355498 100644 --- a/Gems/Atom/Tools/AtomToolsFramework/Code/Source/DynamicProperty/DynamicProperty.cpp +++ b/Gems/Atom/Tools/AtomToolsFramework/Code/Source/DynamicProperty/DynamicProperty.cpp @@ -141,6 +141,7 @@ namespace AtomToolsFramework AddEditDataAttributeMemberFunction(AZ::Edit::Attributes::EnumValues, &DynamicProperty::GetEnumValues); AddEditDataAttributeMemberFunction(AZ::Edit::Attributes::ChangeNotify, &DynamicProperty::OnDataChanged); AddEditDataAttribute(AZ::Edit::Attributes::ShowProductAssetFileName, false); + AddEditDataAttribute(AZ_CRC_CE("Thumbnail"), m_config.m_showThumbnail); switch (m_config.m_dataType) { diff --git a/Gems/Atom/Tools/MaterialEditor/Code/Source/Document/MaterialDocument.cpp b/Gems/Atom/Tools/MaterialEditor/Code/Source/Document/MaterialDocument.cpp index 6bdee9a319..3919684864 100644 --- a/Gems/Atom/Tools/MaterialEditor/Code/Source/Document/MaterialDocument.cpp +++ b/Gems/Atom/Tools/MaterialEditor/Code/Source/Document/MaterialDocument.cpp @@ -771,6 +771,7 @@ namespace MaterialEditor if (propertyIndexInBounds) { AtomToolsFramework::ConvertToPropertyConfig(propertyConfig, propertyDefinition); + propertyConfig.m_showThumbnail = true; propertyConfig.m_originalValue = AtomToolsFramework::ConvertToEditableType(m_materialAsset->GetPropertyValues()[propertyIndex.GetIndex()]); propertyConfig.m_parentValue = AtomToolsFramework::ConvertToEditableType(parentPropertyValues[propertyIndex.GetIndex()]); propertyConfig.m_groupName = m_materialTypeSourceData.FindGroup(groupNameId)->m_displayName; @@ -810,6 +811,7 @@ namespace MaterialEditor propertyConfig.m_originalValue = propertyConfig.m_defaultValue; propertyConfig.m_parentValue = propertyConfig.m_defaultValue; propertyConfig.m_readOnly = true; + propertyConfig.m_showThumbnail = true; m_properties[propertyConfig.m_id] = AtomToolsFramework::DynamicProperty(propertyConfig); diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Material/EditorMaterialComponentInspector.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Material/EditorMaterialComponentInspector.cpp index 2885978e1e..f7915bbff4 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Material/EditorMaterialComponentInspector.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Material/EditorMaterialComponentInspector.cpp @@ -250,6 +250,7 @@ namespace AZ propertyConfig.m_id = AZ::RPI::MaterialPropertyId(groupNameId, propertyDefinition.m_nameId).GetFullName(); propertyConfig.m_groupName = groupDisplayName; const auto& propertyIndex = m_editData.m_materialAsset->GetMaterialPropertiesLayout()->FindPropertyIndex(propertyConfig.m_id); + propertyConfig.m_showThumbnail = true; propertyConfig.m_defaultValue = AtomToolsFramework::ConvertToEditableType(m_editData.m_materialTypeAsset->GetDefaultPropertyValues()[propertyIndex.GetIndex()]); propertyConfig.m_parentValue = AtomToolsFramework::ConvertToEditableType(m_editData.m_materialTypeAsset->GetDefaultPropertyValues()[propertyIndex.GetIndex()]); propertyConfig.m_originalValue = AtomToolsFramework::ConvertToEditableType(m_editData.m_materialAsset->GetPropertyValues()[propertyIndex.GetIndex()]); From b82627a24886ed4432a0c4dcd620287283be77c9 Mon Sep 17 00:00:00 2001 From: pereslav Date: Wed, 28 Apr 2021 07:44:11 +0100 Subject: [PATCH 36/54] Renamed console_command_file to console-command-file --- Code/LauncherUnified/Launcher.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Code/LauncherUnified/Launcher.cpp b/Code/LauncherUnified/Launcher.cpp index 1cc4450cea..93b5079929 100644 --- a/Code/LauncherUnified/Launcher.cpp +++ b/Code/LauncherUnified/Launcher.cpp @@ -47,7 +47,7 @@ namespace { void ExecuteConsoleCommandFile(AzFramework::Application& application) { - const AZStd::string_view customConCmdKey = "console_command_file"; + const AZStd::string_view customConCmdKey = "console-command-file"; const AZ::CommandLine* commandLine = application.GetCommandLine(); AZStd::size_t numSwitchValues = commandLine->GetNumSwitchValues(customConCmdKey); if (numSwitchValues > 0) @@ -656,7 +656,7 @@ namespace O3DELauncher AZ::Interface::Get()->ExecuteConfigFile("autoexec.cfg"); // Find out if console command file was passed - // via --console_command_file=%filename% and execute it + // via --console-command-file=%filename% and execute it ExecuteConsoleCommandFile(gameApplication); gEnv->pSystem->ExecuteCommandLine(false); From 1fd69385199a79ffd25602e1c8099ed734eacecf Mon Sep 17 00:00:00 2001 From: jjjoness <82226755+jjjoness@users.noreply.github.com> Date: Wed, 28 Apr 2021 08:56:02 +0100 Subject: [PATCH 37/54] Replaced missing & --- Code/Sandbox/Editor/MainWindow.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Code/Sandbox/Editor/MainWindow.cpp b/Code/Sandbox/Editor/MainWindow.cpp index e96723a1b8..2915ca9c2e 100644 --- a/Code/Sandbox/Editor/MainWindow.cpp +++ b/Code/Sandbox/Editor/MainWindow.cpp @@ -1172,7 +1172,7 @@ void MainWindow::InitActions() .Connect(&QAction::triggered, this, &MainWindow::OnRefreshAudioSystem); // Game actions - am->AddAction(ID_VIEW_SWITCHTOGAME, tr("Play Game")) + am->AddAction(ID_VIEW_SWITCHTOGAME, tr("Play &Game")) .SetIcon(QIcon(":/stylesheet/img/UI20/toolbar/Play.svg")) .SetShortcut(tr("Ctrl+G")) .SetToolTip(tr("Play Game (Ctrl+G)")) From 2aafdab5af3e1a895fe8eacf4772e42468d09b91 Mon Sep 17 00:00:00 2001 From: jjjoness <82226755+jjjoness@users.noreply.github.com> Date: Wed, 28 Apr 2021 12:06:56 +0100 Subject: [PATCH 38/54] Added the new focus color. --- .../AzQtComponents/Components/Widgets/PushButtonConfig.ini | 2 +- .../AzQtComponents/Components/img/UI20/checkbox/off-focus.svg | 2 +- .../AzQtComponents/Components/img/UI20/checkbox/on-focus.svg | 2 +- .../Components/img/UI20/checkbox/partial-selected-focus.svg | 2 +- .../Components/img/UI20/radiobutton/checked-focus.svg | 2 +- .../Components/img/UI20/radiobutton/unchecked-focus.svg | 2 +- .../Components/img/UI20/toggleswitch/checked-focus.svg | 2 +- .../Components/img/UI20/toggleswitch/unchecked-focus.svg | 2 +- 8 files changed, 8 insertions(+), 8 deletions(-) diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/Widgets/PushButtonConfig.ini b/Code/Framework/AzQtComponents/AzQtComponents/Components/Widgets/PushButtonConfig.ini index 49431903a4..34c084b0f2 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/Widgets/PushButtonConfig.ini +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/Widgets/PushButtonConfig.ini @@ -42,7 +42,7 @@ Color=#3D000000 [FocusedBorder] Thickness=1 -Color=#00A1C9 +Color=#4B8CEF [IconButton] ActiveColor=#1E70EB diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/off-focus.svg b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/off-focus.svg index c7bf13420c..5e862d9604 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/off-focus.svg +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/off-focus.svg @@ -4,7 +4,7 @@ Selection Controls / Checkbox / Off Created with Sketch. - + diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/on-focus.svg b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/on-focus.svg index 170360ed6d..b3b05d969b 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/on-focus.svg +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/on-focus.svg @@ -5,7 +5,7 @@ Created with Sketch. - + diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/partial-selected-focus.svg b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/partial-selected-focus.svg index 9866e35721..d5e4faaaf6 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/partial-selected-focus.svg +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/checkbox/partial-selected-focus.svg @@ -5,7 +5,7 @@ Created with Sketch. - + diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/radiobutton/checked-focus.svg b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/radiobutton/checked-focus.svg index f7b4889696..d50ffa172d 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/radiobutton/checked-focus.svg +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/radiobutton/checked-focus.svg @@ -4,7 +4,7 @@ Selection Controls / Radio Button / On-focus Created with Sketch. - + diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/radiobutton/unchecked-focus.svg b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/radiobutton/unchecked-focus.svg index e636dc38cd..818416abb7 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/radiobutton/unchecked-focus.svg +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/radiobutton/unchecked-focus.svg @@ -4,7 +4,7 @@ Selection Controls / Radio Button / Off-focus Created with Sketch. - + diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/toggleswitch/checked-focus.svg b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/toggleswitch/checked-focus.svg index 07a3440aab..9f4f07f804 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/toggleswitch/checked-focus.svg +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/toggleswitch/checked-focus.svg @@ -5,7 +5,7 @@ Created with Sketch. - + diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/toggleswitch/unchecked-focus.svg b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/toggleswitch/unchecked-focus.svg index 046789536b..981467aa3b 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/toggleswitch/unchecked-focus.svg +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/img/UI20/toggleswitch/unchecked-focus.svg @@ -5,7 +5,7 @@ Created with Sketch. - + From 6d624273a99a38125b3c3db8de1bcf739255e1f2 Mon Sep 17 00:00:00 2001 From: hultonha Date: Wed, 28 Apr 2021 14:43:52 +0100 Subject: [PATCH 39/54] disabling test causing intermittent failures --- .../AssetProcessor/native/unittests/ConnectionUnitTests.cpp | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/Code/Tools/AssetProcessor/native/unittests/ConnectionUnitTests.cpp b/Code/Tools/AssetProcessor/native/unittests/ConnectionUnitTests.cpp index e270a9133b..29a0570d39 100644 --- a/Code/Tools/AssetProcessor/native/unittests/ConnectionUnitTests.cpp +++ b/Code/Tools/AssetProcessor/native/unittests/ConnectionUnitTests.cpp @@ -44,7 +44,4 @@ ConnectionUnitTest::~ConnectionUnitTest() } - - -REGISTER_UNIT_TEST(ConnectionUnitTest) - +// REGISTER_UNIT_TEST(ConnectionUnitTest) // disabling due to intermittent test failure - LYN-3368 From 33749519db588fafed911185d0c3e6620b7559f6 Mon Sep 17 00:00:00 2001 From: guthadam Date: Wed, 28 Apr 2021 11:10:55 -0500 Subject: [PATCH 40/54] ATOM-15371 Adding missing RHI dependency to Atom tools This was causing error message spam and possibly other issues when launching the tools. https://jira.agscollab.com/browse/ATOM-15371 --- Gems/Atom/Tools/MaterialEditor/Code/tool_dependencies.cmake | 1 + .../Tools/ShaderManagementConsole/Code/tool_dependencies.cmake | 1 + 2 files changed, 2 insertions(+) diff --git a/Gems/Atom/Tools/MaterialEditor/Code/tool_dependencies.cmake b/Gems/Atom/Tools/MaterialEditor/Code/tool_dependencies.cmake index 36fe22de7c..587f01cc7c 100644 --- a/Gems/Atom/Tools/MaterialEditor/Code/tool_dependencies.cmake +++ b/Gems/Atom/Tools/MaterialEditor/Code/tool_dependencies.cmake @@ -10,6 +10,7 @@ # set(GEM_DEPENDENCIES + Gem::Atom_RHI_Null.Private Gem::Atom_RHI_DX12.Private Gem::Atom_RHI_Vulkan.Private Gem::Atom_RHI.Private diff --git a/Gems/Atom/Tools/ShaderManagementConsole/Code/tool_dependencies.cmake b/Gems/Atom/Tools/ShaderManagementConsole/Code/tool_dependencies.cmake index 36fe22de7c..587f01cc7c 100644 --- a/Gems/Atom/Tools/ShaderManagementConsole/Code/tool_dependencies.cmake +++ b/Gems/Atom/Tools/ShaderManagementConsole/Code/tool_dependencies.cmake @@ -10,6 +10,7 @@ # set(GEM_DEPENDENCIES + Gem::Atom_RHI_Null.Private Gem::Atom_RHI_DX12.Private Gem::Atom_RHI_Vulkan.Private Gem::Atom_RHI.Private From 28b5a1427c5e4cc88f8f7f57be62afef5a285fc7 Mon Sep 17 00:00:00 2001 From: Chris Galvan Date: Wed, 28 Apr 2021 11:23:40 -0500 Subject: [PATCH 41/54] [LYN-3319] Removed some unused Editor dialogs. --- Code/Sandbox/Editor/CryEdit.cpp | 140 ----------- Code/Sandbox/Editor/CryEdit.h | 2 - .../Dialogs/DuplicatedObjectsHandlerDlg.cpp | 51 ---- .../Dialogs/DuplicatedObjectsHandlerDlg.h | 57 ----- .../Dialogs/DuplicatedObjectsHandlerDlg.ui | 83 ------- .../Editor/Dialogs/QT/NewEntityDialog.cpp | 218 ------------------ .../Editor/Dialogs/QT/NewEntityDialog.h | 69 ------ .../Editor/Dialogs/QT/NewEntityDialog.ui | 161 ------------- Code/Sandbox/Editor/Resource.h | 2 - Code/Sandbox/Editor/editor_lib_files.cmake | 6 - 10 files changed, 789 deletions(-) delete mode 100644 Code/Sandbox/Editor/Dialogs/DuplicatedObjectsHandlerDlg.cpp delete mode 100644 Code/Sandbox/Editor/Dialogs/DuplicatedObjectsHandlerDlg.h delete mode 100644 Code/Sandbox/Editor/Dialogs/DuplicatedObjectsHandlerDlg.ui delete mode 100644 Code/Sandbox/Editor/Dialogs/QT/NewEntityDialog.cpp delete mode 100644 Code/Sandbox/Editor/Dialogs/QT/NewEntityDialog.h delete mode 100644 Code/Sandbox/Editor/Dialogs/QT/NewEntityDialog.ui diff --git a/Code/Sandbox/Editor/CryEdit.cpp b/Code/Sandbox/Editor/CryEdit.cpp index c6a2ece984..b3eaaddc42 100644 --- a/Code/Sandbox/Editor/CryEdit.cpp +++ b/Code/Sandbox/Editor/CryEdit.cpp @@ -149,7 +149,6 @@ AZ_POP_DISABLE_WARNING #include "LevelFileDialog.h" #include "LevelIndependentFileMan.h" #include "WelcomeScreen/WelcomeScreenDialog.h" -#include "Dialogs/DuplicatedObjectsHandlerDlg.h" #include "Controls/ReflectedPropertyControl/PropertyCtrl.h" #include "Controls/ReflectedPropertyControl/ReflectedVar.h" @@ -400,9 +399,7 @@ void CCryEditApp::RegisterActionHandlers() ON_COMMAND(ID_OBJECTMODIFY_UNFREEZE, OnObjectmodifyUnfreeze) ON_COMMAND(ID_UNDO, OnUndo) ON_COMMAND(ID_TOOLBAR_WIDGET_REDO, OnUndo) // Can't use the same ID, because for the menu we can't have a QWidgetAction, while for the toolbar we want one - ON_COMMAND(ID_SELECTION_SAVE, OnSelectionSave) ON_COMMAND(ID_IMPORT_ASSET, OnOpenAssetImporter) - ON_COMMAND(ID_SELECTION_LOAD, OnSelectionLoad) ON_COMMAND(ID_LOCK_SELECTION, OnLockSelection) ON_COMMAND(ID_EDIT_LEVELDATA, OnEditLevelData) ON_COMMAND(ID_FILE_EDITLOGFILE, OnFileEditLogFile) @@ -3019,149 +3016,12 @@ void CCryEditApp::OnFileExportOcclusionMesh() pExportManager->Export(levelName.toUtf8().data(), "ocm", levelPath.toUtf8().data(), false, false, true); } -void CCryEditApp::OnSelectionSave() -{ - char szFilters[] = "Object Group Files (*.grp)"; - QtUtil::QtMFCScopedHWNDCapture cap; - CAutoDirectoryRestoreFileDialog dlg(QFileDialog::AcceptSave, QFileDialog::AnyFile, "grp", {}, szFilters, {}, {}, cap); - - if (dlg.exec()) - { - QWaitCursor wait; - CSelectionGroup* sel = GetIEditor()->GetSelection(); - //CXmlArchive xmlAr( "Objects" ); - - - XmlNodeRef root = XmlHelpers::CreateXmlNode("Objects"); - CObjectArchive ar(GetIEditor()->GetObjectManager(), root, false); - // Save all objects to XML. - for (int i = 0; i < sel->GetCount(); i++) - { - ar.SaveObject(sel->GetObject(i)); - } - QString fileName = dlg.selectedFiles().first(); - XmlHelpers::SaveXmlNode(GetIEditor()->GetFileUtil(), root, fileName.toStdString().c_str()); - //xmlAr.Save( dlg.GetPathName() ); - } -} - ////////////////////////////////////////////////////////////////////////// -struct SDuplicatedObject -{ - SDuplicatedObject(const QString& name, const GUID& id) - { - m_name = name; - m_id = id; - } - QString m_name; - GUID m_id; -}; - -void GatherAllObjects(XmlNodeRef node, std::vector& outDuplicatedObjects) -{ - if (!azstricmp(node->getTag(), "Object")) - { - GUID guid; - if (node->getAttr("Id", guid)) - { - if (GetIEditor()->GetObjectManager()->FindObject(guid)) - { - QString name; - node->getAttr("Name", name); - outDuplicatedObjects.push_back(SDuplicatedObject(name, guid)); - } - } - } - - for (int i = 0, nChildCount(node->getChildCount()); i < nChildCount; ++i) - { - XmlNodeRef childNode = node->getChild(i); - if (childNode == NULL) - { - continue; - } - GatherAllObjects(childNode, outDuplicatedObjects); - } -} - void CCryEditApp::OnOpenAssetImporter() { QtViewPaneManager::instance()->OpenPane(LyViewPane::SceneSettings); } -void CCryEditApp::OnSelectionLoad() -{ - // Load objects from .grp file. - QtUtil::QtMFCScopedHWNDCapture cap; - CAutoDirectoryRestoreFileDialog dlg(QFileDialog::AcceptOpen, QFileDialog::ExistingFile, "grp", {}, "Object Group Files (*.grp)", {}, {}, cap); - if (dlg.exec() != QDialog::Accepted) - { - return; - } - - QWaitCursor wait; - - XmlNodeRef root = XmlHelpers::LoadXmlFromFile(dlg.selectedFiles().first().toStdString().c_str()); - if (!root) - { - QMessageBox::critical(AzToolsFramework::GetActiveWindow(), QString(), QObject::tr("Error at loading group file.")); - return; - } - - std::vector duplicatedObjects; - GatherAllObjects(root, duplicatedObjects); - - CDuplicatedObjectsHandlerDlg::EResult result(CDuplicatedObjectsHandlerDlg::eResult_None); - int nDuplicatedObjectSize(duplicatedObjects.size()); - - if (!duplicatedObjects.empty()) - { - QString msg = QObject::tr("The following object(s) already exist(s) in the level.\r\n\r\n"); - - for (int i = 0; i < nDuplicatedObjectSize; ++i) - { - msg += QStringLiteral("\t"); - msg += duplicatedObjects[i].m_name; - if (i < nDuplicatedObjectSize - 1) - { - msg += QStringLiteral("\r\n"); - } - } - - CDuplicatedObjectsHandlerDlg confirmDlg(msg); - if (confirmDlg.exec() == QDialog::Rejected) - { - return; - } - result = confirmDlg.GetResult(); - } - - CUndo undo("Load Objects"); - GetIEditor()->ClearSelection(); - - CObjectArchive ar(GetIEditor()->GetObjectManager(), root, true); - - if (result == CDuplicatedObjectsHandlerDlg::eResult_Override) - { - for (int i = 0; i < nDuplicatedObjectSize; ++i) - { - CBaseObject* pObj = GetIEditor()->GetObjectManager()->FindObject(duplicatedObjects[i].m_id); - if (pObj) - { - GetIEditor()->GetObjectManager()->DeleteObject(pObj); - } - } - } - else if (result == CDuplicatedObjectsHandlerDlg::eResult_CreateCopies) - { - ar.MakeNewIds(true); - } - - GetIEditor()->GetObjectManager()->LoadObjects(ar, true); - GetIEditor()->SetModifiedFlag(); - GetIEditor()->SetModifiedModule(eModifiedBrushes); -} - ////////////////////////////////////////////////////////////////////////// void CCryEditApp::OnUpdateSelected(QAction* action) { diff --git a/Code/Sandbox/Editor/CryEdit.h b/Code/Sandbox/Editor/CryEdit.h index dc18dbcfda..7b96ab3827 100644 --- a/Code/Sandbox/Editor/CryEdit.h +++ b/Code/Sandbox/Editor/CryEdit.h @@ -232,9 +232,7 @@ public: void OnObjectmodifyFreeze(); void OnObjectmodifyUnfreeze(); void OnUndo(); - void OnSelectionSave(); void OnOpenAssetImporter(); - void OnSelectionLoad(); void OnUpdateSelected(QAction* action); void OnLockSelection(); void OnEditLevelData(); diff --git a/Code/Sandbox/Editor/Dialogs/DuplicatedObjectsHandlerDlg.cpp b/Code/Sandbox/Editor/Dialogs/DuplicatedObjectsHandlerDlg.cpp deleted file mode 100644 index 5a3a1e3036..0000000000 --- a/Code/Sandbox/Editor/Dialogs/DuplicatedObjectsHandlerDlg.cpp +++ /dev/null @@ -1,51 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#include "EditorDefs.h" - -#include "DuplicatedObjectsHandlerDlg.h" - -AZ_PUSH_DISABLE_DLL_EXPORT_MEMBER_WARNING -#include -AZ_POP_DISABLE_DLL_EXPORT_MEMBER_WARNING - - -CDuplicatedObjectsHandlerDlg::CDuplicatedObjectsHandlerDlg(const QString& msg, QWidget* pParent) - : QDialog(pParent) - , m_ui(new Ui::DuplicatedObjectsHandlerDlg) -{ - m_ui->setupUi(this); - setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint); - m_ui->textBrowser->setPlainText(msg); - - connect(m_ui->buttonOverride, &QPushButton::clicked, this, &CDuplicatedObjectsHandlerDlg::OnBnClickedOverrideBtn); - connect(m_ui->buttonCreateCopies, &QPushButton::clicked, this, &CDuplicatedObjectsHandlerDlg::OnBnClickedCreateCopiesBtn); -} - -CDuplicatedObjectsHandlerDlg::~CDuplicatedObjectsHandlerDlg() -{ -} - -void CDuplicatedObjectsHandlerDlg::OnBnClickedOverrideBtn() -{ - m_result = eResult_Override; - accept(); -} - -void CDuplicatedObjectsHandlerDlg::OnBnClickedCreateCopiesBtn() -{ - m_result = eResult_CreateCopies; - accept(); -} - -#include diff --git a/Code/Sandbox/Editor/Dialogs/DuplicatedObjectsHandlerDlg.h b/Code/Sandbox/Editor/Dialogs/DuplicatedObjectsHandlerDlg.h deleted file mode 100644 index 1610fd216f..0000000000 --- a/Code/Sandbox/Editor/Dialogs/DuplicatedObjectsHandlerDlg.h +++ /dev/null @@ -1,57 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#ifndef CRYINCLUDE_EDITOR_DIALOGS_DUPLICATEDOBJECTSHANDLERDLG_H -#define CRYINCLUDE_EDITOR_DIALOGS_DUPLICATEDOBJECTSHANDLERDLG_H -#pragma once - -#if !defined(Q_MOC_RUN) -#include -#endif - -namespace Ui -{ - class DuplicatedObjectsHandlerDlg; -} - -class CDuplicatedObjectsHandlerDlg - : public QDialog -{ - Q_OBJECT -public: - CDuplicatedObjectsHandlerDlg(const QString& msg, QWidget* pParent = nullptr); - virtual ~CDuplicatedObjectsHandlerDlg(); - - enum EResult - { - eResult_None, - eResult_Override, - eResult_CreateCopies - }; - - EResult GetResult() const - { - return m_result; - } - -protected: - - EResult m_result; - - void OnBnClickedOverrideBtn(); - void OnBnClickedCreateCopiesBtn(); - - QScopedPointer m_ui; -}; - -#endif // CRYINCLUDE_EDITOR_DIALOGS_DUPLICATEDOBJECTSHANDLERDLG_H diff --git a/Code/Sandbox/Editor/Dialogs/DuplicatedObjectsHandlerDlg.ui b/Code/Sandbox/Editor/Dialogs/DuplicatedObjectsHandlerDlg.ui deleted file mode 100644 index 44578d6862..0000000000 --- a/Code/Sandbox/Editor/Dialogs/DuplicatedObjectsHandlerDlg.ui +++ /dev/null @@ -1,83 +0,0 @@ - - - DuplicatedObjectsHandlerDlg - - - - 0 - 0 - 474 - 204 - - - - Duplicated Objects Dialog - - - - - - true - - - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - Cancel - - - - - - - Override - - - - - - - Create Copies - - - - - - - - - - - pushButton - clicked() - DuplicatedObjectsHandlerDlg - reject() - - - 258 - 183 - - - 190 - 184 - - - - - diff --git a/Code/Sandbox/Editor/Dialogs/QT/NewEntityDialog.cpp b/Code/Sandbox/Editor/Dialogs/QT/NewEntityDialog.cpp deleted file mode 100644 index 9384cd5051..0000000000 --- a/Code/Sandbox/Editor/Dialogs/QT/NewEntityDialog.cpp +++ /dev/null @@ -1,218 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -#include "EditorDefs.h" - -#include "NewEntityDialog.h" - -// Qt -#include -#include -#include - -// Editor -#include "Dialogs/QT/ui_NewEntityDialog.h" - - -NewEntityDialog::NewEntityDialog(QWidget* parent) - : QDialog(parent) - , ui(new Ui::NewEntityDialog) -{ - entityNameValidator = new EntityNameValidator(this); - - ui->setupUi(this); - - ui->entityName->setFocus(); - ui->buttonBox->button(QDialogButtonBox::Ok)->setEnabled(false); - connect(ui->entityName, SIGNAL(textChanged(QString)), this, SLOT(ValidateInput())); - connect(ui->categoryName, SIGNAL(textChanged(QString)), this, SLOT(ValidateInput())); - - SetCategoryCompleterPath((Path::GetEditingGameDataFolder() + "/Scripts/Entities").c_str()); - SetNameValidatorPath((Path::GetEditingGameDataFolder() + "/Entities").c_str()); -} - -NewEntityDialog::~NewEntityDialog() -{ - SAFE_DELETE(entityNameValidator); - SAFE_DELETE(folderNameCompleter); - delete ui; -} - -void NewEntityDialog::SetCategoryCompleterPath(CryStringT path) -{ - SAFE_DELETE(folderNameCompleter); - - QDirIterator directoryIt(QString::fromLocal8Bit(path.c_str(), path.length()), QDir::NoDotAndDotDot | QDir::AllDirs, QDirIterator::Subdirectories); - baseDir = directoryIt.path() + "/"; - - QStringList dirs; - while (directoryIt.hasNext()) - { - QString dir = directoryIt.next().remove(baseDir); - dirs.append(dir); - } - - folderNameCompleter = new QCompleter(dirs); - folderNameCompleter->setCompletionMode(QCompleter::UnfilteredPopupCompletion); - folderNameCompleter->setCaseSensitivity(Qt::CaseInsensitive); - ui->categoryName->setCompleter(folderNameCompleter); -} - -void NewEntityDialog::SetNameValidatorPath(CryStringT path) -{ - QDir dir(QString::fromLocal8Bit(path.c_str(), path.length())); - nameBaseDir = dir.path() + "/"; -} - -void NewEntityDialog::ValidateInput() -{ - int cursorPos = ui->entityName->cursorPosition(); - QString text = ui->entityName->text(); - bool validText = entityNameValidator->validate(text, cursorPos); - ui->buttonBox->button(QDialogButtonBox::Ok)->setEnabled(validText); -} - -void NewEntityDialog::accept() -{ - if (ui->categoryName->text().isEmpty() - && QMessageBox::question(this, "Are you sure?", "Create entity without category?", QMessageBox::Yes, QMessageBox::No) == QMessageBox::Yes) - { - return; - } - const char* devRoot = gEnv->pFileIO->GetAlias("@engroot@"); - QString devRootPath(devRoot); - QFile entTemplateFile(devRootPath + "/Editor/NewEntityTemplate.ent_template"); - QFile luaTemplateFile(devRootPath + "/Editor/NewEntityTemplate.lua_template"); - QFile entDestFile(nameBaseDir + ui->entityName->text() + ".ent"); - QFile luaDestFile(baseDir + ui->categoryName->text() + "/" + ui->entityName->text() + ".lua"); - - if (!entTemplateFile.exists() || !luaTemplateFile.exists()) - { - QMessageBox::critical(this, tr("Missing Template Files"), tr("In order to create default entities the NewEntityTemplate.lua and NewEntityTemplate.ent template files must exist in the Templates folder!")); - return; - } - - //generate the .ent file - QDir pathMaker(nameBaseDir); - pathMaker.mkpath(pathMaker.path()); - QString entFileString; - if (!entTemplateFile.open(QIODevice::ReadOnly | QIODevice::Text)) - { - AZ_Warning("Editor", false, "Enable to open template file for ent : %s", entTemplateFile.fileName().toUtf8().constData()); - return; - } - else - { - entFileString = entTemplateFile.readAll(); - entTemplateFile.close(); - } - - entFileString.replace(QString("[CATEGORY_NAME]"), ui->categoryName->text()); - entFileString.replace(QString("[ENTITY_NAME]"), ui->entityName->text()); - if (!entDestFile.open(QIODevice::WriteOnly | QIODevice::Text)) - { - AZ_Warning("Editor", false, "Enable to open destination file for ent : %s", entDestFile.fileName().toUtf8().constData()); - return; - } - else - { - entDestFile.write(entFileString.toUtf8()); - entDestFile.close(); - } - - //generate the .lua file - pathMaker.setPath(baseDir); - pathMaker.mkpath(ui->categoryName->text() + "/"); - - QString luaFileString; - if (!luaTemplateFile.open(QIODevice::ReadOnly | QIODevice::Text)) - { - AZ_Warning("Editor", false, "Enable to open template file for lua : %s", luaTemplateFile.fileName().toUtf8().constData()); - return; - } - else - { - luaFileString = luaTemplateFile.readAll(); - luaTemplateFile.close(); - } - - luaFileString.replace(QString("[ENTITY_NAME]"), ui->entityName->text()); - if (!luaDestFile.open(QIODevice::WriteOnly | QIODevice::Text)) - { - AZ_Warning("Editor", false, "Enable to open destination file for lua : %s", luaDestFile.fileName().toUtf8().constData()); - return; - } - else - { - luaDestFile.write(luaFileString.toUtf8()); - luaDestFile.close(); - } - - - if (ui->openLuaCB->isChecked()) - { - CFileUtil::EditTextFile(luaDestFile.fileName().toLocal8Bit().data()); - } - - QDialog::accept(); -} - -QValidator::State NewEntityDialog::EntityNameValidator::validate(QString& input, [[maybe_unused]] int& pos) const -{ - if (!m_Parent) - { - return Invalid; - } - - if (input.isEmpty()) - { - return Invalid; - } - - if (input.contains("/")) - { - return Invalid; - } - - QString fileBaseName = m_Parent->ui->entityName->text(); - - // Characters - const char* notAllowedChars = ",^@=+{}[]~!?:&*\"|#%<>$\"'();`' "; - for (const char* c = notAllowedChars; *c; c++) - { - if (fileBaseName.contains(QLatin1Char(*c))) - { - const QChar qc = QLatin1Char(*c); - if (qc.isSpace()) - { - QToolTip::showText(m_Parent->ui->entityName->mapToGlobal(QPoint()), tr("Name may not contain white space."), m_Parent->ui->entityName, m_Parent->ui->entityName->rect(), 2000); - } - else - { - QToolTip::showText(m_Parent->ui->entityName->mapToGlobal(QPoint()), tr("Invalid character \"%1\".").arg(qc), m_Parent->ui->entityName, m_Parent->ui->entityName->rect(), 2000); - } - return Invalid; - } - } - - QString filename(m_Parent->nameBaseDir + m_Parent->ui->entityName->text() + ".ent"); - QFile newFile(filename); - - if (newFile.exists()) - { - QToolTip::showText(m_Parent->ui->entityName->mapToGlobal(QPoint()), tr("Filename already exists!"), m_Parent->ui->entityName, m_Parent->ui->entityName->rect(), 2000); - return Invalid; - } - - return Acceptable; -} - -#include diff --git a/Code/Sandbox/Editor/Dialogs/QT/NewEntityDialog.h b/Code/Sandbox/Editor/Dialogs/QT/NewEntityDialog.h deleted file mode 100644 index 9ed2bdb2bb..0000000000 --- a/Code/Sandbox/Editor/Dialogs/QT/NewEntityDialog.h +++ /dev/null @@ -1,69 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -#ifndef NEWENTITYDIALOG_H -#define NEWENTITYDIALOG_H - -#if !defined(Q_MOC_RUN) -#include -#include -#include -#include -#include -#include -#include -#endif - -namespace Ui { - class NewEntityDialog; -} - -class NewEntityDialog - : public QDialog -{ - Q_OBJECT - -public: - explicit NewEntityDialog(QWidget* parent = 0); - ~NewEntityDialog(); - -private: - Ui::NewEntityDialog* ui; - QString baseDir = ""; - QString nameBaseDir = ""; - QCompleter* folderNameCompleter = NULL; - - void SetCategoryCompleterPath(CryStringT path); - void SetNameValidatorPath(CryStringT path); - - virtual void accept(); - - class EntityNameValidator - : public QValidator - { - public: - explicit EntityNameValidator(NewEntityDialog* parent = 0) - : QValidator(parent) - , m_Parent(parent) - { - } - virtual State validate(QString& input, int& pos) const; - - NewEntityDialog* m_Parent; - }; - - EntityNameValidator* entityNameValidator; - -public slots: - void ValidateInput(); -}; - -#endif // NEWENTITYDIALOG_H diff --git a/Code/Sandbox/Editor/Dialogs/QT/NewEntityDialog.ui b/Code/Sandbox/Editor/Dialogs/QT/NewEntityDialog.ui deleted file mode 100644 index 530bf9ac99..0000000000 --- a/Code/Sandbox/Editor/Dialogs/QT/NewEntityDialog.ui +++ /dev/null @@ -1,161 +0,0 @@ - - - NewEntityDialog - - - Qt::WindowModal - - - - 0 - 0 - 400 - 111 - - - - Qt::PreventContextMenu - - - New Entity - - - false - - - false - - - - - 30 - 70 - 341 - 32 - - - - Qt::Horizontal - - - QDialogButtonBox::Cancel|QDialogButtonBox::Ok - - - - - - 110 - 10 - 281 - 20 - - - - - - - 10 - 10 - 71 - 16 - - - - - 75 - true - - - - Entity Name: - - - entityName - - - - - - 10 - 40 - 91 - 16 - - - - - 75 - true - - - - Entity Category: - - - categoryName - - - - - - 110 - 40 - 281 - 20 - - - - - - - 10 - 80 - 141 - 17 - - - - Open Lua After Creating - - - - - entityName - categoryName - - - - - buttonBox - accepted() - NewEntityDialog - accept() - - - 248 - 254 - - - 157 - 274 - - - - - buttonBox - rejected() - NewEntityDialog - reject() - - - 316 - 260 - - - 286 - 274 - - - - - diff --git a/Code/Sandbox/Editor/Resource.h b/Code/Sandbox/Editor/Resource.h index 143b4fc0c4..15d04bd5c0 100644 --- a/Code/Sandbox/Editor/Resource.h +++ b/Code/Sandbox/Editor/Resource.h @@ -149,8 +149,6 @@ #define ID_OBJECTMODIFY_UNFREEZE 33518 #define ID_UNDO 33524 #define ID_EDIT_CLONE 33525 -#define ID_SELECTION_SAVE 33527 -#define ID_SELECTION_LOAD 33529 #define ID_GOTO_SELECTED 33535 #define ID_EDIT_LEVELDATA 33542 #define ID_FILE_EDITEDITORINI 33543 diff --git a/Code/Sandbox/Editor/editor_lib_files.cmake b/Code/Sandbox/Editor/editor_lib_files.cmake index ffbc37170d..80ec582d19 100644 --- a/Code/Sandbox/Editor/editor_lib_files.cmake +++ b/Code/Sandbox/Editor/editor_lib_files.cmake @@ -511,9 +511,6 @@ set(FILES DimensionsDialog.cpp DimensionsDialog.h DimensionsDialog.ui - Dialogs/QT/NewEntityDialog.cpp - Dialogs/QT/NewEntityDialog.h - Dialogs/QT/NewEntityDialog.ui NewLevelDialog.cpp NewLevelDialog.h NewLevelDialog.ui @@ -551,7 +548,6 @@ set(FILES DatabaseFrameWnd.h DatabaseFrameWnd.ui DatabaseFrameWnd.qrc - Dialogs/DuplicatedObjectsHandlerDlg.h DocMultiArchive.h EditMode/DeepSelection.h FBXExporterDialog.h @@ -711,8 +707,6 @@ set(FILES graphicssettingsdialog.ui AboutDialog.cpp DatabaseFrameWnd.cpp - Dialogs/DuplicatedObjectsHandlerDlg.cpp - Dialogs/DuplicatedObjectsHandlerDlg.ui ErrorReportTableModel.h ErrorReportTableModel.cpp EditMode/DeepSelection.cpp From 9ffca4df5dd57aff5303accd6798bcd4bdac5abf Mon Sep 17 00:00:00 2001 From: hershey5045 <43485729+hershey5045@users.noreply.github.com> Date: Wed, 28 Apr 2021 09:56:55 -0700 Subject: [PATCH 42/54] [SMC] UI Updates (#270) * Update SMC prompt texts. Add progress dialog in shader variant generation script. Add "Generate Shader Variant List" command in context menu for shader files in Asset Browser. --- ...erManagementConsoleBrowserInteractions.cpp | 41 ++++++++----- .../Window/ShaderManagementConsoleWindow.cpp | 1 + .../Code/shadermanagementconsole_files.cmake | 1 + .../GenerateShaderVariantListForMaterials.py | 57 ++++++++++++------- 4 files changed, 67 insertions(+), 33 deletions(-) diff --git a/Gems/Atom/Tools/ShaderManagementConsole/Code/Source/Window/ShaderManagementConsoleBrowserInteractions.cpp b/Gems/Atom/Tools/ShaderManagementConsole/Code/Source/Window/ShaderManagementConsoleBrowserInteractions.cpp index ace0aba506..33ca66b048 100644 --- a/Gems/Atom/Tools/ShaderManagementConsole/Code/Source/Window/ShaderManagementConsoleBrowserInteractions.cpp +++ b/Gems/Atom/Tools/ShaderManagementConsole/Code/Source/Window/ShaderManagementConsoleBrowserInteractions.cpp @@ -28,6 +28,7 @@ #include #include +#include #include #include @@ -81,7 +82,14 @@ namespace ShaderManagementConsole { menu->addAction("Open", [entry]() { - QDesktopServices::openUrl(QUrl::fromLocalFile(entry->GetFullPath().c_str())); + if (AzFramework::StringFunc::Path::IsExtension(entry->GetFullPath().c_str(), AZ::RPI::ShaderVariantListSourceData::Extension)) + { + ShaderManagementConsoleDocumentSystemRequestBus::Broadcast(&ShaderManagementConsoleDocumentSystemRequestBus::Events::OpenDocument, entry->GetFullPath().c_str()); + } + else + { + QDesktopServices::openUrl(QUrl::fromLocalFile(entry->GetFullPath().c_str())); + } }); menu->addAction("Duplicate...", [entry, caller]() @@ -100,20 +108,27 @@ namespace ShaderManagementConsole } }); - menu->addAction("Run Python on Asset...", [entry]() - { - const QString script = QFileDialog::getOpenFileName(nullptr, "Run Script", QString(), QString("*.py")); - if (!script.isEmpty()) - { - AZStd::vector pythonArgs { entry->GetFullPath() }; - AzToolsFramework::EditorPythonRunnerRequestBus::Broadcast(&AzToolsFramework::EditorPythonRunnerRequestBus::Events::ExecuteByFilenameWithArgs, script.toUtf8().constData(), pythonArgs); - } - }); - menu->addAction(AzQtComponents::fileBrowserActionName(), [entry]() + { + AzQtComponents::ShowFileOnDesktop(entry->GetFullPath().c_str()); + }); + + menu->addSeparator(); + menu->addAction("Generate Shader Variant List", [entry]() { + const QString script = "@engroot@/Gems/Atom/Tools/ShaderManagementConsole/Scripts/GenerateShaderVariantListForMaterials.py"; + AZStd::vector pythonArgs{ entry->GetFullPath() }; + AzToolsFramework::EditorPythonRunnerRequestBus::Broadcast(&AzToolsFramework::EditorPythonRunnerRequestBus::Events::ExecuteByFilenameWithArgs, script.toUtf8().constData(), pythonArgs); + }); + + menu->addAction("Run Python on Asset...", [entry]() + { + const QString script = QFileDialog::getOpenFileName(nullptr, "Run Script", QString(), QString("*.py")); + if (!script.isEmpty()) { - AzQtComponents::ShowFileOnDesktop(entry->GetFullPath().c_str()); - }); + AZStd::vector pythonArgs { entry->GetFullPath() }; + AzToolsFramework::EditorPythonRunnerRequestBus::Broadcast(&AzToolsFramework::EditorPythonRunnerRequestBus::Events::ExecuteByFilenameWithArgs, script.toUtf8().constData(), pythonArgs); + } + }); AddPerforceMenuActions(caller, menu, entry); } diff --git a/Gems/Atom/Tools/ShaderManagementConsole/Code/Source/Window/ShaderManagementConsoleWindow.cpp b/Gems/Atom/Tools/ShaderManagementConsole/Code/Source/Window/ShaderManagementConsoleWindow.cpp index 01a11e7835..6ab297bfc5 100644 --- a/Gems/Atom/Tools/ShaderManagementConsole/Code/Source/Window/ShaderManagementConsoleWindow.cpp +++ b/Gems/Atom/Tools/ShaderManagementConsole/Code/Source/Window/ShaderManagementConsoleWindow.cpp @@ -368,6 +368,7 @@ namespace ShaderManagementConsole // The document tab contains a table view. auto tableView = new QTableView(m_centralWidget); tableView->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); + tableView->setSelectionBehavior(QAbstractItemView::SelectRows); auto model = new QStandardItemModel(); tableView->setModel(model); diff --git a/Gems/Atom/Tools/ShaderManagementConsole/Code/shadermanagementconsole_files.cmake b/Gems/Atom/Tools/ShaderManagementConsole/Code/shadermanagementconsole_files.cmake index 58088536f9..46a5902f70 100644 --- a/Gems/Atom/Tools/ShaderManagementConsole/Code/shadermanagementconsole_files.cmake +++ b/Gems/Atom/Tools/ShaderManagementConsole/Code/shadermanagementconsole_files.cmake @@ -15,4 +15,5 @@ set(FILES Source/ShaderManagementConsoleApplication.h Include/Atom/Document/ShaderManagementConsoleDocumentModule.h Source/Document/ShaderManagementConsoleDocumentModule.cpp + ../Scripts/GenerateShaderVariantListForMaterials.py ) diff --git a/Gems/Atom/Tools/ShaderManagementConsole/Scripts/GenerateShaderVariantListForMaterials.py b/Gems/Atom/Tools/ShaderManagementConsole/Scripts/GenerateShaderVariantListForMaterials.py index 0576789145..9faee7bf84 100755 --- a/Gems/Atom/Tools/ShaderManagementConsole/Scripts/GenerateShaderVariantListForMaterials.py +++ b/Gems/Atom/Tools/ShaderManagementConsole/Scripts/GenerateShaderVariantListForMaterials.py @@ -24,15 +24,6 @@ from PySide2 import QtWidgets PROJECT_SHADER_VARIANTS_FOLDER = "ShaderVariants" -def prompt_message_box(text, informativeText = None, qButtons = QtWidgets.QMessageBox.Yes|QtWidgets.QMessageBox.No|QtWidgets.QMessageBox.Cancel): - msgBox = QtWidgets.QMessageBox() - msgBox.setText(text) - if informativeText: - msgBox.setInformativeText(informativeText) - msgBox.setStandardButtons(qButtons) - - return msgBox.exec() - def clean_existing_shadervariantlist_files(filePaths): for file in filePaths: if os.path.exists(file): @@ -66,21 +57,32 @@ def main(): shaderAssetInfo.relativePath ) - response = prompt_message_box( - "Generating .shadervariantlist File", - "This process may take a while. Would you like to save the generated .shadervariantlist file in the project folder? " \ - "Otherwise, it will be saved in the same location as the .shader file." + msgBox = QtWidgets.QMessageBox( + QtWidgets.QMessageBox.Question, + "Choose Save Location for .shadervariantlist File", + "Save .shadervariantlist file in Project folder or in the same folder as shader file?" ) + projectButton = msgBox.addButton("Project Folder", QtWidgets.QMessageBox.AcceptRole) + msgBox.addButton("Same Folder as Shader", QtWidgets.QMessageBox.AcceptRole) + cancelButton = msgBox.addButton("Cancel", QtWidgets.QMessageBox.RejectRole) + msgBox.exec() + is_save_in_project_folder = False - if response == QtWidgets.QMessageBox.Yes: + if msgBox.clickedButton() == projectButton: is_save_in_project_folder = True - elif response == QtWidgets.QMessageBox.Cancel: + elif msgBox.clickedButton() == cancelButton: return # This loop collects all uniquely-identified shader items used by the materials based on its shader variant id. + shader_file = os.path.basename(filename) shaderVariantIds = [] shaderVariantListShaderOptionGroups = [] - for materialAssetId in materialAssetIds: + progressDialog = QtWidgets.QProgressDialog(f"Generating .shadervariantlist file for:\n{shader_file}", "Cancel", 0, len(materialAssetIds)) + progressDialog.setMaximumWidth(400) + progressDialog.setMaximumHeight(100) + progressDialog.setModal(True) + progressDialog.setWindowTitle("Generating Shader Variant List") + for i, materialAssetId in enumerate(materialAssetIds): materialInstanceShaderItems = azlmbr.shadermanagementconsole.ShaderManagementConsoleRequestBus(azlmbr.bus.Broadcast, 'GetMaterialInstanceShaderItems', materialAssetId) for shaderItem in materialInstanceShaderItems: @@ -102,8 +104,14 @@ def main(): shaderVariantIds.append(shaderVariantId) shaderVariantListShaderOptionGroups.append(shaderItem.GetShaderOptionGroup()) + progressDialog.setValue(i) + if progressDialog.wasCanceled(): + return + + progressDialog.close() + # Generate the shader variant list data by collecting shader option name-value pairs.s - shaderVariantList = azlmbr.shader.ShaderVariantListSourceData () + shaderVariantList = azlmbr.shader.ShaderVariantListSourceData() shaderVariantList.shaderFilePath = shaderAssetInfo.relativePath shaderVariants = [] stableId = 1 @@ -144,17 +152,26 @@ def main(): shaderVariantListFilePath = projectShaderVariantListFilePath else: shaderVariantListFilePath = defaultShaderVariantListFilePath - - print(f"Saving .shadervariantlist file into: {shaderVariantListFilePath}") + + shaderVariantListFilePath = shaderVariantListFilePath.replace("\\", "/") azlmbr.shader.SaveShaderVariantListSourceData(shaderVariantListFilePath, shaderVariantList) # Open the document in shader management console - azlmbr.shadermanagementconsole.ShaderManagementConsoleDocumentSystemRequestBus( + result = azlmbr.shadermanagementconsole.ShaderManagementConsoleDocumentSystemRequestBus( azlmbr.bus.Broadcast, 'OpenDocument', shaderVariantListFilePath ) + if not result.IsNull(): + msgBox = QtWidgets.QMessageBox( + QtWidgets.QMessageBox.Information, + "Shader Variant List File Successfully Generated", + f".shadervariantlist file was saved in:\n{shaderVariantListFilePath}", + QtWidgets.QMessageBox.Ok + ) + msgBox.exec() + print("==== End shader variant script ============================================================") if __name__ == "__main__": From 0e092d6cb7e7cc085d44920dea9cd03371b1e75b Mon Sep 17 00:00:00 2001 From: Peng Date: Wed, 28 Apr 2021 10:45:18 -0700 Subject: [PATCH 43/54] ATOM-14947 Took out jira links, just use the ticket number --- .../Shader/Code/AZSL/Platform/Android/Vulkan/AzslcHeader.azsli | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gems/Atom/Asset/Shader/Code/AZSL/Platform/Android/Vulkan/AzslcHeader.azsli b/Gems/Atom/Asset/Shader/Code/AZSL/Platform/Android/Vulkan/AzslcHeader.azsli index 91036909c6..8f0d4dd392 100644 --- a/Gems/Atom/Asset/Shader/Code/AZSL/Platform/Android/Vulkan/AzslcHeader.azsli +++ b/Gems/Atom/Asset/Shader/Code/AZSL/Platform/Android/Vulkan/AzslcHeader.azsli @@ -21,5 +21,5 @@ static const float4 s_AzslDebugColor = float4(165.0 / 255.0, 30.0 / 255.0, 36.0 / 255.0, 1); // Uniform limitation need to be taken into consideration for mobile devices -// https://jira.agscollab.com/browse/ATOM-14949 +// [ATOM-14949] #define AZ_TRAIT_CONSTANT_BUFFER_LIMITATIONS 1 \ No newline at end of file From 67e64f8a953e8b6296352485435f7324f1b5926a Mon Sep 17 00:00:00 2001 From: Chris Galvan Date: Wed, 28 Apr 2021 12:53:10 -0500 Subject: [PATCH 44/54] [LYN-3374] Removed Cry3DEngine checks in EditorViewportWidget that was preventing selection, correct camera position, and other issues in the viewport. --- Code/Sandbox/Editor/EditorViewportWidget.cpp | 14 +------------- Code/Sandbox/Editor/EditorViewportWidget.h | 3 --- 2 files changed, 1 insertion(+), 16 deletions(-) diff --git a/Code/Sandbox/Editor/EditorViewportWidget.cpp b/Code/Sandbox/Editor/EditorViewportWidget.cpp index d0855084c7..d319fe1d52 100644 --- a/Code/Sandbox/Editor/EditorViewportWidget.cpp +++ b/Code/Sandbox/Editor/EditorViewportWidget.cpp @@ -230,9 +230,6 @@ EditorViewportWidget::~EditorViewportWidget() ////////////////////////////////////////////////////////////////////////// int EditorViewportWidget::OnCreate() { - m_renderer = GetIEditor()->GetRenderer(); - m_engine = GetIEditor()->Get3DEngine(); - CreateRenderContext(); return 0; @@ -426,7 +423,7 @@ void EditorViewportWidget::Update() return; } - if (!m_engine || m_rcClient.isEmpty() || GetIEditor()->IsInMatEditMode()) + if (m_rcClient.isEmpty() || GetIEditor()->IsInMatEditMode()) { return; } @@ -796,10 +793,6 @@ void EditorViewportWidget::OnRender() { GetIEditor()->GetRenderer()->SetCamera(gEnv->pSystem->GetViewCamera()); } - if (m_engine) - { - m_engine->RenderWorld(0, SRenderingPassInfo::CreateGeneralPassRenderingInfo(m_Camera), __FUNCTION__); - } return; } @@ -1814,11 +1807,6 @@ void EditorViewportWidget::SetViewTM(const Matrix34& viewTM, bool bMoveOnly) ////////////////////////////////////////////////////////////////////////// void EditorViewportWidget::RenderSelectedRegion() { - if (!m_engine) - { - return; - } - AABB box; GetIEditor()->GetSelectedRegion(box); if (box.IsEmpty()) diff --git a/Code/Sandbox/Editor/EditorViewportWidget.h b/Code/Sandbox/Editor/EditorViewportWidget.h index b0dd2a286c..f2a40b34a5 100644 --- a/Code/Sandbox/Editor/EditorViewportWidget.h +++ b/Code/Sandbox/Editor/EditorViewportWidget.h @@ -395,9 +395,6 @@ protected: }; void ResetToViewSourceType(const ViewSourceType& viewSourType); - //! Assigned renderer. - IRenderer* m_renderer = nullptr; - I3DEngine* m_engine = nullptr; bool m_bRenderContextCreated = false; bool m_bInRotateMode = false; bool m_bInMoveMode = false; From 9f9b8f70b45007234c3961e2e25978912e7c0348 Mon Sep 17 00:00:00 2001 From: Vincent Liu <5900509+onecent1101@users.noreply.github.com> Date: Wed, 28 Apr 2021 11:28:23 -0700 Subject: [PATCH 45/54] [LYN-3149] Update AWSCore Editor menu to invoke resource mapping tool through engine python environment (#318) ## Details After migrating to engine python environment, there is no extra step required to launch resource mapping tool in editor. 1. This change is to migrate the editor tool launching process to engine python environment. 2. Add messagebox to show errors while using the tool 3. Note - as Qt binaries are not well organized in build directory, so separate out *AWSCore.ResourceMappintTool* target to group Qt binaries into independent build sub folder to solve the issue (temporarily, fix can be tracked by https://jira.agscollab.com/browse/LYN-2669, once fix is done, we can just remove this individual target) ## Testing Runs AWSCore.Editor.Tests ``` [----------] Global test environment tear-down [==========] 8 tests from 4 test cases ran. (161 ms total) [ PASSED ] 8 tests. ``` --- Gems/AWSCore/Code/CMakeLists.txt | 20 ++- .../Private/Editor/UI/AWSCoreEditorMenu.h | 21 +-- .../UI/AWSCoreResourceMappingToolAction.h | 42 ++++++ .../Source/Editor/UI/AWSCoreEditorMenu.cpp | 112 +++++++-------- .../UI/AWSCoreResourceMappingToolAction.cpp | 134 ++++++++++++++++++ .../AWSCoreEditorSystemComponentTest.cpp | 3 +- .../Tests/Editor/AWSCoreEditorManagerTest.cpp | 4 +- .../Tests/Editor/UI/AWSCoreEditorMenuTest.cpp | 7 +- .../AWSCoreResourceMappingToolActionTest.cpp | 57 ++++++++ .../Code/Tools/ResourceMappingTool/README.md | 128 ++++++++--------- .../resource_mapping_tool.cmd | 24 ---- .../resource_mapping_tool.py | 2 +- Gems/AWSCore/Code/awscore_editor_files.cmake | 2 + .../Code/awscore_editor_tests_files.cmake | 1 + .../awscore_resourcemappingtool_files.cmake | 15 ++ 15 files changed, 400 insertions(+), 172 deletions(-) create mode 100644 Gems/AWSCore/Code/Include/Private/Editor/UI/AWSCoreResourceMappingToolAction.h create mode 100644 Gems/AWSCore/Code/Source/Editor/UI/AWSCoreResourceMappingToolAction.cpp create mode 100644 Gems/AWSCore/Code/Tests/Editor/UI/AWSCoreResourceMappingToolActionTest.cpp delete mode 100644 Gems/AWSCore/Code/Tools/ResourceMappingTool/resource_mapping_tool.cmd create mode 100644 Gems/AWSCore/Code/awscore_resourcemappingtool_files.cmake diff --git a/Gems/AWSCore/Code/CMakeLists.txt b/Gems/AWSCore/Code/CMakeLists.txt index cfb646710e..468530be31 100644 --- a/Gems/AWSCore/Code/CMakeLists.txt +++ b/Gems/AWSCore/Code/CMakeLists.txt @@ -70,7 +70,6 @@ if (PAL_TRAIT_BUILD_HOST_TOOLS) ly_add_target( NAME AWSCore.Editor MODULE NAMESPACE Gem - OUTPUT_SUBDIRECTORY AWSCoreEditorPlugins FILES_CMAKE awscore_editor_shared_files.cmake INCLUDE_DIRECTORIES @@ -85,6 +84,25 @@ if (PAL_TRAIT_BUILD_HOST_TOOLS) Gem::AWSCore.Static Gem::AWSCore.Editor.Static ) + + ly_add_target( + NAME AWSCore.ResourceMappintTool MODULE + NAMESPACE Gem + OUTPUT_SUBDIRECTORY AWSCoreEditorQtBin + FILES_CMAKE + awscore_resourcemappingtool_files.cmake + INCLUDE_DIRECTORIES + PRIVATE + Include/Private + PUBLIC + Include/Public + BUILD_DEPENDENCIES + PRIVATE + 3rdParty::Qt::Core + 3rdParty::Qt::Widgets + AZ::AzToolsFramework + ) + ly_add_dependencies(AWSCore.Editor AWSCore.ResourceMappintTool) endif() ################################################################################ diff --git a/Gems/AWSCore/Code/Include/Private/Editor/UI/AWSCoreEditorMenu.h b/Gems/AWSCore/Code/Include/Private/Editor/UI/AWSCoreEditorMenu.h index 3994379df9..19f241e368 100644 --- a/Gems/AWSCore/Code/Include/Private/Editor/UI/AWSCoreEditorMenu.h +++ b/Gems/AWSCore/Code/Include/Private/Editor/UI/AWSCoreEditorMenu.h @@ -18,6 +18,11 @@ #include +namespace AzFramework +{ + class ProcessWatcher; +} + namespace AWSCore { class AWSCoreEditorMenu @@ -25,7 +30,11 @@ namespace AWSCore , AWSCoreEditorRequestBus::Handler { public: - static constexpr const char ResourceMappingToolPath[] = "Gems/AWSCore/Code/Tools/ResourceMappingTool/resource_mapping_tool.cmd"; + static constexpr const char AWSResourceMappingToolReadMeWarningText[] = + "Failed to launch Resource Mapping Tool, please follow README to setup tool before using it."; + static constexpr const char AWSResourceMappingToolIsRunningText[] = "Resource Mapping Tool is running..."; + static constexpr const char AWSResourceMappingToolLogWarningText[] = + "Failed to launch Resource Mapping Tool, please check logs for details."; static constexpr const char AWSResourceMappingToolActionText[] = "AWS Resource Mapping Tool..."; static constexpr const char CredentialConfigurationActionText[] = "Credential Configuration"; static constexpr const char CredentialConfigurationUrl[] = "https://docs.aws.amazon.com/sdk-for-cpp/v1/developer-guide/credentials.html"; @@ -40,23 +49,17 @@ namespace AWSCore ~AWSCoreEditorMenu(); private: - void InitializeEngineRootFolder(); void InitializeResourceMappingToolAction(); void InitializeAWSDocActions(); void InitializeAWSFeatureGemActions(); - void StartResourceMappingProcess(); - // AWSCoreEditorRequestBus interface implementation void SetAWSClientAuthEnabled() override; void SetAWSMetricsEnabled() override; void SetAWSFeatureActionsEnabled(const AZStd::string actionText); - AZStd::string m_engineRootFolder; - - AZStd::mutex m_resourceMappingToolMutex; - bool m_resourceMappintToolIsRunning; - AZStd::thread m_resourceMappingToolThread; + // To improve experience, use process watcher to keep track of ongoing tool process + AZStd::unique_ptr m_resourceMappingToolWatcher; }; } // namespace AWSCore diff --git a/Gems/AWSCore/Code/Include/Private/Editor/UI/AWSCoreResourceMappingToolAction.h b/Gems/AWSCore/Code/Include/Private/Editor/UI/AWSCoreResourceMappingToolAction.h new file mode 100644 index 0000000000..c7391fcfc9 --- /dev/null +++ b/Gems/AWSCore/Code/Include/Private/Editor/UI/AWSCoreResourceMappingToolAction.h @@ -0,0 +1,42 @@ +/* + * All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or + * its licensors. + * + * For complete copyright and license terms please see the LICENSE at the root of this + * distribution (the "License"). All use of this software is governed by the License, + * or, if provided, by the license below or the license accompanying this file. Do not + * remove or modify any license notices. This file is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * + */ +#pragma once + +#include + +#include + +namespace AWSCore +{ + class AWSCoreResourceMappingToolAction + : public QAction + { + public: + static constexpr const char ResourceMappingToolDirectoryPath[] = "Gems/AWSCore/Code/Tools/ResourceMappingTool"; + static constexpr const char EngineWindowsPythonEntryScriptPath[] = "python/python.cmd"; + + AWSCoreResourceMappingToolAction(const QString& text); + + AZStd::string GetToolLaunchCommand() const; + AZStd::string GetToolLogPath() const; + AZStd::string GetToolReadMePath() const; + + private: + bool m_isDebug; + AZStd::string m_enginePythonEntryPath; + AZStd::string m_toolScriptPath; + AZStd::string m_toolQtBinDirectoryPath; + + AZStd::string m_toolLogPath; + AZStd::string m_toolReadMePath; + }; +} // namespace AWSCore diff --git a/Gems/AWSCore/Code/Source/Editor/UI/AWSCoreEditorMenu.cpp b/Gems/AWSCore/Code/Source/Editor/UI/AWSCoreEditorMenu.cpp index 62ead9ba4a..754cc32751 100644 --- a/Gems/AWSCore/Code/Source/Editor/UI/AWSCoreEditorMenu.cpp +++ b/Gems/AWSCore/Code/Source/Editor/UI/AWSCoreEditorMenu.cpp @@ -13,17 +13,20 @@ #include #include #include +#include #include #include #include +#include #include +#include #include #include #include +#include #include -#include #include #include @@ -31,15 +34,9 @@ namespace AWSCore { AWSCoreEditorMenu::AWSCoreEditorMenu(const QString& text) : QMenu(text) - , m_engineRootFolder("") - , m_resourceMappintToolIsRunning(false) + , m_resourceMappingToolWatcher(nullptr) { - InitializeEngineRootFolder(); - -#ifdef AWSCORE_EDITOR_RESOURCE_MAPPING_TOOL_ENABLED InitializeResourceMappingToolAction(); - this->addSeparator(); -#endif InitializeAWSDocActions(); this->addSeparator(); InitializeAWSFeatureGemActions(); @@ -50,46 +47,58 @@ namespace AWSCore AWSCoreEditorMenu::~AWSCoreEditorMenu() { AWSCoreEditorRequestBus::Handler::BusDisconnect(); - - if (m_resourceMappingToolThread.joinable()) + if (m_resourceMappingToolWatcher) { - m_resourceMappingToolThread.join(); - } - } - - void AWSCoreEditorMenu::InitializeEngineRootFolder() - { - auto engineRootFolder = AZ::IO::FileIOBase::GetInstance()->GetAlias("@engroot@"); - if (!engineRootFolder) - { - AZ_Error("AWSCoreEditorMenu", false, "Failed to initialize engine root folder path."); - } - else - { - m_engineRootFolder = engineRootFolder; + if (m_resourceMappingToolWatcher->IsProcessRunning()) + { + m_resourceMappingToolWatcher->TerminateProcess(AZ::u32(-1)); + } + m_resourceMappingToolWatcher.reset(); } + this->clear(); } void AWSCoreEditorMenu::InitializeResourceMappingToolAction() { - QAction* resourceMappingAction = new QAction(QObject::tr(AWSResourceMappingToolActionText)); - QObject::connect(resourceMappingAction, &QAction::triggered, this, [this]() { - AZStd::lock_guard lockGuard{m_resourceMappingToolMutex}; - if (!m_resourceMappintToolIsRunning) - { - m_resourceMappintToolIsRunning = true; - if (m_resourceMappingToolThread.joinable()) +#ifdef AWSCORE_EDITOR_RESOURCE_MAPPING_TOOL_ENABLED + AWSCoreResourceMappingToolAction* resourceMappingTool = + new AWSCoreResourceMappingToolAction(QObject::tr(AWSResourceMappingToolActionText)); + QObject::connect(resourceMappingTool, &QAction::triggered, this, + [resourceMappingTool, this]() { + AZStd::string launchCommand = resourceMappingTool->GetToolLaunchCommand(); + if (launchCommand.empty()) { - m_resourceMappingToolThread.join(); + AZStd::string resourceMappingToolReadMePath = resourceMappingTool->GetToolReadMePath(); + AZStd::string message = AZStd::string::format(AWSResourceMappingToolReadMeWarningText, resourceMappingToolReadMePath.c_str()); + QMessageBox::warning(QApplication::activeWindow(), "Warning", message.c_str(), QMessageBox::Ok); + return; + } + if (m_resourceMappingToolWatcher && m_resourceMappingToolWatcher->IsProcessRunning()) + { + QMessageBox::information(QApplication::activeWindow(), "Info", AWSResourceMappingToolIsRunningText, QMessageBox::Ok); + return; + } + if (m_resourceMappingToolWatcher) + { + m_resourceMappingToolWatcher.reset(); + } + + AzFramework::ProcessLauncher::ProcessLaunchInfo processLaunchInfo; + processLaunchInfo.m_commandlineParameters = launchCommand; + processLaunchInfo.m_showWindow = false; + m_resourceMappingToolWatcher = AZStd::unique_ptr( + AzFramework::ProcessWatcher::LaunchProcess(processLaunchInfo, AzFramework::ProcessCommunicationType::COMMUNICATOR_TYPE_NONE)); + + if (!m_resourceMappingToolWatcher || !m_resourceMappingToolWatcher->IsProcessRunning()) + { + AZStd::string resourceMappingToolLogPath = resourceMappingTool->GetToolLogPath(); + AZStd::string message = AZStd::string::format(AWSResourceMappingToolLogWarningText, resourceMappingToolLogPath.c_str()); + QMessageBox::warning(QApplication::activeWindow(), "Warning", message.c_str(), QMessageBox::Ok); } - m_resourceMappingToolThread = AZStd::thread(AZStd::bind(&AWSCoreEditorMenu::StartResourceMappingProcess, this)); - } - else - { - AZ_Warning("AWSCoreEditorMenu", false, "Resource Mapping Tool is already running..."); - } }); - this->addAction(resourceMappingAction); + this->addAction(resourceMappingTool); + this->addSeparator(); +#endif } void AWSCoreEditorMenu::InitializeAWSDocActions() @@ -124,31 +133,6 @@ namespace AWSCore this->addAction(metrics); } - void AWSCoreEditorMenu::StartResourceMappingProcess() - { - AZStd::string toolScriptPath = AZStd::string::format("%s/%s", m_engineRootFolder.c_str(), ResourceMappingToolPath); - AzFramework::StringFunc::Path::Normalize(toolScriptPath); - QProcess resourceMappingToolProcess; - resourceMappingToolProcess.setProgram("cmd.exe"); - resourceMappingToolProcess.setArguments({"/C", toolScriptPath.c_str()}); - - resourceMappingToolProcess.start(); - while (!resourceMappingToolProcess.waitForFinished()) - { - if (resourceMappingToolProcess.state() != QProcess::Running) - { - break; - } - } - if (resourceMappingToolProcess.exitCode() != 0) - { - AZ_Error("AWSCoreEditorMenu", false, - "Failed to launch Resource Mapping Tool, please follow README to setup tool before using it."); - } - AZStd::lock_guard lockGuard{m_resourceMappingToolMutex}; - m_resourceMappintToolIsRunning = false; - } - void AWSCoreEditorMenu::SetAWSClientAuthEnabled() { SetAWSFeatureActionsEnabled(AWSClientAuthActionText); diff --git a/Gems/AWSCore/Code/Source/Editor/UI/AWSCoreResourceMappingToolAction.cpp b/Gems/AWSCore/Code/Source/Editor/UI/AWSCoreResourceMappingToolAction.cpp new file mode 100644 index 0000000000..fb46a8a700 --- /dev/null +++ b/Gems/AWSCore/Code/Source/Editor/UI/AWSCoreResourceMappingToolAction.cpp @@ -0,0 +1,134 @@ +/* + * All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or + * its licensors. + * + * For complete copyright and license terms please see the LICENSE at the root of this + * distribution (the "License"). All use of this software is governed by the License, + * or, if provided, by the license below or the license accompanying this file. Do not + * remove or modify any license notices. This file is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * + */ + +#include +#include +#include + +#include + +namespace AWSCore +{ + AWSCoreResourceMappingToolAction::AWSCoreResourceMappingToolAction(const QString& text) + : QAction(text) + , m_isDebug(false) + , m_enginePythonEntryPath("") + , m_toolScriptPath("") + , m_toolQtBinDirectoryPath("") + , m_toolLogPath("") + , m_toolReadMePath("") + { + auto engineRootPath = AZ::IO::FileIOBase::GetInstance()->GetAlias("@engroot@"); + if (!engineRootPath) + { + AZ_Error("AWSCoreEditor", false, "Failed to determine engine root path."); + } + else + { + m_enginePythonEntryPath = AZStd::string::format("%s/%s", engineRootPath, EngineWindowsPythonEntryScriptPath); + AzFramework::StringFunc::Path::Normalize(m_enginePythonEntryPath); + if (!AZ::IO::SystemFile::Exists(m_enginePythonEntryPath.c_str())) + { + AZ_Error("AWSCoreEditor", false, "Failed to find engine python entry at %s.", m_enginePythonEntryPath.c_str()); + m_enginePythonEntryPath.clear(); + } + + m_toolScriptPath = AZStd::string::format("%s/%s/resource_mapping_tool.py", engineRootPath, ResourceMappingToolDirectoryPath); + AzFramework::StringFunc::Path::Normalize(m_toolScriptPath); + if (!AZ::IO::SystemFile::Exists(m_toolScriptPath.c_str())) + { + AZ_Error("AWSCoreEditor", false, "Failed to find ResourceMappingTool python script at %s.", m_toolScriptPath.c_str()); + m_toolScriptPath.clear(); + } + + m_toolLogPath = AZStd::string::format("%s/%s/resource_mapping_tool.log", engineRootPath, ResourceMappingToolDirectoryPath); + AzFramework::StringFunc::Path::Normalize(m_toolLogPath); + if (!AZ::IO::SystemFile::Exists(m_toolLogPath.c_str())) + { + AZ_Error("AWSCoreEditor", false, "Failed to find ResourceMappingTool log file at %s.", m_toolLogPath.c_str()); + m_toolLogPath.clear(); + } + + m_toolReadMePath = AZStd::string::format("%s/%s/README.md", engineRootPath, ResourceMappingToolDirectoryPath); + AzFramework::StringFunc::Path::Normalize(m_toolReadMePath); + if (!AZ::IO::SystemFile::Exists(m_toolReadMePath.c_str())) + { + AZ_Error("AWSCoreEditor", false, "Failed to find ResourceMappingTool README file at %s.", m_toolReadMePath.c_str()); + m_toolReadMePath.clear(); + } + + char executablePath[AZ_MAX_PATH_LEN]; + auto result = AZ::Utils::GetExecutablePath(executablePath, AZ_MAX_PATH_LEN); + if (result.m_pathStored != AZ::Utils::ExecutablePathResult::Success) + { + AZ_Error("AWSCoreEditor", false, "Failed to find engine executable path."); + } + else + { + if (result.m_pathIncludesFilename) + { + // Remove the file name if it exists, and keep the parent folder only + char* lastSeparatorAddress = strrchr(executablePath, AZ_CORRECT_FILESYSTEM_SEPARATOR); + if (lastSeparatorAddress) + { + *lastSeparatorAddress = '\0'; + } + } + } + + AZStd::string binDirectoryPath(executablePath); + auto lastSeparator = binDirectoryPath.find_last_of(AZ_CORRECT_FILESYSTEM_SEPARATOR); + if (lastSeparator != AZStd::string::npos) + { + m_isDebug = binDirectoryPath.substr(lastSeparator).contains("debug"); + } + + m_toolQtBinDirectoryPath = AZStd::string::format("%s/%s", binDirectoryPath.c_str(), "AWSCoreEditorQtBin"); + AzFramework::StringFunc::Path::Normalize(m_toolQtBinDirectoryPath); + if (!AZ::IO::SystemFile::Exists(m_toolQtBinDirectoryPath.c_str())) + { + AZ_Error("AWSCoreEditor", false, "Failed to find ResourceMappingTool Qt binaries at %s.", m_toolQtBinDirectoryPath.c_str()); + m_toolQtBinDirectoryPath.clear(); + } + } + } + + AZStd::string AWSCoreResourceMappingToolAction::GetToolLaunchCommand() const + { + if (m_enginePythonEntryPath.empty() || m_toolScriptPath.empty() || m_toolQtBinDirectoryPath.empty()) + { + return ""; + } + if (m_isDebug) + { + return AZStd::string::format( + "%s debug %s --binaries_path %s --debug", + m_enginePythonEntryPath.c_str(), m_toolScriptPath.c_str(), m_toolQtBinDirectoryPath.c_str()); + } + else + { + return AZStd::string::format( + "%s %s --binaries_path %s", + m_enginePythonEntryPath.c_str(), m_toolScriptPath.c_str(), m_toolQtBinDirectoryPath.c_str()); + } + } + + AZStd::string AWSCoreResourceMappingToolAction::GetToolLogPath() const + { + return m_toolLogPath; + } + + AZStd::string AWSCoreResourceMappingToolAction::GetToolReadMePath() const + { + return m_toolReadMePath; + } +} // namespace AWSCore diff --git a/Gems/AWSCore/Code/Tests/AWSCoreEditorSystemComponentTest.cpp b/Gems/AWSCore/Code/Tests/AWSCoreEditorSystemComponentTest.cpp index 6d0484c11a..e9c249f1c8 100644 --- a/Gems/AWSCore/Code/Tests/AWSCoreEditorSystemComponentTest.cpp +++ b/Gems/AWSCore/Code/Tests/AWSCoreEditorSystemComponentTest.cpp @@ -36,7 +36,6 @@ class AWSCoreEditorSystemComponentTest AWSCoreEditorUIFixture::SetUp(); AWSCoreFixture::SetUp(); - m_localFileIO->SetAlias("@engroot@", "dummy engine root"); m_serializeContext = AZStd::make_unique(); m_serializeContext->CreateEditContext(); m_behaviorContext = AZStd::make_unique(); @@ -46,7 +45,9 @@ class AWSCoreEditorSystemComponentTest m_entity = aznew AZ::Entity(); m_coreEditorSystemsComponent.reset(m_entity->CreateComponent()); + AZ_TEST_START_TRACE_SUPPRESSION; m_entity->Init(); + AZ_TEST_STOP_TRACE_SUPPRESSION(1); // expect the above have thrown an AZ_Error m_entity->Activate(); } diff --git a/Gems/AWSCore/Code/Tests/Editor/AWSCoreEditorManagerTest.cpp b/Gems/AWSCore/Code/Tests/Editor/AWSCoreEditorManagerTest.cpp index 007fef46df..84efabc0f6 100644 --- a/Gems/AWSCore/Code/Tests/Editor/AWSCoreEditorManagerTest.cpp +++ b/Gems/AWSCore/Code/Tests/Editor/AWSCoreEditorManagerTest.cpp @@ -27,8 +27,6 @@ class AWSCoreEditorManagerTest { AWSCoreEditorUIFixture::SetUp(); AWSCoreFixture::SetUp(); - - m_localFileIO->SetAlias("@engroot@", "dummy engine root"); } void TearDown() override @@ -40,6 +38,8 @@ class AWSCoreEditorManagerTest TEST_F(AWSCoreEditorManagerTest, AWSCoreEditorManager_Constructor_HaveExpectedUIResourcesCreated) { + AZ_TEST_START_TRACE_SUPPRESSION; AWSCoreEditorManager testManager; + AZ_TEST_STOP_TRACE_SUPPRESSION(1); // expect the above have thrown an AZ_Error EXPECT_TRUE(testManager.GetAWSCoreEditorMenu()); } diff --git a/Gems/AWSCore/Code/Tests/Editor/UI/AWSCoreEditorMenuTest.cpp b/Gems/AWSCore/Code/Tests/Editor/UI/AWSCoreEditorMenuTest.cpp index 01622a5a92..7a578d2bbe 100644 --- a/Gems/AWSCore/Code/Tests/Editor/UI/AWSCoreEditorMenuTest.cpp +++ b/Gems/AWSCore/Code/Tests/Editor/UI/AWSCoreEditorMenuTest.cpp @@ -35,8 +35,6 @@ class AWSCoreEditorMenuTest { AWSCoreEditorUIFixture::SetUp(); AWSCoreFixture::SetUp(); - - m_localFileIO->SetAlias("@engroot@", "dummy engine root"); } void TearDown() override @@ -48,7 +46,6 @@ class AWSCoreEditorMenuTest TEST_F(AWSCoreEditorMenuTest, AWSCoreEditorMenu_NoEngineRootFolder_ExpectOneError) { - m_localFileIO->ClearAlias("@engroot@"); AZ_TEST_START_TRACE_SUPPRESSION; AWSCoreEditorMenu testMenu("dummy title"); AZ_TEST_STOP_TRACE_SUPPRESSION(1); // expect the above have thrown an AZ_Error @@ -56,7 +53,9 @@ TEST_F(AWSCoreEditorMenuTest, AWSCoreEditorMenu_NoEngineRootFolder_ExpectOneErro TEST_F(AWSCoreEditorMenuTest, AWSCoreEditorMenu_GetAllActions_GetExpectedNumberOfActions) { + AZ_TEST_START_TRACE_SUPPRESSION; AWSCoreEditorMenu testMenu("dummy title"); + AZ_TEST_STOP_TRACE_SUPPRESSION(1); // expect the above have thrown an AZ_Error QList actualActions = testMenu.actions(); #ifdef AWSCORE_EDITOR_RESOURCE_MAPPING_TOOL_ENABLED @@ -68,7 +67,9 @@ TEST_F(AWSCoreEditorMenuTest, AWSCoreEditorMenu_GetAllActions_GetExpectedNumberO TEST_F(AWSCoreEditorMenuTest, AWSCoreEditorMenu_BroadcastFeatureGemsAreEnabled_CorrespondingActionsAreEnabled) { + AZ_TEST_START_TRACE_SUPPRESSION; AWSCoreEditorMenu testMenu("dummy title"); + AZ_TEST_STOP_TRACE_SUPPRESSION(1); // expect the above have thrown an AZ_Error AWSCoreEditorRequestBus::Broadcast(&AWSCoreEditorRequests::SetAWSClientAuthEnabled); AWSCoreEditorRequestBus::Broadcast(&AWSCoreEditorRequests::SetAWSMetricsEnabled); diff --git a/Gems/AWSCore/Code/Tests/Editor/UI/AWSCoreResourceMappingToolActionTest.cpp b/Gems/AWSCore/Code/Tests/Editor/UI/AWSCoreResourceMappingToolActionTest.cpp new file mode 100644 index 0000000000..7efe77bc01 --- /dev/null +++ b/Gems/AWSCore/Code/Tests/Editor/UI/AWSCoreResourceMappingToolActionTest.cpp @@ -0,0 +1,57 @@ +/* + * All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or + * its licensors. + * + * For complete copyright and license terms please see the LICENSE at the root of this + * distribution (the "License"). All use of this software is governed by the License, + * or, if provided, by the license below or the license accompanying this file. Do not + * remove or modify any license notices. This file is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * + */ + +#include + +#include +#include +#include + +#include + +using namespace AWSCore; + +class AWSCoreResourceMappingToolActionTest + : public AWSCoreFixture + , public AWSCoreEditorUIFixture +{ + void SetUp() override + { + AWSCoreEditorUIFixture::SetUp(); + AWSCoreFixture::SetUp(); + m_localFileIO->SetAlias("@engroot@", "dummy engine root"); + } + + void TearDown() override + { + AWSCoreFixture::TearDown(); + AWSCoreEditorUIFixture::TearDown(); + } +}; + +TEST_F(AWSCoreResourceMappingToolActionTest, AWSCoreResourceMappingToolAction_NoEngineRootFolder_ExpectOneError) +{ + m_localFileIO->ClearAlias("@engroot@"); + AZ_TEST_START_TRACE_SUPPRESSION; + AWSCoreResourceMappingToolAction testAction("dummy title"); + AZ_TEST_STOP_TRACE_SUPPRESSION(1); // expect the above have thrown an AZ_Error +} + +TEST_F(AWSCoreResourceMappingToolActionTest, AWSCoreResourceMappingToolAction_UnableToFindExpectedFileOrFolder_ExpectFiveErrorsAndEmptyResult) +{ + AZ_TEST_START_TRACE_SUPPRESSION; + AWSCoreResourceMappingToolAction testAction("dummy title"); + AZ_TEST_STOP_TRACE_SUPPRESSION_NO_COUNT; + EXPECT_TRUE(testAction.GetToolLaunchCommand() == ""); + EXPECT_TRUE(testAction.GetToolLogPath() == ""); + EXPECT_TRUE(testAction.GetToolReadMePath() == ""); +} diff --git a/Gems/AWSCore/Code/Tools/ResourceMappingTool/README.md b/Gems/AWSCore/Code/Tools/ResourceMappingTool/README.md index d90f78465b..78a8856288 100644 --- a/Gems/AWSCore/Code/Tools/ResourceMappingTool/README.md +++ b/Gems/AWSCore/Code/Tools/ResourceMappingTool/README.md @@ -3,45 +3,44 @@ ## Setup aws config and credential Resource mapping tool is using boto3 to interact with aws services: - * Follow boto3 + * Read boto3 [Configuration](https://boto3.amazonaws.com/v1/documentation/api/latest/guide/configuration.html) to setup default aws region. - * Follow boto3 + * Read boto3 [Credentials](https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html) to setup default profile or credential keys. Or follow **AWS CLI** configuration which can be reused by boto3 lib: * Follow [Quick configuration with aws configure](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html#cli-configure-quickstart-config) -**In Progress** - Override default aws profile in resource mapping tool - ## Python Environment Setup Options -### 1. Engine python environment -In order to use engine python environment, it requires to link Qt binaries for this tool. +### 1. Engine python environment (Including Editor) +1. In order to use engine python environment, it requires to link Qt binaries for this tool. Follow cmake instructions to configure your project, for example: + ``` + $ cmake -B -S . -G "Visual Studio 16 2019" -DLY_3RDPARTY_PATH= -DLY_PROJECTS= + ``` -``` -$ cmake -B -S . -G "Visual Studio 16 2019" -DLY_3RDPARTY_PATH= -DLY_PROJECTS= -``` +2. At this point, double check engine python environment gets setup under */python/runtime* directory -Build project with **AWSCore.Editor** target to generate required Qt binaries. -(Or use **Editor** target) +3. Build project with **AWSCore.Editor** (or **AWSCore.ResourceMappintTool**, or **Editor**) target to generate required Qt binaries. + ``` + $ cmake --build --target AWSCore.Editor --config -j + ``` -``` -$ cmake --build --target AWSCore.Editor --config -j -``` - -Launch resource mapping tool under engine root folder: - -#### Windows -##### release mode -``` -$ python\python.cmd Gems\AWSCore\Code\Tools\ResourceMappingTool\resource_mapping_tool.py --binaries_path \bin\profile\AWSCoreEditorPlugins -``` -##### debug mode -``` -$ python\python.cmd debug Gems\AWSCore\Code\Tools\ResourceMappingTool\resource_mapping_tool.py --binaries_path \bin\debug\AWSCoreEditorPlugins -``` +4. At this point, double check Qt binaries gets generated under */bin//AWSCoreEditorQtBin* directory +5. Launch resource mapping tool under engine root folder: + * Windows + * release mode + ``` + $ python\python.cmd Gems\AWSCore\Code\Tools\ResourceMappingTool\resource_mapping_tool.py --binaries_path \bin\profile\AWSCoreEditorQtBin + ``` + * debug mode + ``` + $ python\python.cmd debug Gems\AWSCore\Code\Tools\ResourceMappingTool\resource_mapping_tool.py --binaries_path \bin\debug\AWSCoreEditorQtBin + ``` +* Note - Editor is integrated with the same engine python environment to launch Resource Mapping Tool. If it is failed to launch the tool +in Editor, please follow above steps to make sure expected scripts/binaries are present. ### 2. Python virtual environment This project is set up like a standard Python project. The initialization @@ -51,47 +50,42 @@ directory. To create the virtualenv it assumes that there is a `python3` package. If for any reason the automatic creation of the virtualenv fails, you can create the virtualenv manually. -To manually create a virtualenv on MacOS and Linux: +1. To manually create a virtualenv: + * Windows + ``` + $ python -m venv .env + ``` + * Mac or Linux + ``` + $ python3 -m venv .env + ``` -``` -$ python -m venv .env -``` +2. Once the virtualenv is created, you can use the following step to activate your virtualenv: + * Windows + ``` + % .env\Scripts\activate.bat + ``` + * Mac or Linux + ``` + $ source .env/bin/activate + ``` -Once the virtualenv is created, you can use the following step to activate your virtualenv. +3. Once the virtualenv is activated, you can install the required dependencies: + * Windows + ``` + $ pip install -r requirements.txt + ``` + * Mac or Linux + ``` + $ pip3 install -r requirements.txt + ``` -``` -$ source .env/bin/activate -``` - -If you are a Windows platform, you would activate the virtualenv like this: - -``` -% .env\Scripts\activate.bat -``` - -Once the virtualenv is activated, you can install the required dependencies. - -``` -$ pip install -r requirements.txt -``` - -#### 2.1 Launch Options -##### 2.1.1 Launch Resource Mapping Tool from python directly -At this point you can launch tool like other standard python project. - -``` -$ python resource_mapping_tool.py -``` - -##### 2.1.2 Launch Resource Mapping Tool from batch script/Editor -Update `resource_mapping_tool.cmd` with your virtualenv full path. - - * **VIRTUALENV_PATH**: Fill this variable with your virtualenv full path. - -Then you can launch the resource mapping tool by running the batch script directly. - -``` -$ resource_mapping_tool.cmd -``` - -Or you can launch the resource mapping tool from menu action Cloud services/AWS Resource Mapping Tool... +4. At this point you can launch tool like other standard python project. + * Windows + ``` + $ python resource_mapping_tool.py + ``` + * Mac or Linux + ``` + $ python3 resource_mapping_tool.py + ``` diff --git a/Gems/AWSCore/Code/Tools/ResourceMappingTool/resource_mapping_tool.cmd b/Gems/AWSCore/Code/Tools/ResourceMappingTool/resource_mapping_tool.cmd deleted file mode 100644 index be2f308de7..0000000000 --- a/Gems/AWSCore/Code/Tools/ResourceMappingTool/resource_mapping_tool.cmd +++ /dev/null @@ -1,24 +0,0 @@ -@ECHO OFF -REM -REM All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -REM its licensors. -REM -REM For complete copyright and license terms please see the LICENSE at the root of this -REM distribution (the "License"). All use of this software is governed by the License, -REM or, if provided, by the license below or the license accompanying this file. Do not -REM remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -REM -REM Original file Copyright Crytek GMBH or its affiliates, used under license. -REM - -SETLOCAL -SET CMD_DIR=%~dp0 -SET CMD_DIR=%CMD_DIR:~0,-1% - -SET VIRTUALENV_PATH= -SET RESOURCE_MAPPING_DIR=%CMD_DIR% -SET LOCAL_PYTHONPATH=%VIRTUALENV_PATH%\Scripts\python.exe - -%LOCAL_PYTHONPATH% %RESOURCE_MAPPING_DIR%\resource_mapping_tool.py %* && exit 0 -exit 1 diff --git a/Gems/AWSCore/Code/Tools/ResourceMappingTool/resource_mapping_tool.py b/Gems/AWSCore/Code/Tools/ResourceMappingTool/resource_mapping_tool.py index b067105ce3..90e702b997 100755 --- a/Gems/AWSCore/Code/Tools/ResourceMappingTool/resource_mapping_tool.py +++ b/Gems/AWSCore/Code/Tools/ResourceMappingTool/resource_mapping_tool.py @@ -19,7 +19,7 @@ from utils import file_utils # arguments setup argument_parser: ArgumentParser = ArgumentParser() argument_parser.add_argument('--binaries_path', help='Path to QT Binaries necessary for PySide.') -argument_parser.add_argument('--debug', action='store_true', help='Execute on debug mode.') +argument_parser.add_argument('--debug', action='store_true', help='Execute on debug mode to enable DEBUG logging level') arguments: Namespace = argument_parser.parse_args() # logging setup diff --git a/Gems/AWSCore/Code/awscore_editor_files.cmake b/Gems/AWSCore/Code/awscore_editor_files.cmake index b8b9fbbc11..652f0455e1 100644 --- a/Gems/AWSCore/Code/awscore_editor_files.cmake +++ b/Gems/AWSCore/Code/awscore_editor_files.cmake @@ -13,7 +13,9 @@ set(FILES Include/Private/AWSCoreEditorSystemComponent.h Include/Private/Editor/AWSCoreEditorManager.h Include/Private/Editor/UI/AWSCoreEditorMenu.h + Include/Private/Editor/UI/AWSCoreResourceMappingToolAction.h Source/AWSCoreEditorSystemComponent.cpp Source/Editor/AWSCoreEditorManager.cpp Source/Editor/UI/AWSCoreEditorMenu.cpp + Source/Editor/UI/AWSCoreResourceMappingToolAction.cpp ) diff --git a/Gems/AWSCore/Code/awscore_editor_tests_files.cmake b/Gems/AWSCore/Code/awscore_editor_tests_files.cmake index 60852746fb..ff89b6b5bd 100644 --- a/Gems/AWSCore/Code/awscore_editor_tests_files.cmake +++ b/Gems/AWSCore/Code/awscore_editor_tests_files.cmake @@ -13,6 +13,7 @@ set(FILES Tests/AWSCoreEditorSystemComponentTest.cpp Tests/Editor/UI/AWSCoreEditorMenuTest.cpp Tests/Editor/UI/AWSCoreEditorUIFixture.h + Tests/Editor/UI/AWSCoreResourceMappingToolActionTest.cpp Tests/Editor/AWSCoreEditorManagerTest.cpp Tests/Editor/AWSCoreEditorTest.cpp ) diff --git a/Gems/AWSCore/Code/awscore_resourcemappingtool_files.cmake b/Gems/AWSCore/Code/awscore_resourcemappingtool_files.cmake new file mode 100644 index 0000000000..b67c50e955 --- /dev/null +++ b/Gems/AWSCore/Code/awscore_resourcemappingtool_files.cmake @@ -0,0 +1,15 @@ +# +# All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or +# its licensors. +# +# For complete copyright and license terms please see the LICENSE at the root of this +# distribution (the "License"). All use of this software is governed by the License, +# or, if provided, by the license below or the license accompanying this file. Do not +# remove or modify any license notices. This file is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# + +set(FILES + Include/Private/Editor/UI/AWSCoreResourceMappingToolAction.h + Source/Editor/UI/AWSCoreResourceMappingToolAction.cpp +) From e0f8066a974ccf8d2afe413b2bcc1e5792b89e93 Mon Sep 17 00:00:00 2001 From: Shirang Jia Date: Wed, 28 Apr 2021 12:11:15 -0700 Subject: [PATCH 46/54] Add AttachDate tag to EBS volume and add script to find/delete inactive EBS volumes (#380) Add AttachDate tag to EBS volume and add script to find/delete inactive EBS volumes --- .../build/bootstrap/incremental_build_util.py | 9 +- scripts/build/tools/delete_inactive_ebs.py | 99 +++++++++++++++++++ 2 files changed, 107 insertions(+), 1 deletion(-) create mode 100644 scripts/build/tools/delete_inactive_ebs.py diff --git a/scripts/build/bootstrap/incremental_build_util.py b/scripts/build/bootstrap/incremental_build_util.py index 28bb70955e..a331cf3bb8 100755 --- a/scripts/build/bootstrap/incremental_build_util.py +++ b/scripts/build/bootstrap/incremental_build_util.py @@ -303,7 +303,14 @@ def attach_volume(volume, volume_id, instance_id, timeout=DEFAULT_TIMEOUT): if (time.clock() - timeout_init) > timeout: print 'ERROR: Timeout reached trying to mount EBS' exit(1) - + volume.create_tags( + Tags=[ + { + 'Key': 'AttachDate', + 'Value': str(datetime.datetime.today().date()) + }, + ] + ) print 'Volume {} has been attached to instance {}'.format(volume_id, instance_id) diff --git a/scripts/build/tools/delete_inactive_ebs.py b/scripts/build/tools/delete_inactive_ebs.py new file mode 100644 index 0000000000..c3fde95863 --- /dev/null +++ b/scripts/build/tools/delete_inactive_ebs.py @@ -0,0 +1,99 @@ +# +# All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or +# its licensors. +# +# For complete copyright and license terms please see the LICENSE at the root of this +# distribution (the "License"). All use of this software is governed by the License, +# or, if provided, by the license below or the license accompanying this file. Do not +# remove or modify any license notices. This file is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# + +import boto3 +from datetime import datetime, timedelta +import logging +log = logging.getLogger(__name__) +log.setLevel(logging.INFO) + +ATTACH_DATE_TAG_NAME = 'AttachDate' +INACTIVE_DAY_THRESHOLD = 5 + + +def get_tag_values(tag_name): + """ + Call Resource Group Tagging API to get all values of a certain tag + :param tag_name: Tag name + :return: List of all values of the tag + """ + client = boto3.client('resourcegroupstaggingapi') + tag_values = [] + try: + response = client.get_tag_values( + Key=tag_name + ) + tag_values += response['TagValues'] + while response and response.get('PaginationToken', ''): + response = client.get_tag_values( + PaginationToken=response['PaginationToken'], + Key=tag_name + ) + tag_values += response['TagValues'] + return tag_values + except Exception as e: + log.error(f'Failed to get tag values for {tag_name}.') + log.error(e) + return [] + + +def delete_volumes(inactive_dates): + """ + Find and delete all EBS volumes that have AttachDate tag value in inactive_dates + :param inactive_dates: List of String that considered as inactive dates, for example, ["2021-04-27", "2021-04-26"] + :return: Number of EBS volumes that are deleted successfully, number of EBS volumes that are not deleted. + """ + success = 0 + failure = 0 + ec2_client = boto3.resource('ec2') + response = ec2_client.volumes.filter(Filters=[ + { + 'Name': f'tag:{ATTACH_DATE_TAG_NAME}', + 'Values': inactive_dates + }, + { + 'Name': 'status', + 'Values': ['available'] + }, + ]) + log.info(f'Deleting inactive EBS volumes that haven\'t been used for {INACTIVE_DAY_THRESHOLD} days...') + for volume in response: + if volume.attachments: + # Double check if volume has an attachment in case the volume is being used. + continue + try: + log.info(f'Deleting volume {volume.volume_id}') + volume.delete() + success += 1 + except Exception as e: + log.error(f'Failed to delete volume {volume.volume_id}.') + log.error(e) + failure += 1 + return success, failure + + +def main(): + tag_values = get_tag_values(ATTACH_DATE_TAG_NAME) + date_today = datetime.today().date() + # Exclude dates of last {INACTIVE_DAY_THRESHOLD} days from tag values, the rest values are considered as inactive dates. + dates_to_exclude = [] + for i in range(INACTIVE_DAY_THRESHOLD): + dates_to_exclude.append(str(date_today - timedelta(i))) + inactive_dates = set(tag_values).difference(dates_to_exclude) + if inactive_dates: + success, failure = delete_volumes(list(inactive_dates)) + log.info(f'{success} EBS volumes are deleted successfully.') + if failure: + log.info(f'{failure} EBS volumes are not deleted due to errors. See logs for more information.') + + +if __name__ == "__main__": + main() From 6947e8fe29c229fe6fba263d510c8d4fffa0b812 Mon Sep 17 00:00:00 2001 From: srikappa Date: Wed, 28 Apr 2021 12:14:55 -0700 Subject: [PATCH 47/54] Added an IsObject check for nested instance DOM during link creation that happens during prefab loading --- .../AzToolsFramework/Prefab/PrefabSystemComponent.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/PrefabSystemComponent.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/PrefabSystemComponent.cpp index c697be437b..3f660bb73b 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/PrefabSystemComponent.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/PrefabSystemComponent.cpp @@ -782,7 +782,7 @@ namespace AzToolsFramework link.SetInstanceName(instanceName.data()); PrefabDomValue& instance = instanceIterator->value; - + AZ_Assert(instance.IsObject(), "Nested instance DOM provided is not a valid JSON object."); PrefabDomValueReference sourceTemplateName = PrefabDomUtils::FindPrefabDomValue(instance, PrefabDomUtils::SourceName); AZ_Assert(sourceTemplateName, "Couldn't find source template name in the DOM of the nested instance while creating a link."); AZ_Assert( From 01f9d7bdc1b12da31908ac9461cf95a6341cefe9 Mon Sep 17 00:00:00 2001 From: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com> Date: Wed, 28 Apr 2021 13:33:37 -0700 Subject: [PATCH 48/54] SPEC-6565 Cleanup paths to Tools/Python --- .../sounds/wwise_project/Helios.wproj | 13159 ---------------- CMakeLists.txt | 2 +- .../WwiseATLGen/generate_atl_data.wcmdline | 2 +- ...copy_output_and_generate_metadata.wcmdline | 2 +- cmake/Platform/Android/PAL_android.cmake | 4 +- cmake/Platform/Linux/PAL_linux.cmake | 2 +- cmake/Platform/Mac/PAL_mac.cmake | 2 +- cmake/Platform/Windows/PAL_windows.cmake | 2 +- cmake/Platform/iOS/PAL_ios.cmake | 2 +- 9 files changed, 9 insertions(+), 13168 deletions(-) delete mode 100644 AutomatedTesting/sounds/wwise_project/Helios.wproj diff --git a/AutomatedTesting/sounds/wwise_project/Helios.wproj b/AutomatedTesting/sounds/wwise_project/Helios.wproj deleted file mode 100644 index 3db6efcfdf..0000000000 --- a/AutomatedTesting/sounds/wwise_project/Helios.wproj +++ /dev/null @@ -1,13159 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - GeneratedSoundBanks\Windows - - - - - 256 - - - - - - ..\wwise\ - - - - - Copy Streamed Files and Generate Dependency Info - - - - - "$(WwiseExePath)\CopyStreamedFiles.exe" -info "$(InfoFilePath)" -outputpath "$(SoundBankPath)" -banks "$(SoundBankListAsTextFile)" -languages "$(LanguageList)" -"$(WwiseProjectPath)\..\..\..\Tools\Python\python3.cmd" "$(WwiseProjectPath)\..\..\..\Gems\AudioEngineWwise\Tools\WwiseAuthoringScripts\bank_info_parser.py" "$(InfoFilePath)" "$(SoundBankPath)" - - - - - - - - - - - - - - - -80 - - - - - - - - - - - - - - 0 - - - - - 0 - - - - - 1 - - - - - 0 - - - - - 1 - - - - - 0 - - - - - 8 - - - - - 0 - - - - - -1 - - - - - -1 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - -1 - - - - - -1 - - - - - 0 - - - - - - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - True - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 12 - - - - - False - - - - - 20 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - True - - - - - 0 - - - - - 0 - - - - - False - - - - - True - - - - - False - - - - - False - - - - - False - - - - - False - - - - - True - - - - - 2 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 50 - - - - - False - - - - - 65535 - - - - - 127 - - - - - 0 - - - - - 1 - - - - - 60 - - - - - 0 - - - - - 127 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 100 - - - - - 50 - - - - - False - - - - - -10 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 100 - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 1 - - - - - 0 - - - - - 50 - - - - - - - - - 1 - - - - - - - - - 0 - - - - - True - - - - - False - - - - - - - - - 0 - - - - - 10000 - - - - - 1 - - - - - 400 - - - - - 1 - - - - - 1 - - - - - 0.5 - - - - - 0 - - - - - -96 - - - - - 0 - - - - - True - - - - - False - - - - - 0 - - - - - 0 - - - - - 16 - - - - - -96 - - - - - 0 - - - - - 48000 - - - - - 0 - - - - - - - - - 16 - - - - - False - - - - - 1 - - - - - 75 - - - - - - - - - False - - - - - 512 - - - - - -50 - - - - - -30 - - - - - -40 - - - - - 0 - - - - - 24024 - - - - - 0 - - - - - 8 - - - - - English(US) - - - - - 0 - - - - - 0 - - - - - False - - - - - - - - - - - - - - - 1 - - - - - True - - - - - False - - - - - False - - - - - True - - - - - 256 - - - - - - - - - - 50 - - - - - 100 - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - True - - - - - False - - - - - False - - - - - False - - - - - False - - - - - - - - - - True - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - False - - - - - True - - - - - True - - - - - True - - - - - True - - - - - -80 - - - - - - - - - - - - - - 0 - - - - - 0 - - - - - 100 - - - - - 0 - - - - - 5 - - - - - 0.5 - - - - - 0 - - - - - 0 - - - - - 100 - - - - - 0 - - - - - 5 - - - - - 0.5 - - - - - 0 - - - - - True - - - - - False - - - - - - - - - 64 - - - - - 1.5 - - - - - 2 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - 64 - - - - - 64 - - - - - 4 - - - - - 0 - - - - - 0.1 - - - - - 4 - - - - - - - - - 0 - - - - - False - - - - - - - - - 0 - - - - - 0 - - - - - 100 - - - - - 20 - - - - - 10000 - - - - - 0.2 - - - - - True - - - - - 80 - - - - - 0.2 - - - - - False - - - - - 200 - - - - - 0.25 - - - - - 0 - - - - - - - - - 0 - - - - - 0 - - - - - True - - - - - True - - - - - True - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 4 - - - - - 4 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - True - - - - - 0 - - - - - False - - - - - True - - - - - 0 - - - - - 100 - - - - - True - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - 0 - - - - - 0 - - - - - - - - - 0 - - - - - 0 - - - - - 10 - - - - - 1 - - - - - 200 - - - - - 0 - - - - - 0 - - - - - 10 - - - - - 1 - - - - - 200 - - - - - 0 - - - - - True - - - - - False - - - - - - - - - 0 - - - - - False - - - - - - - - - 0 - - - - - 40 - - - - - 0 - - - - - 1000 - - - - - 160 - - - - - 0 - - - - - 0.5 - - - - - 0.2 - - - - - 0 - - - - - 0.5 - - - - - 0.2 - - - - - 0 - - - - - 0 - - - - - 1000 - - - - - 0 - - - - - 1000 - - - - - 0 - - - - - 0.2 - - - - - 0 - - - - - 0.2 - - - - - 0.2 - - - - - 3000 - - - - - 0.2 - - - - - 0 - - - - - 6 - - - - - 15000 - - - - - 0 - - - - - 1000 - - - - - 20000 - - - - - 0 - - - - - 0.5 - - - - - 0.2 - - - - - 0 - - - - - 0.5 - - - - - 0.2 - - - - - 0 - - - - - 1 - - - - - True - - - - - False - - - - - - - - - 0 - - - - - 1 - - - - - False - - - - - - - - - 1 - - - - - 0 - - - - - True - - - - - 0 - - - - - 1 - - - - - 0 - - - - - 100 - - - - - 0 - - - - - False - - - - - 3 - - - - - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - True - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 12 - - - - - False - - - - - 20 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - True - - - - - 0 - - - - - True - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 50 - - - - - False - - - - - 65535 - - - - - 127 - - - - - 0 - - - - - 1 - - - - - 60 - - - - - 0 - - - - - 127 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 50 - - - - - False - - - - - -10 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 100 - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 1 - - - - - 0 - - - - - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - True - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 1 - - - - - 12 - - - - - False - - - - - 20 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - True - - - - - 0 - - - - - 0 - - - - - True - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 50 - - - - - False - - - - - 65535 - - - - - 127 - - - - - 0 - - - - - 1 - - - - - 60 - - - - - 0 - - - - - 127 - - - - - 0 - - - - - 0 - - - - - 1 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 1 - - - - - False - - - - - 2 - - - - - True - - - - - False - - - - - 0 - - - - - 1 - - - - - 1 - - - - - 50 - - - - - False - - - - - -10 - - - - - True - - - - - 1 - - - - - 1 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 1 - - - - - 0 - - - - - 100 - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 1 - - - - - 0 - - - - - 50 - - - - - - - - - 0 - - - - - 0 - - - - - 100 - - - - - 0 - - - - - 5 - - - - - 0.5 - - - - - 0 - - - - - 0 - - - - - 100 - - - - - 0 - - - - - 5 - - - - - 0.5 - - - - - 0 - - - - - 0 - - - - - 100 - - - - - 0 - - - - - 5 - - - - - 0.5 - - - - - 0 - - - - - 0 - - - - - 100 - - - - - 0 - - - - - 5 - - - - - 0.5 - - - - - 0 - - - - - 0 - - - - - 100 - - - - - 0 - - - - - 5 - - - - - 0.5 - - - - - 0 - - - - - 0 - - - - - 100 - - - - - 0 - - - - - 5 - - - - - 0.5 - - - - - 0 - - - - - True - - - - - 5000 - - - - - 10000 - - - - - False - - - - - - - - - False - - - - - 0 - - - - - 3 - - - - - 9 - - - - - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - True - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 12 - - - - - False - - - - - 20 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - True - - - - - 0 - - - - - 0 - - - - - True - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 50 - - - - - False - - - - - 65535 - - - - - 127 - - - - - 0 - - - - - 1 - - - - - 60 - - - - - 0 - - - - - 127 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 50 - - - - - False - - - - - -10 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 100 - - - - - 0 - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 1 - - - - - 0 - - - - - 50 - - - - - - - - - 1000 - - - - - 5000 - - - - - 0 - - - - - True - - - - - 0 - - - - - 0 - - - - - 0 - - - - - - - - - 96 - - - - - -100 - - - - - -100 - - - - - -100 - - - - - False - - - - - False - - - - - - - - - False - - - - - 0 - - - - - 35 - - - - - 0 - - - - - True - - - - - 0 - - - - - 1 - - - - - 1 - - - - - True - - - - - - - - - 0 - - - - - - - - - False - - - - - 0 - - - - - 0 - - - - - - - - - 0 - - - - - 3 - - - - - 9 - - - - - - - - - 0 - - - - - True - - - - - False - - - - - - - - - 0 - - - - - False - - - - - 0 - - - - - False - - - - - - - - - 3 - - - - - 64 - - - - - - - - - 0 - - - - - False - - - - - False - - - - - - - - - 3 - - - - - 64 - - - - - - - - - 0 - - - - - False - - - - - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 100 - - - - - 0 - - - - - True - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - 100 - - - - - 0 - - - - - 100 - - - - - 0 - - - - - 1 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - -96 - - - - - 0 - - - - - 50 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - 0 - - - - - 1 - - - - - 0 - - - - - 0 - - - - - 100 - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - - - - - 0 - - - - - False - - - - - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 50 - - - - - 100 - - - - - 0 - - - - - False - - - - - 0 - - - - - 50 - - - - - 50 - - - - - 50 - - - - - - - - - False - - - - - 0 - - - - - 0 - - - - - False - - - - - 0 - - - - - - - - - 0 - - - - - True - - - - - False - - - - - - - - - 0 - - - - - False - - - - - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - True - - - - - False - - - - - False - - - - - 4000 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 50 - - - - - 0 - - - - - 0 - - - - - 12 - - - - - False - - - - - 20 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - True - - - - - 0 - - - - - True - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 50 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 1 - - - - - 50 - - - - - False - - - - - -10 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 100 - - - - - 120 - - - - - 4 - - - - - 4 - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 1 - - - - - 0 - - - - - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - True - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 12 - - - - - False - - - - - 20 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - True - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - True - - - - - 100 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 50 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 100 - - - - - 50 - - - - - False - - - - - -10 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 100 - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 1 - - - - - 0 - - - - - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - True - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 12 - - - - - False - - - - - 20 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - True - - - - - 0 - - - - - 0 - - - - - True - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 50 - - - - - False - - - - - 65535 - - - - - 127 - - - - - 0 - - - - - 1 - - - - - 60 - - - - - 0 - - - - - 127 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 50 - - - - - False - - - - - -10 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 100 - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 1 - - - - - 0 - - - - - 50 - - - - - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - 1 - - - - - - - - - - - - - - 0 - - - - - - - - - - 0 - - - - - 0 - - - - - - - - - - - - - - - - - - - - 0 - - - - - - - - - - True - - - - - False - - - - - False - - - - - True - - - - - True - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - - - - - - 0 - - - - - - - - - - - - - - - - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - - - - - - -1 - - - - - 0 - - - - - -1 - - - - - - - - - - - - - - - - - - - - - - - - - 0 - - - - - - - - - - 0 - - - - - - - - - - 0 - - - - - - - - - - 0 - - - - - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - True - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 50 - - - - - 0 - - - - - 0 - - - - - 12 - - - - - False - - - - - 20 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - True - - - - - 0 - - - - - True - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 50 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 1 - - - - - 50 - - - - - False - - - - - -10 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 100 - - - - - 120 - - - - - 4 - - - - - 4 - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 1 - - - - - 0 - - - - - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - True - - - - - True - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 50 - - - - - 0 - - - - - 0 - - - - - 12 - - - - - False - - - - - 20 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - True - - - - - 0 - - - - - True - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 50 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 1 - - - - - 50 - - - - - False - - - - - -10 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 100 - - - - - 120 - - - - - 4 - - - - - 4 - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 1 - - - - - 0 - - - - - - - - - 0 - - - - - 1 - - - - - 1 - - - - - False - - - - - 0 - - - - - 0 - - - - - 1 - - - - - 50 - - - - - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 7 - - - - - - - - - - False - - - - - 1 - - - - - - - - - - False - - - - - True - - - - - True - - - - - True - - - - - True - - - - - 0 - - - - - False - - - - - - - - - 0 - - - - - - - - - - 0 - - - - - 1 - - - - - False - - - - - 0 - - - - - - - - - 4 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - - - - - 0 - - - - - False - - - - - - - - - 0 - - - - - -6 - - - - - 0 - - - - - 90 - - - - - 0 - - - - - 245 - - - - - False - - - - - False - - - - - 100 - - - - - - - - - 0 - - - - - 0 - - - - - - - - - 0 - - - - - 0 - - - - - False - - - - - 100 - - - - - - - - - True - - - - - 0 - - - - - 0 - - - - - False - - - - - 0 - - - - - False - - - - - - - - - - - - - - - False - - - - - False - - - - - True - - - - - False - - - - - False - - - - - True - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - True - - - - - False - - - - - False - - - - - False - - - - - False - - - - - - - - - - True - - - - - False - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - False - - - - - True - - - - - - - - - 0 - - - - - False - - - - - - - - - - - - - - - - - - True - - - - - 4 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - - - - - 0 - - - - - False - - - - - - - - - - 0 - - - - - False - - - - - - - - - 0 - - - - - 0 - - - - - False - - - - - 0 - - - - - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 1 - - - - - 1 - - - - - 0 - - - - - 1 - - - - - 8 - - - - - 0 - - - - - 0 - - - - - False - - - - - 0 - - - - - 0 - - - - - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - False - - - - - False - - - - - 100 - - - - - 0 - - - - - True - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 100 - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - 0 - - - - - - - - - 0 - - - - - - - - - 0 - - - - - 0 - - - - - 100 - - - - - 1 - - - - - 0 - - - - - 50 - - - - - 0 - - - - - 0 - - - - - 1 - - - - - False - - - - - - - - - 0 - - - - - 50 - - - - - 0.2 - - - - - False - - - - - 0.2 - - - - - 0.5 - - - - - True - - - - - 100 - - - - - 0 - - - - - 1 - - - - - 1 - - - - - False - - - - - - - - - 0 - - - - - False - - - - - - - - - 0 - - - - - - - - - - 1 - - - - - False - - - - - 0 - - - - - - - - - - 0 - - - - - - - - - 0 - - - - - 0 - - - - - - - - - - 1 - - - - - False - - - - - 0 - - - - - - - - - - 0 - - - - - - - - - - 0 - - - - - True - - - - - False - - - - - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - 0 - - - - - - - - - 0 - - - - - - - - - 0 - - - - - False - - - - - - - - - 0 - - - - - - - - - 0 - - - - - True - - - - - 1 - - - - - 1 - - - - - False - - - - - 1 - - - - - 0 - - - - - 1 - - - - - 1 - - - - - - - - - - 4 - - - - - 1 - - - - - 440 - - - - - -12 - - - - - - - - - 0 - - - - - True - - - - - False - - - - - - - - - 1 - - - - - 0 - - - - - 0 - - - - - - - - - 0 - - - - - 4 - - - - - 0 - - - - - 0 - - - - - 1 - - - - - 0 - - - - - 1000 - - - - - 0 - - - - - 0 - - - - - 1000 - - - - - 0 - - - - - 0 - - - - - -12 - - - - - 1 - - - - - False - - - - - 0 - - - - - -12 - - - - - 0 - - - - - - - - - 0 - - - - - 0 - - - - - True - - - - - 0 - - - - - 0 - - - - - False - - - - - 10 - - - - - 0 - - - - - - - - - 0 - - - - - 4 - - - - - 6 - - - - - 5 - - - - - 100 - - - - - 1000 - - - - - 12000 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - True - - - - - True - - - - - True - - - - - True - - - - - 0 - - - - - False - - - - - True - - - - - 1 - - - - - 1 - - - - - 1 - - - - - - - - - 0 - - - - - 0.5 - - - - - 15 - - - - - True - - - - - True - - - - - 0 - - - - - False - - - - - True - - - - - 25 - - - - - - - - - 0.1 - - - - - True - - - - - 0 - - - - - True - - - - - 0 - - - - - False - - - - - True - - - - - 1.5 - - - - - 0.1 - - - - - 0 - - - - - - - - - 0.1 - - - - - True - - - - - 0 - - - - - True - - - - - 0 - - - - - False - - - - - True - - - - - 3 - - - - - 0.01 - - - - - -40 - - - - - - - - - True - - - - - 0 - - - - - True - - - - - 0.01 - - - - - 0 - - - - - False - - - - - True - - - - - 10 - - - - - 0.1 - - - - - 0 - - - - - - - - - 100 - - - - - 0 - - - - - 0 - - - - - True - - - - - 0 - - - - - 0 - - - - - 0 - - - - - True - - - - - 1 - - - - - 1000 - - - - - 0 - - - - - 0 - - - - - True - - - - - 40 - - - - - 0 - - - - - 0 - - - - - 18000 - - - - - 0 - - - - - 0 - - - - - 1 - - - - - True - - - - - 10 - - - - - 0 - - - - - 100 - - - - - -40 - - - - - True - - - - - 0 - - - - - 0 - - - - - 0 - - - - - True - - - - - 0 - - - - - True - - - - - 40 - - - - - 18000 - - - - - -96 - - - - - -20 - - - - - 20 - - - - - 0 - - - - - 0 - - - - - False - - - - - True - - - - - 100 - - - - - 0 - - - - - - - - - 0 - - - - - 0 - - - - - 13.62 - - - - - 26.09 - - - - - 26.55 - - - - - 26.91 - - - - - 28.04 - - - - - 29.09 - - - - - 29.9 - - - - - 30.86 - - - - - 15.66 - - - - - 17.52 - - - - - 19.02 - - - - - 20.83 - - - - - 22.6 - - - - - 24.05 - - - - - 24.78 - - - - - 25.6 - - - - - -96.3 - - - - - 2 - - - - - True - - - - - 8 - - - - - False - - - - - 0 - - - - - True - - - - - 4 - - - - - -35 - - - - - - - - - 0 - - - - - 0 - - - - - True - - - - - 0 - - - - - 0 - - - - - 0 - - - - - True - - - - - True - - - - - 0 - - - - - True - - - - - 100 - - - - - 0 - - - - - False - - - - - -96.3 - - - - - - - - - 0 - - - - - 0 - - - - - 40 - - - - - 1.2 - - - - - 80 - - - - - 50 - - - - - 8 - - - - - 2 - - - - - 100 - - - - - 15 - - - - - 5 - - - - - 66 - - - - - -96.3 - - - - - 0 - - - - - -20 - - - - - 23 - - - - - True - - - - - False - - - - - 0 - - - - - 100 - - - - - 0 - - - - - 3 - - - - - 1 - - - - - 1 - - - - - 1000 - - - - - 0 - - - - - 3 - - - - - 1 - - - - - 2 - - - - - 10000 - - - - - 0 - - - - - 3 - - - - - 1 - - - - - 0 - - - - - 2.25 - - - - - True - - - - - 0 - - - - - -96.3 - - - - - -96.3 - - - - - False - - - - - 25 - - - - - 8 - - - - - 0 - - - - - -20 - - - - - 100 - - - - - 50 - - - - - 100 - - - - - 0.8 - - - - - 0.1 - - - - - 0 - - - - - 180 - - - - - - - - - 1 - - - - - 0 - - - - - False - - - - - 0 - - - - - 1 - - - - - 0 - - - - - False - - - - - 0 - - - - - 10 - - - - - 0 - - - - - 0 - - - - - False - - - - - 0 - - - - - 0 - - - - - False - - - - - 0 - - - - - 0.5 - - - - - False - - - - - 0 - - - - - 10 - - - - - 5 - - - - - 1 - - - - - 0 - - - - - False - - - - - 0 - - - - - 0.25 - - - - - False - - - - - 0 - - - - - 0.5 - - - - - - - - - 1 - - - - - 1 - - - - - True - - - - - 0.5 - - - - - 0 - - - - - 0 - - - - - False - - - - - 0 - - - - - 0 - - - - - False - - - - - 0 - - - - - 10 - - - - - 0 - - - - - 1 - - - - - 1 - - - - - 0 - - - - - False - - - - - 0 - - - - - 0 - - - - - False - - - - - 10 - - - - - 0.5 - - - - - 0 - - - - - 1 - - - - - - - - - 440 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 10 - - - - - - - - - False - - - - - 440 - - - - - 0 - - - - - 10 - - - - - 1 - - - - - - - - - 0 - - - - - 5 - - - - - 1 - - - - - True - - - - - 0 - - - - - 1 - - - - - True - - - - - 50 - - - - - 1 - - - - - 50 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - False - - - - - 100 - - - - - - - - - 0 - - - - - 50 - - - - - 50 - - - - - 0 - - - - - True - - - - - 0 - - - - - False - - - - - False - - - - - 0 - - - - - 1000 - - - - - 0 - - - - - 1 - - - - - False - - - - - 0 - - - - - 1000 - - - - - 0 - - - - - 1 - - - - - False - - - - - 0 - - - - - 1000 - - - - - 0 - - - - - 1 - - - - - False - - - - - 0 - - - - - 1000 - - - - - 0 - - - - - 1 - - - - - False - - - - - 0 - - - - - 1000 - - - - - 0 - - - - - 1 - - - - - False - - - - - 0 - - - - - 1000 - - - - - 0 - - - - - 1 - - - - - 0 - - - - - 100 - - - - - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - -96.3 - - - - - 0 - - - - - 0 - - - - - False - - - - - 4 - - - - - 0 - - - - - 100 - - - - - 0 - - - - - 0 - - - - - -75 - - - - - False - - - - - False - - - - - 6 - - - - - 0 - - - - - 0 - - - - - True - - - - - 100 - - - - - True - - - - - 0 - - - - - -96.3 - - - - - 0 - - - - - -60 - - - - - -96.3 - - - - - False - - - - - 0 - - - - - 0 - - - - - 1024 - - - - - 48000 - - - - - 48000 - - - - - 48000 - - - - - 180 - - - - - 0 - - - - - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - True - - - - - 0 - - - - - 0 - - - - - 0 - - - - - -48 - - - - - False - - - - - 0.1 - - - - - - - - - 0 - - - - - True - - - - - 0 - - - - - False - - - - - 100 - - - - - 0 - - - - - 2048 - - - - - - - - - 0 - - - - - True - - - - - 100 - - - - - 1 - - - - - 50 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - True - - - - - True - - - - - - - - - 1 - - - - - False - - - - - Recorder.wav - - - - - -3 - - - - - 0 - - - - - True - - - - - 0 - - - - - 0 - - - - - - - - - - True - - - - - -96.3 - - - - - False - - - - - -3 - - - - - -3 - - - - - - - - - 0 - - - - - 0 - - - - - False - - - - - False - - - - - 1000 - - - - - 0 - - - - - 1 - - - - - 0 - - - - - -100 - - - - - True - - - - - -12 - - - - - 0.1 - - - - - -12 - - - - - 0 - - - - - False - - - - - -12 - - - - - 0.1 - - - - - -12 - - - - - 0 - - - - - 0 - - - - - - - - - 0 - - - - - 50 - - - - - -96 - - - - - 1000 - - - - - 0 - - - - - 1 - - - - - 0 - - - - - True - - - - - 0 - - - - - False - - - - - 0 - - - - - False - - - - - False - - - - - 0 - - - - - - - - - 0 - - - - - 0 - - - - - True - - - - - 0 - - - - - False - - - - - False - - - - - True - - - - - True - - - - - 1000 - - - - - 0 - - - - - 1 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - 1000 - - - - - 0 - - - - - 1 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 1024 - - - - - - - - - 0 - - - - - 0 - - - - - True - - - - - 0 - - - - - False - - - - - - - - - 1000 - - - - - 0 - - - - - 0 - - - - - -96 - - - - - 0 - - - - - 0 - - - - - False - - - - - -6 - - - - - 50 - - - - - 0 - - - - - 0 - - - - - False - - - - - -6 - - - - - 50 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - True - - - - - - - - - False - - - - - False - - - - - - - - - 1 - - - - - 0 - - - - - 0 - - - - - True - - - - - False - - - - - - - - - 0 - - - - - True - - - - - False - - - - - - - - - 250 - - - - - 100 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - -96 - - - - - 3 - - - - - True - - - - - 1000 - - - - - 0 - - - - - 0 - - - - - False - - - - - 0.5 - - - - - 0 - - - - - 2400 - - - - - 345 - - - - - 0 - - - - - 0 - - - - - - - - - 0 - - - - - True - - - - - False - - - - - - - - - 1 - - - - - - - - - 0 - - - - - True - - - - - False - - - - - - - - - 0 - - - - - False - - - - - True - - - - - False - - - - - - - - - 0 - - - - - True - - - - - False - - - - - - - - - 0 - - - - - True - - - - - False - - - - - - - - - 0 - - - - - True - - - - - False - - - - - - - - - 0 - - - - - True - - - - - False - - - - - - - - - 0 - - - - - True - - - - - False - - - - - - - - - 100 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 10 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 1000 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 1 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 20000 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0.707 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 1 - - - - - 1 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 1000 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 256 - - - - - False - - - - - 100 - - - - - 100 - - - - - 100 - - - - - 100 - - - - - 1000 - - - - - 1000 - - - - - 1000 - - - - - 1000 - - - - - 20000 - - - - - 20000 - - - - - 20000 - - - - - 20000 - - - - - 1 - - - - - 1 - - - - - 0 - - - - - 0 - - - - - 5 - - - - - 5 - - - - - 9 - - - - - 9 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 16641 - - - - - 0 - - - - - 0 - - - - - False - - - - - 10 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 1 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 60 - - - - - 1 - - - - - - - - - - - - - - 0 - - - - - - - - - - - - - - - 0 - - - - - - - - - - - - - - 0 - - - - - True - - - - - False - - - - - 0.01 - - - - - True - - - - - 0 - - - - - 0 - - - - - 1 - - - - - 0.1 - - - - - 0 - - - - - 0.01 - - - - - True - - - - - 0 - - - - - 0 - - - - - 1 - - - - - 0.1 - - - - - 0 - - - - - 0.01 - - - - - True - - - - - 0 - - - - - 0 - - - - - 1 - - - - - 0.1 - - - - - 0 - - - - - 0.01 - - - - - True - - - - - 0 - - - - - 0 - - - - - 1 - - - - - 0.1 - - - - - 0 - - - - - 150 - - - - - 1000 - - - - - 6000 - - - - - 0 - - - - - False - - - - - 0 - - - - - 4 - - - - - 0 - - - - - False - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - True - - - - - True - - - - - True - - - - - True - - - - - True - - - - - 5 - - - - - 100 - - - - - 0 - - - - - 1 - - - - - True - - - - - 3 - - - - - 200 - - - - - 0 - - - - - 1 - - - - - True - - - - - 3 - - - - - 500 - - - - - 0 - - - - - 1 - - - - - True - - - - - 4 - - - - - 1000 - - - - - 0 - - - - - 1 - - - - - False - - - - - 3 - - - - - 3000 - - - - - 0 - - - - - 1 - - - - - False - - - - - 3 - - - - - 6000 - - - - - 0 - - - - - 1 - - - - - 4 - - - - - - - - - -12 - - - - - - - - - 0 - - - - - True - - - - - False - - - - - - - - - False - - - - - - - - - 1 - - - - - 0 - - - - - - - - - 0 - - - - - 0 - - - - - 1 - - - - - 0 - - - - - 1 - - - - - 1 - - - - - 0 - - - - - -12 - - - - - 1 - - - - - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 6 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - - - - - 1 - - - - - 1 - - - - - 1 - - - - - 0 - - - - - - - - - - 0 - - - - - 0 - - - - - - - - - 0.6 - - - - - 0.6 - - - - - 0.5 - - - - - 0.3 - - - - - 0.05 - - - - - 0.25 - - - - - 0.02 - - - - - 1.5 - - - - - 0.2 - - - - - 0.3 - - - - - True - - - - - 0.2 - - - - - 8 - - - - - 0.2 - - - - - 12 - - - - - - - - - 20 - - - - - 0.7 - - - - - 100 - - - - - 0.1 - - - - - 1 - - - - - 1 - - - - - True - - - - - 1 - - - - - 0 - - - - - 3 - - - - - 1 - - - - - - - - - 2 - - - - - 0.7 - - - - - 1 - - - - - 0 - - - - - 1 - - - - - 0.9 - - - - - 0.1 - - - - - 3 - - - - - - - - - 0 - - - - - True - - - - - False - - - - - - - - - 0 - - - - - False - - - - - False - - - - - True - - - - - 0 - - - - - 0 - - - - - - - - - - 0 - - - - - 0 - - - - - 0 - - - - - 0 - - - - - False - - - - - 2 - - - - - False - - - - - - - - - - - - - - - 1 - - - - - - - - - - - - - - 0 - - - - - - - - - False - - - - - 0 - - - - - 0 - - - - - 1.4 - - - - - -6 - - - - - True - - - - - 0 - - - - - 0 - - - - - False - - - - - True - - - - - 0.5 - - - - - 10000 - - - - - -6 - - - - - 7 - - - - - 1 - - - - - 1 - - - - - 7.25 - - - - - 2.75 - - - - - 3.25 - - - - - 4.25 - - - - - 4.75 - - - - - 3.75 - - - - - - - - - 100 - - - - - 50 - - - - - - - - - - - - - - - - - 0 - 0 - 5 - - - 100 - -200 - 37 - - - - - - - - - - - - - - 0 - 0 - 5 - - - 100 - 100 - 37 - - - - - - - - - - - - - - 0 - 0 - 5 - - - 100 - 100 - 37 - - - - - - - - - - - - - - 0 - 0 - 5 - - - 100 - -200 - 37 - - - - - - - - - - - - - - 0 - 0 - 5 - - - 100 - 100 - 37 - - - - - - - - - - - - - - 0 - 0 - 5 - - - 100 - 100 - 37 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/CMakeLists.txt b/CMakeLists.txt index ad5cd9f431..cefbcf2ef4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -9,7 +9,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # -# Cmake version 3.17 is the minimum version needed for all of Open 3D Engine's supported platforms +# Cmake version 3.19 is the minimum version needed for all of Open 3D Engine's supported platforms cmake_minimum_required(VERSION 3.19) # CMP0111 introduced in 3.19 has a bug that produces the policy to warn every time there is an diff --git a/Gems/AudioEngineWwise/Tools/WwiseATLGen/generate_atl_data.wcmdline b/Gems/AudioEngineWwise/Tools/WwiseATLGen/generate_atl_data.wcmdline index b4444e5d98..9e4f33ad7a 100644 --- a/Gems/AudioEngineWwise/Tools/WwiseATLGen/generate_atl_data.wcmdline +++ b/Gems/AudioEngineWwise/Tools/WwiseATLGen/generate_atl_data.wcmdline @@ -1,2 +1,2 @@ -"$(WwiseProjectPath)\..\..\..\Tools\Python\python3.cmd" "$(WwiseProjectPath)\..\..\..\Gems\AudioEngineWwise\Tools\WwiseATLGen\wwise_atl_gen_tool.py" --autoLoad --atlName generated_controls.xml --atlPath "$(WwiseProjectPath)\..\..\libs\gameaudio\wwise" --bankPath "$(WwiseProjectPath)\..\wwise" +"$(WwiseProjectPath)\..\..\..\python\python.cmd" "$(WwiseProjectPath)\..\..\..\Gems\AudioEngineWwise\Tools\WwiseATLGen\wwise_atl_gen_tool.py" --autoLoad --atlName generated_controls.xml --atlPath "$(WwiseProjectPath)\..\..\libs\gameaudio\wwise" --bankPath "$(WwiseProjectPath)\..\wwise" diff --git a/Gems/AudioEngineWwise/Tools/WwiseAuthoringScripts/ly_copy_output_and_generate_metadata.wcmdline b/Gems/AudioEngineWwise/Tools/WwiseAuthoringScripts/ly_copy_output_and_generate_metadata.wcmdline index afbc73b00c..5d2394fae2 100644 --- a/Gems/AudioEngineWwise/Tools/WwiseAuthoringScripts/ly_copy_output_and_generate_metadata.wcmdline +++ b/Gems/AudioEngineWwise/Tools/WwiseAuthoringScripts/ly_copy_output_and_generate_metadata.wcmdline @@ -1,3 +1,3 @@ "$(WwiseExePath)\CopyStreamedFiles.exe" -info "$(InfoFilePath)" -outputpath "$(SoundBankPath)" -banks "$(SoundBankListAsTextFile)" -languages "$(LanguageList)" -"$(WwiseProjectPath)\..\..\..\Tools\Python\python3.cmd" "$(WwiseProjectPath)\..\..\..\Gems\AudioEngineWwise\Tools\WwiseAuthoringScripts\bank_info_parser.py" "$(InfoFilePath)" "$(SoundBankPath)" +"$(WwiseProjectPath)\..\..\..\python.cmd" "$(WwiseProjectPath)\..\..\..\Gems\AudioEngineWwise\Tools\WwiseAuthoringScripts\bank_info_parser.py" "$(InfoFilePath)" "$(SoundBankPath)" diff --git a/cmake/Platform/Android/PAL_android.cmake b/cmake/Platform/Android/PAL_android.cmake index bd76076467..bb4ac5f32b 100644 --- a/cmake/Platform/Android/PAL_android.cmake +++ b/cmake/Platform/Android/PAL_android.cmake @@ -39,7 +39,7 @@ set(LY_ASSET_DEPLOY_ASSET_TYPE "es3" CACHE STRING "Set the asset type for deploy # Set the python cmd tool if(PAL_HOST_PLATFORM_NAME_LOWERCASE STREQUAL "windows") - ly_set(LY_PYTHON_CMD ${CMAKE_CURRENT_SOURCE_DIR}/Tools/Python/python3.cmd) + ly_set(LY_PYTHON_CMD ${CMAKE_CURRENT_SOURCE_DIR}/python/python.cmd) else() - ly_set(LY_PYTHON_CMD ${CMAKE_CURRENT_SOURCE_DIR}/Tools/Python/python3.sh) + ly_set(LY_PYTHON_CMD ${CMAKE_CURRENT_SOURCE_DIR}/python/python.sh) endif() diff --git a/cmake/Platform/Linux/PAL_linux.cmake b/cmake/Platform/Linux/PAL_linux.cmake index 1d9f02a461..40b73adcec 100644 --- a/cmake/Platform/Linux/PAL_linux.cmake +++ b/cmake/Platform/Linux/PAL_linux.cmake @@ -38,4 +38,4 @@ endif() set(LY_ASSET_DEPLOY_ASSET_TYPE "pc" CACHE STRING "Set the asset type for deployment.") # Set the python cmd tool -ly_set(LY_PYTHON_CMD ${CMAKE_CURRENT_SOURCE_DIR}/Tools/Python/python3.sh) +ly_set(LY_PYTHON_CMD ${CMAKE_CURRENT_SOURCE_DIR}/python/python.sh) diff --git a/cmake/Platform/Mac/PAL_mac.cmake b/cmake/Platform/Mac/PAL_mac.cmake index 10df4849dd..f6cf034312 100644 --- a/cmake/Platform/Mac/PAL_mac.cmake +++ b/cmake/Platform/Mac/PAL_mac.cmake @@ -38,4 +38,4 @@ endif() set(LY_ASSET_DEPLOY_ASSET_TYPE "osx_gl" CACHE STRING "Set the asset type for deployment.") # Set the python cmd tool -ly_set(LY_PYTHON_CMD ${CMAKE_CURRENT_SOURCE_DIR}/Tools/Python/python3.sh) +ly_set(LY_PYTHON_CMD ${CMAKE_CURRENT_SOURCE_DIR}/python/python.sh) diff --git a/cmake/Platform/Windows/PAL_windows.cmake b/cmake/Platform/Windows/PAL_windows.cmake index 7493a95bd6..ddcc3a27c7 100644 --- a/cmake/Platform/Windows/PAL_windows.cmake +++ b/cmake/Platform/Windows/PAL_windows.cmake @@ -41,4 +41,4 @@ endif() set(LY_ASSET_DEPLOY_ASSET_TYPE "pc" CACHE STRING "Set the asset type for deployment.") # Set the python cmd tool -ly_set(LY_PYTHON_CMD ${CMAKE_CURRENT_SOURCE_DIR}/Tools/Python/python3.cmd) +ly_set(LY_PYTHON_CMD ${CMAKE_CURRENT_SOURCE_DIR}/python/python.cmd) diff --git a/cmake/Platform/iOS/PAL_ios.cmake b/cmake/Platform/iOS/PAL_ios.cmake index a910f6c1be..a6828a1bc7 100644 --- a/cmake/Platform/iOS/PAL_ios.cmake +++ b/cmake/Platform/iOS/PAL_ios.cmake @@ -38,5 +38,5 @@ endif() set(LY_ASSET_DEPLOY_ASSET_TYPE "ios" CACHE STRING "Set the asset type for deployment.") # Set the python cmd tool -ly_set(LY_PYTHON_CMD ${CMAKE_CURRENT_SOURCE_DIR}/Tools/Python/python3.sh) +ly_set(LY_PYTHON_CMD ${CMAKE_CURRENT_SOURCE_DIR}/python/python.sh) From ea61f9324c23d09ad882c6b98d77ae3458cef13c Mon Sep 17 00:00:00 2001 From: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com> Date: Wed, 28 Apr 2021 14:50:08 -0700 Subject: [PATCH 49/54] SPEC-6564 Cleanup _HEADERS now that CMake fixed the issue (#397) --- cmake/LYWrappers.cmake | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/cmake/LYWrappers.cmake b/cmake/LYWrappers.cmake index a860bcfd20..f6a36afc89 100644 --- a/cmake/LYWrappers.cmake +++ b/cmake/LYWrappers.cmake @@ -157,13 +157,8 @@ function(ly_add_target) elseif(ly_add_target_HEADERONLY) add_library(${ly_add_target_NAME} ${linking_options} + ${ALLFILES} ${ly_add_target_GENERATED_FILES} ) - # Create a custom target to see it in the IDE - # Once this is solved: https://gitlab.kitware.com/cmake/cmake/merge_requests/3113, we can just add the files to the library above - add_custom_target(${ly_add_target_NAME}_HEADERS - SOURCES ${ALLFILES} ${ly_add_target_GENERATED_FILES} - ) - set(project_NAME ${ly_add_target_NAME}_HEADERS) elseif(ly_add_target_UNKNOWN) add_library(${ly_add_target_NAME} ${linking_options} From 6e780808d2d7e03af90df2848bd17f75db26a49a Mon Sep 17 00:00:00 2001 From: michabr <82236305+michabr@users.noreply.github.com> Date: Wed, 28 Apr 2021 15:04:20 -0700 Subject: [PATCH 50/54] UI Canvas Editor fixes (#340) * Fix mouse input in UI Editor preview mode * Add textured rect outline drawing for Draw2d --- Gems/LyShine/Code/Editor/ViewportIcon.cpp | 108 +----------- Gems/LyShine/Code/Editor/ViewportWidget.cpp | 9 +- Gems/LyShine/Code/Include/LyShine/Draw2d.h | 50 ++++++ Gems/LyShine/Code/Source/Draw2d.cpp | 172 +++++++++++++++++++- 4 files changed, 229 insertions(+), 110 deletions(-) diff --git a/Gems/LyShine/Code/Editor/ViewportIcon.cpp b/Gems/LyShine/Code/Editor/ViewportIcon.cpp index 1e137fe91b..81ed5dbcb5 100644 --- a/Gems/LyShine/Code/Editor/ViewportIcon.cpp +++ b/Gems/LyShine/Code/Editor/ViewportIcon.cpp @@ -344,7 +344,7 @@ void ViewportIcon::DrawDistanceLineWithTransform(Draw2dHelper& draw2d, AZ::Vecto DrawDistanceLine(draw2d, start2, end2, value, suffix); } -void ViewportIcon::DrawElementRectOutline([[maybe_unused]] Draw2dHelper& draw2d, AZ::EntityId entityId, AZ::Color color) +void ViewportIcon::DrawElementRectOutline(Draw2dHelper& draw2d, AZ::EntityId entityId, AZ::Color color) { // get the transformed rect for the element UiTransformInterface::RectPoints points; @@ -380,109 +380,5 @@ void ViewportIcon::DrawElementRectOutline([[maybe_unused]] Draw2dHelper& draw2d, rightVec.NormalizeSafe(); downVec.NormalizeSafe(); - // calculate the transformed width and height of the rect - // (in case it is smaller than the texture height) - AZ::Vector2 widthVec = points.TopRight() - points.TopLeft(); - AZ::Vector2 heightVec = points.BottomLeft() - points.TopLeft(); - float rectWidth = widthVec.GetLength(); - float rectHeight = heightVec.GetLength(); - - // the outline "width" will be based on the texture height - float textureHeight = GetTextureSize().GetY(); - if (textureHeight <= 0) - { - return; // should never happen - avoiding possible divide by zero later - } - - // the outline is centered on the element rect so half the outline is outside - // the rect and half is inside the rect - float outerOffset = -textureHeight * 0.5f; - float innerOffset = textureHeight * 0.5f; - float outerV = 0.0f; - float innerV = 1.0f; - - // if the rect is small there may not be space for the half of the outline that - // is inside the rect. If this is the case reduce the innerOffset so the inner - // points are coincident. Adjust the UVs according to keep a 1-1 texel to pixel ratio. - float minDimension = min(rectWidth, rectHeight); - if (innerOffset > minDimension * 0.5f) - { - float oldInnerOffset = innerOffset; - innerOffset = minDimension * 0.5f; - // note oldInnerOffset can't be zero because of early return if textureHeight is zero - innerV = 0.5f + 0.5f * innerOffset / oldInnerOffset; - } - - // fill out the 8 verts to define the 2 rectangles - outer and inner - // The vertices are in the order of outer rect then inner rect. e.g.: - // 0 1 - // 4 5 - // 6 7 - // 2 3 - // - const int32 NUM_VERTS = 8; - AZ::Vector2 verts2d[NUM_VERTS] = { - // four verts of outer rect - points.pt[0] + rightVec * outerOffset + downVec * outerOffset, - points.pt[1] - rightVec * outerOffset + downVec * outerOffset, - points.pt[3] + rightVec * outerOffset - downVec * outerOffset, - points.pt[2] - rightVec * outerOffset - downVec * outerOffset, - // four verts of inner rect - points.pt[0] + rightVec * innerOffset + downVec * innerOffset, - points.pt[1] - rightVec * innerOffset + downVec * innerOffset, - points.pt[3] + rightVec * innerOffset - downVec * innerOffset, - points.pt[2] - rightVec * innerOffset - downVec * innerOffset, - }; - - // and define the UV coordinates for these 8 verts - AZ::Vector2 uvs[NUM_VERTS] = { - AZ::Vector2(0.0f, outerV), AZ::Vector2(1.0f, outerV), AZ::Vector2(1.0f, outerV), AZ::Vector2(0.0f, outerV), - AZ::Vector2(0.0f, innerV), AZ::Vector2(1.0f, innerV), AZ::Vector2(1.0f, innerV), AZ::Vector2(0.0f, innerV), - }; - - // Now create the 8 verts in the right vertex format for DrawDynVB - SVF_P3F_C4B_T2F vertices[NUM_VERTS]; - const float z = 1.0f; // depth test disabled, if writing Z this will write at far plane - uint32 packedColor = (color.GetA8() << 24) | (color.GetR8() << 16) | (color.GetG8() << 8) | color.GetB8(); - for (int i = 0; i < NUM_VERTS; ++i) - { - vertices[i].xyz = Vec3(verts2d[i].GetX(), verts2d[i].GetY(), z); - vertices[i].color.dcolor = packedColor; - vertices[i].st = Vec2(uvs[i].GetX(), uvs[i].GetY()); - } - - // The indicies are for four quads (one for each side of the rect). - // The quads are drawn using a triangle list (simpler than a tri-strip) - // We draw each quad in the same order that the image component draws quads to - // maximize chances of things lining up so each quad is drawn as two triangles: - // top-left, top-right, bottom-left / bottom-left, top-right, bottom-right - // e.g. for a quad like this: - // - // 0 1 - // |/| - // 2 3 - // - // The two triangles would be 0,1,2 and 2,1,3 - // - const int32 NUM_INDICES = 24; - uint16 indicies[NUM_INDICES] = - { - 0, 1, 4, 4, 1, 5, // top quad - 6, 7, 2, 2, 7, 3, // bottom quad - 0, 4, 2, 2, 4, 6, // left quad - 5, 1, 7, 1, 7, 3, // right quad - }; - -#ifdef LYSHINE_ATOM_TODO - IRenderer* renderer = gEnv->pRenderer; - renderer->SetTexture(m_texture->GetTextureID()); - - renderer->SetState(GS_BLSRC_SRCALPHA | GS_BLDST_ONEMINUSSRCALPHA | GS_NODEPTHTEST); - renderer->SetColorOp(eCO_MODULATE, eCO_MODULATE, DEF_TEXARG0, DEF_TEXARG0); - - // This will end up using DrawIndexedPrimitive to render the quad - renderer->DrawDynVB(vertices, indicies, NUM_VERTS, NUM_INDICES, prtTriangleList); -#else - // LYSHINE_ATOM_TODO - add option in Draw2d to draw indexed primitive for this textured element outline -#endif + draw2d.DrawRectOutlineTextured(m_image, points, rightVec, downVec, color); } diff --git a/Gems/LyShine/Code/Editor/ViewportWidget.cpp b/Gems/LyShine/Code/Editor/ViewportWidget.cpp index 9956a39647..8861763dcf 100644 --- a/Gems/LyShine/Code/Editor/ViewportWidget.cpp +++ b/Gems/LyShine/Code/Editor/ViewportWidget.cpp @@ -570,7 +570,8 @@ void ViewportWidget::mousePressEvent(QMouseEvent* ev) if (ev->button() == Qt::LeftButton) { // Send event to this canvas - const AZ::Vector2 viewportPosition(aznumeric_cast(ev->x()), aznumeric_cast(ev->y())); + QPointF scaledPos = WidgetToViewport(ev->localPos()); + const AZ::Vector2 viewportPosition(aznumeric_cast(scaledPos.x()), aznumeric_cast(scaledPos.y())); const AzFramework::InputChannel::Snapshot inputSnapshot(AzFramework::InputDeviceMouse::Button::Left, AzFramework::InputDeviceMouse::Id, AzFramework::InputChannel::State::Began); @@ -604,7 +605,8 @@ void ViewportWidget::mouseMoveEvent(QMouseEvent* ev) AZ::EntityId canvasEntityId = m_editorWindow->GetPreviewModeCanvas(); if (canvasEntityId.IsValid()) { - const AZ::Vector2 viewportPosition(aznumeric_cast(ev->x()), aznumeric_cast(ev->y())); + QPointF scaledPos = WidgetToViewport(ev->localPos()); + const AZ::Vector2 viewportPosition(aznumeric_cast(scaledPos.x()), aznumeric_cast(scaledPos.y())); const AzFramework::InputChannelId& channelId = (ev->buttons() & Qt::LeftButton) ? AzFramework::InputDeviceMouse::Button::Left : AzFramework::InputDeviceMouse::SystemCursorPosition; @@ -640,7 +642,8 @@ void ViewportWidget::mouseReleaseEvent(QMouseEvent* ev) if (ev->button() == Qt::LeftButton) { // Send event to this canvas - const AZ::Vector2 viewportPosition(aznumeric_cast(ev->x()), aznumeric_cast(ev->y())); + QPointF scaledPos = WidgetToViewport(ev->localPos()); + const AZ::Vector2 viewportPosition(aznumeric_cast(scaledPos.x()), aznumeric_cast(scaledPos.y())); const AzFramework::InputChannel::Snapshot inputSnapshot(AzFramework::InputDeviceMouse::Button::Left, AzFramework::InputDeviceMouse::Id, AzFramework::InputChannel::State::Ended); diff --git a/Gems/LyShine/Code/Include/LyShine/Draw2d.h b/Gems/LyShine/Code/Include/LyShine/Draw2d.h index ec636c3e3b..40383e5e08 100644 --- a/Gems/LyShine/Code/Include/LyShine/Draw2d.h +++ b/Gems/LyShine/Code/Include/LyShine/Draw2d.h @@ -13,6 +13,7 @@ #include #include +#include #include #include @@ -128,6 +129,19 @@ public: // member functions void DrawText(const char* textString, AZ::Vector2 position, float pointSize, float opacity = 1.0f, TextOptions* textOptions = nullptr); + //! Draw a rectangular outline with a texture + // + //! \param image The texture to be used for drawing the outline + //! \param points The rect's vertices (top left, top right, bottom right, bottom left) + //! \param rightVec Right vector. Specified because the rect's width/height could be 0 + //! \param downVec Down vector. Specified because the rect's width/height could be 0 + //! \param color The color of the outline + void DrawRectOutlineTextured(AZ::Data::Instance image, + UiTransformInterface::RectPoints points, + AZ::Vector2 rightVec, + AZ::Vector2 downVec, + AZ::Color color); + //! Get the width and height (in pixels) that would be used to draw the given text string. // //! Pass the same parameter values that would be used to draw the string @@ -243,6 +257,24 @@ protected: // types and constants std::string m_string; }; + class DeferredRectOutline + : public DeferredPrimitive + { + public: + ~DeferredRectOutline() override {}; + void Draw(AZ::RHI::Ptr dynamicDraw, + const Draw2dShaderData& shaderData, + AZ::RPI::ViewportContextPtr viewportContext) const override; + + AZ::Data::Instance m_image; + + static constexpr int32 NUM_VERTS = 8; + AZ::Vector2 m_verts2d[NUM_VERTS]; + AZ::Vector2 m_uvs[NUM_VERTS]; + + AZ::Color m_color; + }; + protected: // member functions //! Rotate an array of points around the z-axis at the pivot point. @@ -261,6 +293,9 @@ protected: // member functions //! Draw or defer a line void DrawOrDeferLine(const DeferredLine* line); + //! Draw or defer a rect outline + void DrawOrDeferRectOutline(const DeferredRectOutline* outlineRect); + //! Get specified viewport context or default viewport context if not specified AZ::RPI::ViewportContextPtr GetViewportContext() const; @@ -394,6 +429,21 @@ public: // member functions } } + //! Draw a rect outline with a texture + // + //! See IDraw2d:DrawRectOutlineTextured for parameter descriptions + void DrawRectOutlineTextured(AZ::Data::Instance image, + UiTransformInterface::RectPoints points, + AZ::Vector2 rightVec, + AZ::Vector2 downVec, + AZ::Color color) + { + if (m_draw2d) + { + m_draw2d->DrawRectOutlineTextured(image, points, rightVec, downVec, color); + } + } + //! Draw a text string. Only supports ASCII text. // //! See IDraw2d:DrawText for parameter descriptions diff --git a/Gems/LyShine/Code/Source/Draw2d.cpp b/Gems/LyShine/Code/Source/Draw2d.cpp index cd15475039..c8ee38cce4 100644 --- a/Gems/LyShine/Code/Source/Draw2d.cpp +++ b/Gems/LyShine/Code/Source/Draw2d.cpp @@ -305,6 +305,89 @@ void CDraw2d::DrawText(const char* textString, AZ::Vector2 position, float point actualTextOptions->baseState); } +void CDraw2d::DrawRectOutlineTextured(AZ::Data::Instance image, + UiTransformInterface::RectPoints points, + AZ::Vector2 rightVec, + AZ::Vector2 downVec, + AZ::Color color) +{ + // since the rect can be transformed we have to add the offsets by multiplying them + // by unit vectors parallel with the edges of the rect. However, the rect could be + // zero width and/or height so we can't use "points" to compute these unit vectors. + // So we instead get two transformed unit vectors and then normalize them + rightVec.NormalizeSafe(); + downVec.NormalizeSafe(); + + // calculate the transformed width and height of the rect + // (in case it is smaller than the texture height) + AZ::Vector2 widthVec = points.TopRight() - points.TopLeft(); + AZ::Vector2 heightVec = points.BottomLeft() - points.TopLeft(); + float rectWidth = widthVec.GetLength(); + float rectHeight = heightVec.GetLength(); + + // the outline thickness will be based on the texture height + float textureHeight = image ? aznumeric_cast(image->GetDescriptor().m_size.m_height) : 0.0f; + if (textureHeight <= 0.0f) + { + AZ_Assert(false, "Attempting to draw a textured rect outline with an image of zero height."); + return; // avoiding possible divide by zero later + } + + // the outline is centered on the element rect so half the outline is outside + // the rect and half is inside the rect + float outerOffset = -textureHeight * 0.5f; + float innerOffset = textureHeight * 0.5f; + float outerV = 0.0f; + float innerV = 1.0f; + + // if the rect is small there may not be space for the half of the outline that + // is inside the rect. If this is the case reduce the innerOffset so the inner + // points are coincident. Adjust the UVs according to keep a 1-1 texel to pixel ratio. + float minDimension = min(rectWidth, rectHeight); + if (innerOffset > minDimension * 0.5f) + { + float oldInnerOffset = innerOffset; + innerOffset = minDimension * 0.5f; + // note oldInnerOffset can't be zero because of early return if textureHeight is zero + innerV = 0.5f + 0.5f * innerOffset / oldInnerOffset; + } + + DeferredRectOutline rectOutline; + + // fill out the 8 verts to define the 2 rectangles - outer and inner + // The vertices are in the order of outer rect then inner rect. e.g.: + // 0 1 + // 4 5 + // 6 7 + // 2 3 + // + // four verts of outer rect + rectOutline.m_verts2d[0] = points.pt[0] + rightVec * outerOffset + downVec * outerOffset; + rectOutline.m_verts2d[1] = points.pt[1] - rightVec * outerOffset + downVec * outerOffset; + rectOutline.m_verts2d[2] = points.pt[3] + rightVec * outerOffset - downVec * outerOffset; + rectOutline.m_verts2d[3] = points.pt[2] - rightVec * outerOffset - downVec * outerOffset; + // four verts of inner rect + rectOutline.m_verts2d[4] = points.pt[0] + rightVec * innerOffset + downVec * innerOffset; + rectOutline.m_verts2d[5] = points.pt[1] - rightVec * innerOffset + downVec * innerOffset; + rectOutline.m_verts2d[6] = points.pt[3] + rightVec * innerOffset - downVec * innerOffset; + rectOutline.m_verts2d[7] = points.pt[2] - rightVec * innerOffset - downVec * innerOffset; + + // and define the UV coordinates for these 8 verts + rectOutline.m_uvs[0] = AZ::Vector2(0.0f, outerV); + rectOutline.m_uvs[1] = AZ::Vector2(1.0f, outerV); + rectOutline.m_uvs[2] = AZ::Vector2(1.0f, outerV); + rectOutline.m_uvs[3] = AZ::Vector2(0.0f, outerV); + rectOutline.m_uvs[4] = AZ::Vector2(0.0f, innerV); + rectOutline.m_uvs[5] = AZ::Vector2(1.0f, innerV); + rectOutline.m_uvs[6] = AZ::Vector2(1.0f, innerV); + rectOutline.m_uvs[7] = AZ::Vector2(0.0f, innerV); + + rectOutline.m_image = image; + rectOutline.m_color = color; + + DrawOrDeferRectOutline(&rectOutline); +} + //////////////////////////////////////////////////////////////////////////////////////////////////// // TBD should the size include the offset of the drop shadow (if any)? //////////////////////////////////////////////////////////////////////////////////////////////////// @@ -592,6 +675,20 @@ void CDraw2d::DrawOrDeferLine(const DeferredLine* line) } } +void CDraw2d::DrawOrDeferRectOutline(const DeferredRectOutline* rectOutline) +{ + if (m_deferCalls) + { + DeferredRectOutline* newRectOutline = new DeferredRectOutline; + *newRectOutline = *rectOutline; + m_deferredPrimitives.push_back(newRectOutline); + } + else + { + rectOutline->Draw(m_dynamicDraw, m_shaderData, GetViewportContext()); + } +} + //////////////////////////////////////////////////////////////////////////////////////////////////// AZ::RPI::ViewportContextPtr CDraw2d::GetViewportContext() const { @@ -604,7 +701,6 @@ AZ::RPI::ViewportContextPtr CDraw2d::GetViewportContext() const // Return the user specified viewport context return m_viewportContext; - } //////////////////////////////////////////////////////////////////////////////////////////////////// @@ -729,6 +825,80 @@ void CDraw2d::DeferredLine::Draw(AZ::RHI::Ptr dynam dynamicDraw->DrawLinear(vertices, NUM_VERTS, drawSrg); } +void CDraw2d::DeferredRectOutline::Draw(AZ::RHI::Ptr dynamicDraw, + const Draw2dShaderData& shaderData, + AZ::RPI::ViewportContextPtr viewportContext) const +{ + // Create the 8 verts in the right vertex format for the dynamic draw context + SVF_P3F_C4B_T2F vertices[NUM_VERTS]; + const float z = 1.0f; // depth test disabled, if writing Z this will write at far plane + uint32 packedColor = (m_color.GetA8() << 24) | (m_color.GetR8() << 16) | (m_color.GetG8() << 8) | m_color.GetB8(); + for (int i = 0; i < NUM_VERTS; ++i) + { + vertices[i].xyz = Vec3(m_verts2d[i].GetX(), m_verts2d[i].GetY(), z); + vertices[i].color.dcolor = packedColor; + vertices[i].st = Vec2(m_uvs[i].GetX(), m_uvs[i].GetY()); + } + + // The indices are for four quads (one for each side of the rect). + // The quads are drawn using a triangle list (simpler than a tri-strip) + // We draw each quad in the same order that the image component draws quads to + // maximize chances of things lining up so each quad is drawn as two triangles: + // top-left, top-right, bottom-left / bottom-left, top-right, bottom-right + // e.g. for a quad like this: + // + // 0 1 + // |/| + // 2 3 + // + // The two triangles would be 0,1,2 and 2,1,3 + // + static constexpr int32 NUM_INDICES = 24; + uint16 indices[NUM_INDICES] = + { + 0, 1, 4, 4, 1, 5, // top quad + 6, 7, 2, 2, 7, 3, // bottom quad + 0, 4, 2, 2, 4, 6, // left quad + 5, 1, 7, 1, 7, 3, // right quad + }; + + // Set up per draw SRG + AZ::Data::Instance drawSrg = dynamicDraw->NewDrawSrg(); + + // Set texture + const AZ::RHI::ImageView* imageView = m_image ? m_image->GetImageView() : nullptr; + if (!imageView) + { + // Default to white texture + auto image = AZ::RPI::ImageSystemInterface::Get()->GetSystemImage(AZ::RPI::SystemImage::White); + imageView = image->GetImageView(); + } + + if (imageView) + { + drawSrg->SetImageView(shaderData.m_imageInputIndex, imageView, 0); + } + + // Set projection matrix + auto windowContext = viewportContext->GetWindowContext(); + const AZ::RHI::Viewport& viewport = windowContext->GetViewport(); + const float viewX = viewport.m_minX; + const float viewY = viewport.m_minY; + const float viewWidth = viewport.m_maxX - viewport.m_minX; + const float viewHeight = viewport.m_maxY - viewport.m_minY; + const float zf = viewport.m_minZ; + const float zn = viewport.m_maxZ; + AZ::Matrix4x4 modelViewProjMat; + AZ::MakeOrthographicMatrixRH(modelViewProjMat, viewX, viewX + viewWidth, viewY + viewHeight, viewY, zn, zf); + drawSrg->SetConstant(shaderData.m_viewProjInputIndex, modelViewProjMat); + + drawSrg->Compile(); + + // Add the primitive to the dynamic draw context for drawing + dynamicDraw->SetPrimitiveType(AZ::RHI::PrimitiveTopology::TriangleList); + dynamicDraw->DrawIndexed(vertices, NUM_VERTS, indices, NUM_INDICES, AZ::RHI::IndexFormat::Uint16, drawSrg); + +} //////////////////////////////////////////////////////////////////////////////////////////////////// // CDraw2d::DeferredText From efc0cbacbaeb695356a22d671889278342528f2b Mon Sep 17 00:00:00 2001 From: chiyenteng <82238204+chiyenteng@users.noreply.github.com> Date: Wed, 28 Apr 2021 15:32:35 -0700 Subject: [PATCH 51/54] Prevent AzToolsFramework benchmarks timeout for now (#398) (#403) --- .../Tests/Prefab/Benchmark/PrefabUpdateInstancesBenchmarks.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Code/Framework/AzToolsFramework/Tests/Prefab/Benchmark/PrefabUpdateInstancesBenchmarks.cpp b/Code/Framework/AzToolsFramework/Tests/Prefab/Benchmark/PrefabUpdateInstancesBenchmarks.cpp index d1bd2a488e..c81db58c95 100644 --- a/Code/Framework/AzToolsFramework/Tests/Prefab/Benchmark/PrefabUpdateInstancesBenchmarks.cpp +++ b/Code/Framework/AzToolsFramework/Tests/Prefab/Benchmark/PrefabUpdateInstancesBenchmarks.cpp @@ -78,7 +78,7 @@ namespace Benchmark } BENCHMARK_REGISTER_F(BM_PrefabUpdateInstances, UpdateInstances_SingeEntityInstances) ->RangeMultiplier(10) - ->Range(100, 10000) + ->Range(100, 1000) ->Unit(benchmark::kMillisecond) ->Complexity(); From ed74bb9166a73d8205a113dfcea6a68f3107018e Mon Sep 17 00:00:00 2001 From: Steve Pham <82231385+spham-amzn@users.noreply.github.com> Date: Wed, 28 Apr 2021 16:10:34 -0700 Subject: [PATCH 52/54] SPEC-5380: Update windows/mac setup scripts to install latest cmake * Adding choco install for cmake in 'install_utiltools.ps1' * Adding brew installation command to install-xcode.sh --- scripts/build/build_node/Platform/Mac/install-xcode.sh | 5 ++++- .../build/build_node/Platform/Windows/install_utiltools.ps1 | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/scripts/build/build_node/Platform/Mac/install-xcode.sh b/scripts/build/build_node/Platform/Mac/install-xcode.sh index c55ebc38d3..3f744c0e57 100755 --- a/scripts/build/build_node/Platform/Mac/install-xcode.sh +++ b/scripts/build/build_node/Platform/Mac/install-xcode.sh @@ -43,4 +43,7 @@ sudo installer -pkg /Applications/Xcode.app/Contents/Resources/Packages/MobileDe sudo installer -pkg /Applications/Xcode.app/Contents/Resources/Packages/MobileDeviceDevelopment.pkg -target / echo "Enabling developer mode" -sudo /usr/sbin/DevToolsSecurity --enable \ No newline at end of file +sudo /usr/sbin/DevToolsSecurity --enable + +echo "Installing cmake" +brew install cmake diff --git a/scripts/build/build_node/Platform/Windows/install_utiltools.ps1 b/scripts/build/build_node/Platform/Windows/install_utiltools.ps1 index 15cd92a7e2..4e3695d35d 100644 --- a/scripts/build/build_node/Platform/Windows/install_utiltools.ps1 +++ b/scripts/build/build_node/Platform/Windows/install_utiltools.ps1 @@ -25,4 +25,7 @@ git config --global "credential.helper" "!aws codecommit credential-helper $@" git config --global "credential.UseHttpPath" "true" # Install Java (for Jenkins) -choco install corretto8jdk -y --ia INSTALLDIR="c:\jdk8" # Custom directory to handle cases where whitespace in the path is not quote wrapped \ No newline at end of file +choco install corretto8jdk -y --ia INSTALLDIR="c:\jdk8" # Custom directory to handle cases where whitespace in the path is not quote wrapped + +# Install CMake +choco install cmake -y --installargs 'ADD_CMAKE_TO_PATH=System' From 3dec5d3b711b2eb884e2928662ea63bc99a27879 Mon Sep 17 00:00:00 2001 From: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com> Date: Wed, 28 Apr 2021 21:38:43 -0500 Subject: [PATCH 53/54] LYN-2537 engine assets (#254) * LYN-2537 Moved the Engine and Editor folder to be within the EngineAssets folder * Fixed Documentation in bootstrap.cfg to correct the path to the user project specific registry file * Adding a newline to the output of AssetCatalog 'Registering asset..., but type is not set' message * Updating the AssetProcessorPlatformConfig.setreg Scan Folder to detect the @ENGINEROOT@/EngineAssets/Engine path for engine runtime assets and @ENGINEROOT@/EngineAssets/Editor path for engine tool assets * Updating references to Icons and other assets to account for moving the Engine and Editor folder under a single EngineAssets folder * Moving the Engine Settings Registry folder from Engine/Registry -> Registry * Removed the LY_PROJECT_CMAKE_PATH define as it is not portable to other locations. It is hard coded to the project location that was used for the CMake configuration. Furthermore it paths with backslashes within it are treated as escape characters and not a path separator * Updated the LyTestTools asset_processor.py script to copy the exclude.filetag from the EngineAssets/Engine directory now * Fixed Atom Shader Preprocessing when running using an External Project * Updated the TSGenerateAction.cpp to fix the build error with using a renamed variable * Updated the Install_Common.cmake ly_setup_others function to install the EngineAssets directory and the each of the Gem's Assets directory while maintaining the relative directory structure to the Engine Root Also updated the install step to install the Registry folder at the engine root * Fixed the copying of the Registry folder to be in the install root, instead of under a second 'Registry' folder * Moving the AssetProcessorPlatformConfig.setreg file over to the Registry folder * Updated the LyTestTools and C++ code to point that the new location of the AssetProcessorPlatformConfig.setreg file inside of the Registry folder * Renamed Test AssetProcessor*Config.ini files to have the .setreg extension * Converted the AssetProcessor test setreg files from ini format to json format using the SerializeContextTools convert-ini command * Updated the AssetProcessor CMakeLists.txt to copy over the test setreg files to the build folder * Updated the assetprocessor test file list to point at the renamed AsssetProcessor*Config setreg filenames * Removed the Output Prefix code from the AssetProcessor. The complexity that it brought to the AP code is not needed, as users can replicate the behavior by just moving there assets underneath a another folder, underneath the scan folder * Adding back support to read the AssetProcessorPlatformConfig.setreg file from the asset root. This is only needed for C++ UnitTests as they run in an environment where the accessing the Engine Settings Registry is not available * Updating the Install_common.cmake logic to copy any "Assets" folder to the install layout. The Script has also been updated to copy over the "Assets" folder in the Engine Root to the install layout instead of an "EngineAssets" folder * Updating References to EngineAssets source asset folder in code to be the Assets source folder * Moved the Engine Source Asset folder of 'EngineAssets' to a new folder name of 'Assets'. This is inline with the naming scheme we use for Gem asset folders * Adding the EngineFinder.cmake to the AutomatedTesting project to allow it to work in a project centric manner * Updating the LyTestTools copy_assets_to_project function to be able to copy assets with folders to the temporary project root Fixed an issue in LyTestTools where the temporary log directory could have shutil.rmtree being called twice on it leading to an exception which fails an automated test Updated the asset_procesor_gui_tests_2 AddScanFolder test to not use the output prefix, but instead place the source asset root into a subdirectory * Correct the AssetProcessorPlatformConfig Scan Folders for the EngineAssets directory to point at the Assets directory * Updated the asset procesor batch dependency test scan folder to point at the 'Assets' folder instead of 'EngineAssets' --- .../Editor}/CryDesigner_TimeOfDay.xml | 0 {Editor => Assets/Editor}/Editor.tip | 0 .../Icons/AssetBrowser/ScriptCanvas_16.png | 0 .../Editor}/EditorParticlePanels.xml | 0 .../Editor}/EditorParticlePanelsDefault.xml | 0 .../Editor}/Fonts/Open_Sans/LICENSE.txt | 0 .../Editor}/Fonts/Open_Sans/OpenSans-Bold.ttf | 0 .../Fonts/Open_Sans/OpenSans-BoldItalic.ttf | 0 .../Fonts/Open_Sans/OpenSans-ExtraBold.ttf | 0 .../Open_Sans/OpenSans-ExtraBoldItalic.ttf | 0 .../Fonts/Open_Sans/OpenSans-Italic.ttf | 0 .../Fonts/Open_Sans/OpenSans-Light.ttf | 0 .../Fonts/Open_Sans/OpenSans-LightItalic.ttf | 0 .../Fonts/Open_Sans/OpenSans-Regular.ttf | 0 .../Fonts/Open_Sans/OpenSans-Semibold.ttf | 0 .../Open_Sans/OpenSans-SemiboldItalic.ttf | 0 .../Editor}/Icons/AssetBrowser/ABC_16.svg | 0 .../Editor}/Icons/AssetBrowser/Audio_16.svg | 0 .../Icons/AssetBrowser/CaretClosed_16.svg | 0 .../Icons/AssetBrowser/CaretOpen_16.svg | 0 .../Icons/AssetBrowser/DefaultProduct_16.svg | 0 .../Editor}/Icons/AssetBrowser/Default_16.svg | 0 .../Editor}/Icons/AssetBrowser/FBX_16.svg | 0 .../Editor}/Icons/AssetBrowser/Folder_16.svg | 0 .../Editor}/Icons/AssetBrowser/Font_16.svg | 0 .../Icons/AssetBrowser/GemFolder_16.svg | 0 .../Editor}/Icons/AssetBrowser/Image_16.svg | 0 .../Icons/AssetBrowser/InputBindings_16.svg | 0 .../Icons/AssetBrowser/LegacyAnimation_16.svg | 0 .../Icons/AssetBrowser/LegacyMesh_16.svg | 0 .../Icons/AssetBrowser/LegacySkin_16.svg | 0 .../Icons/AssetBrowser/LensFlare_16.svg | 0 .../Editor}/Icons/AssetBrowser/Lua_16.svg | 0 .../Icons/AssetBrowser/Material_16.svg | 0 .../Icons/AssetBrowser/NonWritable_16.svg | 0 .../Icons/AssetBrowser/Particle_16.svg | 0 .../Editor}/Icons/AssetBrowser/Slice_16.svg | 0 .../Icons/AssetBrowser/Writable_16.svg | 0 .../Editor}/Icons/AssetBrowser/XML_16.svg | 0 .../Icons/AssetBrowser/in_progress.gif | 0 .../Editor}/Icons/AssetImporter/animation.png | 0 .../Icons/AssetImporter/animation_on.png | 0 .../Icons/AssetImporter/group_icon.png | 0 .../Editor}/Icons/AssetImporter/mesh.png | 0 .../Editor}/Icons/AssetImporter/mesh_on.png | 0 .../Editor}/Icons/AssetImporter/skeleton.png | 0 .../Icons/AssetImporter/skeleton_on.png | 0 .../Editor}/Icons/AssetImporter/skin.png | 0 .../Editor}/Icons/AssetImporter/skin_on.png | 0 .../Editor}/Icons/AssetImporter/tree.png | 0 .../Editor}/Icons/Assets/InputBindings.png | 0 .../Editor}/Icons/Assets/Lua.png | 0 .../Editor}/Icons/Assets/PhysicsMaterial.png | 0 .../Editor}/Icons/Components/AreaLight.svg | 0 .../Editor}/Icons/Components/Attachment.svg | 0 .../Icons/Components/AudioAnimation.svg | 0 .../Components/AudioAnimationEventsProxy.svg | 0 .../Editor}/Icons/Components/AudioArea.png | 0 .../Icons/Components/AudioAreaEnvironment.svg | 0 .../Icons/Components/AudioEnvironment.svg | 0 .../Icons/Components/AudioListener.svg | 0 .../Icons/Components/AudioMultiPosition.png | 0 .../Editor}/Icons/Components/AudioPreload.svg | 0 .../Editor}/Icons/Components/AudioProxy.svg | 0 .../Editor}/Icons/Components/AudioRtpc.svg | 0 .../Editor}/Icons/Components/AudioSwitch.svg | 0 .../Editor}/Icons/Components/AudioTrigger.svg | 0 .../Editor}/Icons/Components/BehaviorTree.svg | 0 .../Editor}/Icons/Components/Box.png | 0 .../Editor}/Icons/Components/Box_Shape.svg | 0 .../Icons/Components/Capsule_Shape.svg | 0 .../Icons/Components/CharacterPhysics.svg | 0 .../Editor}/Icons/Components/Cloth.svg | 0 .../Components/CloudGemMessageOfTheDay.svg | 0 .../Editor}/Icons/Components/ColliderBox.png | 0 .../Icons/Components/ColliderCapsule.png | 0 .../Icons/Components/ColliderCylinder.png | 0 .../Editor}/Icons/Components/ColliderMesh.svg | 0 .../Icons/Components/ColliderSphere.png | 0 .../Editor}/Icons/Components/Comment.svg | 0 .../Components/Component_Placeholder.svg | 0 .../Icons/Components/Compound_Shape.svg | 0 .../Editor}/Icons/Components/Cylinder.png | 0 .../Icons/Components/Cylinder_Shape.svg | 0 .../Icons/Components/DebugDrawLine.svg | 0 .../Editor}/Icons/Components/DebugDrawObb.svg | 0 .../Editor}/Icons/Components/DebugDrawRay.svg | 0 .../Icons/Components/DebugDrawSphere.svg | 0 .../Icons/Components/DebugDrawText.svg | 0 .../Editor}/Icons/Components/Decal.svg | 0 .../Components/Disabled/Animation_white.png | 0 .../Components/Disabled/Attachment_white.png | 0 .../Disabled/AudioAreaEnvironment_white.png | 0 .../Components/Disabled/AudioArea_white.png | 0 .../Disabled/AudioEnvironment_white.png | 0 .../Disabled/AudioListener_white.png | 0 .../Components/Disabled/AudioRtpc_white.png | 0 .../Components/Disabled/AudioSwitch_white.png | 0 .../Disabled/AudioTrigger_white.png | 0 .../Disabled/BehaviorTree_white.png | 0 .../Components/Disabled/Box_Shape_white.png | 0 .../Disabled/Box_collider_white.png | 0 .../Icons/Components/Disabled/Box_white.png | 0 .../Disabled/Capsule_Shape_white.png | 0 .../Components/Disabled/Capsule_white.png | 0 .../Disabled/CharacterPhysics_white.png | 0 .../Icons/Components/Disabled/Comment.png | 0 .../Disabled/ComponentPlaceholder_white.png | 0 .../Disabled/Component_Placeholder_white.png | 0 .../Disabled/Cylinder_Shape_white.png | 0 .../Components/Disabled/Cylinder_white.png | 0 .../Icons/Components/Disabled/Decal_white.png | 0 .../Disabled/DynamicContent_white.png | 0 .../Components/Disabled/DynamicMesh_white.png | 0 .../Disabled/EntityInSlice_white.png | 0 .../Components/Disabled/Entity_white.png | 0 .../Components/Disabled/FogVolume_white.png | 0 .../Components/Disabled/ForceVolume_white.png | 0 .../Disabled/GeometryCache_white.png | 0 .../Disabled/HttpClientComponent_white.png | 0 .../Components/Disabled/LensFlare_white.png | 0 .../Icons/Components/Disabled/Light_white.png | 0 .../Disabled/LightningArc_white.png | 0 .../Components/Disabled/Lightning_white.png | 0 .../Components/Disabled/LookAt_white.png | 0 .../Disabled/MannequinScopeContext_white.png | 0 .../Components/Disabled/Mannequin_white.png | 0 .../Disabled/Mesh_collidaer_white 2.png | 0 .../Disabled/NavigationArea_white.png | 0 .../Disabled/NavigationSeed_white.png | 0 .../Components/Disabled/Navigation_white.png | 0 .../Components/Disabled/NetBinding_white.png | 0 .../Disabled/ObjectAvoidance_white.png | 0 .../Components/Disabled/Particle_white.png | 0 .../Disabled/PhysicsConstraint_white.png | 0 .../Disabled/PolygonPrism_white.png | 0 .../Disabled/PrimitiveCollider_white.png | 0 .../Icons/Components/Disabled/Ragdoll.png | 0 .../Components/Disabled/Ragdoll_white.png | 0 .../Disabled/RandomTimedSpawner_white.png | 0 .../Disabled/RigidPhysics_white.png | 0 .../Components/Disabled/Script_white.png | 0 .../Disabled/SequenceAgent_white.png | 0 .../Components/Disabled/Sequence_white.png | 0 .../Icons/Components/Disabled/Shadow.png | 0 .../Components/Disabled/SimpleState_white.png | 0 .../Components/Disabled/SkinnedMesh_white.png | 0 .../Disabled/SkyHighlight_white.png | 0 .../Icons/Components/Disabled/Snow_white.png | 0 .../Components/Disabled/Spawner_white.png | 0 .../Disabled/Sphere_Shape_white.png | 0 .../Components/Disabled/Sphere_white.png | 0 .../Components/Disabled/Spline_white.png | 0 .../Components/Disabled/StaticData_white.png | 0 .../Components/Disabled/StaticMesh_white.png | 0 .../Disabled/StaticPhysics_white.png | 0 .../Icons/Components/Disabled/Tag_white.png | 0 .../Components/Disabled/Transform_white.png | 0 .../Components/Disabled/Trigger_white.png | 0 .../Disabled/UiCanvasOnMesh_white.png | 0 .../Components/Disabled/UiCanvasRef_white.png | 0 .../Components/Disabled/WaterVolume_white.png | 0 .../Components/Disabled/WindVolume_white.png | 0 .../Editor}/Icons/Components/Disk_Shape.svg | 0 .../Icons/Components/DynamicContent.png | 0 .../Editor}/Icons/Components/DynamicMesh.png | 0 .../Editor}/Icons/Components/Entity.png | 0 .../Icons/Components/EntityInSlice.png | 0 .../Icons/Components/EnvironmentProbe.svg | 0 .../Editor}/Icons/Components/Flipbook.png | 0 .../Editor}/Icons/Components/FogVolume.svg | 0 .../Editor}/Icons/Components/Footstep1.svg | 0 .../Editor}/Icons/Components/ForceRegion.png | 0 .../Editor}/Icons/Components/ForceVolume.svg | 0 .../Icons/Components/GeometryCache.svg | 0 .../Icons/Components/HttpClientComponent.png | 0 .../Editor}/Icons/Components/Layers.svg | 0 .../Icons/Components/LegacyTerrain.svg | 0 .../Editor}/Icons/Components/LensFlare.svg | 0 .../Editor}/Icons/Components/Light.png | 0 .../Editor}/Icons/Components/Lightning.svg | 0 .../Editor}/Icons/Components/LightningArc.svg | 0 .../Editor}/Icons/Components/LookAt.png | 0 .../Editor}/Icons/Components/LuaScript.svg | 0 .../Editor}/Icons/Components/Mannequin.svg | 0 .../Components/MannequinScopeContext.svg | 0 .../Components/MotionParameterSmoothing.svg | 0 .../Editor}/Icons/Components/Navigation.svg | 0 .../Icons/Components/NavigationArea.svg | 0 .../Icons/Components/NavigationSeed.svg | 0 .../Editor}/Icons/Components/NetBinding.svg | 0 .../Icons/Components/ObjectAvoidance.png | 0 .../Editor}/Icons/Components/Particle.svg | 0 .../Icons/Components/PhysXCharacter.svg | 0 .../Icons/Components/PhysXCollider.svg | 0 .../Editor}/Icons/Components/PhysXRagdoll.svg | 0 .../Icons/Components/PhysXRigidBody.svg | 0 .../Editor}/Icons/Components/PhysXTerrain.svg | 0 .../Editor}/Icons/Components/Physics.png | 0 .../Icons/Components/PhysicsConstraint.svg | 0 .../Editor}/Icons/Components/PointLight.svg | 0 .../Editor}/Icons/Components/PolygonPrism.svg | 0 .../Icons/Components/PrimitiveCollider.svg | 0 .../Icons/Components/ProjectorLight.svg | 0 .../Editor}/Icons/Components/Quad_Shape.svg | 0 .../Editor}/Icons/Components/Ragdoll.png | 0 .../Icons/Components/RandomTimedSpawner.svg | 0 .../Editor}/Icons/Components/RigidPhysics.svg | 0 .../Components/ScriptEventAssetReference.png | 0 .../Editor}/Icons/Components/Sequence.png | 0 .../Icons/Components/SequenceAgent.png | 0 .../Editor}/Icons/Components/Shadow.svg | 0 .../Icons/Components/SimpleAnimation.svg | 0 .../Icons/Components/SimpleLODDistance.svg | 0 .../Editor}/Icons/Components/SimpleMotion.svg | 0 .../Editor}/Icons/Components/SimpleState.svg | 0 .../Editor}/Icons/Components/SkinnedMesh.svg | 0 .../Editor}/Icons/Components/SkyHighlight.svg | 0 .../Editor}/Icons/Components/Snow.svg | 0 .../Editor}/Icons/Components/Spawner.svg | 0 .../Editor}/Icons/Components/Sphere.png | 0 .../Editor}/Icons/Components/Sphere_Shape.svg | 0 .../Editor}/Icons/Components/Spline.svg | 0 .../Editor}/Icons/Components/StaticData.png | 0 .../Editor}/Icons/Components/StaticMesh.svg | 0 .../Icons/Components/StaticPhysics.svg | 0 .../Editor}/Icons/Components/Tag.svg | 0 .../Editor}/Icons/Components/Transform.svg | 0 .../Editor}/Icons/Components/TriggerArea.svg | 0 .../Editor}/Icons/Components/Tube_Shape.svg | 0 .../Icons/Components/UICanvasAssetRef.svg | 0 .../Icons/Components/UICanvasOnMesh.svg | 0 .../Icons/Components/UICanvasProxyRef.svg | 0 .../Editor}/Icons/Components/VRPreview.svg | 0 .../Icons/Components/Viewport/Animation.png | 0 .../Icons/Components/Viewport/AreaLight.png | 0 .../Icons/Components/Viewport/Attachment.png | 0 .../Icons/Components/Viewport/AudioArea.png | 0 .../Viewport/AudioAreaEnvironment.png | 0 .../Components/Viewport/AudioEnvironment.png | 0 .../Components/Viewport/AudioListener.png | 0 .../Viewport/AudioMultiPosition.png | 0 .../Icons/Components/Viewport/AudioRtpc.png | 0 .../Icons/Components/Viewport/AudioSwitch.png | 0 .../Components/Viewport/AudioTrigger.png | 0 .../Components/Viewport/BehaviorTree.png | 0 .../Editor}/Icons/Components/Viewport/Box.png | 0 .../Icons/Components/Viewport/Box_Shape.png | 0 .../Icons/Components/Viewport/Capsule.png | 0 .../Components/Viewport/Capsule_Shape.png | 0 .../Components/Viewport/CharacterPhysics.png | 0 .../Icons/Components/Viewport/Comment.png | 0 .../Viewport/ComponentPlaceholder.png | 0 .../Viewport/Component_Placeholder.png | 0 .../Icons/Components/Viewport/Cylinder.png | 0 .../Components/Viewport/Cylinder_Shape.png | 0 .../Icons/Components/Viewport/Decal.png | 0 .../Icons/Components/Viewport/Disk_Shape.png | 0 .../Components/Viewport/DynamicContent.png | 0 .../Icons/Components/Viewport/DynamicMesh.png | 0 .../Icons/Components/Viewport/Entity.png | 0 .../Components/Viewport/EntityInSlice.png | 0 .../Components/Viewport/EnvironmentProbe.png | 0 .../Icons/Components/Viewport/Flipbook.png | 0 .../Icons/Components/Viewport/FogVolume.png | 0 .../Icons/Components/Viewport/ForceVolume.png | 0 .../Components/Viewport/GeometryCache.png | 0 .../Viewport/HttpClientComponent.png | 0 .../Icons/Components/Viewport/LensFlare.png | 0 .../Icons/Components/Viewport/Light.png | 0 .../Icons/Components/Viewport/Lightning.png | 0 .../Components/Viewport/LightningArc.png | 0 .../Icons/Components/Viewport/LookAt.png | 0 .../Icons/Components/Viewport/Mannequin.png | 0 .../Viewport/MannequinScopeContext.png | 0 .../Components/Viewport/MeshCollider.png | 0 .../Viewport/MotionParameterSmoothing.png | 0 .../Icons/Components/Viewport/Navigation.png | 0 .../Components/Viewport/NavigationArea.png | 0 .../Components/Viewport/NavigationSeed.png | 0 .../Icons/Components/Viewport/NetBinding.png | 0 .../Icons/Components/Viewport/Nova.png | 0 .../Components/Viewport/ObjectAvoidance.png | 0 .../Icons/Components/Viewport/Particle.png | 0 .../Icons/Components/Viewport/Physics.png | 0 .../Components/Viewport/PhysicsConstraint.png | 0 .../Icons/Components/Viewport/PointLight.png | 0 .../Components/Viewport/PolygonPrism.png | 0 .../Viewport/Primitive Collider.png | 0 .../Components/Viewport/PrimitiveCollider.png | 0 .../Components/Viewport/ProjectorLight.png | 0 .../Icons/Components/Viewport/Quad_Shape.png | 0 .../Icons/Components/Viewport/Ragdoll.png | 0 .../Viewport/RandomTimedSpawner.png | 0 .../Components/Viewport/RigidPhysics.png | 0 .../Icons/Components/Viewport/Script.png | 0 .../Viewport/ScriptEventAssetReference.png | 0 .../Icons/Components/Viewport/Sequence.png | 0 .../Components/Viewport/SequenceAgent.png | 0 .../Icons/Components/Viewport/Shadow.png | 0 .../Icons/Components/Viewport/SimpleState.png | 0 .../Icons/Components/Viewport/SkinnedMesh.png | 0 .../Components/Viewport/SkyHighlight.png | 0 .../Icons/Components/Viewport/Snow.png | 0 .../Icons/Components/Viewport/Spawner.png | 0 .../Icons/Components/Viewport/Sphere.png | 0 .../Components/Viewport/Sphere_Shape.png | 0 .../Icons/Components/Viewport/Spline.png | 0 .../Icons/Components/Viewport/StaticData.png | 0 .../Icons/Components/Viewport/StaticMesh.png | 0 .../Components/Viewport/StaticPhysics.png | 0 .../Editor}/Icons/Components/Viewport/Tag.png | 0 .../Components/Viewport/TerrainPhysics.png | 0 .../Icons/Components/Viewport/Transform.png | 0 .../Icons/Components/Viewport/Trigger.png | 0 .../Icons/Components/Viewport/Tube_Shape.png | 0 .../Components/Viewport/UiCanvasOnMesh.png | 0 .../Icons/Components/Viewport/UiCanvasRef.png | 0 .../Icons/Components/Viewport/VRPreview.png | 0 .../Icons/Components/Viewport/WaterVolume.png | 0 .../Icons/Components/Viewport/WindVolume.png | 0 .../Icons/Components/WaterRippleGenerator.svg | 0 .../Editor}/Icons/Components/WaterVolume.svg | 0 .../Editor}/Icons/Components/WindVolume.svg | 0 .../Editor}/Icons/PhysX/Move.svg | 0 .../Editor}/Icons/PhysX/Rotate.svg | 0 .../Editor}/Icons/PhysX/Scale.svg | 0 .../Editor}/Icons/PropertyEditor/Browse.png | 0 .../Icons/PropertyEditor/Browse_on.png | 0 .../Editor}/Icons/PropertyEditor/add.png | 0 .../PropertyEditor/cross-circle-small.png | 0 .../Icons/PropertyEditor/cross-small.png | 0 .../Icons/PropertyEditor/error_icon.png | 0 .../Icons/PropertyEditor/group_closed.png | 0 .../Icons/PropertyEditor/group_open.png | 0 .../Icons/PropertyEditor/image_icon.svg | 0 .../Icons/PropertyEditor/list-add-small.png | 0 .../Editor}/Icons/PropertyEditor/open_in.png | 0 .../Icons/PropertyEditor/point_hand.png | 0 .../Editor}/Icons/PropertyEditor/remove.png | 0 .../Icons/PropertyEditor/reset_icon.png | 0 .../Icons/PropertyEditor/tool_cancel.png | 0 .../PropertyEditor/tool_cancel_highlight.png | 0 .../PropertyEditor/tool_cancel_hover.png | 0 .../Icons/PropertyEditor/trash-small.png | 0 .../Icons/PropertyEditor/tree_closed.png | 0 .../Icons/PropertyEditor/tree_open.png | 0 .../Editor}/Icons/RotationWarning.png | 0 .../Editor}/Icons/ScaleWarning.png | 0 .../Editor}/Icons/ScriptCanvas/Add.png | 0 .../Editor}/Icons/ScriptCanvas/And.png | 0 .../Editor}/Icons/ScriptCanvas/Boolean.png | 0 .../Editor}/Icons/ScriptCanvas/Breakpoint.png | 0 .../Editor}/Icons/ScriptCanvas/Bus.png | 0 .../Editor}/Icons/ScriptCanvas/Connect.png | 0 .../Editor}/Icons/ScriptCanvas/Delay.png | 0 .../Disabled/ScriptCanvas_white.png | 0 .../Editor}/Icons/ScriptCanvas/Disconnect.png | 0 .../Editor}/Icons/ScriptCanvas/Divide.png | 0 .../Editor}/Icons/ScriptCanvas/EntityRef.png | 0 .../Icons/ScriptCanvas/Libraries/All.png | 0 .../Icons/ScriptCanvas/Libraries/Core.png | 0 .../Icons/ScriptCanvas/Libraries/Entity.png | 0 .../Icons/ScriptCanvas/Libraries/Logic.png | 0 .../Icons/ScriptCanvas/Libraries/Math.png | 0 .../Editor}/Icons/ScriptCanvas/Multiply.png | 0 .../Editor}/Icons/ScriptCanvas/Not.png | 0 .../Editor}/Icons/ScriptCanvas/Number.png | 0 .../Editor}/Icons/ScriptCanvas/Or.png | 0 .../Icons/ScriptCanvas/Placeholder.png | 0 .../Editor}/Icons/ScriptCanvas/Print.png | 0 .../Editor}/Icons/ScriptCanvas/Random.png | 0 .../Editor}/Icons/ScriptCanvas/Rotate.png | 0 .../Icons/ScriptCanvas/ScriptCanvas.svg | 0 .../Editor}/Icons/ScriptCanvas/Start.png | 0 .../Editor}/Icons/ScriptCanvas/Step In.png | 0 .../Editor}/Icons/ScriptCanvas/Step Over.png | 0 .../Editor}/Icons/ScriptCanvas/String.png | 0 .../Editor}/Icons/ScriptCanvas/Subtract.png | 0 .../Editor}/Icons/ScriptCanvas/Sum.png | 0 .../ScriptCanvas/Viewport/ScriptCanvas.png | 0 .../Viewport/ScriptCanvas_Function.png | 0 .../Editor}/Icons/ScriptCanvas/Xor.png | 0 .../Editor}/Icons/ScriptCanvas/settings.png | 0 .../Editor}/Icons/WhiteBox/Move.svg | 0 .../Editor}/Icons/WhiteBox/RestoreMode.svg | 0 .../Editor}/Icons/WhiteBox/Rotate.svg | 0 .../Editor}/Icons/WhiteBox/Scale.svg | 0 .../Editor}/Icons/WhiteBox/SketchMode.svg | 0 .../Editor}/Icons/animation/add.png | 0 .../Editor}/Icons/animation/animation.png | 0 .../Icons/animation/animation_additive.png | 0 .../Icons/animation/animation_aimpose.png | 0 .../Icons/animation/animation_bspace.png | 0 .../Icons/animation/animation_comb.png | 0 .../Icons/animation/animation_lookpose.png | 0 .../Icons/animation/animation_offline.png | 0 .../Editor}/Icons/animation/attachment.png | 0 .../Icons/animation/audio_event_16.png | 0 .../Editor}/Icons/animation/back_16.png | 0 .../Editor}/Icons/animation/bind_pose.png | 0 .../Editor}/Icons/animation/bone.png | 0 .../Editor}/Icons/animation/build.png | 0 .../Editor}/Icons/animation/character.png | 0 .../Editor}/Icons/animation/close.png | 0 .../Icons/animation/close_highlight.png | 0 .../Editor}/Icons/animation/create_cdf.png | 0 .../Icons/animation/display_options.png | 0 .../Editor}/Icons/animation/filter_16.png | 0 .../Editor}/Icons/animation/footsteps.png | 0 .../Icons/animation/force_recompile.png | 0 .../Editor}/Icons/animation/forward_16.png | 0 .../Icons/animation/gizmo_location.png | 0 .../Editor}/Icons/animation/grid.png | 0 .../Editor}/Icons/animation/group.png | 0 .../Editor}/Icons/animation/import.png | 0 .../Editor}/Icons/animation/in_folder_16.png | 0 .../Icons/animation/in_folder_and_pak_16.png | 0 .../Editor}/Icons/animation/in_pak_16.png | 0 .../Editor}/Icons/animation/lock_16.png | 0 .../Editor}/Icons/animation/new_animation.png | 0 .../Editor}/Icons/animation/physics.png | 0 .../Icons/animation/playback_options.png | 0 .../Editor}/Icons/animation/redo.png | 0 .../Editor}/Icons/animation/revert.png | 0 .../Editor}/Icons/animation/rig.png | 0 .../Editor}/Icons/animation/save.png | 0 .../Editor}/Icons/animation/selection_16.png | 0 .../Icons/animation/show_in_explorer.png | 0 .../Editor}/Icons/animation/skeleton.png | 0 .../Editor}/Icons/animation/skin.png | 0 .../Icons/animation/source_asset_16.png | 0 .../Editor}/Icons/animation/tool_move.png | 0 .../Editor}/Icons/animation/tool_rotate.png | 0 .../Editor}/Icons/animation/tool_scale.png | 0 .../Editor}/Icons/animation/tool_select.png | 0 .../Editor}/Icons/animation/undo.png | 0 .../Editor}/Icons/checkmark_checked.png | 0 .../Editor}/Icons/checkmark_checked_hover.png | 0 .../Icons/checkmark_unchecked_hover.png | 0 {Editor => Assets/Editor}/Icons/close.png | 0 {Editor => Assets/Editor}/Icons/float.png | 0 {Editor => Assets/Editor}/Icons/lc_camera.png | 0 .../Editor}/Icons/lc_exportandlaunch.png | 0 {Editor => Assets/Editor}/Icons/lc_pc.png | 0 {Editor => Assets/Editor}/Icons/lc_power.png | 0 {Editor => Assets/Editor}/Icons/lc_sshot.png | 0 {Editor => Assets/Editor}/Icons/lc_sync.png | 0 {Editor => Assets/Editor}/Icons/reset.png | 0 {Editor => Assets/Editor}/Icons/split.png | 0 .../LambdaFunctions/LwALambdaFunction.js | 0 .../LwFacebookLambdaFunction.js | 0 .../LwGenericOpenIdConnectLambdaFunction.js | 0 .../LambdaFunctions/LwGoogleLambdaFunction.js | 0 {Editor => Assets/Editor}/LevelTemplates.xml | 0 .../Editor}/MapScreenshotSettings.xml | 0 .../Editor}/Materials/ShaderList.xml | 0 .../Editor}/Materials/Stripes.tif | 0 .../Materials/Stripes.tif.exportsettings | 0 .../Editor}/Materials/areasolid.dds | 0 .../Editor}/Materials/areasolid.mtl | 0 .../Materials/crydesigner_selection.mtl | 0 .../Editor}/Materials/default_rope.mtl | 0 .../Editor}/Materials/lodgen_template.mtl | 6 +- .../Editor}/Materials/refpicture.mtl | 0 .../Editor}/Materials/voxel_editor.mtl | 0 .../Editor}/Materials/voxel_editor.png | 0 .../Materials/voxel_editor.png.exportsettings | 0 {Editor => Assets/Editor}/MissionTemplate.lua | 0 {Editor => Assets/Editor}/ModellingPanel.xml | 0 .../Editor}/NewEntityTemplate.ent_template | 0 .../Editor}/NewEntityTemplate.lua_template | 0 .../Editor}/ObjectIcons/AreaTrigger.bmp | 0 .../Editor}/ObjectIcons/AudioAreaAmbience.bmp | 0 .../Editor}/ObjectIcons/AudioAreaEntity.bmp | 0 .../Editor}/ObjectIcons/AudioAreaRandom.bmp | 0 .../Editor}/ObjectIcons/Camera.bmp | 0 .../Editor}/ObjectIcons/Checkpoint.bmp | 0 .../Editor}/ObjectIcons/ClipVolume.bmp | 0 .../Editor}/ObjectIcons/Clock.bmp | 0 .../Editor}/ObjectIcons/Clouds.bmp | 0 .../Editor}/ObjectIcons/Comment.bmp | 0 .../Editor}/ObjectIcons/DeadBody.bmp | 0 .../Editor}/ObjectIcons/Decal.bmp | 0 .../Editor}/ObjectIcons/Dialog.bmp | 0 .../Editor}/ObjectIcons/Flash.bmp | 0 {Editor => Assets/Editor}/ObjectIcons/Fog.bmp | 0 .../Editor}/ObjectIcons/FogVolume.bmp | 0 .../Editor}/ObjectIcons/GravitySphere.bmp | 0 .../Editor}/ObjectIcons/Item.bmp | 0 .../Editor}/ObjectIcons/Ladder.bmp | 0 .../Editor}/ObjectIcons/Light.bmp | 0 .../ObjectIcons/LightPropagationVolume.bmp | 0 .../Editor}/ObjectIcons/Lightning.bmp | 0 .../Editor}/ObjectIcons/Magnet.bmp | 0 .../Editor}/ObjectIcons/MultiTrigger.bmp | 0 {Editor => Assets/Editor}/ObjectIcons/ODD.bmp | 0 .../Editor}/ObjectIcons/Particles.bmp | 0 .../Editor}/ObjectIcons/PrecacheCamera.bmp | 0 .../Editor}/ObjectIcons/Prefab.bmp | 0 .../Editor}/ObjectIcons/Prompt.bmp | 0 .../Editor}/ObjectIcons/SavePoint.bmp | 0 .../Editor}/ObjectIcons/Seed.bmp | 0 .../Editor}/ObjectIcons/Sound.bmp | 0 .../Editor}/ObjectIcons/SpawnPoint.bmp | 0 {Editor => Assets/Editor}/ObjectIcons/T.bmp | 0 .../Editor}/ObjectIcons/TagPoint.bmp | 0 .../Editor}/ObjectIcons/Trigger.bmp | 0 .../Editor}/ObjectIcons/UiCanvasRefEntity.bmp | 0 .../Editor}/ObjectIcons/User.bmp | 0 .../Editor}/ObjectIcons/VVVArea.bmp | 0 {Editor => Assets/Editor}/ObjectIcons/W.bmp | 0 .../Editor}/ObjectIcons/Water.bmp | 0 .../Editor}/ObjectIcons/animobject.bmp | 0 .../Editor}/ObjectIcons/bird.bmp | 0 {Editor => Assets/Editor}/ObjectIcons/bug.bmp | 0 .../Editor}/ObjectIcons/character.bmp | 0 .../Editor}/ObjectIcons/death.bmp | 0 .../Editor}/ObjectIcons/door.bmp | 0 .../Editor}/ObjectIcons/elevator.bmp | 0 .../Editor}/ObjectIcons/environmentProbe.bmp | 0 .../Editor}/ObjectIcons/explosion.bmp | 0 .../Editor}/ObjectIcons/fish.bmp | 0 .../Editor}/ObjectIcons/forbiddenarea.bmp | 0 .../Editor}/ObjectIcons/hazard.bmp | 0 .../Editor}/ObjectIcons/health.bmp | 0 .../Editor}/ObjectIcons/ledge.bmp | 0 .../Editor}/ObjectIcons/mine.bmp | 0 .../Editor}/ObjectIcons/physicsobject.bmp | 0 .../Editor}/ObjectIcons/prefabbuilding.bmp | 0 .../ObjectIcons/proceduralbuilding.bmp | 0 .../Editor}/ObjectIcons/proceduralobject.bmp | 0 .../Editor}/ObjectIcons/proximitytrigger.bmp | 0 .../Editor}/ObjectIcons/river.bmp | 0 .../Editor}/ObjectIcons/road.bmp | 0 .../Editor}/ObjectIcons/rope.bmp | 0 .../Editor}/ObjectIcons/sequence.bmp | 0 .../Editor}/ObjectIcons/shake.bmp | 0 .../Editor}/ObjectIcons/smartobject.bmp | 0 .../Editor}/ObjectIcons/spawngroup.bmp | 0 .../Editor}/ObjectIcons/spectator.bmp | 0 .../Editor}/ObjectIcons/switch.bmp | 0 .../Editor}/ObjectIcons/territory.bmp | 0 .../Editor}/ObjectIcons/tornado.bmp | 0 .../Editor}/ObjectIcons/vehicle.bmp | 0 .../Editor}/ObjectIcons/voxel.bmp | 0 .../Editor}/ObjectIcons/wave.bmp | 0 {Editor => Assets/Editor}/ObjectTemplates.xml | 0 {Editor => Assets/Editor}/Objects/Arrow.cgf | 0 {Editor => Assets/Editor}/Objects/Axis.cgf | 0 {Editor => Assets/Editor}/Objects/Clock.cgf | 0 {Editor => Assets/Editor}/Objects/Comment.cgf | 0 .../Editor}/Objects/CryDesigner_camera.grp | 0 {Editor => Assets/Editor}/Objects/M.cgf | 0 {Editor => Assets/Editor}/Objects/MtlBox.cgf | 0 .../Editor}/Objects/MtlObjects.max | 0 .../Editor}/Objects/MtlPlane.cgf | 0 .../Editor}/Objects/MtlSphere.cgf | 0 .../Editor}/Objects/MtlSwatch.cgf | 0 .../Editor}/Objects/MtlTeapot.cgf | 0 .../Editor}/Objects/MusicTheme.cgf | 0 .../Editor}/Objects/Particles.cgf | 0 {Editor => Assets/Editor}/Objects/Pyramid.cgf | 0 {Editor => Assets/Editor}/Objects/S.cgf | 0 {Editor => Assets/Editor}/Objects/Sound.cgf | 0 {Editor => Assets/Editor}/Objects/Sphere.cgf | 0 {Editor => Assets/Editor}/Objects/T.cgf | 0 {Editor => Assets/Editor}/Objects/Vis.cgf | 0 {Editor => Assets/Editor}/Objects/W.cgf | 0 .../Editor}/Objects/ai_hide_point.cgf | 0 {Editor => Assets/Editor}/Objects/anchor.cgf | 0 .../Editor}/Objects/assaultspawn.cgf | 0 {Editor => Assets/Editor}/Objects/border.cgf | 0 {Editor => Assets/Editor}/Objects/box.cgf | 0 .../Editor}/Objects/box_nodraw.cgf | 0 {Editor => Assets/Editor}/Objects/buyzone.cgf | 0 .../Editor}/Objects/c2_car_jump_cross.cgf | 0 .../Editor}/Objects/c2_crawl_h150.cgf | 0 .../Editor}/Objects/c2_duck_v125.cgf | 0 .../Editor}/Objects/c2_jump_h1200.cgf | 0 .../Editor}/Objects/c2_jump_h500.cgf | 0 .../Editor}/Objects/c2_jump_h900.cgf | 0 .../Editor}/Objects/c2_jump_h900_v150.cgf | 0 .../Editor}/Objects/c2_jump_v150.cgf | 0 .../Editor}/Objects/c2_jump_v300.cgf | 0 .../Editor}/Objects/c2_jump_v450.cgf | 0 .../Editor}/Objects/c2_jumpdown_v900.cgf | 0 .../Objects/c2_jumpwindow_combo_v550.cgf | 0 .../Editor}/Objects/c2_jumpwindow_v550.cgf | 0 .../Objects/c2_jumpzigzag_v300_v750_lft.cgf | 0 .../Objects/c2_jumpzigzag_v300_v750_rgt.cgf | 0 .../Editor}/Objects/c2_slide_h400.cgf | 0 .../Editor}/Objects/c2_slidedown_v1800.cgf | 0 .../Editor}/Objects/c2_vault_v125.cgf | 0 .../Editor}/Objects/c2_vault_v800.cgf | 0 .../Objects/c2_wall_jump_h900_v450.cgf | 0 .../Editor}/Objects/c2_wall_run_h900_v300.cgf | 0 .../Editor}/Objects/c3_dive_h900.cgf | 0 .../Editor}/Objects/c3_doorbreak_human.cgf | 0 .../Editor}/Objects/c3_doorframe.cgf | 0 .../Editor}/Objects/c3_jump_v150_large.cgf | 0 .../Editor}/Objects/c3_jump_v300_large.cgf | 0 .../Editor}/Objects/c3_jump_v450_large.cgf | 0 .../Editor}/Objects/c3_repeldown_v2600.cgf | 0 .../Editor}/Objects/c3_repeldown_v900.cgf | 0 .../Objects/c3_so_cornerPopOutSearchLeft.cgf | 0 .../Objects/c3_so_cornerPopOutSearchRight.cgf | 0 .../Editor}/Objects/c3_vault_v125_large.cgf | 0 .../Editor}/Objects/c3_zipline_7500_15.cgf | 0 .../Objects/collision_dummy_100x50.cgf | 0 .../Editor}/Objects/collision_dummy_25x50.cgf | 0 .../Editor}/Objects/collision_dummy_50x50.cgf | 0 .../Editor}/Objects/corner270.cgf | 0 .../Editor}/Objects/editor_helpers.max | 0 .../Editor}/Objects/energypoint.cgf | 0 .../Editor}/Objects/entrypoint.cgf | 0 {Editor => Assets/Editor}/Objects/envcube.cgf | 0 {Editor => Assets/Editor}/Objects/envcube.max | 0 {Editor => Assets/Editor}/Objects/envcube.mtl | 0 {Editor => Assets/Editor}/Objects/factory.cgf | 0 {Editor => Assets/Editor}/Objects/flock.cgf | 0 .../Editor}/Objects/forbiddenarea.cgf | 0 {Editor => Assets/Editor}/Objects/gradb.dds | 0 {Editor => Assets/Editor}/Objects/gradf.dds | 0 {Editor => Assets/Editor}/Objects/helper.mtl | 0 .../Editor}/Objects/helper_illum.mtl | 0 .../Editor}/Objects/hidepoint.cgf | 0 .../Editor}/Objects/hidepoint_sec.cgf | 0 .../Editor}/Objects/highvault.cgf | 0 {Editor => Assets/Editor}/Objects/hq.cgf | 0 .../Editor}/Objects/invisiblebox.cgf | 0 .../Editor}/Objects/invisibleobstruct.cgf | 0 .../Editor}/Objects/invisibleocclude.cgf | 0 .../Editor}/Objects/invisiblewall.cgf | 0 .../Editor}/Objects/jump_150.cgf | 0 .../Editor}/Objects/jump_300.cgf | 0 .../Editor}/Objects/jump_450.cgf | 0 .../Editor}/Objects/leap_1000.cgf | 0 .../Editor}/Objects/leap_500.cgf | 0 .../Editor}/Objects/light_omni.cgf | 0 .../Editor}/Objects/light_spot.cgf | 0 .../Editor}/Objects/lightsphere.cgf | 0 .../Editor}/Objects/measurehelper_A.cgf | 0 .../Editor}/Objects/measurehelper_B.cgf | 0 {Editor => Assets/Editor}/Objects/mtlbox.mtl | 0 .../Editor}/Objects/mtlobjects.mtl | 0 .../Editor}/Objects/objective.cgf | 0 {Editor => Assets/Editor}/Objects/phoenix.cgf | 0 .../Editor}/Objects/refpicture.cgf | 0 .../Editor}/Objects/refpicture.max | 0 .../Editor}/Objects/reinforcement_point.cgf | 0 .../Editor}/Objects/smartobject_helper.max | 0 .../Editor}/Objects/spawngroup.cgf | 0 .../Editor}/Objects/spawnpointhelper.cgf | 0 .../Editor}/Objects/spawnpointhelper.mtl | 0 .../Editor}/Objects/stayOnWallFire_left.cgf | 0 .../Editor}/Objects/suit_jump_300.cgf | 0 .../Editor}/Objects/suit_jump_800.cgf | 0 .../Editor}/Objects/suit_leap_800.cgf | 0 .../defaults/DefaultParticleEmitters.xml | 0 .../defaults/defaultParticle.dds | 0 .../defaults/feather01.tif | 0 .../defaults/puffup01.tif | 0 .../settings/ToolTips.xml | 0 .../CanvasIcons/Anchor_Left.tif | 0 .../CanvasIcons/Anchor_TopLeft.tif | 0 .../CanvasIcons/Anchor_Whole.tif | 0 .../CanvasIcons/Border_Selected.tif | 0 .../CanvasIcons/Border_Unselected.tif | 0 .../CanvasIcons/Canvas_Background.tif | 0 .../UiCanvasEditor/CanvasIcons/DottedLine.tif | 0 .../UiCanvasEditor/CanvasIcons/Pivot.tif | 0 .../Transform_Gizmo_Center_Square.tif | 0 .../CanvasIcons/Transform_Gizmo_Circle.tif | 0 .../Transform_Gizmo_Line_Square_X.tif | 0 .../Transform_Gizmo_Line_Square_Y.tif | 0 .../Transform_Gizmo_Line_Triangle_X.tif | 0 .../Transform_Gizmo_Line_Triangle_Y.tif | 0 .../Editor}/Presets/GeomCache/game.cbc | 0 .../Editor}/Presets/GeomCache/game_lz4hc.cbc | 0 .../Editor}/Presets/GeomCache/game_z_up.cbc | 0 .../Presets/GeomCache/game_z_up_lz4hc.cbc | 0 .../Editor}/Presets/GeomCache/prerendered.cbc | 0 .../Presets/GeomCache/prerendered_z_up.cbc | 0 .../Editor}/Presets/GeomCache/rigids_only.cbc | 0 .../Presets/GeomCache/rigids_only_z_up.cbc | 0 .../Presets/GeomCache/uncompressed.cbc | 0 .../Presets/GeomCache/uncompressed_z_up.cbc | 0 .../MobileSettings/GPUAndDriverLists.json | 0 .../Presets/MobileSettings/IPhone7.lms | 0 .../Presets/MobileSettings/IpadPro.lms | 0 .../MobileFeatureBlackList.json | 0 .../Editor}/Presets/MobileSettings/Nexus9.lms | 0 .../MobileSettings/SamsungGalaxyS7_Mali.lms | 0 .../SamsungGalaxyS7_Qualcomm.lms | 0 .../Editor}/PropertyEnumerations.xml | 0 .../Editor}/Scripts/Shelves/icons/Albedo.png | 0 .../Shelves/icons/Diffuse_Lighting.png | 0 .../Shelves/icons/Diffuse_Texture_Res_360.png | 0 .../Scripts/Shelves/icons/Empty_Wireframe.png | 0 .../Editor}/Scripts/Shelves/icons/Exit.png | 0 .../Scripts/Shelves/icons/Fuzziness.png | 0 .../Editor}/Scripts/Shelves/icons/Gloss.png | 0 .../Shelves/icons/Normal_Texture_Res_360.png | 0 .../Shelves/icons/PrefabAddLibrary.png | 0 .../Shelves/icons/PrefabAddSelection.png | 0 .../Scripts/Shelves/icons/PrefabBreak.png | 0 .../Scripts/Shelves/icons/PrefabConvert.png | 0 .../Scripts/Shelves/icons/PrefabCreate.png | 0 .../Scripts/Shelves/icons/PrefabIsolate.png | 0 .../Scripts/Shelves/icons/Scattering.png | 0 .../Scripts/Shelves/icons/Solid_Wireframe.png | 0 .../Scripts/Shelves/icons/Spec_Amount.png | 0 .../Scripts/Shelves/icons/Spec_Lighting.png | 0 .../Shelves/icons/Texel_Per_Meter_1024.png | 0 .../Shelves/icons/Texel_Per_Meter_256.png | 0 .../Shelves/icons/Texel_Per_Meter_512.png | 0 .../Editor}/Scripts/Shelves/icons/all.png | 0 .../Editor}/Scripts/Shelves/icons/beams.png | 0 .../Editor}/Scripts/Shelves/icons/blanker.png | 0 .../Scripts/Shelves/icons/bounding_box.png | 0 .../Editor}/Scripts/Shelves/icons/brushes.png | 0 .../Editor}/Scripts/Shelves/icons/cloud.png | 0 .../Scripts/Shelves/icons/cloud_dark.png | 0 .../Scripts/Shelves/icons/cloud_dark_rain.png | 0 .../Scripts/Shelves/icons/collisions.png | 0 .../Shelves/icons/create_ao_volume_box.png | 0 .../icons/create_both_vis_box_envprobe.png | 0 .../Scripts/Shelves/icons/create_envprobe.png | 0 .../Shelves/icons/create_portal_box.png | 0 .../Scripts/Shelves/icons/create_vis_box.png | 0 .../icons/create_vis_box_and_portal_box.png | 0 .../create_vis_box_env_probe_and_portal.png | 0 .../Editor}/Scripts/Shelves/icons/cubemap.png | 0 .../Editor}/Scripts/Shelves/icons/decals.png | 0 .../Shelves/icons/default_material.png | 0 .../icons/default_material_with_normals.png | 0 .../Scripts/Shelves/icons/designer.png | 0 .../Scripts/Shelves/icons/diff_acc.png | 0 .../Scripts/Shelves/icons/display_info.png | 0 .../Scripts/Shelves/icons/dual_layer_mask.png | 0 .../Scripts/Shelves/icons/dynamiclights.png | 0 .../Scripts/Shelves/icons/entities.png | 0 .../Shelves/icons/eye_adaptation_speed.png | 0 .../Editor}/Scripts/Shelves/icons/fog.png | 0 .../Scripts/Shelves/icons/fogvolumes.png | 0 .../Shelves/icons/freeze_particles.png | 0 .../Scripts/Shelves/icons/full_shading.png | 0 .../Editor}/Scripts/Shelves/icons/gamma.png | 0 .../Editor}/Scripts/Shelves/icons/gi.png | 0 .../Scripts/Shelves/icons/lens_flare.png | 0 .../Scripts/Shelves/icons/lighting_only.png | 0 .../Editor}/Scripts/Shelves/icons/lods.png | 0 .../Editor}/Scripts/Shelves/icons/lsao.png | 0 .../Scripts/Shelves/icons/lsao_toggle.png | 0 .../Editor}/Scripts/Shelves/icons/lsro.png | 0 .../Editor}/Scripts/Shelves/icons/normals.png | 0 .../Scripts/Shelves/icons/normals_x.png | 0 .../Scripts/Shelves/icons/normals_y.png | 0 .../Scripts/Shelves/icons/normals_z.png | 0 .../Editor}/Scripts/Shelves/icons/ocean.png | 0 .../Scripts/Shelves/icons/particles.png | 0 .../Shelves/icons/particles_bounds.png | 0 .../Scripts/Shelves/icons/particles_off.png | 0 .../Shelves/icons/particles_overdraw.png | 0 .../icons/particles_screen_coverage.png | 0 .../Scripts/Shelves/icons/placeholder.png | 0 .../Editor}/Scripts/Shelves/icons/prefab.png | 0 .../Scripts/Shelves/icons/reflections.png | 0 .../Editor}/Scripts/Shelves/icons/reset.png | 0 .../Editor}/Scripts/Shelves/icons/selfocc.png | 0 .../Shelves/icons/shaded_wireframe.png | 0 .../Editor}/Scripts/Shelves/icons/shadows.png | 0 .../Scripts/Shelves/icons/showlines.png | 0 .../Editor}/Scripts/Shelves/icons/sky.png | 0 .../Scripts/Shelves/icons/spec_acc.png | 0 .../Scripts/Shelves/icons/spec_lum.png | 0 .../Scripts/Shelves/icons/spec_occ.png | 0 .../Editor}/Scripts/Shelves/icons/ssao.png | 0 .../Editor}/Scripts/Shelves/icons/ssdo.png | 0 .../Scripts/Shelves/icons/ssdo_toggle.png | 0 .../Editor}/Scripts/Shelves/icons/sun.big.png | 0 .../Scripts/Shelves/icons/tangents.png | 0 .../Editor}/Scripts/Shelves/icons/terrain.png | 0 .../Shelves/icons/time_scale_double.png | 0 .../Shelves/icons/time_scale_frozen.png | 0 .../Scripts/Shelves/icons/time_scale_half.png | 0 .../Shelves/icons/time_scale_quarter.png | 0 .../Shelves/icons/time_scale_tenth.png | 0 .../Editor}/Scripts/Shelves/icons/tod.png | 0 .../Scripts/Shelves/icons/translucency.png | 0 .../Scripts/Shelves/icons/transparency.png | 0 .../Scripts/Shelves/icons/valid_albedo.png | 0 .../Scripts/Shelves/icons/valid_spec_lum.png | 0 .../Scripts/Shelves/icons/vegetation.png | 0 .../Scripts/Shelves/icons/vertex_normals.png | 0 .../Scripts/Shelves/icons/vis_area.png | 0 .../Scripts/Shelves/icons/water_volume.png | 0 .../Editor}/Scripts/Shelves/icons/wind.png | 0 .../Scripts/Shelves/icons/wireframe.png | 0 .../Editor}/Scripts/TrackView/example.py | 0 .../Scripts/editor_script_validation.py | 0 .../Scripts/export_all_project_levels.py | 0 .../Editor}/Scripts/generatelod.py | 0 .../Editor}/Scripts/rename_cgf.py | 0 .../Scripts/select_story_anim_objects.py | 0 .../Editor}/Scripts/tools_shelf_actions.py | 0 {Editor => Assets/Editor}/SoundTemplates.xml | 0 .../Editor}/Styles/AssetImporterWindow.qss | 0 .../Editor}/Styles/AssetProcessor.qss | 0 .../Styles/AssetProcessorGlobalStyleSheet.qss | 0 ...setProcessorGlobalStyleSheetVariables.json | 0 .../Editor}/Styles/CryDark.cjstyles | Bin .../Editor}/Styles/CryLight.cjstyles | Bin .../Editor}/Styles/MultiMeshSelectionPane.qss | 0 .../Editor}/Styles/Office2007.dll | 0 .../Editor}/Styles/Office2007Black.dll | 0 .../Editor}/Styles/Office2007Silver.dll | 0 .../StyleSheetImages/Validation_icon.png | 0 .../Styles/StyleSheetImages/about_dark.png | 0 .../Styles/StyleSheetImages/about_light.png | 0 .../Styles/StyleSheetImages/arrow_down_V2.png | 0 .../Styles/StyleSheetImages/arrow_left_V2.png | 0 .../StyleSheetImages/arrow_right_V2.png | 0 .../Styles/StyleSheetImages/arrow_up_V2.png | 0 .../StyleSheetImages/checkbox_checked.png | 0 .../checkbox_checked_disabled.png | 0 .../checkbox_checked_hover.png | 0 .../checkbox_checked_pressed.png | 0 .../checkbox_indeterminate_hover .png | 0 .../checkbox_indeterminate_pressed.png | 0 .../StyleSheetImages/checkbox_unchecked.png | 0 .../checkbox_unchecked_disabled.png | 0 .../checkbox_unchecked_hover.png | 0 .../checkbox_unchecked_pressed.png | 0 .../StyleSheetImages/dropdown_arrow.png | 0 .../Styles/StyleSheetImages/error_icon.png | 0 .../Editor}/Styles/StyleSheetImages/help.png | 0 .../Styles/StyleSheetImages/info_icon.png | 0 .../StyleSheetImages/radiobutton_checked.png | 0 .../radiobutton_checked_disabled.png | 0 .../radiobutton_unchecked.png | 0 .../radiobutton_unchecked_disabled.png | 0 .../Styles/StyleSheetImages/spinbox_down.png | 0 .../Styles/StyleSheetImages/spinbox_up.png | 0 .../StyleSheetImages/treeview_arrow_down.png | 0 .../StyleSheetImages/treeview_arrow_right.png | 0 .../Editor}/Styles/stylesheet_Dark.qss | 0 .../Editor}/Styles/stylesheet_Light.qss | 0 {Editor => Assets/Editor}/ToolBox.xml | 0 .../Editor}/Translation/scriptcanvas_en_us.ts | 0 .../Editor}/UI/AssetBrowserRibbon.xml | 0 {Editor => Assets/Editor}/UI/Icons/AddSel.png | 0 .../Editor}/UI/Icons/AlObjGrid.png | 0 .../Editor}/UI/Icons/AlObjSurf.png | 0 .../Editor}/UI/Icons/AlSelect.png | 0 .../Editor}/UI/Icons/Animation Graph.png | 0 .../Editor}/UI/Icons/Asset Browser.png | 0 .../Editor}/UI/Icons/AssetBrowserCheckers.png | 0 .../UI/Icons/AssetBrowserFilterPresets.png | 0 .../UI/Icons/AssetBrowserFromViewportSel.png | 0 .../Editor}/UI/Icons/AssetBrowserRefresh.png | 0 .../UI/Icons/AssetBrowserSelectInViewport.png | 0 .../Editor}/UI/Icons/AssetBrowserSound.png | 0 .../UI/Icons/AssetBrowserThumbInvalid.png | 0 .../UI/Icons/AssetBrowserThumbLoading.png | 0 .../UI/Icons/AssetBrowserTooltipShadow.png | 0 .../Editor}/UI/Icons/AssetFav.png | 0 .../Editor}/UI/Icons/AssetTag.png | 0 {Editor => Assets/Editor}/UI/Icons/Attach.png | 0 .../Editor}/UI/Icons/AutoSync.png | 0 .../Editor}/UI/Icons/Character Tool.png | 0 {Editor => Assets/Editor}/UI/Icons/Clone.png | 0 .../Editor}/UI/Icons/CloseGroup.png | 0 {Editor => Assets/Editor}/UI/Icons/Cloud.png | 0 {Editor => Assets/Editor}/UI/Icons/ConOpt.png | 0 .../Editor}/UI/Icons/ConvertSelToBrushes.png | 0 .../Editor}/UI/Icons/ConvertSelToDesigner.png | 0 .../UI/Icons/ConvertSelToSimpleEntity.png | 0 .../UI/Icons/ConvertSelToStaticEntity.png | 0 .../Editor}/UI/Icons/Database View.png | 0 {Editor => Assets/Editor}/UI/Icons/DelSel.png | 0 {Editor => Assets/Editor}/UI/Icons/Delete.png | 0 {Editor => Assets/Editor}/UI/Icons/Detach.png | 0 .../Editor}/UI/Icons/Dialog Editor.png | 0 .../UI/Icons/Edit Terrain Lighting.png | 0 .../Editor}/UI/Icons/Edit Vegetation.png | 0 .../UI/Icons/Editor Settings Manager.png | 0 .../Editor}/UI/Icons/Error Report.png | 0 .../Editor}/UI/Icons/Export Block.png | 0 .../Editor}/UI/Icons/Facial Editor.png | 0 {Editor => Assets/Editor}/UI/Icons/Fetch.png | 0 .../Editor}/UI/Icons/Flatten Terrain.png | 0 {Editor => Assets/Editor}/UI/Icons/Follow.png | 0 .../Editor}/UI/Icons/FollowSnap.png | 0 .../UI/Icons/ForceSyncLevelToConsole.png | 0 {Editor => Assets/Editor}/UI/Icons/Freeze.png | 0 {Editor => Assets/Editor}/UI/Icons/Front.png | 0 .../Editor}/UI/Icons/GetPhysics.png | 0 .../Editor}/UI/Icons/GoToObj.png | 0 .../Editor}/UI/Icons/GotoTagPoint.png | 0 {Editor => Assets/Editor}/UI/Icons/Group.png | 0 {Editor => Assets/Editor}/UI/Icons/Hide.png | 0 {Editor => Assets/Editor}/UI/Icons/Hold.png | 0 .../Editor}/UI/Icons/Import Block.png | 0 .../UI/Icons/ImportExport Terrain Texture.png | 0 {Editor => Assets/Editor}/UI/Icons/Invert.png | 0 .../Editor}/UI/Icons/LNM Editor.png | 0 .../Editor}/UI/Icons/LaunchLevel.png | 0 .../Editor}/UI/Icons/Layer Editor.png | 0 {Editor => Assets/Editor}/UI/Icons/Layer.png | 0 {Editor => Assets/Editor}/UI/Icons/Left.png | 0 .../Editor}/UI/Icons/Lighting Tool.png | 0 {Editor => Assets/Editor}/UI/Icons/Link.png | 0 .../Editor}/UI/Icons/LoadGameLevel.png | 0 .../Editor}/UI/Icons/LoadGameLevel_16x16.png | 0 .../Editor}/UI/Icons/LoadLevel.png | 0 .../Editor}/UI/Icons/LoadSelObj.png | 0 .../Editor}/UI/Icons/LoadSelObj_16x16.png | 0 .../Editor}/UI/Icons/MakePref.png | 0 .../Editor}/UI/Icons/Mannequin Editor.png | 0 .../Editor}/UI/Icons/Mannequin.png | 0 {Editor => Assets/Editor}/UI/Icons/Map.png | 0 .../Editor}/UI/Icons/Material Editor.png | 0 .../UI/Icons/Material_Editor_16x16.png | 0 .../UI/Icons/Measurement System Tool.png | 0 .../UI/Icons/Missing Asset Resolver.png | 0 .../Editor}/UI/Icons/Model Preview.png | 0 .../Editor}/UI/Icons/Modular Editor.png | 0 {Editor => Assets/Editor}/UI/Icons/Move.png | 0 .../Editor}/UI/Icons/NavContinuousUpdate.png | 0 .../Editor}/UI/Icons/NavContinuousUpdate2.png | 0 .../Editor}/UI/Icons/NavDebugDisplay.png | 0 .../Editor}/UI/Icons/NavNewArea.png | 0 .../Editor}/UI/Icons/NavNewSeed.png | 0 .../Editor}/UI/Icons/NavShowAreas.png | 0 .../Editor}/UI/Icons/NavShowAreas2.png | 0 .../Editor}/UI/Icons/OpenGroup.png | 0 .../Editor}/UI/Icons/Perspective.png | 0 .../UI/Icons/QCollapsePanel/collapsed.png | 0 .../Editor}/UI/Icons/QCollapsePanel/open.png | 0 .../QEditorCollapseGroup/arrow_down_V2.png | 0 .../QEditorCollapseGroup/arrow_right_V2.png | 0 {Editor => Assets/Editor}/UI/Icons/Redo.png | 0 .../Editor}/UI/Icons/RefCoord.png | 0 .../Editor}/UI/Icons/Reload Terrain-.png | 0 .../Editor}/UI/Icons/Reload Terrain.png | 0 .../Editor}/UI/Icons/ReloadAll.png | 0 {Editor => Assets/Editor}/UI/Icons/Rename.png | 0 .../Editor}/UI/Icons/ResetPhysics.png | 0 .../Editor}/UI/Icons/Resize Terrain.png | 0 {Editor => Assets/Editor}/UI/Icons/Rotate.png | 0 {Editor => Assets/Editor}/UI/Icons/Ruler.png | 0 .../Editor}/UI/Icons/Save as Geometry.png | 0 .../Editor}/UI/Icons/SaveGameLevel.png | 0 .../Editor}/UI/Icons/SaveSelObj.png | 0 .../Editor}/UI/Icons/SaveTagPoint.png | 0 {Editor => Assets/Editor}/UI/Icons/Scale.png | 0 .../Editor}/UI/Icons/SelObjType.png | 0 .../Editor}/UI/Icons/Select Objects.png | 0 {Editor => Assets/Editor}/UI/Icons/Select.png | 0 .../Editor}/UI/Icons/SelectAll.png | 0 .../Editor}/UI/Icons/SelectNone.png | 0 .../Editor}/UI/Icons/SelectObjects.png | 0 .../Editor}/UI/Icons/SelectTerrainArea.png | 0 .../Editor}/UI/Icons/SelectionMask.bmp | 0 .../Editor}/UI/Icons/SetHeight.png | 0 .../Editor}/UI/Icons/ShowRollup.png | 0 {Editor => Assets/Editor}/UI/Icons/SimObj.png | 0 .../Editor}/UI/Icons/Smart Objects Editor.png | 0 .../Editor}/UI/Icons/Smooth Terrain.png | 0 .../Editor}/UI/Icons/SnapAngle.png | 0 .../Editor}/UI/Icons/SnapGrid.png | 0 .../Editor}/UI/Icons/SyncCamera.png | 0 .../Editor}/UI/Icons/SyncData.png | 0 .../Editor}/UI/Icons/Terrain Editor.png | 0 .../UI/Icons/Terrain Texture Layers.png | 0 .../Editor}/UI/Icons/Time of Day.png | 0 {Editor => Assets/Editor}/UI/Icons/Top.png | 0 .../Editor}/UI/Icons/Track View.png | 0 .../Editor}/UI/Icons/UI Emulator.png | 0 {Editor => Assets/Editor}/UI/Icons/Undo.png | 0 .../Editor}/UI/Icons/Unfreeze.png | 0 .../Editor}/UI/Icons/Ungroup.png | 0 .../Editor}/UI/Icons/UnhideAll.png | 0 .../Editor}/UI/Icons/UnhideAll_32.png | 0 {Editor => Assets/Editor}/UI/Icons/Unlink.png | 0 .../Editor}/UI/Icons/UploadFilesToConsole.png | 0 .../Editor}/UI/Icons/Vehicle Editor.png | 0 .../Editor}/UI/Icons/VertexSnapping.png | 0 .../Editor}/UI/Icons/Visual Log Viewer.png | 0 .../UI/Icons/VisualBudgetSystemAnalyzeOne.png | 0 .../UI/Icons/VisualBudgetSystemShow.png | 0 .../VisualizeNavigationAccessibility.png | 0 {Editor => Assets/Editor}/UI/Icons/XAxis.png | 0 {Editor => Assets/Editor}/UI/Icons/XYAxis.png | 0 {Editor => Assets/Editor}/UI/Icons/YAxis.png | 0 {Editor => Assets/Editor}/UI/Icons/Z View.png | 0 {Editor => Assets/Editor}/UI/Icons/ZAxis.png | 0 .../Editor}/UI/Icons/asset_animated_geom.png | 0 .../Editor}/UI/Icons/asset_character.png | 0 .../Editor}/UI/Icons/asset_material.png | 0 .../Editor}/UI/Icons/asset_missing_thumb.png | 0 .../Editor}/UI/Icons/asset_model.png | 0 .../Editor}/UI/Icons/asset_sound.png | 0 .../Editor}/UI/Icons/asset_texture.png | 0 .../Editor}/UI/Icons/mann_clip.png | 0 .../Editor}/UI/Icons/mann_folder.png | 0 .../Editor}/UI/Icons/mann_tag.png | 0 .../Editor}/UI/Icons/toolbar/Load_Icon.png | 0 .../Editor}/UI/Icons/toolbar/itemAdd.png | 0 .../Editor}/UI/Icons/toolbar/itemAssign.png | 0 .../Editor}/UI/Icons/toolbar/itemClone.png | 0 .../UI/Icons/toolbar/itemGetProperties.png | 0 .../Editor}/UI/Icons/toolbar/itemReload.png | 0 .../Editor}/UI/Icons/toolbar/itemRemove.png | 0 .../Editor}/UI/Icons/toolbar/libraryAdd.png | 0 .../Editor}/UI/Icons/toolbar/libraryLoad.png | 0 .../UI/Icons/toolbar/libraryReload.png | 0 .../UI/Icons/toolbar/libraryRemove.png | 0 .../Editor}/UI/Icons/toolbar/librarySave.png | 0 .../Icons/toolbar/particleSpecialActivate.png | 0 .../UI/Icons/toolbar/particleSpecialReset.png | 0 .../Editor}/UI/Icons/toolbar/standardCopy.png | 0 .../UI/Icons/toolbar/standardPaste.png | 0 .../Editor}/UI/Icons/toolbar/standardRedo.png | 0 .../Editor}/UI/Icons/toolbar/standardUndo.png | 0 .../treeview/ParticleEditor/empty_icon.png | 0 .../treeview/ParticleEditor/group_icon.png | 0 .../ParticleEditor/group_with_lod_icon.png | 0 .../treeview/ParticleEditor/lod_icon.png | 0 .../Editor}/UI/Icons/treeview/group.png | 0 .../UI/Icons/treeview/group_inactive.png | 0 .../Editor}/UI/Icons/treeview/item.png | 0 .../UI/Icons/treeview/item_inactive.png | 0 {Editor => Assets/Editor}/UI/WipFeatures.xml | 0 .../Editor}/UI/releaseTranslations.py | 0 .../Editor}/UI/removeTranslationFiles.py | 0 .../Editor}/UI/updateTranslatableText.py | 0 {Editor => Assets/Editor}/UserTools.xml | 0 {Editor => Assets/Editor}/asset_thumbnail.tod | 0 .../Editor}/default_time_of_day.xml | 0 .../uiCanvasEditorResolutionPresets.xml | 0 .../Engine}/Config/AutoTestChain.cfg | 0 .../Engine}/Config/AutoTestTimeDemo.cfg | 0 .../Engine}/Config/AutotestPlaythrough.cfg | 0 .../Config/CVarGroups/sys_spec_Full.cfg | 0 .../CVarGroups/sys_spec_GameEffects.cfg | 0 .../CVarGroups/sys_spec_ObjectDetail.cfg | 0 .../Config/CVarGroups/sys_spec_Particles.cfg | 0 .../Config/CVarGroups/sys_spec_Physics.cfg | 0 .../CVarGroups/sys_spec_PostProcessing.cfg | 0 .../Config/CVarGroups/sys_spec_Quality.cfg | 0 .../Config/CVarGroups/sys_spec_Shading.cfg | 0 .../Config/CVarGroups/sys_spec_Shadows.cfg | 0 .../Config/CVarGroups/sys_spec_Sound.cfg | 0 .../Config/CVarGroups/sys_spec_Texture.cfg | 0 .../CVarGroups/sys_spec_TextureResolution.cfg | 0 .../CVarGroups/sys_spec_VolumetricEffects.cfg | 0 .../Config/CVarGroups/sys_spec_Water.cfg | 0 .../Engine}/Config/HDD_cache.xml | 0 .../Engine}/Config/PerfHud_PC.xml | 0 {Engine => Assets/Engine}/Config/aidebug.cfg | 0 {Engine => Assets/Engine}/Config/artprof.cfg | 0 .../Engine}/Config/artprof_user.cfg | 0 .../Engine}/Config/benchmark_cpu.cfg | 0 .../Engine}/Config/benchmark_gpu.cfg | 0 {Engine => Assets/Engine}/Config/config.dat | 0 .../Engine}/Config/engine_core.thread_config | 0 .../Config/engine_sandbox.thread_config | 0 {Engine => Assets/Engine}/Config/gpu/amd.txt | 0 .../Engine}/Config/gpu/android_gpus.xml | 0 .../Engine}/Config/gpu/android_models.xml | 0 .../Engine}/Config/gpu/intel.txt | 0 .../Engine}/Config/gpu/ios_models.xml | 0 .../Engine}/Config/gpu/nvidia.txt | 0 {Engine => Assets/Engine}/Config/mgpu.cfg | 0 .../Engine}/Config/multiplayer.cfg | 0 .../Engine}/Config/multiplayer_console.cfg | 0 .../Engine}/Config/multiplayer_pc.cfg | 0 .../Engine}/Config/performance.cfg | 0 .../Engine}/Config/recording.cfg | 0 .../Engine}/Config/singleplayer.cfg | 0 .../Engine}/Config/sketch_off.cfg | 0 .../Engine}/Config/sketch_on.cfg | 0 .../Engine}/Config/spec/android_MaliT760.cfg | 0 .../Engine}/Config/spec/android_high.cfg | 0 .../Config/spec/android_high_nogmem.cfg | 0 .../Engine}/Config/spec/android_low.cfg | 0 .../Engine}/Config/spec/android_medium.cfg | 0 .../Engine}/Config/spec/android_veryhigh.cfg | 0 .../Engine}/Config/spec/ios_high.cfg | 0 .../Engine}/Config/spec/ios_low.cfg | 0 .../Engine}/Config/spec/ios_medium.cfg | 0 .../Engine}/Config/spec/ios_veryhigh.cfg | 0 .../Engine}/Config/spec/osx_metal_high.cfg | 0 .../Engine}/Config/spec/osx_metal_low.cfg | 0 .../Engine}/Config/spec/osx_metal_medium.cfg | 0 .../Config/spec/osx_metal_veryhigh.cfg | 0 .../Engine}/Config/spec/pc_high.cfg | 0 .../Engine}/Config/spec/pc_low.cfg | 0 .../Engine}/Config/spec/pc_medium.cfg | 0 .../Engine}/Config/spec/pc_veryhigh.cfg | 0 .../Engine}/Config/statoscope.cfg | 0 {Engine => Assets/Engine}/Config/user.cfg | 0 .../Engine}/Config/vid_capture_reset.cfg | 0 .../Engine}/Config/vid_capture_setup.cfg | 0 .../Engine}/Config/vid_capture_start.cfg | 0 .../Engine}/Config/vid_capture_stop.cfg | 0 {Engine => Assets/Engine}/Config/vr.cfg | 0 .../EngineAssets/Animated/WaterVolume.dds | 0 .../Engine}/EngineAssets/CodeCoverage/hit.tif | 0 .../CodeCoverage/hit.tif.exportsettings | 0 .../EngineAssets/CodeCoverage/pbar.tif | 0 .../CodeCoverage/pbar.tif.exportsettings | 0 .../EngineAssets/CodeCoverage/unexpected.tif | 0 .../unexpected.tif.exportsettings | 0 .../GeomCaches/defaultGeomCache.abc | 0 .../GeomCaches/defaultGeomCache.cbc | 0 .../GeomCaches/defaultGeomCache.ma | 0 .../GeomCaches/defaultGeomCache.mtl | 0 .../EngineAssets/Icons/AverageMemoryUsage.TIF | 0 .../AverageMemoryUsage.TIF.exportsettings | 0 .../EngineAssets/Icons/HighMemoryUsage.TIF | 0 .../Icons/HighMemoryUsage.TIF.exportsettings | 0 .../Icons/LevelShaderCacheMiss.tif | 0 .../LevelShaderCacheMiss.tif.exportsettings | 0 .../EngineAssets/Icons/LivePreview.TIF | 0 .../Icons/LivePreview.TIF.exportsettings | 0 .../EngineAssets/Icons/LowMemoryUsage.TIF | 0 .../Icons/LowMemoryUsage.TIF.exportsettings | 0 .../Icons/NavigationProcessing.tif | 0 .../NavigationProcessing.tif.exportsettings | 0 .../EngineAssets/Icons/NullSoundSystem.tif | 0 .../Icons/NullSoundSystem.tif.exportsettings | 0 .../EngineAssets/Icons/ShaderCompiling.tif | 0 .../Icons/ShaderCompiling.tif.exportsettings | 0 .../Engine}/EngineAssets/Icons/Streaming.tif | 0 .../Icons/Streaming.tif.exportsettings | 0 .../EngineAssets/Icons/StreamingTerrain.tif | 0 .../Icons/StreamingTerrain.tif.exportsettings | 0 .../LevelForSliceEditing.ly | 0 .../LevelForSliceEditing/filelist.xml | 0 .../LevelForSliceEditing/level.pak | 0 .../leveldata/environment.xml | 0 .../leveldata/heightmap.dat | 0 .../leveldata/terraintexture.xml | 0 .../leveldata/timeofday.xml | 0 .../leveldata/vegetationmap.dat | 0 .../LevelForSliceEditing/tags.txt | 0 .../Materials/Fog/FogVolumeBox.mtl | 0 .../Materials/Fog/FogVolumeEllipsoid.mtl | 0 .../EngineAssets/Materials/Fog/OceanInto.mtl | 0 .../Materials/Fog/OceanIntoLowSpec.mtl | 0 .../EngineAssets/Materials/Fog/OceanOutof.mtl | 0 .../Materials/Fog/OceanOutofLowSpec.mtl | 0 .../Materials/Fog/WaterFogVolumeInto.mtl | 0 .../Materials/Fog/WaterFogVolumeOutof.mtl | 0 .../Materials/PhysProxyTooBig.mtl | 0 .../Materials/Water/WaterOceanBottom.mtl | 0 .../Materials/Water/ocean_default.mtl | 0 .../collision_proxy_entitiesonly.mtl | 0 .../EngineAssets/Materials/decals/default.mtl | 0 .../EngineAssets/Materials/lens_optics.mtl | 0 .../EngineAssets/Materials/sky/sky.mtl | 0 .../Materials/test/Holotest/hologram.mtl | 0 .../Materials/test/Holotest/test2.tif | 0 .../test/Holotest/test2.tif.exportsettings | 0 .../Materials/test/Holotest/tews1.tif | 0 .../test/Holotest/tews1.tif.exportsettings | 0 .../Materials/test/Holotest/tile1.cgf | 0 .../Materials/test/Holotest/tile1.max | 0 .../EngineAssets/Materials/test/chromium.mtl | 0 .../EngineAssets/Materials/test/glass2.mtl | 0 .../EngineAssets/Materials/test/hologram.mtl | 0 .../EngineAssets/Materials/test/lightbeam.mtl | 0 .../Materials/test/lightbeam_floodlight.mtl | 0 .../Materials/test/lighthouseBeam.mtl | 0 .../Materials/test/lighthousetemplebeam.mtl | 0 .../EngineAssets/Materials/test/nodraw.mtl | 0 .../EngineAssets/Materials/test/sky.mtl | 0 .../EngineAssets/Materials/test/skyHDR.mtl | 0 .../test/textures/glass_wall_ddn.tif | 0 .../Materials/test/textures/templeBeam.tif | 0 .../textures/templeBeam.tif.exportsettings | 0 .../Materials/test/volumeObject.mtl | 0 .../Materials/test/volumeObject2.mtl | 0 .../Engine}/EngineAssets/Objects/Default.cgf | 0 .../Engine}/EngineAssets/Objects/helper.mtl | 0 .../EngineAssets/Production/MidGray.tif | 0 .../Production/MidGray.tif.exportsettings | 0 .../Production/TangentReference_ddn.tif | 0 .../TangentReference_ddn.tif.exportsettings | 0 .../Engine}/EngineAssets/Production/UV.tif | 0 .../Production/UV.tif.exportsettings | 0 .../EngineAssets/ScreenSpace/AreaTex.dds | 0 .../ScreenSpace/NormalsFitting.dds | 0 .../ScreenSpace/PointsOnSphere4x4.tif | 0 .../PointsOnSphere4x4.tif.exportsettings | 0 .../ScreenSpace/PointsOnSphereVO4x4.tif | 0 .../PointsOnSphereVO4x4.tif.exportsettings | 0 .../EngineAssets/ScreenSpace/SearchTex.dds | 0 .../EngineAssets/ScreenSpace/bokeh_love.TIF | 0 .../ScreenSpace/bokeh_love.TIF.exportsettings | 0 .../EngineAssets/ScreenSpace/bokeh_music.TIF | 0 .../bokeh_music.TIF.exportsettings | 0 .../ScreenSpace/bokeh_pentagon.TIF | 0 .../bokeh_pentagon.TIF.exportsettings | 0 .../ScreenSpace/bokeh_spherical.TIF | 0 .../bokeh_spherical.TIF.exportsettings | 0 .../EngineAssets/ScreenSpace/bokeh_square.TIF | 0 .../bokeh_square.TIF.exportsettings | 0 .../EngineAssets/ScreenSpace/bokeh_star.TIF | 0 .../ScreenSpace/bokeh_star.TIF.exportsettings | 0 .../EngineAssets/ScreenSpace/film_grain.dds | 0 .../ScreenSpace/grain_bayer_mul.tif | 0 .../grain_bayer_mul.tif.exportsettings | 0 .../Shading/SonarVisionGradient.TIF | 0 .../SonarVisionGradient.TIF.exportsettings | 0 .../Shading/ThermalVisionGradient.tif | 0 .../ThermalVisionGradient.tif.exportsettings | 0 .../Shading/ThermalVisionGradient02.TIF | 0 ...ThermalVisionGradient02.TIF.exportsettings | 0 .../EngineAssets/Shading/WaterFoam.TIF | 0 .../Shading/WaterFoam.TIF.exportsettings | 0 .../Shading/cook_d_sampler_G16R16F.dds | 0 .../EngineAssets/Shading/defaultProbe_cm.tif | 0 .../EngineAssets/Shading/environmentBRDF.tif | 0 .../Shading/generic_reflections.tif | 0 .../generic_reflections.tif.exportsettings | 0 .../Shading/layer_effect_anim_function.tif | 0 ...er_effect_anim_function.tif.exportsettings | 0 .../EngineAssets/Shading/nanosuit_mask.TIF | 0 .../Shading/nanosuit_mask.TIF.exportsettings | 0 .../Shading/nanosuit_modes_grads.TIF | 0 .../nanosuit_modes_grads.TIF.exportsettings | 0 .../EngineAssets/Shading/vignetting.TIF | 0 .../Shading/vignetting.TIF.exportsettings | 0 .../Engine}/EngineAssets/Sky/optical.lut | 0 .../Engine}/EngineAssets/Sky/stars.dat | 0 .../Slices/DefaultLevelSetup.slice | 0 .../EngineAssets/TextureMsg/DefaultNoUVs.tif | 0 .../DefaultNoUVs.tif.exportsettings | 0 .../TextureMsg/DefaultNoUVs_ddn.tif | 0 .../TextureMsg/DefaultNoUVs_spec.tif | 0 .../EngineAssets/TextureMsg/DefaultSolids.mtl | 0 .../TextureMsg/DefaultSolids_ddn.tif | 0 .../TextureMsg/DefaultSolids_diff.tif | 0 .../DefaultSolids_diff.tif.exportsettings | 0 .../TextureMsg/DefaultSolids_spec.tif | 0 .../EngineAssets/TextureMsg/NotFound.psd | 0 .../EngineAssets/TextureMsg/NotFound.tif | 0 .../EngineAssets/TextureMsg/NotFound_a.tif | 0 .../EngineAssets/TextureMsg/NotFound_cm.tif | 0 .../EngineAssets/TextureMsg/NotFound_ddn.tif | 0 .../EngineAssets/TextureMsg/NotFound_ddna.tif | 0 .../TextureMsg/PhysProxyTooBig.tif | 0 .../PhysProxyTooBig.tif.exportsettings | 0 .../EngineAssets/TextureMsg/RCError.psd | 0 .../EngineAssets/TextureMsg/RCError.tif | 0 .../EngineAssets/TextureMsg/RCError_a.tif | 0 .../TextureMsg/RCError_a.tif.exportsettings | 0 .../EngineAssets/TextureMsg/RCError_cm.tif | 0 .../EngineAssets/TextureMsg/RCError_ddn.tif | 0 .../TextureMsg/RCError_ddn.tif.exportsettings | 0 .../EngineAssets/TextureMsg/RCError_ddna.tif | 0 .../RCError_ddna.tif.exportsettings | 0 .../EngineAssets/TextureMsg/ReplaceMe.tif | 0 .../TextureMsg/ReplaceMe.tif.exportsettings | 0 .../EngineAssets/TextureMsg/ReplaceMeCm.tif | 0 .../TextureMsg/ReplaceMeCm.tif.exportsettings | 0 .../TextureMsg/ReplaceMeRelease.tif | 0 .../ReplaceMeRelease.tif.exportsettings | 0 .../TextureMsg/ShaderCompiling.tif | 0 .../ShaderCompiling.tif.exportsettings | 0 .../EngineAssets/TextureMsg/ShaderError.tif | 0 .../TextureMsg/ShaderError.tif.exportsettings | 0 .../TextureMsg/TextureCompiling.tif | 0 .../TextureMsg/TextureCompiling_a.tif | 0 .../TextureCompiling_a.tif.exportsettings | 0 .../TextureMsg/TextureCompiling_cm.tif | 0 .../TextureMsg/TextureCompiling_ddn.tif | 0 .../TextureCompiling_ddn.tif.exportsettings | 0 .../TextureMsg/TextureCompiling_ddna.tif | 0 .../TextureCompiling_ddna.tif.exportsettings | 0 .../EngineAssets/TextureMsg/color_Black.tif | 0 .../EngineAssets/TextureMsg/color_Blue.tif | 0 .../EngineAssets/TextureMsg/color_Cyan.tif | 0 .../EngineAssets/TextureMsg/color_Green.tif | 0 .../EngineAssets/TextureMsg/color_Magenta.tif | 0 .../EngineAssets/TextureMsg/color_Orange.tif | 0 .../EngineAssets/TextureMsg/color_Purple.tif | 0 .../EngineAssets/TextureMsg/color_Red.tif | 0 .../EngineAssets/TextureMsg/color_White.tif | 0 .../EngineAssets/TextureMsg/color_Yellow.tif | 0 .../EngineAssets/TextureMsg/mipmapdebug.tif | 0 .../TextureMsg/orange_for_designer.tif | 0 .../EngineAssets/Textures/BlackAlpha.tif | 0 .../Engine}/EngineAssets/Textures/BlackCM.tif | 0 .../Textures/BlackCM.tif.exportsettings | 0 .../Cubemap/default_level_cubemap.tif | 0 .../EngineAssets/Textures/Cursor_Green.tif | 0 .../Textures/Cursor_Green.tif.exportsettings | 0 .../Textures/FogVolShadowJitter.tif | 0 .../FogVolShadowJitter.tif.exportsettings | 0 .../Textures/Frozen/frost_noise3.dds | 0 .../Textures/Frozen/frost_noise4.tif | 0 .../Textures/Frozen/snow_spatter.tif | 0 .../EngineAssets/Textures/GreyAlpha.tif | 0 .../Textures/GreyAlpha.tif.exportsettings | 0 .../Textures/Palette/cloak_interlation.dds | 0 .../Textures/Palette/cloak_palette.tif | 0 .../Palette/cloak_palette.tif.exportsettings | 0 .../Textures/Palette/cloak_sparks.dds | 0 .../Textures/Palette/cloak_transition.dds | 0 .../Textures/TexelsPerMeterGrad.tif | 0 .../TexelsPerMeterGrad.tif.exportsettings | 0 .../EngineAssets/Textures/VolumeRaster.tif | 0 .../Textures/VolumeRaster.tif.exportsettings | 0 .../Textures/alienhud_distortionimage.tif | 0 ...lienhud_distortionimage.tif.exportsettings | 0 .../EngineAssets/Textures/alienhud_noise1.tif | 0 .../alienhud_noise1.tif.exportsettings | 0 .../Engine}/EngineAssets/Textures/black.tif | 0 .../Textures/black.tif.exportsettings | 0 .../Textures/caustics_sampler.dds | 0 .../Engine}/EngineAssets/Textures/color.tif | 0 .../EngineAssets/Textures/default_cch.tif | 0 .../Textures/default_cch.tif.exportsettings | 0 .../EngineAssets/Textures/defaults/16_12.tif | 0 .../EngineAssets/Textures/defaults/16_34.tif | 0 .../EngineAssets/Textures/defaults/16_5.tif | 0 .../Textures/defaults/16_grey.tif | 0 .../Textures/defaults/spot_default.tif | 0 .../Textures/detailDecalVariation.tif | 0 .../EngineAssets/Textures/dither_2.dds | 0 .../Textures/dither_pattern_2d.dds | 0 .../Textures/flares/Flare_Glow001.tif | 0 .../Textures/flares/Flare_Glow002.tif | 0 .../Textures/flares/Flare_Orbs001.tif | 0 .../Textures/flares/Flare_SoftSpot001.tif | 0 .../Textures/flares/Flare_SoftSpot002.tif | 0 .../Textures/flares/Flare_Sun001.tif | 0 .../EngineAssets/Textures/flares/flare01.tif | 0 .../EngineAssets/Textures/flares/flare02.tif | 0 .../Textures/flares/ghost_grey.tif | 0 .../Textures/flares/ghost_multicolor.tif | 0 .../Textures/flares/icons/ghost.tif | 0 .../flares/icons/ghost.tif.exportsettings | 0 .../Textures/flares/icons/glow.tif | 0 .../flares/icons/glow.tif.exportsettings | 0 .../Textures/flares/icons/iris_shafts.tif | 0 .../icons/iris_shafts.tif.exportsettings | 0 .../Textures/flares/icons/multi_ghost.tif | 0 .../icons/multi_ghost.tif.exportsettings | 0 .../Textures/flares/icons/orbs.tif | 0 .../flares/icons/orbs.tif.exportsettings | 0 .../Textures/flares/icons/ring.tif | 0 .../flares/icons/ring.tif.exportsettings | 0 .../Textures/flares/icons/test_demo.tif | 0 .../flares/icons/test_demo.tif.exportsettings | 0 .../Textures/flares/icons/vol_shafts.tif | 0 .../icons/vol_shafts.tif.exportsettings | 0 .../Textures/flares/iris_shaft.tif | 0 .../Textures/flares/lens_blurshape.tif | 0 .../Textures/flares/lens_dirtyglass.tif | 0 .../Textures/flares/lens_noise01.tif | 0 .../Textures/flares/lens_raindrops.tif | 0 .../Textures/flares/lens_raindrops02.tif | 0 .../EngineAssets/Textures/flares/orb_01.tif | 0 .../Textures/flares/orb_cell01.tif | 0 .../Textures/flares/orb_cell02.tif | 0 .../Textures/flares/orb_cell03.tif | 0 .../Textures/flares/orb_cell04.tif | 0 .../Textures/flares/spectrum_full.tif | 0 .../Textures/flares/spectrum_half.tif | 0 .../Textures/flares/spectrum_quater.tif | 0 .../Textures/flares/spectrum_specs.tif | 0 .../EngineAssets/Textures/flares/streak01.tif | 0 .../Textures/flares/visor_scratch.tif | 0 .../EngineAssets/Textures/fresnel_sampler.dds | 0 .../EngineAssets/Textures/fringe_map.dds | 0 .../EngineAssets/Textures/frost_refl2.tif | 0 .../Textures/frost_refl2.tif.exportsettings | 0 .../Textures/fuzzy_pow_sampler_merged.dds | 0 .../Textures/glass_decalatlas_ddn.tif | 0 .../glass_decalatlas_ddn.tif.exportsettings | 0 .../Textures/glass_decalatlas_diff.tif | 0 .../glass_decalatlas_diff.tif.exportsettings | 0 .../Engine}/EngineAssets/Textures/grey.dds | 0 .../Engine}/EngineAssets/Textures/hex.tif | 0 .../Textures/hex.tif.exportsettings | 0 .../Engine}/EngineAssets/Textures/hex_ddn.tif | 0 .../Textures/hex_ddn.tif.exportsettings | 0 .../EngineAssets/Textures/hex_grad.tif | 0 .../Textures/hex_grad.tif.exportsettings | 0 .../EngineAssets/Textures/hex_line.tif | 0 .../Textures/hex_line.tif.exportsettings | 0 .../EngineAssets/Textures/hex_rand.tif | 0 .../Textures/hex_rand.tif.exportsettings | 0 .../EngineAssets/Textures/hiteffect_areas.tif | 0 .../hiteffect_areas.tif.exportsettings | 0 .../Textures/hiteffect_blurmask_ddn.tif | 0 .../hiteffect_blurmask_ddn.tif.exportsettings | 0 .../Textures/hiteffect_healthgradient.tif | 0 ...iteffect_healthgradient.tif.exportsettings | 0 .../Textures/hiteffect_lvlgradient.tif | 0 .../hiteffect_lvlgradient.tif.exportsettings | 0 .../EngineAssets/Textures/hiteffect_round.tif | 0 .../hiteffect_round.tif.exportsettings | 0 .../Textures/hiteffect_veinsblood.tif | 0 .../hiteffect_veinsblood.tif.exportsettings | 0 .../EngineAssets/Textures/interference.dds | 0 .../jumpnoisehighfrequency_x27y19.dds | 0 .../Textures/moisturedroplets.tif | 0 .../moisturedroplets.tif.exportsettings | 0 .../EngineAssets/Textures/nightvis_grad.tif | 0 .../Textures/nightvis_grad.tif.exportsettings | 0 .../Engine}/EngineAssets/Textures/noise.tif | 0 .../Engine}/EngineAssets/Textures/noise3d.dds | 0 .../EngineAssets/Textures/oceanwaves_ddn.tif | 0 .../oceanwaves_ddn.tif.exportsettings | 0 .../EngineAssets/Textures/palletteInst.dds | 0 .../EngineAssets/Textures/perlinNoise2d.tif | 0 .../Textures/perlinNoise2d.tif.exportsettings | 0 .../Textures/perlinNoiseDerivatives.tif | 0 .../perlinNoiseDerivatives.tif.exportsettings | 0 .../Textures/perlinNoiseNormal_ddn.tif | 0 .../perlinNoiseNormal_ddn.tif.exportsettings | 0 .../EngineAssets/Textures/perlinNoise_sum.tif | 0 .../perlinNoise_sum.tif.exportsettings | 0 .../Textures/perlinNoise_sum_small.tif | 0 .../perlinNoise_sum_small.tif.exportsettings | 0 .../EngineAssets/Textures/pixeltex.dds | 0 .../EngineAssets/Textures/rotrandomcm.dds | 0 .../Engine}/EngineAssets/Textures/scratch.tif | 0 .../Textures/scratch.tif.exportsettings | 0 .../EngineAssets/Textures/scratch_ddn.tif | 0 .../Textures/scratch_ddn.tif.exportsettings | 0 .../Textures/screen_noisy_bump.dds | 0 .../Textures/screenfrost_alpha.TIF | 0 .../screenfrost_alpha.TIF.exportsettings | 0 .../EngineAssets/Textures/screenfrost_ddn.TIF | 0 .../screenfrost_ddn.TIF.exportsettings | 0 .../EngineAssets/Textures/snowflakes.tif | 0 .../Textures/snowflakes.tif.exportsettings | 0 .../EngineAssets/Textures/startscreen.tif | 0 .../Textures/startscreen.tif.exportsettings | 0 .../EngineAssets/Textures/user_tex1.tif | 0 .../EngineAssets/Textures/user_tex2.tif | 0 .../EngineAssets/Textures/vector_noise.dds | 0 .../EngineAssets/Textures/water_droplets.dds | 0 .../EngineAssets/Textures/water_gloss.tif | 0 .../Textures/water_gloss.tif.exportsettings | 0 .../Engine}/EngineAssets/Textures/white.tif | 0 .../Textures/white.tif.exportsettings | 0 .../EngineAssets/Textures/white_cm.tif | 0 .../Textures/white_cm.tif.exportsettings | 0 .../EngineAssets/Textures/white_ddn.tif | 0 .../Engine}/EngineAssets/defaulttextures.xml | 0 .../Engine}/Engine_Dependencies.xml | 0 .../Engine}/Entities/AnimObject.ent | 0 .../Engine}/Entities/AreaBezierVolume.ent | 0 .../Engine}/Entities/AreaBox.ent | 0 .../Engine}/Entities/AreaShape.ent | 0 .../Engine}/Entities/AreaSolid.ent | 0 .../Engine}/Entities/AreaSphere.ent | 0 .../Engine}/Entities/AreaTrigger.ent | 0 .../Engine}/Entities/AudioAreaAmbience.ent | 0 .../Engine}/Entities/AudioAreaEntity.ent | 0 .../Engine}/Entities/AudioAreaRandom.ent | 0 .../Engine}/Entities/AudioTriggerSpot.ent | 0 .../Engine}/Entities/BasicEntity.ent | 0 .../Engine}/Entities/CActorWrapper.ent | 0 .../Engine}/Entities/CameraSource.ent | 0 .../Engine}/Entities/CameraTarget.ent | 0 .../Engine}/Entities/Comment.ent | 0 .../Engine}/Entities/EnvironmentLight.ent | 0 .../Engine}/Entities/FogVolume.ent | 0 .../Engine}/Entities/GeomCache.ent | 0 {Engine => Assets/Engine}/Entities/Light.ent | 0 .../Engine}/Entities/LivingEntity.ent | 0 .../Engine}/Entities/NavigationSeedPoint.ent | 0 .../Engine}/Entities/ParticleEffect.ent | 0 .../Engine}/Entities/ProceduralObject.ent | 0 .../Engine}/Entities/ProximityTrigger.ent | 0 .../Engine}/Entities/RigidBody.ent | 0 .../Engine}/Entities/RigidBodyEx.ent | 0 .../Engine}/Entities/SmartObject.ent | 0 .../Engine}/Entities/TagPoint.ent | 0 .../Engine}/Entities/UiCanvasRef.ent | 0 {Engine => Assets/Engine}/Fonts/Vera.ttf | 0 {Engine => Assets/Engine}/Fonts/VeraMono.ttf | 0 .../Engine}/Fonts/Vera_COPYRIGHT.TXT | 0 .../Engine}/Fonts/Vera_RELEASENOTES.TXT | 0 {Engine => Assets/Engine}/Fonts/console.font | 0 {Engine => Assets/Engine}/Fonts/console.xml | 0 .../Engine}/Fonts/default-ui.font | 0 .../Engine}/Fonts/default-ui.xml | 0 {Engine => Assets/Engine}/Fonts/default.font | 0 {Engine => Assets/Engine}/Fonts/default.xml | 0 {Engine => Assets/Engine}/Fonts/hud.font | 0 {Engine => Assets/Engine}/Fonts/hud.xml | 0 .../MaterialEffects/FXLibs/collisions.xml | 0 .../Libs/MaterialEffects/materialeffects.xml | 0 .../Libs/MaterialEffects/surfacetypes.xml | 0 .../Engine}/Libs/PostEffectGroups/Default.xml | 0 .../Objects/default/editorprimitive.mtl | 0 .../Objects/default/primitive_capsule.cgf | 0 .../Objects/default/primitive_cube.cgf | 0 .../Objects/default/primitive_plane.cgf | 0 .../Objects/default/primitive_sphere.cgf | 0 .../Engine}/Schema/Environment.xmlschema | 0 .../Engine}/Schema/FlaresLibrary.xmlschema | 0 .../Engine}/Schema/Font.xmlschema | 0 .../Engine}/Schema/ParticleLibrary.xmlschema | 0 .../Engine}/Schema/cloudlibrary.xmlschema | 0 .../Schema/editorappdescriptor.xmlschema | 0 .../Engine}/Schema/enginedependency.xmlschema | 0 .../Engine}/Schema/ent.xmlschema | 0 .../Schema/gameappdescriptor.xmlschema | 0 .../Schema/materialeffectlibrary.xmlschema | 0 .../Engine}/Schema/materialeffects.xmlschema | 0 .../Schema/rainandsnowtextures.xmlschema | 0 .../Engine}/Schema/surfacetypes.xmlschema | 0 .../Schema/vegdescriptorlist.xmlschema | 0 .../Engine}/Scripts/EngineCommon.lua | 0 .../Entities/AI/NavigationSeedPoint.lua | 0 .../Scripts/Entities/AI/SmartObject.lua | 0 .../Engine}/Scripts/Entities/AI/TagPoint.lua | 0 .../Scripts/Entities/Actor/CActorWrapper.lua | 0 .../Scripts/Entities/Anim/MannequinObject.lua | 0 .../Scripts/Entities/Default/GeomEntity.lua | 0 .../Scripts/Entities/Default/RopeEntity.lua | 0 .../Entities/Environment/WaterVolume.lua | 0 .../Entities/Lights/EnvironmentLight.lua | 0 .../Engine}/Scripts/Entities/Lights/Light.lua | 0 .../Scripts/Entities/Others/CameraSource.lua | 0 .../Scripts/Entities/Others/CameraTarget.lua | 0 .../Scripts/Entities/Others/Comment.lua | 0 .../Entities/Others/ProceduralObject.lua | 0 .../Scripts/Entities/Others/RigidBody.lua | 0 .../Entities/Particle/ParticleEffect.lua | 0 .../Scripts/Entities/Physics/AnimObject.lua | 0 .../Entities/Physics/AreaBezierVolume.lua | 0 .../Scripts/Entities/Physics/BasicEntity.lua | 0 .../Scripts/Entities/Physics/LivingEntity.lua | 0 .../Scripts/Entities/Physics/RigidBodyEx.lua | 0 .../Scripts/Entities/Render/FogVolume.lua | 0 .../Scripts/Entities/Render/GeomCache.lua | 0 .../Entities/Sound/AudioAreaAmbience.lua | 0 .../Entities/Sound/AudioAreaEntity.lua | 0 .../Entities/Sound/AudioAreaRandom.lua | 0 .../Entities/Sound/AudioTriggerSpot.lua | 0 .../Entities/Sound/Shared/AudioUtils.lua | 0 .../Scripts/Entities/Triggers/AreaTrigger.lua | 0 .../Entities/Triggers/ProximityTrigger.lua | 0 .../Scripts/Entities/UI/UiCanvasRefEntity.lua | 0 .../Utils/Components/GameplayUtils.lua | 0 .../Scripts/Utils/Components/InputUtils.lua | 0 .../Utils/Components/MultiHandlers.lua | 0 .../Engine}/Scripts/Utils/Containers.lua | 0 .../Engine}/Scripts/Utils/EntityUtils.lua | 0 .../Engine}/Scripts/Utils/Math.lua | 0 {Engine => Assets/Engine}/SeedAssetList.seed | 0 .../Engine}/Shaders/DistanceClouds.ext | 0 {Engine => Assets/Engine}/Shaders/Eye.ext | 0 {Engine => Assets/Engine}/Shaders/Fur.ext | 0 .../Engine}/Shaders/GeometryBeam.ext | 0 {Engine => Assets/Engine}/Shaders/Glass.ext | 0 .../Shaders/HWScripts/CryFX/AuxGeom.cfx | 0 .../Shaders/HWScripts/CryFX/Clouds.cfx | 0 .../Shaders/HWScripts/CryFX/Common.cfi | 0 .../Shaders/HWScripts/CryFX/Common.cfx | 0 .../HWScripts/CryFX/CommonDebugPass.cfi | 0 .../HWScripts/CryFX/CommonMotionBlurPass.cfi | 0 .../CryFX/CommonMotionBlurPassTess.cfi | 0 .../Shaders/HWScripts/CryFX/CommonSVO.cfi | 0 .../HWScripts/CryFX/CommonShadowGenPass.cfi | 0 .../CryFX/CommonShadowGenPassTess.cfi | 0 .../HWScripts/CryFX/CommonTessellation.cfi | 0 .../HWScripts/CryFX/CommonViewsPass.cfi | 0 .../HWScripts/CryFX/CommonViewsPassTess.cfi | 0 .../Shaders/HWScripts/CryFX/CommonZPass.cfi | 0 .../HWScripts/CryFX/CommonZPassTess.cfi | 0 .../HWScripts/CryFX/CommonZPrePass.cfi | 0 .../Shaders/HWScripts/CryFX/DXTCompress.cfx | 0 .../Engine}/Shaders/HWScripts/CryFX/Debug.cfx | 0 .../Shaders/HWScripts/CryFX/DebugLight.cfx | 0 .../HWScripts/CryFX/DeferredCaustics.cfx | 0 .../Shaders/HWScripts/CryFX/DeferredRain.cfx | 0 .../HWScripts/CryFX/DeferredShading.cfx | 0 .../HWScripts/CryFX/DeferredShadows.cfi | 0 .../Shaders/HWScripts/CryFX/DeferredSnow.cfx | 0 .../Shaders/HWScripts/CryFX/DepthOfField.cfx | 0 .../HWScripts/CryFX/DistanceClouds.cfx | 0 .../Engine}/Shaders/HWScripts/CryFX/Eye.cfx | 0 .../HWScripts/CryFX/FXConstantDefs.cfi | 0 .../Shaders/HWScripts/CryFX/FXSamplerDefs.cfi | 0 .../Shaders/HWScripts/CryFX/FXStreamDefs.cfi | 0 .../Shaders/HWScripts/CryFX/FallBack.cfx | 0 .../HWScripts/CryFX/FixedPipelineEmu.cfx | 0 .../Shaders/HWScripts/CryFX/FogVolume.cfx | 0 .../Engine}/Shaders/HWScripts/CryFX/Fur.cfx | 0 .../Shaders/HWScripts/CryFX/FurFinPass.cfi | 0 .../HWScripts/CryFX/FurObliteratePass.cfi | 0 .../Shaders/HWScripts/CryFX/FurZPass.cfi | 0 .../Shaders/HWScripts/CryFX/GPUParticle.cfi | 0 .../HWScripts/CryFX/GPUParticleBegin.cfx | 0 .../CryFX/GPUParticleBitonicSort.cfx | 0 .../GPUParticleBitonicSortGlobal2048.cfx | 0 .../CryFX/GPUParticleBitonicSortLocal.cfx | 0 .../HWScripts/CryFX/GPUParticleCurves.cfi | 0 .../HWScripts/CryFX/GPUParticleEmit.cfx | 0 .../CryFX/GPUParticleGatherSortDistance.cfx | 0 .../HWScripts/CryFX/GPUParticleHelpers.cfi | 0 .../CryFX/GPUParticleOddEvenSort.cfx | 0 .../HWScripts/CryFX/GPUParticleRenderNoGS.cfx | 0 .../HWScripts/CryFX/GPUParticleUpdate.cfx | 0 .../Shaders/HWScripts/CryFX/GeometryBeam.cfx | 0 .../Engine}/Shaders/HWScripts/CryFX/Glass.cfx | 0 .../HWScripts/CryFX/HDRDolbyMetadataPass0.cfx | 0 .../HWScripts/CryFX/HDRDolbyMetadataPass1.cfx | 0 .../HWScripts/CryFX/HDRPostProcess.cfx | 0 .../HWScripts/CryFX/HDRPostProcessDolby.cfi | 0 .../Engine}/Shaders/HWScripts/CryFX/Hair.cfx | 0 .../Shaders/HWScripts/CryFX/Helper.cfx | 0 .../Engine}/Shaders/HWScripts/CryFX/Hud3D.cfx | 0 .../Shaders/HWScripts/CryFX/HumanSkin.cfx | 0 .../Shaders/HWScripts/CryFX/HumanSkinTess.cfi | 0 .../HWScripts/CryFX/HumanSkinValidations.cfi | 0 .../Engine}/Shaders/HWScripts/CryFX/Illum.cfx | 0 .../Shaders/HWScripts/CryFX/IllumTess.cfi | 0 .../HWScripts/CryFX/IllumValidations.cfi | 0 .../Shaders/HWScripts/CryFX/LensOptics.cfx | 0 .../Engine}/Shaders/HWScripts/CryFX/Light.cfx | 0 .../Shaders/HWScripts/CryFX/LightBeam.cfx | 0 .../Shaders/HWScripts/CryFX/LightVolumes.cfi | 0 .../Shaders/HWScripts/CryFX/MeshBaker.cfi | 0 .../HWScripts/CryFX/MeshBakerDilate.cfx | 0 .../Shaders/HWScripts/CryFX/ModificatorTC.cfi | 0 .../Shaders/HWScripts/CryFX/ModificatorVT.cfi | 0 .../Shaders/HWScripts/CryFX/Monitor.cfx | 0 .../Shaders/HWScripts/CryFX/MotionBlur.cfx | 0 .../HWScripts/CryFX/MultiLayerAlphaBlend.cfi | 0 .../Shaders/HWScripts/CryFX/NoDraw.cfx | 0 .../Shaders/HWScripts/CryFX/OcclusionTest.cfx | 0 .../HWScripts/CryFX/ParticleImposter.cfx | 0 .../Shaders/HWScripts/CryFX/ParticleVT.cfi | 0 .../Shaders/HWScripts/CryFX/Particles.cfi | 0 .../Shaders/HWScripts/CryFX/Particles.cfx | 0 .../HWScripts/CryFX/ParticlesCustomPass.cfi | 0 .../HWScripts/CryFX/ParticlesNoMat.cfx | 0 .../HWScripts/CryFX/ParticlesNoMatMirror.cfx | 0 .../HWScripts/CryFX/ParticlesShadowPass.cfi | 0 .../Shaders/HWScripts/CryFX/PostAA.cfx | 0 .../Shaders/HWScripts/CryFX/PostEffects.cfx | 0 .../HWScripts/CryFX/PostEffectsGame.cfx | 0 .../HWScripts/CryFX/PostEffectsLib.cfi | 0 .../HWScripts/CryFX/ReferenceImage.cfx | 0 .../HWScripts/CryFX/ReferenceImageHDR.cfx | 0 .../Shaders/HWScripts/CryFX/Scopes.cfx | 0 .../Shaders/HWScripts/CryFX/ShadowBlur.cfx | 0 .../Shaders/HWScripts/CryFX/ShadowCommon.cfi | 0 .../Shaders/HWScripts/CryFX/ShadowMaskGen.cfx | 0 .../Shaders/HWScripts/CryFX/Sketch.cfx | 0 .../Shaders/HWScripts/CryFX/SketchTerrain.cfx | 0 .../Engine}/Shaders/HWScripts/CryFX/Sky.cfx | 0 .../Shaders/HWScripts/CryFX/SkyHDR.cfx | 0 .../HWScripts/CryFX/SoftOcclusionQuery.cfx | 0 .../Engine}/Shaders/HWScripts/CryFX/Stars.cfx | 0 .../CryFX/StarterGame_GeometryBeamScaling.cfx | 0 .../Shaders/HWScripts/CryFX/Stereo.cfx | 0 .../Shaders/HWScripts/CryFX/Sunshafts.cfx | 0 .../Shaders/HWScripts/CryFX/TemplBeamProc.cfx | 0 .../Shaders/HWScripts/CryFX/Terrain.cfx | 0 .../HWScripts/CryFX/TerrainValidations.cfi | 0 .../Shaders/HWScripts/CryFX/TiledShading.cfi | 0 .../HWScripts/CryFX/Total_Illumination.cfx | 0 .../Engine}/Shaders/HWScripts/CryFX/UI.cfx | 0 .../Shaders/HWScripts/CryFX/Vegetation.cfx | 0 .../HWScripts/CryFX/VegetationTess.cfi | 0 .../HWScripts/CryFX/VegetationValidations.cfi | 0 .../Engine}/Shaders/HWScripts/CryFX/Video.cfx | 0 .../HWScripts/CryFX/VolumeLighting.cfi | 0 .../Shaders/HWScripts/CryFX/VolumeObject.cfx | 0 .../Shaders/HWScripts/CryFX/VolumetricFog.cfi | 0 .../Engine}/Shaders/HWScripts/CryFX/Water.cfx | 0 .../HWScripts/CryFX/WaterCausticsPass.cfi | 0 .../HWScripts/CryFX/WaterFogVolume.cfx | 0 .../HWScripts/CryFX/WaterOceanBottom.cfx | 0 .../HWScripts/CryFX/WaterReflectionsPass.cfi | 0 .../Shaders/HWScripts/CryFX/WaterVolume.cfx | 0 .../Shaders/HWScripts/CryFX/Waterfall.cfx | 0 .../Shaders/HWScripts/CryFX/fragLib.cfi | 0 .../Shaders/HWScripts/CryFX/shadeLib.cfi | 0 .../Shaders/HWScripts/CryFX/vertexLib.cfi | 0 {Engine => Assets/Engine}/Shaders/Hair.ext | 0 .../Engine}/Shaders/HumanSkin.ext | 0 {Engine => Assets/Engine}/Shaders/Illum.ext | 0 .../Engine}/Shaders/LensOptics.ext | 0 .../Engine}/Shaders/LightBeam.ext | 0 {Engine => Assets/Engine}/Shaders/Monitor.ext | 0 .../Engine}/Shaders/ParticleImposter.ext | 0 .../Engine}/Shaders/Particles.ext | 0 {Engine => Assets/Engine}/Shaders/RunTime.ext | 0 {Engine => Assets/Engine}/Shaders/Scopes.ext | 0 .../Engine}/Shaders/ShaderProfiles.txt | 0 .../Engine}/Shaders/ShadowMaskGen.ext | 0 .../Engine}/Shaders/SketchTerrain.ext | 0 {Engine => Assets/Engine}/Shaders/SkyHDR.ext | 0 .../StarterGame_GeometryBeamScaling.ext | 0 {Engine => Assets/Engine}/Shaders/Statics.ext | 0 .../Engine}/Shaders/TemplBeamProc.ext | 0 {Engine => Assets/Engine}/Shaders/Terrain.ext | 0 .../Engine}/Shaders/Vegetation.ext | 0 .../Engine}/Shaders/VolumeObject.ext | 0 {Engine => Assets/Engine}/Shaders/Water.ext | 0 .../Engine}/Shaders/WaterVolume.ext | 0 .../Engine}/Shaders/Waterfall.ext | 0 {Engine => Assets/Engine}/exclude.filetag | 0 {Engine => Assets/Engine}/include.filetag | 0 .../materials/material_layers_default.mtl | 0 .../materials/material_terrain_default.mtl | 0 .../Engine}/textures/default_icon.png | 0 .../textures/default_icon.png.exportsettings | 0 .../textures/defaults/defaultnouvs.tif | 0 .../Engine}/textures/defaults/grey.tif | 0 .../Engine}/textures/skys/night/half_moon.tif | 0 AutomatedTesting/EngineFinder.cmake | 50 ++ .../asset_processor_batch_dependency_tests.py | 8 +- .../asset_processor_gui_tests_2.py | 6 +- .../{ => C4874115}/C4874115_test_asset.txt | 0 .../AzCore/Script/ScriptSystemComponent.cpp | 2 +- .../Settings/SettingsRegistryMergeUtils.cpp | 1 - .../AzFramework/Asset/AssetCatalog.cpp | 2 +- .../AzFramework/FileTag/FileTag.cpp | 15 +- .../Network/NetBindingComponent.cpp | 4 +- .../Spawnable/SpawnableAssetHandler.cpp | 2 +- .../Components/StyleManager.cpp | 6 +- .../AzQtComponents/Components/resources.qrc | 4 +- .../AzToolsFramework/Asset/AssetUtils.cpp | 9 +- .../AssetBrowser/AssetBrowserComponent.cpp | 28 +- .../Entries/RootAssetBrowserEntry.cpp | 42 +- .../Entries/RootAssetBrowserEntry.h | 9 +- .../Thumbnails/FolderThumbnail.cpp | 4 +- .../Thumbnails/ProductThumbnail.cpp | 2 +- .../Thumbnails/SourceThumbnail.cpp | 2 +- .../AssetDatabase/AssetDatabaseConnection.cpp | 10 +- .../AssetDatabase/AssetDatabaseConnection.h | 4 +- .../Thumbnails/LoadingThumbnail.cpp | 2 +- .../Thumbnails/MissingThumbnail.cpp | 2 +- .../Thumbnails/SourceControlThumbnail.cpp | 4 +- .../ToolsComponents/EditorLayerComponent.cpp | 4 +- .../ToolsComponents/ScriptEditorComponent.cpp | 4 +- .../ToolsComponents/TransformComponent.cpp | 4 +- .../UI/PropertyEditor/PropertyAssetCtrl.cpp | 2 +- .../UI/SearchWidget/SearchCriteriaWidget.cpp | 10 +- .../EditorEntitySearchComponentTests.cpp | 8 +- .../Tests/EntityInspectorTests.cpp | 8 +- Code/LauncherUnified/Launcher.cpp | 9 +- Code/LauncherUnified/LauncherProject.cpp | 11 - Code/LauncherUnified/launcher_generator.cmake | 6 - .../Editor/Alembic/AlembicCompileDialog.cpp | 7 +- Code/Sandbox/Editor/CryEdit.cpp | 8 +- Code/Sandbox/Editor/CryEditDoc.cpp | 17 +- .../Editor/Dialogs/PythonScriptsDialog.cpp | 20 +- Code/Sandbox/Editor/EditorPanelUtils.cpp | 5 +- Code/Sandbox/Editor/IconManager.cpp | 22 +- .../Editor/Include/IResourceSelectorHost.h | 2 +- .../LensFlareEditor/LensFlareManager.cpp | 2 +- Code/Sandbox/Editor/MatEditPreviewDlg.cpp | 8 +- .../Editor/Material/MaterialImageListCtrl.cpp | 12 +- Code/Sandbox/Editor/PythonEditorFuncs.cpp | 4 +- Code/Sandbox/Editor/Settings.cpp | 5 +- Code/Sandbox/Editor/Settings.h | 1 - Code/Sandbox/Editor/SettingsManager.cpp | 2 +- Code/Sandbox/Editor/SettingsManager.h | 6 +- Code/Sandbox/Editor/ShaderEnum.cpp | 2 +- Code/Sandbox/Editor/Style/CloudCanvas.qss | 488 ------------- Code/Sandbox/Editor/Style/resources.qrc | 11 +- Code/Sandbox/Editor/TimeOfDayDialog.cpp | 2 +- Code/Sandbox/Editor/ToolBox.cpp | 18 +- .../SandboxIntegration.h | 6 +- .../UI/ComponentPalette/CategoriesList.cpp | 4 +- .../AssetBrowserContextProvider.cpp | 2 +- .../EditorAssetImporter/AssetImporter.qrc | 26 +- .../EditorCommon/DockTitleBarWidget.cpp | 4 +- .../QPropertyTree/PropertyRowLocalFrame.cpp | 2 +- .../PropertyRowResourceSelector.cpp | 2 +- .../tests/AssetProcessorPlatformConfig.ini | 9 - .../tests/AssetProcessorPlatformConfig.setreg | 11 + .../AssetProcessorGamePlatformConfig.ini | 7 - .../AssetProcessorGamePlatformConfig.setreg | 11 + .../Gems/GemA/AssetProcessorGemConfig.ini | 9 - .../Gems/GemA/AssetProcessorGemConfig.setreg | 11 + Code/Tools/AssetProcessor/CMakeLists.txt | 16 +- .../assetprocessor_test_files.cmake | 16 +- .../native/AssetDatabase/AssetDatabase.cpp | 16 +- .../native/AssetManager/AssetCatalog.cpp | 57 +- .../AssetManager/PathDependencyManager.cpp | 2 +- .../AssetManager/SourceFileRelocator.cpp | 22 +- .../native/AssetManager/SourceFileRelocator.h | 3 +- .../AssetManager/assetProcessorManager.cpp | 97 +-- .../AssetManager/assetProcessorManager.h | 4 +- .../native/AssetManager/assetScanFolderInfo.h | 8 - .../AssetManager/assetScannerWorker.cpp | 2 +- .../native/resourcecompiler/RCCommon.h | 2 +- .../native/resourcecompiler/rcjoblistmodel.h | 2 +- .../AssetCatalog/AssetCatalogUnitTests.cpp | 13 +- .../tests/AssetProcessorMessagesTests.cpp | 2 +- .../FileProcessor/FileProcessorTests.cpp | 4 +- .../native/tests/SourceFileRelocatorTests.cpp | 22 +- .../tests/assetdatabase/AssetDatabaseTest.cpp | 8 +- .../AssetProcessorManagerTest.cpp | 687 +----------------- .../tests/assetscanner/AssetScannerTests.cpp | 8 +- .../platformconfigurationtests.cpp | 41 +- .../resourcecompiler/RCControllerTest.cpp | 51 -- .../native/ui/SourceAssetTreeItemData.cpp | 7 - .../native/ui/SourceAssetTreeModel.cpp | 16 +- .../AssetProcessingStateDataUnitTests.cpp | 14 +- .../AssetProcessorManagerUnitTests.cpp | 285 +------- .../AssetProcessorManagerUnitTests.h | 8 - .../unittests/AssetScannerUnitTests.cpp | 8 +- .../PlatformConfigurationUnitTests.cpp | 40 +- .../unittests/RCcontrollerUnitTests.cpp | 2 +- .../native/utilities/ApplicationManager.cpp | 2 +- .../utilities/PlatformConfiguration.cpp | 44 +- .../native/utilities/PlatformConfiguration.h | 8 +- .../native/utilities/assetUtils.cpp | 18 +- .../AssetProcessorGamePlatformConfig.ini | 19 - .../AssetProcessorGamePlatformConfig.setreg | 21 + .../AssetProcessorGamePlatformConfig.ini | 0 .../AssetProcessorGamePlatformConfig.setreg | 7 + .../AssetProcessorPlatformConfig.ini | 22 - .../AssetProcessorPlatformConfig.setreg | 27 + .../AssetProcessorPlatformConfig.ini | 13 - .../AssetProcessorPlatformConfig.setreg | 18 + .../AssetProcessorPlatformConfig.ini | 15 - .../AssetProcessorPlatformConfig.setreg | 19 + .../AssetProcessorPlatformConfig.ini | 16 - .../AssetProcessorPlatformConfig.setreg | 19 + .../AssetProcessorPlatformConfig.ini | 109 --- .../AssetProcessorPlatformConfig.setreg | 89 +++ .../AssetProcessorPlatformConfig.ini | 129 ---- .../AssetProcessorPlatformConfig.setreg | 113 +++ Code/Tools/SceneAPI/SceneUI/SceneUI.qrc | 26 +- Editor/Editor.env | 4 - Editor/cryassetdb_mysql.sql | 47 -- Editor/cryassetdb_sqlite.sql | 35 - Engine/EngineAssets/Textures/rotrandom.dds | 3 - Engine/Libs/FlowNodes/FlownodeBlacklist.xml | 2 - Engine/Libs/FlowNodes/Substitutions.xml | 636 ---------------- .../Code/Source/ImageBuilderComponent.cpp | 20 - .../Editor/CommonFiles/Preprocessor.cpp | 10 +- ...ssetCollectionAsyncLoaderTestComponent.cpp | 4 +- .../Code/Source/FlyCameraInputComponent.cpp | 4 +- .../CoreLights/EditorAreaLightComponent.cpp | 4 +- .../EditorDirectionalLightComponent.cpp | 4 +- .../Source/Decals/EditorDecalComponent.cpp | 4 +- .../EditorDiffuseProbeGridComponent.cpp | 4 +- .../Code/Source/Grid/EditorGridComponent.cpp | 4 +- .../EditorImageBasedLightComponent.cpp | 4 +- .../Material/EditorMaterialComponent.cpp | 4 +- .../Code/Source/Mesh/EditorMeshComponent.cpp | 4 +- .../Bloom/EditorBloomComponent.cpp | 4 +- .../EditorDepthOfFieldComponent.cpp | 4 +- .../EditorDisplayMapperComponent.cpp | 4 +- .../EditorPostFxLayerComponent.cpp | 4 +- .../EditorExposureControlComponent.cpp | 4 +- .../EditorGradientWeightModifierComponent.cpp | 4 +- .../EditorLookModificationComponent.cpp | 4 +- .../EditorRadiusWeightModifierComponent.cpp | 4 +- .../EditorShapeWeightModifierComponent.cpp | 4 +- .../PostProcess/Ssao/EditorSsaoComponent.cpp | 4 +- .../EditorReflectionProbeComponent.cpp | 4 +- .../EditorDeferredFogComponent.cpp | 4 +- .../EditorEntityReferenceComponent.cpp | 4 +- .../SkyBox/EditorHDRiSkyboxComponent.cpp | 4 +- .../SkyBox/EditorPhysicalSkyComponent.cpp | 4 +- .../Code/Source/Editor/ATLControlsPanel.cpp | 2 +- .../Source/Editor/AudioControlsEditorUI.qrc | 2 +- .../Source/Editor/QAudioControlEditorIcons.h | 34 +- .../Code/Source/Asset/BlastAssetHandler.cpp | 2 +- .../Editor/EditorBlastFamilyComponent.cpp | 4 +- .../Editor/EditorBlastMeshDataComponent.cpp | 4 +- .../Editor/EditorBlastSliceAssetHandler.cpp | 6 +- .../Source/EditorDebugDrawLineComponent.cpp | 2 +- .../Source/EditorDebugDrawObbComponent.cpp | 2 +- .../Source/EditorDebugDrawRayComponent.cpp | 2 +- .../Source/EditorDebugDrawSphereComponent.cpp | 2 +- .../Source/EditorDebugDrawTextComponent.cpp | 2 +- .../Components/AnimGraphNetSyncComponent.cpp | 2 +- .../Components/EditorAnimAudioComponent.cpp | 2 +- .../Components/EditorSimpleLODComponent.cpp | 4 +- .../EditorSimpleMotionComponent.cpp | 4 +- .../Code/Source/PythonSystemComponent.cpp | 21 +- .../Source/Translation/TranslationAsset.cpp | 2 +- .../Code/Tests/ImageProcessing_Test.cpp | 94 +-- .../Ai/EditorNavigationAreaComponent.cpp | 4 +- .../Ai/EditorNavigationSeedComponent.cpp | 4 +- .../Code/Source/Ai/NavigationComponent.cpp | 4 +- .../Animation/EditorAttachmentComponent.cpp | 4 +- .../Code/Source/Audio/AudioProxyComponent.cpp | 2 +- .../EditorAudioAreaEnvironmentComponent.cpp | 4 +- .../Audio/EditorAudioEnvironmentComponent.cpp | 4 +- .../Audio/EditorAudioListenerComponent.cpp | 4 +- .../EditorAudioMultiPositionComponent.cpp | 4 +- .../Audio/EditorAudioPreloadComponent.cpp | 4 +- .../Source/Audio/EditorAudioRtpcComponent.cpp | 4 +- .../Audio/EditorAudioSwitchComponent.cpp | 4 +- .../Audio/EditorAudioTriggerComponent.cpp | 4 +- .../Source/Editor/EditorCommentComponent.cpp | 4 +- .../Rendering/EditorAreaLightComponent.cpp | 4 +- .../Source/Rendering/EditorDecalComponent.cpp | 4 +- .../Rendering/EditorEnvProbeComponent.cpp | 4 +- .../Rendering/EditorGeomCacheComponent.cpp | 4 +- .../EditorHighQualityShadowComponent.cpp | 4 +- .../Rendering/EditorLensFlareComponent.cpp | 4 +- .../Source/Rendering/EditorLightComponent.cpp | 4 +- .../Source/Rendering/EditorMeshComponent.cpp | 8 +- .../Rendering/EditorPointLightComponent.cpp | 4 +- .../EditorProjectorLightComponent.cpp | 4 +- .../Rendering/LensFlareAssetHandler.cpp | 2 +- .../Source/Rendering/MeshAssetHandler.cpp | 2 +- .../Scripting/EditorLookAtComponent.cpp | 4 +- .../EditorRandomTimedSpawnerComponent.cpp | 4 +- .../Scripting/EditorSpawnerComponent.cpp | 4 +- .../Source/Scripting/EditorTagComponent.cpp | 4 +- .../Source/Scripting/SimpleStateComponent.cpp | 4 +- .../Source/Shape/EditorBoxShapeComponent.cpp | 4 +- .../Shape/EditorCapsuleShapeComponent.cpp | 4 +- .../Shape/EditorCompoundShapeComponent.cpp | 4 +- .../Shape/EditorCylinderShapeComponent.cpp | 4 +- .../Source/Shape/EditorDiskShapeComponent.cpp | 4 +- .../EditorPolygonPrismShapeComponent.cpp | 4 +- .../Source/Shape/EditorQuadShapeComponent.cpp | 4 +- .../Shape/EditorSphereShapeComponent.cpp | 4 +- .../Source/Shape/EditorSplineComponent.cpp | 4 +- .../Source/Shape/EditorTubeShapeComponent.cpp | 4 +- .../Material/MaterialAssetTypeInfo.cpp | 4 +- .../Texture/TextureAssetTypeInfo.cpp | 2 +- .../Unhandled/UI/EntityIconAssetTypeInfo.cpp | 2 +- .../Unhandled/UI/UICanvasAssetTypeInfo.cpp | 2 +- Gems/LyShine/Code/Editor/ComponentHelpers.cpp | 2 +- .../Code/Editor/PropertyHandlerDirectory.cpp | 2 +- .../Code/Editor/PropertyHandlerSprite.cpp | 2 +- Gems/LyShine/Code/Editor/ViewportAnchor.cpp | 8 +- .../Code/Editor/ViewportCanvasBackground.cpp | 2 +- .../LyShine/Code/Editor/ViewportHighlight.cpp | 4 +- .../Code/Editor/ViewportInteraction.cpp | 18 +- Gems/LyShine/Code/Editor/ViewportPivot.cpp | 2 +- .../Source/UiFlipbookAnimationComponent.cpp | 4 +- .../Code/Source/UiSpawnerComponent.cpp | 4 +- .../World/UiCanvasAssetRefComponent.cpp | 4 +- .../Source/World/UiCanvasOnMeshComponent.cpp | 4 +- .../World/UiCanvasProxyRefComponent.cpp | 4 +- .../EditorSequenceAgentComponent.cpp | 4 +- .../Components/EditorSequenceComponent.cpp | 4 +- .../Source/Components/NetBindComponent.cpp | 4 +- .../Components/EditorClothComponent.cpp | 4 +- .../Code/Editor/ColliderComponentMode.cpp | 2 +- .../Code/Source/EditorColliderComponent.cpp | 4 +- .../Source/EditorForceRegionComponent.cpp | 4 +- .../Code/Source/EditorRigidBodyComponent.cpp | 4 +- .../Source/EditorShapeColliderComponent.cpp | 4 +- .../EditorCharacterControllerComponent.cpp | 4 +- .../EditorCharacterGameplayComponent.cpp | 4 +- .../Components/RagdollComponent.cpp | 4 +- .../Pipeline/HeightFieldAssetHandler.cpp | 2 +- .../Code/Source/Pipeline/MeshAssetHandler.cpp | 2 +- .../EditorScriptCanvasComponent.cpp | 4 +- .../Code/Editor/Components/IconComponent.cpp | 2 +- .../ScriptCanvas/Assets/ScriptCanvasAsset.h | 2 +- .../Code/Editor/Model/LibraryDataModel.cpp | 2 +- .../Model/UnitTestBrowserFilterModel.cpp | 2 +- .../Code/Editor/Nodes/EditorLibrary.cpp | 2 +- .../Editor/Nodes/ScriptCanvasAssetNode.cpp | 2 +- .../Code/Editor/SystemComponent.cpp | 2 +- .../Code/Editor/View/Windows/MainWindow.cpp | 2 +- .../Functions/RuntimeFunctionAssetHandler.cpp | 2 +- .../Functions/ScriptCanvasFunctionAsset.h | 2 +- .../Include/ScriptCanvas/Asset/RuntimeAsset.h | 4 +- .../Asset/RuntimeAssetHandler.cpp | 2 +- .../ScriptCanvas/CodeGen/NodeableCodegen.h | 2 +- .../BaseTimer.ScriptCanvasNodeable.xml | 2 +- .../BaseTimerNode.ScriptCanvasGrammar.xml | 2 +- .../Libraries/Comparison/Comparison.cpp | 2 +- .../Libraries/Comparison/EqualTo.h | 2 +- .../Libraries/Comparison/Greater.h | 2 +- .../Libraries/Comparison/GreaterEqual.h | 2 +- .../ScriptCanvas/Libraries/Comparison/Less.h | 2 +- .../Libraries/Comparison/LessEqual.h | 2 +- .../Libraries/Comparison/NotEqualTo.h | 2 +- .../AzEventHandler.ScriptCanvasGrammar.xml | 2 +- .../ScriptCanvas/Libraries/Core/CoreNodes.cpp | 2 +- .../EBusEventHandler.ScriptCanvasGrammar.xml | 2 +- .../ScriptCanvas/Libraries/Core/Error.cpp | 2 +- .../Libraries/Core/ErrorHandler.cpp | 2 +- .../ExtractProperty.ScriptCanvasGrammar.xml | 2 +- .../Core/ForEach.ScriptCanvasGrammar.xml | 2 +- .../FunctionCallNode.ScriptCanvasGrammar.xml | 2 +- ...tionDefinitionNode.ScriptCanvasGrammar.xml | 2 +- .../Core/GetVariable.ScriptCanvasGrammar.xml | 2 +- .../Core/Nodeling.ScriptCanvasGrammar.xml | 2 +- ...ReceiveScriptEvent.ScriptCanvasGrammar.xml | 2 +- .../Core/Repeater.ScriptCanvasGrammar.xml | 2 +- .../RepeaterNodeable.ScriptCanvasNodeable.xml | 2 +- .../SendScriptEvent.ScriptCanvasGrammar.xml | 2 +- .../Core/SetVariable.ScriptCanvasGrammar.xml | 2 +- .../Core/Start.ScriptCanvasGrammar.xml | 2 +- .../ScriptCanvas/Libraries/Core/String.h | 2 +- .../ScriptCanvas/Libraries/Entity/Entity.cpp | 2 +- .../Libraries/Entity/EntityIDNode.h | 2 +- .../ScriptCanvas/Libraries/Entity/EntityRef.h | 2 +- .../ScriptCanvas/Libraries/Logic/And.h | 2 +- .../ScriptCanvas/Libraries/Logic/Boolean.h | 2 +- .../Logic/Gate.ScriptCanvasGrammar.xml | 2 +- .../Logic/IsNull.ScriptCanvasGrammar.xml | 2 +- .../ScriptCanvas/Libraries/Logic/Logic.cpp | 2 +- .../ScriptCanvas/Libraries/Logic/Not.h | 2 +- .../Logic/Once.ScriptCanvasGrammar.xml | 2 +- .../Include/ScriptCanvas/Libraries/Logic/Or.h | 2 +- .../ScriptCanvas/Libraries/Math/AABBNode.h | 2 +- .../ScriptCanvas/Libraries/Math/CRCNode.h | 2 +- .../ScriptCanvas/Libraries/Math/ColorNode.h | 2 +- .../ScriptCanvas/Libraries/Math/Divide.h | 2 +- .../ScriptCanvas/Libraries/Math/Math.cpp | 2 +- .../Libraries/Math/Matrix3x3Node.h | 2 +- .../Libraries/Math/Matrix4x4Node.h | 2 +- .../ScriptCanvas/Libraries/Math/Multiply.h | 2 +- .../ScriptCanvas/Libraries/Math/Number.h | 2 +- .../ScriptCanvas/Libraries/Math/OBBNode.h | 2 +- .../ScriptCanvas/Libraries/Math/PlaneNode.h | 2 +- .../ScriptCanvas/Libraries/Math/Rotation.h | 2 +- .../ScriptCanvas/Libraries/Math/Subtract.h | 2 +- .../Include/ScriptCanvas/Libraries/Math/Sum.h | 2 +- .../ScriptCanvas/Libraries/Math/Transform.h | 2 +- .../ScriptCanvas/Libraries/Math/Vector.h | 6 +- .../Libraries/Operators/Operators.cpp | 2 +- .../ScriptCanvas/Libraries/String/String.cpp | 2 +- .../DurationNodeable.ScriptCanvasNodeable.xml | 2 +- ...HeartBeatNodeable.ScriptCanvasNodeable.xml | 2 +- .../ScriptCanvas/Libraries/Time/Time.cpp | 2 +- ...TimeDelayNodeable.ScriptCanvasNodeable.xml | 2 +- .../TimerNodeable.ScriptCanvasNodeable.xml | 2 +- .../AddFailure.ScriptCanvasGrammar.xml | 2 +- .../AddSuccess.ScriptCanvasGrammar.xml | 2 +- .../Checkpoint.ScriptCanvasGrammar.xml | 2 +- .../ExpectEqual.ScriptCanvasGrammar.xml | 2 +- .../ExpectFalse.ScriptCanvasGrammar.xml | 2 +- .../ExpectGreaterThan.ScriptCanvasGrammar.xml | 2 +- ...ctGreaterThanEqual.ScriptCanvasGrammar.xml | 2 +- .../ExpectLessThan.ScriptCanvasGrammar.xml | 2 +- ...xpectLessThanEqual.ScriptCanvasGrammar.xml | 2 +- .../ExpectNotEqual.ScriptCanvasGrammar.xml | 2 +- .../ExpectTrue.ScriptCanvasGrammar.xml | 2 +- .../MarkComplete.ScriptCanvasGrammar.xml | 2 +- .../UnitTesting/UnitTestBusSender.cpp | 2 +- .../UnitTesting/UnitTestingLibrary.cpp | 2 +- .../Code/Editor/Source/Developer.cpp | 2 +- .../Source/EditorAutomationTestDialog.cpp | 2 +- .../Code/Editor/Source/TSGenerateAction.cpp | 26 +- .../Framework/ScriptCanvasTestNodes.cpp | 2 +- ...edDataSlotExample.ScriptCanvasNodeable.xml | 4 +- ...rReferenceExample.ScriptCanvasNodeable.xml | 6 +- ...utHandlerNodeable.ScriptCanvasNodeable.xml | 2 +- .../Source/InputNode.ScriptCanvasGrammar.xml | 2 +- .../Source/EditorWhiteBoxComponentMode.cpp | 2 +- .../AssetProcessorPlatformConfig.setreg | 9 +- .../Platform/Windows/streamer.editor.setreg | 0 .../Platform/Windows/streamer.game.setreg | 0 .../Platform/Windows/streamer.test.setreg | 0 .../Registry => Registry}/bootstrap.setreg | 0 .../Registry => Registry}/prefab.tools.setreg | 0 .../setregbuilder.assetprocessor.setreg | 0 .../streamer.editor.setreg | 0 .../streamer.game.setreg | 0 {Engine/Registry => Registry}/streamer.setreg | 0 .../streamer.test.setreg | 0 .../managers/abstract_resource_locator.py | 2 +- .../ly_test_tools/o3de/asset_processor.py | 12 +- .../ly_test_tools/o3de/pipeline_utils.py | 5 +- .../unit/test_abstract_resource_locator.py | 2 +- bootstrap.cfg | 2 +- cmake/Platform/Common/Install_common.cmake | 30 +- cmake/Tools/common.py | 2 +- 2087 files changed, 1208 insertions(+), 3655 deletions(-) rename {Editor => Assets/Editor}/CryDesigner_TimeOfDay.xml (100%) rename {Editor => Assets/Editor}/Editor.tip (100%) rename {Gems/ScriptCanvas/Assets => Assets/Editor}/Editor/Icons/AssetBrowser/ScriptCanvas_16.png (100%) rename {Editor => Assets/Editor}/EditorParticlePanels.xml (100%) rename {Editor => Assets/Editor}/EditorParticlePanelsDefault.xml (100%) rename {Editor => Assets/Editor}/Fonts/Open_Sans/LICENSE.txt (100%) rename {Editor => Assets/Editor}/Fonts/Open_Sans/OpenSans-Bold.ttf (100%) rename {Editor => Assets/Editor}/Fonts/Open_Sans/OpenSans-BoldItalic.ttf (100%) rename {Editor => Assets/Editor}/Fonts/Open_Sans/OpenSans-ExtraBold.ttf (100%) rename {Editor => Assets/Editor}/Fonts/Open_Sans/OpenSans-ExtraBoldItalic.ttf (100%) rename {Editor => Assets/Editor}/Fonts/Open_Sans/OpenSans-Italic.ttf (100%) rename {Editor => Assets/Editor}/Fonts/Open_Sans/OpenSans-Light.ttf (100%) rename {Editor => Assets/Editor}/Fonts/Open_Sans/OpenSans-LightItalic.ttf (100%) rename {Editor => Assets/Editor}/Fonts/Open_Sans/OpenSans-Regular.ttf (100%) rename {Editor => Assets/Editor}/Fonts/Open_Sans/OpenSans-Semibold.ttf (100%) rename {Editor => Assets/Editor}/Fonts/Open_Sans/OpenSans-SemiboldItalic.ttf (100%) rename {Editor => Assets/Editor}/Icons/AssetBrowser/ABC_16.svg (100%) rename {Editor => Assets/Editor}/Icons/AssetBrowser/Audio_16.svg (100%) rename {Editor => Assets/Editor}/Icons/AssetBrowser/CaretClosed_16.svg (100%) rename {Editor => Assets/Editor}/Icons/AssetBrowser/CaretOpen_16.svg (100%) rename {Editor => Assets/Editor}/Icons/AssetBrowser/DefaultProduct_16.svg (100%) rename {Editor => Assets/Editor}/Icons/AssetBrowser/Default_16.svg (100%) rename {Editor => Assets/Editor}/Icons/AssetBrowser/FBX_16.svg (100%) rename {Editor => Assets/Editor}/Icons/AssetBrowser/Folder_16.svg (100%) rename {Editor => Assets/Editor}/Icons/AssetBrowser/Font_16.svg (100%) rename {Editor => Assets/Editor}/Icons/AssetBrowser/GemFolder_16.svg (100%) rename {Editor => Assets/Editor}/Icons/AssetBrowser/Image_16.svg (100%) rename {Editor => Assets/Editor}/Icons/AssetBrowser/InputBindings_16.svg (100%) rename {Editor => Assets/Editor}/Icons/AssetBrowser/LegacyAnimation_16.svg (100%) rename {Editor => Assets/Editor}/Icons/AssetBrowser/LegacyMesh_16.svg (100%) rename {Editor => Assets/Editor}/Icons/AssetBrowser/LegacySkin_16.svg (100%) rename {Editor => Assets/Editor}/Icons/AssetBrowser/LensFlare_16.svg (100%) rename {Editor => Assets/Editor}/Icons/AssetBrowser/Lua_16.svg (100%) rename {Editor => Assets/Editor}/Icons/AssetBrowser/Material_16.svg (100%) rename {Editor => Assets/Editor}/Icons/AssetBrowser/NonWritable_16.svg (100%) rename {Editor => Assets/Editor}/Icons/AssetBrowser/Particle_16.svg (100%) rename {Editor => Assets/Editor}/Icons/AssetBrowser/Slice_16.svg (100%) rename {Editor => Assets/Editor}/Icons/AssetBrowser/Writable_16.svg (100%) rename {Editor => Assets/Editor}/Icons/AssetBrowser/XML_16.svg (100%) rename {Editor => Assets/Editor}/Icons/AssetBrowser/in_progress.gif (100%) rename {Editor => Assets/Editor}/Icons/AssetImporter/animation.png (100%) rename {Editor => Assets/Editor}/Icons/AssetImporter/animation_on.png (100%) rename {Editor => Assets/Editor}/Icons/AssetImporter/group_icon.png (100%) rename {Editor => Assets/Editor}/Icons/AssetImporter/mesh.png (100%) rename {Editor => Assets/Editor}/Icons/AssetImporter/mesh_on.png (100%) rename {Editor => Assets/Editor}/Icons/AssetImporter/skeleton.png (100%) rename {Editor => Assets/Editor}/Icons/AssetImporter/skeleton_on.png (100%) rename {Editor => Assets/Editor}/Icons/AssetImporter/skin.png (100%) rename {Editor => Assets/Editor}/Icons/AssetImporter/skin_on.png (100%) rename {Editor => Assets/Editor}/Icons/AssetImporter/tree.png (100%) rename {Editor => Assets/Editor}/Icons/Assets/InputBindings.png (100%) rename {Editor => Assets/Editor}/Icons/Assets/Lua.png (100%) rename {Editor => Assets/Editor}/Icons/Assets/PhysicsMaterial.png (100%) rename {Editor => Assets/Editor}/Icons/Components/AreaLight.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Attachment.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/AudioAnimation.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/AudioAnimationEventsProxy.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/AudioArea.png (100%) rename {Editor => Assets/Editor}/Icons/Components/AudioAreaEnvironment.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/AudioEnvironment.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/AudioListener.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/AudioMultiPosition.png (100%) rename {Editor => Assets/Editor}/Icons/Components/AudioPreload.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/AudioProxy.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/AudioRtpc.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/AudioSwitch.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/AudioTrigger.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/BehaviorTree.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Box.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Box_Shape.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Capsule_Shape.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/CharacterPhysics.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Cloth.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/CloudGemMessageOfTheDay.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/ColliderBox.png (100%) rename {Editor => Assets/Editor}/Icons/Components/ColliderCapsule.png (100%) rename {Editor => Assets/Editor}/Icons/Components/ColliderCylinder.png (100%) rename {Editor => Assets/Editor}/Icons/Components/ColliderMesh.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/ColliderSphere.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Comment.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Component_Placeholder.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Compound_Shape.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Cylinder.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Cylinder_Shape.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/DebugDrawLine.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/DebugDrawObb.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/DebugDrawRay.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/DebugDrawSphere.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/DebugDrawText.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Decal.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Animation_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Attachment_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/AudioAreaEnvironment_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/AudioArea_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/AudioEnvironment_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/AudioListener_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/AudioRtpc_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/AudioSwitch_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/AudioTrigger_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/BehaviorTree_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Box_Shape_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Box_collider_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Box_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Capsule_Shape_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Capsule_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/CharacterPhysics_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Comment.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/ComponentPlaceholder_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Component_Placeholder_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Cylinder_Shape_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Cylinder_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Decal_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/DynamicContent_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/DynamicMesh_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/EntityInSlice_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Entity_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/FogVolume_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/ForceVolume_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/GeometryCache_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/HttpClientComponent_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/LensFlare_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Light_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/LightningArc_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Lightning_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/LookAt_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/MannequinScopeContext_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Mannequin_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Mesh_collidaer_white 2.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/NavigationArea_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/NavigationSeed_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Navigation_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/NetBinding_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/ObjectAvoidance_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Particle_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/PhysicsConstraint_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/PolygonPrism_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/PrimitiveCollider_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Ragdoll.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Ragdoll_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/RandomTimedSpawner_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/RigidPhysics_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Script_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/SequenceAgent_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Sequence_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Shadow.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/SimpleState_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/SkinnedMesh_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/SkyHighlight_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Snow_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Spawner_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Sphere_Shape_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Sphere_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Spline_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/StaticData_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/StaticMesh_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/StaticPhysics_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Tag_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Transform_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/Trigger_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/UiCanvasOnMesh_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/UiCanvasRef_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/WaterVolume_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disabled/WindVolume_white.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Disk_Shape.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/DynamicContent.png (100%) rename {Editor => Assets/Editor}/Icons/Components/DynamicMesh.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Entity.png (100%) rename {Editor => Assets/Editor}/Icons/Components/EntityInSlice.png (100%) rename {Editor => Assets/Editor}/Icons/Components/EnvironmentProbe.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Flipbook.png (100%) rename {Editor => Assets/Editor}/Icons/Components/FogVolume.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Footstep1.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/ForceRegion.png (100%) rename {Editor => Assets/Editor}/Icons/Components/ForceVolume.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/GeometryCache.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/HttpClientComponent.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Layers.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/LegacyTerrain.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/LensFlare.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Light.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Lightning.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/LightningArc.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/LookAt.png (100%) rename {Editor => Assets/Editor}/Icons/Components/LuaScript.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Mannequin.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/MannequinScopeContext.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/MotionParameterSmoothing.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Navigation.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/NavigationArea.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/NavigationSeed.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/NetBinding.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/ObjectAvoidance.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Particle.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/PhysXCharacter.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/PhysXCollider.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/PhysXRagdoll.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/PhysXRigidBody.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/PhysXTerrain.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Physics.png (100%) rename {Editor => Assets/Editor}/Icons/Components/PhysicsConstraint.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/PointLight.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/PolygonPrism.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/PrimitiveCollider.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/ProjectorLight.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Quad_Shape.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Ragdoll.png (100%) rename {Editor => Assets/Editor}/Icons/Components/RandomTimedSpawner.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/RigidPhysics.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/ScriptEventAssetReference.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Sequence.png (100%) rename {Editor => Assets/Editor}/Icons/Components/SequenceAgent.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Shadow.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/SimpleAnimation.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/SimpleLODDistance.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/SimpleMotion.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/SimpleState.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/SkinnedMesh.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/SkyHighlight.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Snow.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Spawner.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Sphere.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Sphere_Shape.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Spline.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/StaticData.png (100%) rename {Editor => Assets/Editor}/Icons/Components/StaticMesh.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/StaticPhysics.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Tag.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Transform.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/TriggerArea.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Tube_Shape.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/UICanvasAssetRef.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/UICanvasOnMesh.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/UICanvasProxyRef.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/VRPreview.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Animation.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/AreaLight.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Attachment.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/AudioArea.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/AudioAreaEnvironment.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/AudioEnvironment.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/AudioListener.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/AudioMultiPosition.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/AudioRtpc.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/AudioSwitch.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/AudioTrigger.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/BehaviorTree.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Box.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Box_Shape.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Capsule.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Capsule_Shape.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/CharacterPhysics.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Comment.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/ComponentPlaceholder.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Component_Placeholder.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Cylinder.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Cylinder_Shape.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Decal.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Disk_Shape.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/DynamicContent.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/DynamicMesh.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Entity.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/EntityInSlice.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/EnvironmentProbe.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Flipbook.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/FogVolume.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/ForceVolume.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/GeometryCache.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/HttpClientComponent.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/LensFlare.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Light.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Lightning.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/LightningArc.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/LookAt.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Mannequin.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/MannequinScopeContext.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/MeshCollider.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/MotionParameterSmoothing.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Navigation.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/NavigationArea.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/NavigationSeed.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/NetBinding.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Nova.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/ObjectAvoidance.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Particle.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Physics.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/PhysicsConstraint.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/PointLight.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/PolygonPrism.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Primitive Collider.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/PrimitiveCollider.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/ProjectorLight.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Quad_Shape.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Ragdoll.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/RandomTimedSpawner.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/RigidPhysics.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Script.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/ScriptEventAssetReference.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Sequence.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/SequenceAgent.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Shadow.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/SimpleState.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/SkinnedMesh.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/SkyHighlight.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Snow.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Spawner.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Sphere.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Sphere_Shape.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Spline.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/StaticData.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/StaticMesh.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/StaticPhysics.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Tag.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/TerrainPhysics.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Transform.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Trigger.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/Tube_Shape.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/UiCanvasOnMesh.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/UiCanvasRef.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/VRPreview.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/WaterVolume.png (100%) rename {Editor => Assets/Editor}/Icons/Components/Viewport/WindVolume.png (100%) rename {Editor => Assets/Editor}/Icons/Components/WaterRippleGenerator.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/WaterVolume.svg (100%) rename {Editor => Assets/Editor}/Icons/Components/WindVolume.svg (100%) rename {Editor => Assets/Editor}/Icons/PhysX/Move.svg (100%) rename {Editor => Assets/Editor}/Icons/PhysX/Rotate.svg (100%) rename {Editor => Assets/Editor}/Icons/PhysX/Scale.svg (100%) rename {Editor => Assets/Editor}/Icons/PropertyEditor/Browse.png (100%) rename {Editor => Assets/Editor}/Icons/PropertyEditor/Browse_on.png (100%) rename {Editor => Assets/Editor}/Icons/PropertyEditor/add.png (100%) rename {Editor => Assets/Editor}/Icons/PropertyEditor/cross-circle-small.png (100%) rename {Editor => Assets/Editor}/Icons/PropertyEditor/cross-small.png (100%) rename {Editor => Assets/Editor}/Icons/PropertyEditor/error_icon.png (100%) rename {Editor => Assets/Editor}/Icons/PropertyEditor/group_closed.png (100%) rename {Editor => Assets/Editor}/Icons/PropertyEditor/group_open.png (100%) rename {Editor => Assets/Editor}/Icons/PropertyEditor/image_icon.svg (100%) rename {Editor => Assets/Editor}/Icons/PropertyEditor/list-add-small.png (100%) rename {Editor => Assets/Editor}/Icons/PropertyEditor/open_in.png (100%) rename {Editor => Assets/Editor}/Icons/PropertyEditor/point_hand.png (100%) rename {Editor => Assets/Editor}/Icons/PropertyEditor/remove.png (100%) rename {Editor => Assets/Editor}/Icons/PropertyEditor/reset_icon.png (100%) rename {Editor => Assets/Editor}/Icons/PropertyEditor/tool_cancel.png (100%) rename {Editor => Assets/Editor}/Icons/PropertyEditor/tool_cancel_highlight.png (100%) rename {Editor => Assets/Editor}/Icons/PropertyEditor/tool_cancel_hover.png (100%) rename {Editor => Assets/Editor}/Icons/PropertyEditor/trash-small.png (100%) rename {Editor => Assets/Editor}/Icons/PropertyEditor/tree_closed.png (100%) rename {Editor => Assets/Editor}/Icons/PropertyEditor/tree_open.png (100%) rename {Editor => Assets/Editor}/Icons/RotationWarning.png (100%) rename {Editor => Assets/Editor}/Icons/ScaleWarning.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Add.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/And.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Boolean.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Breakpoint.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Bus.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Connect.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Delay.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Disabled/ScriptCanvas_white.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Disconnect.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Divide.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/EntityRef.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Libraries/All.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Libraries/Core.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Libraries/Entity.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Libraries/Logic.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Libraries/Math.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Multiply.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Not.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Number.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Or.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Placeholder.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Print.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Random.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Rotate.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/ScriptCanvas.svg (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Start.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Step In.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Step Over.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/String.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Subtract.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Sum.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Viewport/ScriptCanvas.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Viewport/ScriptCanvas_Function.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/Xor.png (100%) rename {Editor => Assets/Editor}/Icons/ScriptCanvas/settings.png (100%) rename {Editor => Assets/Editor}/Icons/WhiteBox/Move.svg (100%) rename {Editor => Assets/Editor}/Icons/WhiteBox/RestoreMode.svg (100%) rename {Editor => Assets/Editor}/Icons/WhiteBox/Rotate.svg (100%) rename {Editor => Assets/Editor}/Icons/WhiteBox/Scale.svg (100%) rename {Editor => Assets/Editor}/Icons/WhiteBox/SketchMode.svg (100%) rename {Editor => Assets/Editor}/Icons/animation/add.png (100%) rename {Editor => Assets/Editor}/Icons/animation/animation.png (100%) rename {Editor => Assets/Editor}/Icons/animation/animation_additive.png (100%) rename {Editor => Assets/Editor}/Icons/animation/animation_aimpose.png (100%) rename {Editor => Assets/Editor}/Icons/animation/animation_bspace.png (100%) rename {Editor => Assets/Editor}/Icons/animation/animation_comb.png (100%) rename {Editor => Assets/Editor}/Icons/animation/animation_lookpose.png (100%) rename {Editor => Assets/Editor}/Icons/animation/animation_offline.png (100%) rename {Editor => Assets/Editor}/Icons/animation/attachment.png (100%) rename {Editor => Assets/Editor}/Icons/animation/audio_event_16.png (100%) rename {Editor => Assets/Editor}/Icons/animation/back_16.png (100%) rename {Editor => Assets/Editor}/Icons/animation/bind_pose.png (100%) rename {Editor => Assets/Editor}/Icons/animation/bone.png (100%) rename {Editor => Assets/Editor}/Icons/animation/build.png (100%) rename {Editor => Assets/Editor}/Icons/animation/character.png (100%) rename {Editor => Assets/Editor}/Icons/animation/close.png (100%) rename {Editor => Assets/Editor}/Icons/animation/close_highlight.png (100%) rename {Editor => Assets/Editor}/Icons/animation/create_cdf.png (100%) rename {Editor => Assets/Editor}/Icons/animation/display_options.png (100%) rename {Editor => Assets/Editor}/Icons/animation/filter_16.png (100%) rename {Editor => Assets/Editor}/Icons/animation/footsteps.png (100%) rename {Editor => Assets/Editor}/Icons/animation/force_recompile.png (100%) rename {Editor => Assets/Editor}/Icons/animation/forward_16.png (100%) rename {Editor => Assets/Editor}/Icons/animation/gizmo_location.png (100%) rename {Editor => Assets/Editor}/Icons/animation/grid.png (100%) rename {Editor => Assets/Editor}/Icons/animation/group.png (100%) rename {Editor => Assets/Editor}/Icons/animation/import.png (100%) rename {Editor => Assets/Editor}/Icons/animation/in_folder_16.png (100%) rename {Editor => Assets/Editor}/Icons/animation/in_folder_and_pak_16.png (100%) rename {Editor => Assets/Editor}/Icons/animation/in_pak_16.png (100%) rename {Editor => Assets/Editor}/Icons/animation/lock_16.png (100%) rename {Editor => Assets/Editor}/Icons/animation/new_animation.png (100%) rename {Editor => Assets/Editor}/Icons/animation/physics.png (100%) rename {Editor => Assets/Editor}/Icons/animation/playback_options.png (100%) rename {Editor => Assets/Editor}/Icons/animation/redo.png (100%) rename {Editor => Assets/Editor}/Icons/animation/revert.png (100%) rename {Editor => Assets/Editor}/Icons/animation/rig.png (100%) rename {Editor => Assets/Editor}/Icons/animation/save.png (100%) rename {Editor => Assets/Editor}/Icons/animation/selection_16.png (100%) rename {Editor => Assets/Editor}/Icons/animation/show_in_explorer.png (100%) rename {Editor => Assets/Editor}/Icons/animation/skeleton.png (100%) rename {Editor => Assets/Editor}/Icons/animation/skin.png (100%) rename {Editor => Assets/Editor}/Icons/animation/source_asset_16.png (100%) rename {Editor => Assets/Editor}/Icons/animation/tool_move.png (100%) rename {Editor => Assets/Editor}/Icons/animation/tool_rotate.png (100%) rename {Editor => Assets/Editor}/Icons/animation/tool_scale.png (100%) rename {Editor => Assets/Editor}/Icons/animation/tool_select.png (100%) rename {Editor => Assets/Editor}/Icons/animation/undo.png (100%) rename {Editor => Assets/Editor}/Icons/checkmark_checked.png (100%) rename {Editor => Assets/Editor}/Icons/checkmark_checked_hover.png (100%) rename {Editor => Assets/Editor}/Icons/checkmark_unchecked_hover.png (100%) rename {Editor => Assets/Editor}/Icons/close.png (100%) rename {Editor => Assets/Editor}/Icons/float.png (100%) rename {Editor => Assets/Editor}/Icons/lc_camera.png (100%) rename {Editor => Assets/Editor}/Icons/lc_exportandlaunch.png (100%) rename {Editor => Assets/Editor}/Icons/lc_pc.png (100%) rename {Editor => Assets/Editor}/Icons/lc_power.png (100%) rename {Editor => Assets/Editor}/Icons/lc_sshot.png (100%) rename {Editor => Assets/Editor}/Icons/lc_sync.png (100%) rename {Editor => Assets/Editor}/Icons/reset.png (100%) rename {Editor => Assets/Editor}/Icons/split.png (100%) rename {Editor => Assets/Editor}/LambdaFunctions/LwALambdaFunction.js (100%) rename {Editor => Assets/Editor}/LambdaFunctions/LwFacebookLambdaFunction.js (100%) rename {Editor => Assets/Editor}/LambdaFunctions/LwGenericOpenIdConnectLambdaFunction.js (100%) rename {Editor => Assets/Editor}/LambdaFunctions/LwGoogleLambdaFunction.js (100%) rename {Editor => Assets/Editor}/LevelTemplates.xml (100%) rename {Editor => Assets/Editor}/MapScreenshotSettings.xml (100%) rename {Editor => Assets/Editor}/Materials/ShaderList.xml (100%) rename {Editor => Assets/Editor}/Materials/Stripes.tif (100%) rename {Editor => Assets/Editor}/Materials/Stripes.tif.exportsettings (100%) rename {Editor => Assets/Editor}/Materials/areasolid.dds (100%) rename {Editor => Assets/Editor}/Materials/areasolid.mtl (100%) rename {Editor => Assets/Editor}/Materials/crydesigner_selection.mtl (100%) rename {Editor => Assets/Editor}/Materials/default_rope.mtl (100%) rename {Editor => Assets/Editor}/Materials/lodgen_template.mtl (54%) rename {Editor => Assets/Editor}/Materials/refpicture.mtl (100%) rename {Editor => Assets/Editor}/Materials/voxel_editor.mtl (100%) rename {Editor => Assets/Editor}/Materials/voxel_editor.png (100%) rename {Editor => Assets/Editor}/Materials/voxel_editor.png.exportsettings (100%) rename {Editor => Assets/Editor}/MissionTemplate.lua (100%) rename {Editor => Assets/Editor}/ModellingPanel.xml (100%) rename {Editor => Assets/Editor}/NewEntityTemplate.ent_template (100%) rename {Editor => Assets/Editor}/NewEntityTemplate.lua_template (100%) rename {Editor => Assets/Editor}/ObjectIcons/AreaTrigger.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/AudioAreaAmbience.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/AudioAreaEntity.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/AudioAreaRandom.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/Camera.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/Checkpoint.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/ClipVolume.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/Clock.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/Clouds.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/Comment.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/DeadBody.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/Decal.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/Dialog.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/Flash.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/Fog.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/FogVolume.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/GravitySphere.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/Item.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/Ladder.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/Light.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/LightPropagationVolume.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/Lightning.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/Magnet.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/MultiTrigger.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/ODD.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/Particles.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/PrecacheCamera.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/Prefab.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/Prompt.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/SavePoint.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/Seed.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/Sound.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/SpawnPoint.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/T.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/TagPoint.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/Trigger.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/UiCanvasRefEntity.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/User.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/VVVArea.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/W.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/Water.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/animobject.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/bird.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/bug.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/character.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/death.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/door.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/elevator.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/environmentProbe.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/explosion.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/fish.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/forbiddenarea.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/hazard.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/health.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/ledge.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/mine.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/physicsobject.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/prefabbuilding.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/proceduralbuilding.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/proceduralobject.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/proximitytrigger.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/river.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/road.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/rope.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/sequence.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/shake.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/smartobject.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/spawngroup.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/spectator.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/switch.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/territory.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/tornado.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/vehicle.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/voxel.bmp (100%) rename {Editor => Assets/Editor}/ObjectIcons/wave.bmp (100%) rename {Editor => Assets/Editor}/ObjectTemplates.xml (100%) rename {Editor => Assets/Editor}/Objects/Arrow.cgf (100%) rename {Editor => Assets/Editor}/Objects/Axis.cgf (100%) rename {Editor => Assets/Editor}/Objects/Clock.cgf (100%) rename {Editor => Assets/Editor}/Objects/Comment.cgf (100%) rename {Editor => Assets/Editor}/Objects/CryDesigner_camera.grp (100%) rename {Editor => Assets/Editor}/Objects/M.cgf (100%) rename {Editor => Assets/Editor}/Objects/MtlBox.cgf (100%) rename {Editor => Assets/Editor}/Objects/MtlObjects.max (100%) rename {Editor => Assets/Editor}/Objects/MtlPlane.cgf (100%) rename {Editor => Assets/Editor}/Objects/MtlSphere.cgf (100%) rename {Editor => Assets/Editor}/Objects/MtlSwatch.cgf (100%) rename {Editor => Assets/Editor}/Objects/MtlTeapot.cgf (100%) rename {Editor => Assets/Editor}/Objects/MusicTheme.cgf (100%) rename {Editor => Assets/Editor}/Objects/Particles.cgf (100%) rename {Editor => Assets/Editor}/Objects/Pyramid.cgf (100%) rename {Editor => Assets/Editor}/Objects/S.cgf (100%) rename {Editor => Assets/Editor}/Objects/Sound.cgf (100%) rename {Editor => Assets/Editor}/Objects/Sphere.cgf (100%) rename {Editor => Assets/Editor}/Objects/T.cgf (100%) rename {Editor => Assets/Editor}/Objects/Vis.cgf (100%) rename {Editor => Assets/Editor}/Objects/W.cgf (100%) rename {Editor => Assets/Editor}/Objects/ai_hide_point.cgf (100%) rename {Editor => Assets/Editor}/Objects/anchor.cgf (100%) rename {Editor => Assets/Editor}/Objects/assaultspawn.cgf (100%) rename {Editor => Assets/Editor}/Objects/border.cgf (100%) rename {Editor => Assets/Editor}/Objects/box.cgf (100%) rename {Editor => Assets/Editor}/Objects/box_nodraw.cgf (100%) rename {Editor => Assets/Editor}/Objects/buyzone.cgf (100%) rename {Editor => Assets/Editor}/Objects/c2_car_jump_cross.cgf (100%) rename {Editor => Assets/Editor}/Objects/c2_crawl_h150.cgf (100%) rename {Editor => Assets/Editor}/Objects/c2_duck_v125.cgf (100%) rename {Editor => Assets/Editor}/Objects/c2_jump_h1200.cgf (100%) rename {Editor => Assets/Editor}/Objects/c2_jump_h500.cgf (100%) rename {Editor => Assets/Editor}/Objects/c2_jump_h900.cgf (100%) rename {Editor => Assets/Editor}/Objects/c2_jump_h900_v150.cgf (100%) rename {Editor => Assets/Editor}/Objects/c2_jump_v150.cgf (100%) rename {Editor => Assets/Editor}/Objects/c2_jump_v300.cgf (100%) rename {Editor => Assets/Editor}/Objects/c2_jump_v450.cgf (100%) rename {Editor => Assets/Editor}/Objects/c2_jumpdown_v900.cgf (100%) rename {Editor => Assets/Editor}/Objects/c2_jumpwindow_combo_v550.cgf (100%) rename {Editor => Assets/Editor}/Objects/c2_jumpwindow_v550.cgf (100%) rename {Editor => Assets/Editor}/Objects/c2_jumpzigzag_v300_v750_lft.cgf (100%) rename {Editor => Assets/Editor}/Objects/c2_jumpzigzag_v300_v750_rgt.cgf (100%) rename {Editor => Assets/Editor}/Objects/c2_slide_h400.cgf (100%) rename {Editor => Assets/Editor}/Objects/c2_slidedown_v1800.cgf (100%) rename {Editor => Assets/Editor}/Objects/c2_vault_v125.cgf (100%) rename {Editor => Assets/Editor}/Objects/c2_vault_v800.cgf (100%) rename {Editor => Assets/Editor}/Objects/c2_wall_jump_h900_v450.cgf (100%) rename {Editor => Assets/Editor}/Objects/c2_wall_run_h900_v300.cgf (100%) rename {Editor => Assets/Editor}/Objects/c3_dive_h900.cgf (100%) rename {Editor => Assets/Editor}/Objects/c3_doorbreak_human.cgf (100%) rename {Editor => Assets/Editor}/Objects/c3_doorframe.cgf (100%) rename {Editor => Assets/Editor}/Objects/c3_jump_v150_large.cgf (100%) rename {Editor => Assets/Editor}/Objects/c3_jump_v300_large.cgf (100%) rename {Editor => Assets/Editor}/Objects/c3_jump_v450_large.cgf (100%) rename {Editor => Assets/Editor}/Objects/c3_repeldown_v2600.cgf (100%) rename {Editor => Assets/Editor}/Objects/c3_repeldown_v900.cgf (100%) rename {Editor => Assets/Editor}/Objects/c3_so_cornerPopOutSearchLeft.cgf (100%) rename {Editor => Assets/Editor}/Objects/c3_so_cornerPopOutSearchRight.cgf (100%) rename {Editor => Assets/Editor}/Objects/c3_vault_v125_large.cgf (100%) rename {Editor => Assets/Editor}/Objects/c3_zipline_7500_15.cgf (100%) rename {Editor => Assets/Editor}/Objects/collision_dummy_100x50.cgf (100%) rename {Editor => Assets/Editor}/Objects/collision_dummy_25x50.cgf (100%) rename {Editor => Assets/Editor}/Objects/collision_dummy_50x50.cgf (100%) rename {Editor => Assets/Editor}/Objects/corner270.cgf (100%) rename {Editor => Assets/Editor}/Objects/editor_helpers.max (100%) rename {Editor => Assets/Editor}/Objects/energypoint.cgf (100%) rename {Editor => Assets/Editor}/Objects/entrypoint.cgf (100%) rename {Editor => Assets/Editor}/Objects/envcube.cgf (100%) rename {Editor => Assets/Editor}/Objects/envcube.max (100%) rename {Editor => Assets/Editor}/Objects/envcube.mtl (100%) rename {Editor => Assets/Editor}/Objects/factory.cgf (100%) rename {Editor => Assets/Editor}/Objects/flock.cgf (100%) rename {Editor => Assets/Editor}/Objects/forbiddenarea.cgf (100%) rename {Editor => Assets/Editor}/Objects/gradb.dds (100%) rename {Editor => Assets/Editor}/Objects/gradf.dds (100%) rename {Editor => Assets/Editor}/Objects/helper.mtl (100%) rename {Editor => Assets/Editor}/Objects/helper_illum.mtl (100%) rename {Editor => Assets/Editor}/Objects/hidepoint.cgf (100%) rename {Editor => Assets/Editor}/Objects/hidepoint_sec.cgf (100%) rename {Editor => Assets/Editor}/Objects/highvault.cgf (100%) rename {Editor => Assets/Editor}/Objects/hq.cgf (100%) rename {Editor => Assets/Editor}/Objects/invisiblebox.cgf (100%) rename {Editor => Assets/Editor}/Objects/invisibleobstruct.cgf (100%) rename {Editor => Assets/Editor}/Objects/invisibleocclude.cgf (100%) rename {Editor => Assets/Editor}/Objects/invisiblewall.cgf (100%) rename {Editor => Assets/Editor}/Objects/jump_150.cgf (100%) rename {Editor => Assets/Editor}/Objects/jump_300.cgf (100%) rename {Editor => Assets/Editor}/Objects/jump_450.cgf (100%) rename {Editor => Assets/Editor}/Objects/leap_1000.cgf (100%) rename {Editor => Assets/Editor}/Objects/leap_500.cgf (100%) rename {Editor => Assets/Editor}/Objects/light_omni.cgf (100%) rename {Editor => Assets/Editor}/Objects/light_spot.cgf (100%) rename {Editor => Assets/Editor}/Objects/lightsphere.cgf (100%) rename {Editor => Assets/Editor}/Objects/measurehelper_A.cgf (100%) rename {Editor => Assets/Editor}/Objects/measurehelper_B.cgf (100%) rename {Editor => Assets/Editor}/Objects/mtlbox.mtl (100%) rename {Editor => Assets/Editor}/Objects/mtlobjects.mtl (100%) rename {Editor => Assets/Editor}/Objects/objective.cgf (100%) rename {Editor => Assets/Editor}/Objects/phoenix.cgf (100%) rename {Editor => Assets/Editor}/Objects/refpicture.cgf (100%) rename {Editor => Assets/Editor}/Objects/refpicture.max (100%) rename {Editor => Assets/Editor}/Objects/reinforcement_point.cgf (100%) rename {Editor => Assets/Editor}/Objects/smartobject_helper.max (100%) rename {Editor => Assets/Editor}/Objects/spawngroup.cgf (100%) rename {Editor => Assets/Editor}/Objects/spawnpointhelper.cgf (100%) rename {Editor => Assets/Editor}/Objects/spawnpointhelper.mtl (100%) rename {Editor => Assets/Editor}/Objects/stayOnWallFire_left.cgf (100%) rename {Editor => Assets/Editor}/Objects/suit_jump_300.cgf (100%) rename {Editor => Assets/Editor}/Objects/suit_jump_800.cgf (100%) rename {Editor => Assets/Editor}/Objects/suit_leap_800.cgf (100%) rename {Editor => Assets/Editor}/Plugins/ParticleEditorPlugin/defaults/DefaultParticleEmitters.xml (100%) rename {Editor => Assets/Editor}/Plugins/ParticleEditorPlugin/defaults/defaultParticle.dds (100%) rename {Editor => Assets/Editor}/Plugins/ParticleEditorPlugin/defaults/feather01.tif (100%) rename {Editor => Assets/Editor}/Plugins/ParticleEditorPlugin/defaults/puffup01.tif (100%) rename {Editor => Assets/Editor}/Plugins/ParticleEditorPlugin/settings/ToolTips.xml (100%) rename {Editor => Assets/Editor}/Plugins/UiCanvasEditor/CanvasIcons/Anchor_Left.tif (100%) rename {Editor => Assets/Editor}/Plugins/UiCanvasEditor/CanvasIcons/Anchor_TopLeft.tif (100%) rename {Editor => Assets/Editor}/Plugins/UiCanvasEditor/CanvasIcons/Anchor_Whole.tif (100%) rename {Editor => Assets/Editor}/Plugins/UiCanvasEditor/CanvasIcons/Border_Selected.tif (100%) rename {Editor => Assets/Editor}/Plugins/UiCanvasEditor/CanvasIcons/Border_Unselected.tif (100%) rename {Editor => Assets/Editor}/Plugins/UiCanvasEditor/CanvasIcons/Canvas_Background.tif (100%) rename {Editor => Assets/Editor}/Plugins/UiCanvasEditor/CanvasIcons/DottedLine.tif (100%) rename {Editor => Assets/Editor}/Plugins/UiCanvasEditor/CanvasIcons/Pivot.tif (100%) rename {Editor => Assets/Editor}/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Center_Square.tif (100%) rename {Editor => Assets/Editor}/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Circle.tif (100%) rename {Editor => Assets/Editor}/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Square_X.tif (100%) rename {Editor => Assets/Editor}/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Square_Y.tif (100%) rename {Editor => Assets/Editor}/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Triangle_X.tif (100%) rename {Editor => Assets/Editor}/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Triangle_Y.tif (100%) rename {Editor => Assets/Editor}/Presets/GeomCache/game.cbc (100%) rename {Editor => Assets/Editor}/Presets/GeomCache/game_lz4hc.cbc (100%) rename {Editor => Assets/Editor}/Presets/GeomCache/game_z_up.cbc (100%) rename {Editor => Assets/Editor}/Presets/GeomCache/game_z_up_lz4hc.cbc (100%) rename {Editor => Assets/Editor}/Presets/GeomCache/prerendered.cbc (100%) rename {Editor => Assets/Editor}/Presets/GeomCache/prerendered_z_up.cbc (100%) rename {Editor => Assets/Editor}/Presets/GeomCache/rigids_only.cbc (100%) rename {Editor => Assets/Editor}/Presets/GeomCache/rigids_only_z_up.cbc (100%) rename {Editor => Assets/Editor}/Presets/GeomCache/uncompressed.cbc (100%) rename {Editor => Assets/Editor}/Presets/GeomCache/uncompressed_z_up.cbc (100%) rename {Editor => Assets/Editor}/Presets/MobileSettings/GPUAndDriverLists.json (100%) rename {Editor => Assets/Editor}/Presets/MobileSettings/IPhone7.lms (100%) rename {Editor => Assets/Editor}/Presets/MobileSettings/IpadPro.lms (100%) rename {Editor => Assets/Editor}/Presets/MobileSettings/MobileFeatureBlackList.json (100%) rename {Editor => Assets/Editor}/Presets/MobileSettings/Nexus9.lms (100%) rename {Editor => Assets/Editor}/Presets/MobileSettings/SamsungGalaxyS7_Mali.lms (100%) rename {Editor => Assets/Editor}/Presets/MobileSettings/SamsungGalaxyS7_Qualcomm.lms (100%) rename {Editor => Assets/Editor}/PropertyEnumerations.xml (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/Albedo.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/Diffuse_Lighting.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/Diffuse_Texture_Res_360.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/Empty_Wireframe.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/Exit.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/Fuzziness.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/Gloss.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/Normal_Texture_Res_360.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/PrefabAddLibrary.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/PrefabAddSelection.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/PrefabBreak.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/PrefabConvert.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/PrefabCreate.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/PrefabIsolate.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/Scattering.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/Solid_Wireframe.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/Spec_Amount.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/Spec_Lighting.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/Texel_Per_Meter_1024.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/Texel_Per_Meter_256.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/Texel_Per_Meter_512.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/all.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/beams.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/blanker.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/bounding_box.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/brushes.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/cloud.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/cloud_dark.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/cloud_dark_rain.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/collisions.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/create_ao_volume_box.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/create_both_vis_box_envprobe.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/create_envprobe.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/create_portal_box.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/create_vis_box.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/create_vis_box_and_portal_box.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/create_vis_box_env_probe_and_portal.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/cubemap.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/decals.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/default_material.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/default_material_with_normals.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/designer.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/diff_acc.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/display_info.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/dual_layer_mask.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/dynamiclights.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/entities.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/eye_adaptation_speed.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/fog.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/fogvolumes.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/freeze_particles.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/full_shading.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/gamma.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/gi.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/lens_flare.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/lighting_only.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/lods.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/lsao.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/lsao_toggle.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/lsro.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/normals.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/normals_x.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/normals_y.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/normals_z.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/ocean.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/particles.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/particles_bounds.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/particles_off.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/particles_overdraw.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/particles_screen_coverage.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/placeholder.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/prefab.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/reflections.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/reset.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/selfocc.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/shaded_wireframe.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/shadows.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/showlines.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/sky.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/spec_acc.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/spec_lum.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/spec_occ.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/ssao.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/ssdo.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/ssdo_toggle.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/sun.big.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/tangents.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/terrain.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/time_scale_double.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/time_scale_frozen.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/time_scale_half.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/time_scale_quarter.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/time_scale_tenth.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/tod.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/translucency.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/transparency.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/valid_albedo.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/valid_spec_lum.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/vegetation.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/vertex_normals.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/vis_area.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/water_volume.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/wind.png (100%) rename {Editor => Assets/Editor}/Scripts/Shelves/icons/wireframe.png (100%) rename {Editor => Assets/Editor}/Scripts/TrackView/example.py (100%) rename {Editor => Assets/Editor}/Scripts/editor_script_validation.py (100%) rename {Editor => Assets/Editor}/Scripts/export_all_project_levels.py (100%) rename {Editor => Assets/Editor}/Scripts/generatelod.py (100%) rename {Editor => Assets/Editor}/Scripts/rename_cgf.py (100%) rename {Editor => Assets/Editor}/Scripts/select_story_anim_objects.py (100%) rename {Editor => Assets/Editor}/Scripts/tools_shelf_actions.py (100%) rename {Editor => Assets/Editor}/SoundTemplates.xml (100%) rename {Editor => Assets/Editor}/Styles/AssetImporterWindow.qss (100%) rename {Editor => Assets/Editor}/Styles/AssetProcessor.qss (100%) rename {Editor => Assets/Editor}/Styles/AssetProcessorGlobalStyleSheet.qss (100%) rename {Editor => Assets/Editor}/Styles/AssetProcessorGlobalStyleSheetVariables.json (100%) rename {Editor => Assets/Editor}/Styles/CryDark.cjstyles (100%) rename {Editor => Assets/Editor}/Styles/CryLight.cjstyles (100%) rename {Editor => Assets/Editor}/Styles/MultiMeshSelectionPane.qss (100%) rename {Editor => Assets/Editor}/Styles/Office2007.dll (100%) rename {Editor => Assets/Editor}/Styles/Office2007Black.dll (100%) rename {Editor => Assets/Editor}/Styles/Office2007Silver.dll (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/Validation_icon.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/about_dark.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/about_light.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/arrow_down_V2.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/arrow_left_V2.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/arrow_right_V2.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/arrow_up_V2.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/checkbox_checked.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/checkbox_checked_disabled.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/checkbox_checked_hover.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/checkbox_checked_pressed.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/checkbox_indeterminate_hover .png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/checkbox_indeterminate_pressed.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/checkbox_unchecked.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/checkbox_unchecked_disabled.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/checkbox_unchecked_hover.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/checkbox_unchecked_pressed.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/dropdown_arrow.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/error_icon.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/help.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/info_icon.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/radiobutton_checked.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/radiobutton_checked_disabled.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/radiobutton_unchecked.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/radiobutton_unchecked_disabled.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/spinbox_down.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/spinbox_up.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/treeview_arrow_down.png (100%) rename {Editor => Assets/Editor}/Styles/StyleSheetImages/treeview_arrow_right.png (100%) rename {Editor => Assets/Editor}/Styles/stylesheet_Dark.qss (100%) rename {Editor => Assets/Editor}/Styles/stylesheet_Light.qss (100%) rename {Editor => Assets/Editor}/ToolBox.xml (100%) rename {Editor => Assets/Editor}/Translation/scriptcanvas_en_us.ts (100%) rename {Editor => Assets/Editor}/UI/AssetBrowserRibbon.xml (100%) rename {Editor => Assets/Editor}/UI/Icons/AddSel.png (100%) rename {Editor => Assets/Editor}/UI/Icons/AlObjGrid.png (100%) rename {Editor => Assets/Editor}/UI/Icons/AlObjSurf.png (100%) rename {Editor => Assets/Editor}/UI/Icons/AlSelect.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Animation Graph.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Asset Browser.png (100%) rename {Editor => Assets/Editor}/UI/Icons/AssetBrowserCheckers.png (100%) rename {Editor => Assets/Editor}/UI/Icons/AssetBrowserFilterPresets.png (100%) rename {Editor => Assets/Editor}/UI/Icons/AssetBrowserFromViewportSel.png (100%) rename {Editor => Assets/Editor}/UI/Icons/AssetBrowserRefresh.png (100%) rename {Editor => Assets/Editor}/UI/Icons/AssetBrowserSelectInViewport.png (100%) rename {Editor => Assets/Editor}/UI/Icons/AssetBrowserSound.png (100%) rename {Editor => Assets/Editor}/UI/Icons/AssetBrowserThumbInvalid.png (100%) rename {Editor => Assets/Editor}/UI/Icons/AssetBrowserThumbLoading.png (100%) rename {Editor => Assets/Editor}/UI/Icons/AssetBrowserTooltipShadow.png (100%) rename {Editor => Assets/Editor}/UI/Icons/AssetFav.png (100%) rename {Editor => Assets/Editor}/UI/Icons/AssetTag.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Attach.png (100%) rename {Editor => Assets/Editor}/UI/Icons/AutoSync.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Character Tool.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Clone.png (100%) rename {Editor => Assets/Editor}/UI/Icons/CloseGroup.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Cloud.png (100%) rename {Editor => Assets/Editor}/UI/Icons/ConOpt.png (100%) rename {Editor => Assets/Editor}/UI/Icons/ConvertSelToBrushes.png (100%) rename {Editor => Assets/Editor}/UI/Icons/ConvertSelToDesigner.png (100%) rename {Editor => Assets/Editor}/UI/Icons/ConvertSelToSimpleEntity.png (100%) rename {Editor => Assets/Editor}/UI/Icons/ConvertSelToStaticEntity.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Database View.png (100%) rename {Editor => Assets/Editor}/UI/Icons/DelSel.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Delete.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Detach.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Dialog Editor.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Edit Terrain Lighting.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Edit Vegetation.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Editor Settings Manager.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Error Report.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Export Block.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Facial Editor.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Fetch.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Flatten Terrain.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Follow.png (100%) rename {Editor => Assets/Editor}/UI/Icons/FollowSnap.png (100%) rename {Editor => Assets/Editor}/UI/Icons/ForceSyncLevelToConsole.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Freeze.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Front.png (100%) rename {Editor => Assets/Editor}/UI/Icons/GetPhysics.png (100%) rename {Editor => Assets/Editor}/UI/Icons/GoToObj.png (100%) rename {Editor => Assets/Editor}/UI/Icons/GotoTagPoint.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Group.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Hide.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Hold.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Import Block.png (100%) rename {Editor => Assets/Editor}/UI/Icons/ImportExport Terrain Texture.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Invert.png (100%) rename {Editor => Assets/Editor}/UI/Icons/LNM Editor.png (100%) rename {Editor => Assets/Editor}/UI/Icons/LaunchLevel.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Layer Editor.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Layer.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Left.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Lighting Tool.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Link.png (100%) rename {Editor => Assets/Editor}/UI/Icons/LoadGameLevel.png (100%) rename {Editor => Assets/Editor}/UI/Icons/LoadGameLevel_16x16.png (100%) rename {Editor => Assets/Editor}/UI/Icons/LoadLevel.png (100%) rename {Editor => Assets/Editor}/UI/Icons/LoadSelObj.png (100%) rename {Editor => Assets/Editor}/UI/Icons/LoadSelObj_16x16.png (100%) rename {Editor => Assets/Editor}/UI/Icons/MakePref.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Mannequin Editor.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Mannequin.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Map.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Material Editor.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Material_Editor_16x16.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Measurement System Tool.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Missing Asset Resolver.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Model Preview.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Modular Editor.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Move.png (100%) rename {Editor => Assets/Editor}/UI/Icons/NavContinuousUpdate.png (100%) rename {Editor => Assets/Editor}/UI/Icons/NavContinuousUpdate2.png (100%) rename {Editor => Assets/Editor}/UI/Icons/NavDebugDisplay.png (100%) rename {Editor => Assets/Editor}/UI/Icons/NavNewArea.png (100%) rename {Editor => Assets/Editor}/UI/Icons/NavNewSeed.png (100%) rename {Editor => Assets/Editor}/UI/Icons/NavShowAreas.png (100%) rename {Editor => Assets/Editor}/UI/Icons/NavShowAreas2.png (100%) rename {Editor => Assets/Editor}/UI/Icons/OpenGroup.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Perspective.png (100%) rename {Editor => Assets/Editor}/UI/Icons/QCollapsePanel/collapsed.png (100%) rename {Editor => Assets/Editor}/UI/Icons/QCollapsePanel/open.png (100%) rename {Editor => Assets/Editor}/UI/Icons/QEditorCollapseGroup/arrow_down_V2.png (100%) rename {Editor => Assets/Editor}/UI/Icons/QEditorCollapseGroup/arrow_right_V2.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Redo.png (100%) rename {Editor => Assets/Editor}/UI/Icons/RefCoord.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Reload Terrain-.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Reload Terrain.png (100%) rename {Editor => Assets/Editor}/UI/Icons/ReloadAll.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Rename.png (100%) rename {Editor => Assets/Editor}/UI/Icons/ResetPhysics.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Resize Terrain.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Rotate.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Ruler.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Save as Geometry.png (100%) rename {Editor => Assets/Editor}/UI/Icons/SaveGameLevel.png (100%) rename {Editor => Assets/Editor}/UI/Icons/SaveSelObj.png (100%) rename {Editor => Assets/Editor}/UI/Icons/SaveTagPoint.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Scale.png (100%) rename {Editor => Assets/Editor}/UI/Icons/SelObjType.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Select Objects.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Select.png (100%) rename {Editor => Assets/Editor}/UI/Icons/SelectAll.png (100%) rename {Editor => Assets/Editor}/UI/Icons/SelectNone.png (100%) rename {Editor => Assets/Editor}/UI/Icons/SelectObjects.png (100%) rename {Editor => Assets/Editor}/UI/Icons/SelectTerrainArea.png (100%) rename {Editor => Assets/Editor}/UI/Icons/SelectionMask.bmp (100%) rename {Editor => Assets/Editor}/UI/Icons/SetHeight.png (100%) rename {Editor => Assets/Editor}/UI/Icons/ShowRollup.png (100%) rename {Editor => Assets/Editor}/UI/Icons/SimObj.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Smart Objects Editor.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Smooth Terrain.png (100%) rename {Editor => Assets/Editor}/UI/Icons/SnapAngle.png (100%) rename {Editor => Assets/Editor}/UI/Icons/SnapGrid.png (100%) rename {Editor => Assets/Editor}/UI/Icons/SyncCamera.png (100%) rename {Editor => Assets/Editor}/UI/Icons/SyncData.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Terrain Editor.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Terrain Texture Layers.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Time of Day.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Top.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Track View.png (100%) rename {Editor => Assets/Editor}/UI/Icons/UI Emulator.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Undo.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Unfreeze.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Ungroup.png (100%) rename {Editor => Assets/Editor}/UI/Icons/UnhideAll.png (100%) rename {Editor => Assets/Editor}/UI/Icons/UnhideAll_32.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Unlink.png (100%) rename {Editor => Assets/Editor}/UI/Icons/UploadFilesToConsole.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Vehicle Editor.png (100%) rename {Editor => Assets/Editor}/UI/Icons/VertexSnapping.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Visual Log Viewer.png (100%) rename {Editor => Assets/Editor}/UI/Icons/VisualBudgetSystemAnalyzeOne.png (100%) rename {Editor => Assets/Editor}/UI/Icons/VisualBudgetSystemShow.png (100%) rename {Editor => Assets/Editor}/UI/Icons/VisualizeNavigationAccessibility.png (100%) rename {Editor => Assets/Editor}/UI/Icons/XAxis.png (100%) rename {Editor => Assets/Editor}/UI/Icons/XYAxis.png (100%) rename {Editor => Assets/Editor}/UI/Icons/YAxis.png (100%) rename {Editor => Assets/Editor}/UI/Icons/Z View.png (100%) rename {Editor => Assets/Editor}/UI/Icons/ZAxis.png (100%) rename {Editor => Assets/Editor}/UI/Icons/asset_animated_geom.png (100%) rename {Editor => Assets/Editor}/UI/Icons/asset_character.png (100%) rename {Editor => Assets/Editor}/UI/Icons/asset_material.png (100%) rename {Editor => Assets/Editor}/UI/Icons/asset_missing_thumb.png (100%) rename {Editor => Assets/Editor}/UI/Icons/asset_model.png (100%) rename {Editor => Assets/Editor}/UI/Icons/asset_sound.png (100%) rename {Editor => Assets/Editor}/UI/Icons/asset_texture.png (100%) rename {Editor => Assets/Editor}/UI/Icons/mann_clip.png (100%) rename {Editor => Assets/Editor}/UI/Icons/mann_folder.png (100%) rename {Editor => Assets/Editor}/UI/Icons/mann_tag.png (100%) rename {Editor => Assets/Editor}/UI/Icons/toolbar/Load_Icon.png (100%) rename {Editor => Assets/Editor}/UI/Icons/toolbar/itemAdd.png (100%) rename {Editor => Assets/Editor}/UI/Icons/toolbar/itemAssign.png (100%) rename {Editor => Assets/Editor}/UI/Icons/toolbar/itemClone.png (100%) rename {Editor => Assets/Editor}/UI/Icons/toolbar/itemGetProperties.png (100%) rename {Editor => Assets/Editor}/UI/Icons/toolbar/itemReload.png (100%) rename {Editor => Assets/Editor}/UI/Icons/toolbar/itemRemove.png (100%) rename {Editor => Assets/Editor}/UI/Icons/toolbar/libraryAdd.png (100%) rename {Editor => Assets/Editor}/UI/Icons/toolbar/libraryLoad.png (100%) rename {Editor => Assets/Editor}/UI/Icons/toolbar/libraryReload.png (100%) rename {Editor => Assets/Editor}/UI/Icons/toolbar/libraryRemove.png (100%) rename {Editor => Assets/Editor}/UI/Icons/toolbar/librarySave.png (100%) rename {Editor => Assets/Editor}/UI/Icons/toolbar/particleSpecialActivate.png (100%) rename {Editor => Assets/Editor}/UI/Icons/toolbar/particleSpecialReset.png (100%) rename {Editor => Assets/Editor}/UI/Icons/toolbar/standardCopy.png (100%) rename {Editor => Assets/Editor}/UI/Icons/toolbar/standardPaste.png (100%) rename {Editor => Assets/Editor}/UI/Icons/toolbar/standardRedo.png (100%) rename {Editor => Assets/Editor}/UI/Icons/toolbar/standardUndo.png (100%) rename {Editor => Assets/Editor}/UI/Icons/treeview/ParticleEditor/empty_icon.png (100%) rename {Editor => Assets/Editor}/UI/Icons/treeview/ParticleEditor/group_icon.png (100%) rename {Editor => Assets/Editor}/UI/Icons/treeview/ParticleEditor/group_with_lod_icon.png (100%) rename {Editor => Assets/Editor}/UI/Icons/treeview/ParticleEditor/lod_icon.png (100%) rename {Editor => Assets/Editor}/UI/Icons/treeview/group.png (100%) rename {Editor => Assets/Editor}/UI/Icons/treeview/group_inactive.png (100%) rename {Editor => Assets/Editor}/UI/Icons/treeview/item.png (100%) rename {Editor => Assets/Editor}/UI/Icons/treeview/item_inactive.png (100%) rename {Editor => Assets/Editor}/UI/WipFeatures.xml (100%) rename {Editor => Assets/Editor}/UI/releaseTranslations.py (100%) rename {Editor => Assets/Editor}/UI/removeTranslationFiles.py (100%) rename {Editor => Assets/Editor}/UI/updateTranslatableText.py (100%) rename {Editor => Assets/Editor}/UserTools.xml (100%) rename {Editor => Assets/Editor}/asset_thumbnail.tod (100%) rename {Editor => Assets/Editor}/default_time_of_day.xml (100%) rename {Editor => Assets/Editor}/uiCanvasEditorResolutionPresets.xml (100%) rename {Engine => Assets/Engine}/Config/AutoTestChain.cfg (100%) rename {Engine => Assets/Engine}/Config/AutoTestTimeDemo.cfg (100%) rename {Engine => Assets/Engine}/Config/AutotestPlaythrough.cfg (100%) rename {Engine => Assets/Engine}/Config/CVarGroups/sys_spec_Full.cfg (100%) rename {Engine => Assets/Engine}/Config/CVarGroups/sys_spec_GameEffects.cfg (100%) rename {Engine => Assets/Engine}/Config/CVarGroups/sys_spec_ObjectDetail.cfg (100%) rename {Engine => Assets/Engine}/Config/CVarGroups/sys_spec_Particles.cfg (100%) rename {Engine => Assets/Engine}/Config/CVarGroups/sys_spec_Physics.cfg (100%) rename {Engine => Assets/Engine}/Config/CVarGroups/sys_spec_PostProcessing.cfg (100%) rename {Engine => Assets/Engine}/Config/CVarGroups/sys_spec_Quality.cfg (100%) rename {Engine => Assets/Engine}/Config/CVarGroups/sys_spec_Shading.cfg (100%) rename {Engine => Assets/Engine}/Config/CVarGroups/sys_spec_Shadows.cfg (100%) rename {Engine => Assets/Engine}/Config/CVarGroups/sys_spec_Sound.cfg (100%) rename {Engine => Assets/Engine}/Config/CVarGroups/sys_spec_Texture.cfg (100%) rename {Engine => Assets/Engine}/Config/CVarGroups/sys_spec_TextureResolution.cfg (100%) rename {Engine => Assets/Engine}/Config/CVarGroups/sys_spec_VolumetricEffects.cfg (100%) rename {Engine => Assets/Engine}/Config/CVarGroups/sys_spec_Water.cfg (100%) rename {Engine => Assets/Engine}/Config/HDD_cache.xml (100%) rename {Engine => Assets/Engine}/Config/PerfHud_PC.xml (100%) rename {Engine => Assets/Engine}/Config/aidebug.cfg (100%) rename {Engine => Assets/Engine}/Config/artprof.cfg (100%) rename {Engine => Assets/Engine}/Config/artprof_user.cfg (100%) rename {Engine => Assets/Engine}/Config/benchmark_cpu.cfg (100%) rename {Engine => Assets/Engine}/Config/benchmark_gpu.cfg (100%) rename {Engine => Assets/Engine}/Config/config.dat (100%) rename {Engine => Assets/Engine}/Config/engine_core.thread_config (100%) rename {Engine => Assets/Engine}/Config/engine_sandbox.thread_config (100%) rename {Engine => Assets/Engine}/Config/gpu/amd.txt (100%) rename {Engine => Assets/Engine}/Config/gpu/android_gpus.xml (100%) rename {Engine => Assets/Engine}/Config/gpu/android_models.xml (100%) rename {Engine => Assets/Engine}/Config/gpu/intel.txt (100%) rename {Engine => Assets/Engine}/Config/gpu/ios_models.xml (100%) rename {Engine => Assets/Engine}/Config/gpu/nvidia.txt (100%) rename {Engine => Assets/Engine}/Config/mgpu.cfg (100%) rename {Engine => Assets/Engine}/Config/multiplayer.cfg (100%) rename {Engine => Assets/Engine}/Config/multiplayer_console.cfg (100%) rename {Engine => Assets/Engine}/Config/multiplayer_pc.cfg (100%) rename {Engine => Assets/Engine}/Config/performance.cfg (100%) rename {Engine => Assets/Engine}/Config/recording.cfg (100%) rename {Engine => Assets/Engine}/Config/singleplayer.cfg (100%) rename {Engine => Assets/Engine}/Config/sketch_off.cfg (100%) rename {Engine => Assets/Engine}/Config/sketch_on.cfg (100%) rename {Engine => Assets/Engine}/Config/spec/android_MaliT760.cfg (100%) rename {Engine => Assets/Engine}/Config/spec/android_high.cfg (100%) rename {Engine => Assets/Engine}/Config/spec/android_high_nogmem.cfg (100%) rename {Engine => Assets/Engine}/Config/spec/android_low.cfg (100%) rename {Engine => Assets/Engine}/Config/spec/android_medium.cfg (100%) rename {Engine => Assets/Engine}/Config/spec/android_veryhigh.cfg (100%) rename {Engine => Assets/Engine}/Config/spec/ios_high.cfg (100%) rename {Engine => Assets/Engine}/Config/spec/ios_low.cfg (100%) rename {Engine => Assets/Engine}/Config/spec/ios_medium.cfg (100%) rename {Engine => Assets/Engine}/Config/spec/ios_veryhigh.cfg (100%) rename {Engine => Assets/Engine}/Config/spec/osx_metal_high.cfg (100%) rename {Engine => Assets/Engine}/Config/spec/osx_metal_low.cfg (100%) rename {Engine => Assets/Engine}/Config/spec/osx_metal_medium.cfg (100%) rename {Engine => Assets/Engine}/Config/spec/osx_metal_veryhigh.cfg (100%) rename {Engine => Assets/Engine}/Config/spec/pc_high.cfg (100%) rename {Engine => Assets/Engine}/Config/spec/pc_low.cfg (100%) rename {Engine => Assets/Engine}/Config/spec/pc_medium.cfg (100%) rename {Engine => Assets/Engine}/Config/spec/pc_veryhigh.cfg (100%) rename {Engine => Assets/Engine}/Config/statoscope.cfg (100%) rename {Engine => Assets/Engine}/Config/user.cfg (100%) rename {Engine => Assets/Engine}/Config/vid_capture_reset.cfg (100%) rename {Engine => Assets/Engine}/Config/vid_capture_setup.cfg (100%) rename {Engine => Assets/Engine}/Config/vid_capture_start.cfg (100%) rename {Engine => Assets/Engine}/Config/vid_capture_stop.cfg (100%) rename {Engine => Assets/Engine}/Config/vr.cfg (100%) rename {Engine => Assets/Engine}/EngineAssets/Animated/WaterVolume.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/CodeCoverage/hit.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/CodeCoverage/hit.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/CodeCoverage/pbar.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/CodeCoverage/pbar.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/CodeCoverage/unexpected.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/CodeCoverage/unexpected.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/GeomCaches/defaultGeomCache.abc (100%) rename {Engine => Assets/Engine}/EngineAssets/GeomCaches/defaultGeomCache.cbc (100%) rename {Engine => Assets/Engine}/EngineAssets/GeomCaches/defaultGeomCache.ma (100%) rename {Engine => Assets/Engine}/EngineAssets/GeomCaches/defaultGeomCache.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Icons/AverageMemoryUsage.TIF (100%) rename {Engine => Assets/Engine}/EngineAssets/Icons/AverageMemoryUsage.TIF.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Icons/HighMemoryUsage.TIF (100%) rename {Engine => Assets/Engine}/EngineAssets/Icons/HighMemoryUsage.TIF.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Icons/LevelShaderCacheMiss.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Icons/LevelShaderCacheMiss.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Icons/LivePreview.TIF (100%) rename {Engine => Assets/Engine}/EngineAssets/Icons/LivePreview.TIF.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Icons/LowMemoryUsage.TIF (100%) rename {Engine => Assets/Engine}/EngineAssets/Icons/LowMemoryUsage.TIF.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Icons/NavigationProcessing.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Icons/NavigationProcessing.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Icons/NullSoundSystem.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Icons/NullSoundSystem.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Icons/ShaderCompiling.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Icons/ShaderCompiling.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Icons/Streaming.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Icons/Streaming.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Icons/StreamingTerrain.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Icons/StreamingTerrain.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/LevelForSliceEditing/LevelForSliceEditing.ly (100%) rename {Engine => Assets/Engine}/EngineAssets/LevelForSliceEditing/filelist.xml (100%) rename {Engine => Assets/Engine}/EngineAssets/LevelForSliceEditing/level.pak (100%) rename {Engine => Assets/Engine}/EngineAssets/LevelForSliceEditing/leveldata/environment.xml (100%) rename {Engine => Assets/Engine}/EngineAssets/LevelForSliceEditing/leveldata/heightmap.dat (100%) rename {Engine => Assets/Engine}/EngineAssets/LevelForSliceEditing/leveldata/terraintexture.xml (100%) rename {Engine => Assets/Engine}/EngineAssets/LevelForSliceEditing/leveldata/timeofday.xml (100%) rename {Engine => Assets/Engine}/EngineAssets/LevelForSliceEditing/leveldata/vegetationmap.dat (100%) rename {Engine => Assets/Engine}/EngineAssets/LevelForSliceEditing/tags.txt (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/Fog/FogVolumeBox.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/Fog/FogVolumeEllipsoid.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/Fog/OceanInto.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/Fog/OceanIntoLowSpec.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/Fog/OceanOutof.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/Fog/OceanOutofLowSpec.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/Fog/WaterFogVolumeInto.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/Fog/WaterFogVolumeOutof.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/PhysProxyTooBig.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/Water/WaterOceanBottom.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/Water/ocean_default.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/collision_proxy_entitiesonly.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/decals/default.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/lens_optics.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/sky/sky.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/test/Holotest/hologram.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/test/Holotest/test2.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/test/Holotest/test2.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/test/Holotest/tews1.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/test/Holotest/tews1.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/test/Holotest/tile1.cgf (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/test/Holotest/tile1.max (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/test/chromium.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/test/glass2.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/test/hologram.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/test/lightbeam.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/test/lightbeam_floodlight.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/test/lighthouseBeam.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/test/lighthousetemplebeam.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/test/nodraw.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/test/sky.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/test/skyHDR.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/test/textures/glass_wall_ddn.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/test/textures/templeBeam.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/test/textures/templeBeam.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/test/volumeObject.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Materials/test/volumeObject2.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Objects/Default.cgf (100%) rename {Engine => Assets/Engine}/EngineAssets/Objects/helper.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/Production/MidGray.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Production/MidGray.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Production/TangentReference_ddn.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Production/TangentReference_ddn.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Production/UV.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Production/UV.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/ScreenSpace/AreaTex.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/ScreenSpace/NormalsFitting.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/ScreenSpace/PointsOnSphere4x4.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/ScreenSpace/PointsOnSphere4x4.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/ScreenSpace/PointsOnSphereVO4x4.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/ScreenSpace/PointsOnSphereVO4x4.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/ScreenSpace/SearchTex.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/ScreenSpace/bokeh_love.TIF (100%) rename {Engine => Assets/Engine}/EngineAssets/ScreenSpace/bokeh_love.TIF.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/ScreenSpace/bokeh_music.TIF (100%) rename {Engine => Assets/Engine}/EngineAssets/ScreenSpace/bokeh_music.TIF.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/ScreenSpace/bokeh_pentagon.TIF (100%) rename {Engine => Assets/Engine}/EngineAssets/ScreenSpace/bokeh_pentagon.TIF.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/ScreenSpace/bokeh_spherical.TIF (100%) rename {Engine => Assets/Engine}/EngineAssets/ScreenSpace/bokeh_spherical.TIF.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/ScreenSpace/bokeh_square.TIF (100%) rename {Engine => Assets/Engine}/EngineAssets/ScreenSpace/bokeh_square.TIF.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/ScreenSpace/bokeh_star.TIF (100%) rename {Engine => Assets/Engine}/EngineAssets/ScreenSpace/bokeh_star.TIF.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/ScreenSpace/film_grain.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/ScreenSpace/grain_bayer_mul.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/ScreenSpace/grain_bayer_mul.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Shading/SonarVisionGradient.TIF (100%) rename {Engine => Assets/Engine}/EngineAssets/Shading/SonarVisionGradient.TIF.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Shading/ThermalVisionGradient.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Shading/ThermalVisionGradient.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Shading/ThermalVisionGradient02.TIF (100%) rename {Engine => Assets/Engine}/EngineAssets/Shading/ThermalVisionGradient02.TIF.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Shading/WaterFoam.TIF (100%) rename {Engine => Assets/Engine}/EngineAssets/Shading/WaterFoam.TIF.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Shading/cook_d_sampler_G16R16F.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/Shading/defaultProbe_cm.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Shading/environmentBRDF.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Shading/generic_reflections.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Shading/generic_reflections.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Shading/layer_effect_anim_function.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Shading/layer_effect_anim_function.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Shading/nanosuit_mask.TIF (100%) rename {Engine => Assets/Engine}/EngineAssets/Shading/nanosuit_mask.TIF.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Shading/nanosuit_modes_grads.TIF (100%) rename {Engine => Assets/Engine}/EngineAssets/Shading/nanosuit_modes_grads.TIF.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Shading/vignetting.TIF (100%) rename {Engine => Assets/Engine}/EngineAssets/Shading/vignetting.TIF.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Sky/optical.lut (100%) rename {Engine => Assets/Engine}/EngineAssets/Sky/stars.dat (100%) rename {Engine => Assets/Engine}/EngineAssets/Slices/DefaultLevelSetup.slice (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/DefaultNoUVs.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/DefaultNoUVs.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/DefaultNoUVs_ddn.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/DefaultNoUVs_spec.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/DefaultSolids.mtl (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/DefaultSolids_ddn.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/DefaultSolids_diff.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/DefaultSolids_diff.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/DefaultSolids_spec.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/NotFound.psd (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/NotFound.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/NotFound_a.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/NotFound_cm.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/NotFound_ddn.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/NotFound_ddna.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/PhysProxyTooBig.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/PhysProxyTooBig.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/RCError.psd (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/RCError.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/RCError_a.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/RCError_a.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/RCError_cm.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/RCError_ddn.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/RCError_ddn.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/RCError_ddna.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/RCError_ddna.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/ReplaceMe.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/ReplaceMe.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/ReplaceMeCm.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/ReplaceMeCm.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/ReplaceMeRelease.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/ReplaceMeRelease.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/ShaderCompiling.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/ShaderCompiling.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/ShaderError.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/ShaderError.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/TextureCompiling.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/TextureCompiling_a.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/TextureCompiling_a.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/TextureCompiling_cm.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/TextureCompiling_ddn.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/TextureCompiling_ddn.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/TextureCompiling_ddna.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/TextureCompiling_ddna.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/color_Black.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/color_Blue.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/color_Cyan.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/color_Green.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/color_Magenta.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/color_Orange.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/color_Purple.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/color_Red.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/color_White.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/color_Yellow.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/mipmapdebug.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/TextureMsg/orange_for_designer.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/BlackAlpha.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/BlackCM.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/BlackCM.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/Cubemap/default_level_cubemap.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/Cursor_Green.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/Cursor_Green.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/FogVolShadowJitter.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/FogVolShadowJitter.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/Frozen/frost_noise3.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/Frozen/frost_noise4.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/Frozen/snow_spatter.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/GreyAlpha.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/GreyAlpha.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/Palette/cloak_interlation.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/Palette/cloak_palette.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/Palette/cloak_palette.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/Palette/cloak_sparks.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/Palette/cloak_transition.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/TexelsPerMeterGrad.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/TexelsPerMeterGrad.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/VolumeRaster.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/VolumeRaster.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/alienhud_distortionimage.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/alienhud_distortionimage.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/alienhud_noise1.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/alienhud_noise1.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/black.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/black.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/caustics_sampler.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/color.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/default_cch.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/default_cch.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/defaults/16_12.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/defaults/16_34.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/defaults/16_5.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/defaults/16_grey.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/defaults/spot_default.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/detailDecalVariation.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/dither_2.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/dither_pattern_2d.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/Flare_Glow001.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/Flare_Glow002.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/Flare_Orbs001.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/Flare_SoftSpot001.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/Flare_SoftSpot002.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/Flare_Sun001.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/flare01.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/flare02.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/ghost_grey.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/ghost_multicolor.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/icons/ghost.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/icons/ghost.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/icons/glow.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/icons/glow.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/icons/iris_shafts.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/icons/iris_shafts.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/icons/multi_ghost.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/icons/multi_ghost.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/icons/orbs.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/icons/orbs.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/icons/ring.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/icons/ring.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/icons/test_demo.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/icons/test_demo.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/icons/vol_shafts.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/icons/vol_shafts.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/iris_shaft.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/lens_blurshape.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/lens_dirtyglass.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/lens_noise01.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/lens_raindrops.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/lens_raindrops02.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/orb_01.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/orb_cell01.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/orb_cell02.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/orb_cell03.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/orb_cell04.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/spectrum_full.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/spectrum_half.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/spectrum_quater.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/spectrum_specs.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/streak01.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/flares/visor_scratch.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/fresnel_sampler.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/fringe_map.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/frost_refl2.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/frost_refl2.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/fuzzy_pow_sampler_merged.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/glass_decalatlas_ddn.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/glass_decalatlas_ddn.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/glass_decalatlas_diff.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/glass_decalatlas_diff.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/grey.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/hex.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/hex.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/hex_ddn.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/hex_ddn.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/hex_grad.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/hex_grad.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/hex_line.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/hex_line.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/hex_rand.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/hex_rand.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/hiteffect_areas.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/hiteffect_areas.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/hiteffect_blurmask_ddn.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/hiteffect_blurmask_ddn.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/hiteffect_healthgradient.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/hiteffect_healthgradient.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/hiteffect_lvlgradient.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/hiteffect_lvlgradient.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/hiteffect_round.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/hiteffect_round.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/hiteffect_veinsblood.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/hiteffect_veinsblood.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/interference.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/jumpnoisehighfrequency_x27y19.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/moisturedroplets.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/moisturedroplets.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/nightvis_grad.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/nightvis_grad.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/noise.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/noise3d.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/oceanwaves_ddn.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/oceanwaves_ddn.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/palletteInst.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/perlinNoise2d.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/perlinNoise2d.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/perlinNoiseDerivatives.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/perlinNoiseDerivatives.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/perlinNoiseNormal_ddn.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/perlinNoiseNormal_ddn.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/perlinNoise_sum.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/perlinNoise_sum.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/perlinNoise_sum_small.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/perlinNoise_sum_small.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/pixeltex.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/rotrandomcm.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/scratch.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/scratch.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/scratch_ddn.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/scratch_ddn.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/screen_noisy_bump.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/screenfrost_alpha.TIF (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/screenfrost_alpha.TIF.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/screenfrost_ddn.TIF (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/screenfrost_ddn.TIF.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/snowflakes.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/snowflakes.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/startscreen.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/startscreen.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/user_tex1.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/user_tex2.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/vector_noise.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/water_droplets.dds (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/water_gloss.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/water_gloss.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/white.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/white.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/white_cm.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/white_cm.tif.exportsettings (100%) rename {Engine => Assets/Engine}/EngineAssets/Textures/white_ddn.tif (100%) rename {Engine => Assets/Engine}/EngineAssets/defaulttextures.xml (100%) rename {Engine => Assets/Engine}/Engine_Dependencies.xml (100%) rename {Engine => Assets/Engine}/Entities/AnimObject.ent (100%) rename {Engine => Assets/Engine}/Entities/AreaBezierVolume.ent (100%) rename {Engine => Assets/Engine}/Entities/AreaBox.ent (100%) rename {Engine => Assets/Engine}/Entities/AreaShape.ent (100%) rename {Engine => Assets/Engine}/Entities/AreaSolid.ent (100%) rename {Engine => Assets/Engine}/Entities/AreaSphere.ent (100%) rename {Engine => Assets/Engine}/Entities/AreaTrigger.ent (100%) rename {Engine => Assets/Engine}/Entities/AudioAreaAmbience.ent (100%) rename {Engine => Assets/Engine}/Entities/AudioAreaEntity.ent (100%) rename {Engine => Assets/Engine}/Entities/AudioAreaRandom.ent (100%) rename {Engine => Assets/Engine}/Entities/AudioTriggerSpot.ent (100%) rename {Engine => Assets/Engine}/Entities/BasicEntity.ent (100%) rename {Engine => Assets/Engine}/Entities/CActorWrapper.ent (100%) rename {Engine => Assets/Engine}/Entities/CameraSource.ent (100%) rename {Engine => Assets/Engine}/Entities/CameraTarget.ent (100%) rename {Engine => Assets/Engine}/Entities/Comment.ent (100%) rename {Engine => Assets/Engine}/Entities/EnvironmentLight.ent (100%) rename {Engine => Assets/Engine}/Entities/FogVolume.ent (100%) rename {Engine => Assets/Engine}/Entities/GeomCache.ent (100%) rename {Engine => Assets/Engine}/Entities/Light.ent (100%) rename {Engine => Assets/Engine}/Entities/LivingEntity.ent (100%) rename {Engine => Assets/Engine}/Entities/NavigationSeedPoint.ent (100%) rename {Engine => Assets/Engine}/Entities/ParticleEffect.ent (100%) rename {Engine => Assets/Engine}/Entities/ProceduralObject.ent (100%) rename {Engine => Assets/Engine}/Entities/ProximityTrigger.ent (100%) rename {Engine => Assets/Engine}/Entities/RigidBody.ent (100%) rename {Engine => Assets/Engine}/Entities/RigidBodyEx.ent (100%) rename {Engine => Assets/Engine}/Entities/SmartObject.ent (100%) rename {Engine => Assets/Engine}/Entities/TagPoint.ent (100%) rename {Engine => Assets/Engine}/Entities/UiCanvasRef.ent (100%) rename {Engine => Assets/Engine}/Fonts/Vera.ttf (100%) rename {Engine => Assets/Engine}/Fonts/VeraMono.ttf (100%) rename {Engine => Assets/Engine}/Fonts/Vera_COPYRIGHT.TXT (100%) rename {Engine => Assets/Engine}/Fonts/Vera_RELEASENOTES.TXT (100%) rename {Engine => Assets/Engine}/Fonts/console.font (100%) rename {Engine => Assets/Engine}/Fonts/console.xml (100%) rename {Engine => Assets/Engine}/Fonts/default-ui.font (100%) rename {Engine => Assets/Engine}/Fonts/default-ui.xml (100%) rename {Engine => Assets/Engine}/Fonts/default.font (100%) rename {Engine => Assets/Engine}/Fonts/default.xml (100%) rename {Engine => Assets/Engine}/Fonts/hud.font (100%) rename {Engine => Assets/Engine}/Fonts/hud.xml (100%) rename {Engine => Assets/Engine}/Libs/MaterialEffects/FXLibs/collisions.xml (100%) rename {Engine => Assets/Engine}/Libs/MaterialEffects/materialeffects.xml (100%) rename {Engine => Assets/Engine}/Libs/MaterialEffects/surfacetypes.xml (100%) rename {Engine => Assets/Engine}/Libs/PostEffectGroups/Default.xml (100%) rename {Engine => Assets/Engine}/Objects/default/editorprimitive.mtl (100%) rename {Engine => Assets/Engine}/Objects/default/primitive_capsule.cgf (100%) rename {Engine => Assets/Engine}/Objects/default/primitive_cube.cgf (100%) rename {Engine => Assets/Engine}/Objects/default/primitive_plane.cgf (100%) rename {Engine => Assets/Engine}/Objects/default/primitive_sphere.cgf (100%) rename {Engine => Assets/Engine}/Schema/Environment.xmlschema (100%) rename {Engine => Assets/Engine}/Schema/FlaresLibrary.xmlschema (100%) rename {Engine => Assets/Engine}/Schema/Font.xmlschema (100%) rename {Engine => Assets/Engine}/Schema/ParticleLibrary.xmlschema (100%) rename {Engine => Assets/Engine}/Schema/cloudlibrary.xmlschema (100%) rename {Engine => Assets/Engine}/Schema/editorappdescriptor.xmlschema (100%) rename {Engine => Assets/Engine}/Schema/enginedependency.xmlschema (100%) rename {Engine => Assets/Engine}/Schema/ent.xmlschema (100%) rename {Engine => Assets/Engine}/Schema/gameappdescriptor.xmlschema (100%) rename {Engine => Assets/Engine}/Schema/materialeffectlibrary.xmlschema (100%) rename {Engine => Assets/Engine}/Schema/materialeffects.xmlschema (100%) rename {Engine => Assets/Engine}/Schema/rainandsnowtextures.xmlschema (100%) rename {Engine => Assets/Engine}/Schema/surfacetypes.xmlschema (100%) rename {Engine => Assets/Engine}/Schema/vegdescriptorlist.xmlschema (100%) rename {Engine => Assets/Engine}/Scripts/EngineCommon.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/AI/NavigationSeedPoint.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/AI/SmartObject.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/AI/TagPoint.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Actor/CActorWrapper.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Anim/MannequinObject.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Default/GeomEntity.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Default/RopeEntity.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Environment/WaterVolume.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Lights/EnvironmentLight.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Lights/Light.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Others/CameraSource.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Others/CameraTarget.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Others/Comment.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Others/ProceduralObject.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Others/RigidBody.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Particle/ParticleEffect.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Physics/AnimObject.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Physics/AreaBezierVolume.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Physics/BasicEntity.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Physics/LivingEntity.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Physics/RigidBodyEx.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Render/FogVolume.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Render/GeomCache.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Sound/AudioAreaAmbience.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Sound/AudioAreaEntity.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Sound/AudioAreaRandom.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Sound/AudioTriggerSpot.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Sound/Shared/AudioUtils.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Triggers/AreaTrigger.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/Triggers/ProximityTrigger.lua (100%) rename {Engine => Assets/Engine}/Scripts/Entities/UI/UiCanvasRefEntity.lua (100%) rename {Engine => Assets/Engine}/Scripts/Utils/Components/GameplayUtils.lua (100%) rename {Engine => Assets/Engine}/Scripts/Utils/Components/InputUtils.lua (100%) rename {Engine => Assets/Engine}/Scripts/Utils/Components/MultiHandlers.lua (100%) rename {Engine => Assets/Engine}/Scripts/Utils/Containers.lua (100%) rename {Engine => Assets/Engine}/Scripts/Utils/EntityUtils.lua (100%) rename {Engine => Assets/Engine}/Scripts/Utils/Math.lua (100%) rename {Engine => Assets/Engine}/SeedAssetList.seed (100%) rename {Engine => Assets/Engine}/Shaders/DistanceClouds.ext (100%) rename {Engine => Assets/Engine}/Shaders/Eye.ext (100%) rename {Engine => Assets/Engine}/Shaders/Fur.ext (100%) rename {Engine => Assets/Engine}/Shaders/GeometryBeam.ext (100%) rename {Engine => Assets/Engine}/Shaders/Glass.ext (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/AuxGeom.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Clouds.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Common.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Common.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/CommonDebugPass.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/CommonMotionBlurPass.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/CommonMotionBlurPassTess.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/CommonSVO.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/CommonShadowGenPass.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/CommonShadowGenPassTess.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/CommonTessellation.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/CommonViewsPass.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/CommonViewsPassTess.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/CommonZPass.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/CommonZPassTess.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/CommonZPrePass.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/DXTCompress.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Debug.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/DebugLight.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/DeferredCaustics.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/DeferredRain.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/DeferredShading.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/DeferredShadows.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/DeferredSnow.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/DepthOfField.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/DistanceClouds.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Eye.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/FXConstantDefs.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/FXSamplerDefs.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/FXStreamDefs.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/FallBack.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/FixedPipelineEmu.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/FogVolume.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Fur.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/FurFinPass.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/FurObliteratePass.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/FurZPass.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/GPUParticle.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/GPUParticleBegin.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/GPUParticleBitonicSort.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/GPUParticleBitonicSortGlobal2048.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/GPUParticleBitonicSortLocal.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/GPUParticleCurves.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/GPUParticleEmit.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/GPUParticleGatherSortDistance.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/GPUParticleHelpers.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/GPUParticleOddEvenSort.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/GPUParticleRenderNoGS.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/GPUParticleUpdate.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/GeometryBeam.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Glass.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/HDRDolbyMetadataPass0.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/HDRDolbyMetadataPass1.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/HDRPostProcess.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/HDRPostProcessDolby.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Hair.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Helper.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Hud3D.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/HumanSkin.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/HumanSkinTess.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/HumanSkinValidations.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Illum.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/IllumTess.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/IllumValidations.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/LensOptics.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Light.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/LightBeam.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/LightVolumes.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/MeshBaker.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/MeshBakerDilate.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/ModificatorTC.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/ModificatorVT.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Monitor.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/MotionBlur.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/MultiLayerAlphaBlend.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/NoDraw.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/OcclusionTest.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/ParticleImposter.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/ParticleVT.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Particles.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Particles.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/ParticlesCustomPass.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/ParticlesNoMat.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/ParticlesNoMatMirror.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/ParticlesShadowPass.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/PostAA.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/PostEffects.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/PostEffectsGame.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/PostEffectsLib.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/ReferenceImage.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/ReferenceImageHDR.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Scopes.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/ShadowBlur.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/ShadowCommon.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/ShadowMaskGen.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Sketch.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/SketchTerrain.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Sky.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/SkyHDR.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/SoftOcclusionQuery.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Stars.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/StarterGame_GeometryBeamScaling.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Stereo.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Sunshafts.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/TemplBeamProc.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Terrain.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/TerrainValidations.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/TiledShading.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Total_Illumination.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/UI.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Vegetation.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/VegetationTess.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/VegetationValidations.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Video.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/VolumeLighting.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/VolumeObject.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/VolumetricFog.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Water.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/WaterCausticsPass.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/WaterFogVolume.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/WaterOceanBottom.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/WaterReflectionsPass.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/WaterVolume.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/Waterfall.cfx (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/fragLib.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/shadeLib.cfi (100%) rename {Engine => Assets/Engine}/Shaders/HWScripts/CryFX/vertexLib.cfi (100%) rename {Engine => Assets/Engine}/Shaders/Hair.ext (100%) rename {Engine => Assets/Engine}/Shaders/HumanSkin.ext (100%) rename {Engine => Assets/Engine}/Shaders/Illum.ext (100%) rename {Engine => Assets/Engine}/Shaders/LensOptics.ext (100%) rename {Engine => Assets/Engine}/Shaders/LightBeam.ext (100%) rename {Engine => Assets/Engine}/Shaders/Monitor.ext (100%) rename {Engine => Assets/Engine}/Shaders/ParticleImposter.ext (100%) rename {Engine => Assets/Engine}/Shaders/Particles.ext (100%) rename {Engine => Assets/Engine}/Shaders/RunTime.ext (100%) rename {Engine => Assets/Engine}/Shaders/Scopes.ext (100%) rename {Engine => Assets/Engine}/Shaders/ShaderProfiles.txt (100%) rename {Engine => Assets/Engine}/Shaders/ShadowMaskGen.ext (100%) rename {Engine => Assets/Engine}/Shaders/SketchTerrain.ext (100%) rename {Engine => Assets/Engine}/Shaders/SkyHDR.ext (100%) rename {Engine => Assets/Engine}/Shaders/StarterGame_GeometryBeamScaling.ext (100%) rename {Engine => Assets/Engine}/Shaders/Statics.ext (100%) rename {Engine => Assets/Engine}/Shaders/TemplBeamProc.ext (100%) rename {Engine => Assets/Engine}/Shaders/Terrain.ext (100%) rename {Engine => Assets/Engine}/Shaders/Vegetation.ext (100%) rename {Engine => Assets/Engine}/Shaders/VolumeObject.ext (100%) rename {Engine => Assets/Engine}/Shaders/Water.ext (100%) rename {Engine => Assets/Engine}/Shaders/WaterVolume.ext (100%) rename {Engine => Assets/Engine}/Shaders/Waterfall.ext (100%) rename {Engine => Assets/Engine}/exclude.filetag (100%) rename {Engine => Assets/Engine}/include.filetag (100%) rename {Engine => Assets/Engine}/materials/material_layers_default.mtl (100%) rename {Engine => Assets/Engine}/materials/material_terrain_default.mtl (100%) rename {Engine => Assets/Engine}/textures/default_icon.png (100%) rename {Engine => Assets/Engine}/textures/default_icon.png.exportsettings (100%) rename {Engine => Assets/Engine}/textures/defaults/defaultnouvs.tif (100%) rename {Engine => Assets/Engine}/textures/defaults/grey.tif (100%) rename {Engine => Assets/Engine}/textures/skys/night/half_moon.tif (100%) create mode 100644 AutomatedTesting/EngineFinder.cmake rename AutomatedTesting/Gem/PythonTests/assetpipeline/asset_processor_tests/assets/C4874115/{ => C4874115}/C4874115_test_asset.txt (100%) delete mode 100644 Code/Sandbox/Editor/Style/CloudCanvas.qss delete mode 100644 Code/Tools/AssetBundler/tests/AssetProcessorPlatformConfig.ini create mode 100644 Code/Tools/AssetBundler/tests/AssetProcessorPlatformConfig.setreg delete mode 100644 Code/Tools/AssetBundler/tests/DummyProject/AssetProcessorGamePlatformConfig.ini create mode 100644 Code/Tools/AssetBundler/tests/DummyProject/AssetProcessorGamePlatformConfig.setreg delete mode 100644 Code/Tools/AssetBundler/tests/Gems/GemA/AssetProcessorGemConfig.ini create mode 100644 Code/Tools/AssetBundler/tests/Gems/GemA/AssetProcessorGemConfig.setreg delete mode 100644 Code/Tools/AssetProcessor/testdata/DummyProject/AssetProcessorGamePlatformConfig.ini create mode 100644 Code/Tools/AssetProcessor/testdata/DummyProject/AssetProcessorGamePlatformConfig.setreg delete mode 100644 Code/Tools/AssetProcessor/testdata/EmptyDummyProject/AssetProcessorGamePlatformConfig.ini create mode 100644 Code/Tools/AssetProcessor/testdata/EmptyDummyProject/AssetProcessorGamePlatformConfig.setreg delete mode 100644 Code/Tools/AssetProcessor/testdata/config_broken_badplatform/AssetProcessorPlatformConfig.ini create mode 100644 Code/Tools/AssetProcessor/testdata/config_broken_badplatform/AssetProcessorPlatformConfig.setreg delete mode 100644 Code/Tools/AssetProcessor/testdata/config_broken_noplatform/AssetProcessorPlatformConfig.ini create mode 100644 Code/Tools/AssetProcessor/testdata/config_broken_noplatform/AssetProcessorPlatformConfig.setreg delete mode 100644 Code/Tools/AssetProcessor/testdata/config_broken_noscans/AssetProcessorPlatformConfig.ini create mode 100644 Code/Tools/AssetProcessor/testdata/config_broken_noscans/AssetProcessorPlatformConfig.setreg delete mode 100644 Code/Tools/AssetProcessor/testdata/config_broken_recognizers/AssetProcessorPlatformConfig.ini create mode 100644 Code/Tools/AssetProcessor/testdata/config_broken_recognizers/AssetProcessorPlatformConfig.setreg delete mode 100644 Code/Tools/AssetProcessor/testdata/config_regular/AssetProcessorPlatformConfig.ini create mode 100644 Code/Tools/AssetProcessor/testdata/config_regular/AssetProcessorPlatformConfig.setreg delete mode 100644 Code/Tools/AssetProcessor/testdata/config_regular_platform_scanfolder/AssetProcessorPlatformConfig.ini create mode 100644 Code/Tools/AssetProcessor/testdata/config_regular_platform_scanfolder/AssetProcessorPlatformConfig.setreg delete mode 100644 Editor/Editor.env delete mode 100644 Editor/cryassetdb_mysql.sql delete mode 100644 Editor/cryassetdb_sqlite.sql delete mode 100644 Engine/EngineAssets/Textures/rotrandom.dds delete mode 100644 Engine/Libs/FlowNodes/FlownodeBlacklist.xml delete mode 100644 Engine/Libs/FlowNodes/Substitutions.xml rename AssetProcessorPlatformConfig.setreg => Registry/AssetProcessorPlatformConfig.setreg (99%) rename {Engine/Registry => Registry}/Platform/Windows/streamer.editor.setreg (100%) rename {Engine/Registry => Registry}/Platform/Windows/streamer.game.setreg (100%) rename {Engine/Registry => Registry}/Platform/Windows/streamer.test.setreg (100%) rename {Engine/Registry => Registry}/bootstrap.setreg (100%) rename {Engine/Registry => Registry}/prefab.tools.setreg (100%) rename {Engine/Registry => Registry}/setregbuilder.assetprocessor.setreg (100%) rename {Engine/Registry => Registry}/streamer.editor.setreg (100%) rename {Engine/Registry => Registry}/streamer.game.setreg (100%) rename {Engine/Registry => Registry}/streamer.setreg (100%) rename {Engine/Registry => Registry}/streamer.test.setreg (100%) diff --git a/Editor/CryDesigner_TimeOfDay.xml b/Assets/Editor/CryDesigner_TimeOfDay.xml similarity index 100% rename from Editor/CryDesigner_TimeOfDay.xml rename to Assets/Editor/CryDesigner_TimeOfDay.xml diff --git a/Editor/Editor.tip b/Assets/Editor/Editor.tip similarity index 100% rename from Editor/Editor.tip rename to Assets/Editor/Editor.tip diff --git a/Gems/ScriptCanvas/Assets/Editor/Icons/AssetBrowser/ScriptCanvas_16.png b/Assets/Editor/Editor/Icons/AssetBrowser/ScriptCanvas_16.png similarity index 100% rename from Gems/ScriptCanvas/Assets/Editor/Icons/AssetBrowser/ScriptCanvas_16.png rename to Assets/Editor/Editor/Icons/AssetBrowser/ScriptCanvas_16.png diff --git a/Editor/EditorParticlePanels.xml b/Assets/Editor/EditorParticlePanels.xml similarity index 100% rename from Editor/EditorParticlePanels.xml rename to Assets/Editor/EditorParticlePanels.xml diff --git a/Editor/EditorParticlePanelsDefault.xml b/Assets/Editor/EditorParticlePanelsDefault.xml similarity index 100% rename from Editor/EditorParticlePanelsDefault.xml rename to Assets/Editor/EditorParticlePanelsDefault.xml diff --git a/Editor/Fonts/Open_Sans/LICENSE.txt b/Assets/Editor/Fonts/Open_Sans/LICENSE.txt similarity index 100% rename from Editor/Fonts/Open_Sans/LICENSE.txt rename to Assets/Editor/Fonts/Open_Sans/LICENSE.txt diff --git a/Editor/Fonts/Open_Sans/OpenSans-Bold.ttf b/Assets/Editor/Fonts/Open_Sans/OpenSans-Bold.ttf similarity index 100% rename from Editor/Fonts/Open_Sans/OpenSans-Bold.ttf rename to Assets/Editor/Fonts/Open_Sans/OpenSans-Bold.ttf diff --git a/Editor/Fonts/Open_Sans/OpenSans-BoldItalic.ttf b/Assets/Editor/Fonts/Open_Sans/OpenSans-BoldItalic.ttf similarity index 100% rename from Editor/Fonts/Open_Sans/OpenSans-BoldItalic.ttf rename to Assets/Editor/Fonts/Open_Sans/OpenSans-BoldItalic.ttf diff --git a/Editor/Fonts/Open_Sans/OpenSans-ExtraBold.ttf b/Assets/Editor/Fonts/Open_Sans/OpenSans-ExtraBold.ttf similarity index 100% rename from Editor/Fonts/Open_Sans/OpenSans-ExtraBold.ttf rename to Assets/Editor/Fonts/Open_Sans/OpenSans-ExtraBold.ttf diff --git a/Editor/Fonts/Open_Sans/OpenSans-ExtraBoldItalic.ttf b/Assets/Editor/Fonts/Open_Sans/OpenSans-ExtraBoldItalic.ttf similarity index 100% rename from Editor/Fonts/Open_Sans/OpenSans-ExtraBoldItalic.ttf rename to Assets/Editor/Fonts/Open_Sans/OpenSans-ExtraBoldItalic.ttf diff --git a/Editor/Fonts/Open_Sans/OpenSans-Italic.ttf b/Assets/Editor/Fonts/Open_Sans/OpenSans-Italic.ttf similarity index 100% rename from Editor/Fonts/Open_Sans/OpenSans-Italic.ttf rename to Assets/Editor/Fonts/Open_Sans/OpenSans-Italic.ttf diff --git a/Editor/Fonts/Open_Sans/OpenSans-Light.ttf b/Assets/Editor/Fonts/Open_Sans/OpenSans-Light.ttf similarity index 100% rename from Editor/Fonts/Open_Sans/OpenSans-Light.ttf rename to Assets/Editor/Fonts/Open_Sans/OpenSans-Light.ttf diff --git a/Editor/Fonts/Open_Sans/OpenSans-LightItalic.ttf b/Assets/Editor/Fonts/Open_Sans/OpenSans-LightItalic.ttf similarity index 100% rename from Editor/Fonts/Open_Sans/OpenSans-LightItalic.ttf rename to Assets/Editor/Fonts/Open_Sans/OpenSans-LightItalic.ttf diff --git a/Editor/Fonts/Open_Sans/OpenSans-Regular.ttf b/Assets/Editor/Fonts/Open_Sans/OpenSans-Regular.ttf similarity index 100% rename from Editor/Fonts/Open_Sans/OpenSans-Regular.ttf rename to Assets/Editor/Fonts/Open_Sans/OpenSans-Regular.ttf diff --git a/Editor/Fonts/Open_Sans/OpenSans-Semibold.ttf b/Assets/Editor/Fonts/Open_Sans/OpenSans-Semibold.ttf similarity index 100% rename from Editor/Fonts/Open_Sans/OpenSans-Semibold.ttf rename to Assets/Editor/Fonts/Open_Sans/OpenSans-Semibold.ttf diff --git a/Editor/Fonts/Open_Sans/OpenSans-SemiboldItalic.ttf b/Assets/Editor/Fonts/Open_Sans/OpenSans-SemiboldItalic.ttf similarity index 100% rename from Editor/Fonts/Open_Sans/OpenSans-SemiboldItalic.ttf rename to Assets/Editor/Fonts/Open_Sans/OpenSans-SemiboldItalic.ttf diff --git a/Editor/Icons/AssetBrowser/ABC_16.svg b/Assets/Editor/Icons/AssetBrowser/ABC_16.svg similarity index 100% rename from Editor/Icons/AssetBrowser/ABC_16.svg rename to Assets/Editor/Icons/AssetBrowser/ABC_16.svg diff --git a/Editor/Icons/AssetBrowser/Audio_16.svg b/Assets/Editor/Icons/AssetBrowser/Audio_16.svg similarity index 100% rename from Editor/Icons/AssetBrowser/Audio_16.svg rename to Assets/Editor/Icons/AssetBrowser/Audio_16.svg diff --git a/Editor/Icons/AssetBrowser/CaretClosed_16.svg b/Assets/Editor/Icons/AssetBrowser/CaretClosed_16.svg similarity index 100% rename from Editor/Icons/AssetBrowser/CaretClosed_16.svg rename to Assets/Editor/Icons/AssetBrowser/CaretClosed_16.svg diff --git a/Editor/Icons/AssetBrowser/CaretOpen_16.svg b/Assets/Editor/Icons/AssetBrowser/CaretOpen_16.svg similarity index 100% rename from Editor/Icons/AssetBrowser/CaretOpen_16.svg rename to Assets/Editor/Icons/AssetBrowser/CaretOpen_16.svg diff --git a/Editor/Icons/AssetBrowser/DefaultProduct_16.svg b/Assets/Editor/Icons/AssetBrowser/DefaultProduct_16.svg similarity index 100% rename from Editor/Icons/AssetBrowser/DefaultProduct_16.svg rename to Assets/Editor/Icons/AssetBrowser/DefaultProduct_16.svg diff --git a/Editor/Icons/AssetBrowser/Default_16.svg b/Assets/Editor/Icons/AssetBrowser/Default_16.svg similarity index 100% rename from Editor/Icons/AssetBrowser/Default_16.svg rename to Assets/Editor/Icons/AssetBrowser/Default_16.svg diff --git a/Editor/Icons/AssetBrowser/FBX_16.svg b/Assets/Editor/Icons/AssetBrowser/FBX_16.svg similarity index 100% rename from Editor/Icons/AssetBrowser/FBX_16.svg rename to Assets/Editor/Icons/AssetBrowser/FBX_16.svg diff --git a/Editor/Icons/AssetBrowser/Folder_16.svg b/Assets/Editor/Icons/AssetBrowser/Folder_16.svg similarity index 100% rename from Editor/Icons/AssetBrowser/Folder_16.svg rename to Assets/Editor/Icons/AssetBrowser/Folder_16.svg diff --git a/Editor/Icons/AssetBrowser/Font_16.svg b/Assets/Editor/Icons/AssetBrowser/Font_16.svg similarity index 100% rename from Editor/Icons/AssetBrowser/Font_16.svg rename to Assets/Editor/Icons/AssetBrowser/Font_16.svg diff --git a/Editor/Icons/AssetBrowser/GemFolder_16.svg b/Assets/Editor/Icons/AssetBrowser/GemFolder_16.svg similarity index 100% rename from Editor/Icons/AssetBrowser/GemFolder_16.svg rename to Assets/Editor/Icons/AssetBrowser/GemFolder_16.svg diff --git a/Editor/Icons/AssetBrowser/Image_16.svg b/Assets/Editor/Icons/AssetBrowser/Image_16.svg similarity index 100% rename from Editor/Icons/AssetBrowser/Image_16.svg rename to Assets/Editor/Icons/AssetBrowser/Image_16.svg diff --git a/Editor/Icons/AssetBrowser/InputBindings_16.svg b/Assets/Editor/Icons/AssetBrowser/InputBindings_16.svg similarity index 100% rename from Editor/Icons/AssetBrowser/InputBindings_16.svg rename to Assets/Editor/Icons/AssetBrowser/InputBindings_16.svg diff --git a/Editor/Icons/AssetBrowser/LegacyAnimation_16.svg b/Assets/Editor/Icons/AssetBrowser/LegacyAnimation_16.svg similarity index 100% rename from Editor/Icons/AssetBrowser/LegacyAnimation_16.svg rename to Assets/Editor/Icons/AssetBrowser/LegacyAnimation_16.svg diff --git a/Editor/Icons/AssetBrowser/LegacyMesh_16.svg b/Assets/Editor/Icons/AssetBrowser/LegacyMesh_16.svg similarity index 100% rename from Editor/Icons/AssetBrowser/LegacyMesh_16.svg rename to Assets/Editor/Icons/AssetBrowser/LegacyMesh_16.svg diff --git a/Editor/Icons/AssetBrowser/LegacySkin_16.svg b/Assets/Editor/Icons/AssetBrowser/LegacySkin_16.svg similarity index 100% rename from Editor/Icons/AssetBrowser/LegacySkin_16.svg rename to Assets/Editor/Icons/AssetBrowser/LegacySkin_16.svg diff --git a/Editor/Icons/AssetBrowser/LensFlare_16.svg b/Assets/Editor/Icons/AssetBrowser/LensFlare_16.svg similarity index 100% rename from Editor/Icons/AssetBrowser/LensFlare_16.svg rename to Assets/Editor/Icons/AssetBrowser/LensFlare_16.svg diff --git a/Editor/Icons/AssetBrowser/Lua_16.svg b/Assets/Editor/Icons/AssetBrowser/Lua_16.svg similarity index 100% rename from Editor/Icons/AssetBrowser/Lua_16.svg rename to Assets/Editor/Icons/AssetBrowser/Lua_16.svg diff --git a/Editor/Icons/AssetBrowser/Material_16.svg b/Assets/Editor/Icons/AssetBrowser/Material_16.svg similarity index 100% rename from Editor/Icons/AssetBrowser/Material_16.svg rename to Assets/Editor/Icons/AssetBrowser/Material_16.svg diff --git a/Editor/Icons/AssetBrowser/NonWritable_16.svg b/Assets/Editor/Icons/AssetBrowser/NonWritable_16.svg similarity index 100% rename from Editor/Icons/AssetBrowser/NonWritable_16.svg rename to Assets/Editor/Icons/AssetBrowser/NonWritable_16.svg diff --git a/Editor/Icons/AssetBrowser/Particle_16.svg b/Assets/Editor/Icons/AssetBrowser/Particle_16.svg similarity index 100% rename from Editor/Icons/AssetBrowser/Particle_16.svg rename to Assets/Editor/Icons/AssetBrowser/Particle_16.svg diff --git a/Editor/Icons/AssetBrowser/Slice_16.svg b/Assets/Editor/Icons/AssetBrowser/Slice_16.svg similarity index 100% rename from Editor/Icons/AssetBrowser/Slice_16.svg rename to Assets/Editor/Icons/AssetBrowser/Slice_16.svg diff --git a/Editor/Icons/AssetBrowser/Writable_16.svg b/Assets/Editor/Icons/AssetBrowser/Writable_16.svg similarity index 100% rename from Editor/Icons/AssetBrowser/Writable_16.svg rename to Assets/Editor/Icons/AssetBrowser/Writable_16.svg diff --git a/Editor/Icons/AssetBrowser/XML_16.svg b/Assets/Editor/Icons/AssetBrowser/XML_16.svg similarity index 100% rename from Editor/Icons/AssetBrowser/XML_16.svg rename to Assets/Editor/Icons/AssetBrowser/XML_16.svg diff --git a/Editor/Icons/AssetBrowser/in_progress.gif b/Assets/Editor/Icons/AssetBrowser/in_progress.gif similarity index 100% rename from Editor/Icons/AssetBrowser/in_progress.gif rename to Assets/Editor/Icons/AssetBrowser/in_progress.gif diff --git a/Editor/Icons/AssetImporter/animation.png b/Assets/Editor/Icons/AssetImporter/animation.png similarity index 100% rename from Editor/Icons/AssetImporter/animation.png rename to Assets/Editor/Icons/AssetImporter/animation.png diff --git a/Editor/Icons/AssetImporter/animation_on.png b/Assets/Editor/Icons/AssetImporter/animation_on.png similarity index 100% rename from Editor/Icons/AssetImporter/animation_on.png rename to Assets/Editor/Icons/AssetImporter/animation_on.png diff --git a/Editor/Icons/AssetImporter/group_icon.png b/Assets/Editor/Icons/AssetImporter/group_icon.png similarity index 100% rename from Editor/Icons/AssetImporter/group_icon.png rename to Assets/Editor/Icons/AssetImporter/group_icon.png diff --git a/Editor/Icons/AssetImporter/mesh.png b/Assets/Editor/Icons/AssetImporter/mesh.png similarity index 100% rename from Editor/Icons/AssetImporter/mesh.png rename to Assets/Editor/Icons/AssetImporter/mesh.png diff --git a/Editor/Icons/AssetImporter/mesh_on.png b/Assets/Editor/Icons/AssetImporter/mesh_on.png similarity index 100% rename from Editor/Icons/AssetImporter/mesh_on.png rename to Assets/Editor/Icons/AssetImporter/mesh_on.png diff --git a/Editor/Icons/AssetImporter/skeleton.png b/Assets/Editor/Icons/AssetImporter/skeleton.png similarity index 100% rename from Editor/Icons/AssetImporter/skeleton.png rename to Assets/Editor/Icons/AssetImporter/skeleton.png diff --git a/Editor/Icons/AssetImporter/skeleton_on.png b/Assets/Editor/Icons/AssetImporter/skeleton_on.png similarity index 100% rename from Editor/Icons/AssetImporter/skeleton_on.png rename to Assets/Editor/Icons/AssetImporter/skeleton_on.png diff --git a/Editor/Icons/AssetImporter/skin.png b/Assets/Editor/Icons/AssetImporter/skin.png similarity index 100% rename from Editor/Icons/AssetImporter/skin.png rename to Assets/Editor/Icons/AssetImporter/skin.png diff --git a/Editor/Icons/AssetImporter/skin_on.png b/Assets/Editor/Icons/AssetImporter/skin_on.png similarity index 100% rename from Editor/Icons/AssetImporter/skin_on.png rename to Assets/Editor/Icons/AssetImporter/skin_on.png diff --git a/Editor/Icons/AssetImporter/tree.png b/Assets/Editor/Icons/AssetImporter/tree.png similarity index 100% rename from Editor/Icons/AssetImporter/tree.png rename to Assets/Editor/Icons/AssetImporter/tree.png diff --git a/Editor/Icons/Assets/InputBindings.png b/Assets/Editor/Icons/Assets/InputBindings.png similarity index 100% rename from Editor/Icons/Assets/InputBindings.png rename to Assets/Editor/Icons/Assets/InputBindings.png diff --git a/Editor/Icons/Assets/Lua.png b/Assets/Editor/Icons/Assets/Lua.png similarity index 100% rename from Editor/Icons/Assets/Lua.png rename to Assets/Editor/Icons/Assets/Lua.png diff --git a/Editor/Icons/Assets/PhysicsMaterial.png b/Assets/Editor/Icons/Assets/PhysicsMaterial.png similarity index 100% rename from Editor/Icons/Assets/PhysicsMaterial.png rename to Assets/Editor/Icons/Assets/PhysicsMaterial.png diff --git a/Editor/Icons/Components/AreaLight.svg b/Assets/Editor/Icons/Components/AreaLight.svg similarity index 100% rename from Editor/Icons/Components/AreaLight.svg rename to Assets/Editor/Icons/Components/AreaLight.svg diff --git a/Editor/Icons/Components/Attachment.svg b/Assets/Editor/Icons/Components/Attachment.svg similarity index 100% rename from Editor/Icons/Components/Attachment.svg rename to Assets/Editor/Icons/Components/Attachment.svg diff --git a/Editor/Icons/Components/AudioAnimation.svg b/Assets/Editor/Icons/Components/AudioAnimation.svg similarity index 100% rename from Editor/Icons/Components/AudioAnimation.svg rename to Assets/Editor/Icons/Components/AudioAnimation.svg diff --git a/Editor/Icons/Components/AudioAnimationEventsProxy.svg b/Assets/Editor/Icons/Components/AudioAnimationEventsProxy.svg similarity index 100% rename from Editor/Icons/Components/AudioAnimationEventsProxy.svg rename to Assets/Editor/Icons/Components/AudioAnimationEventsProxy.svg diff --git a/Editor/Icons/Components/AudioArea.png b/Assets/Editor/Icons/Components/AudioArea.png similarity index 100% rename from Editor/Icons/Components/AudioArea.png rename to Assets/Editor/Icons/Components/AudioArea.png diff --git a/Editor/Icons/Components/AudioAreaEnvironment.svg b/Assets/Editor/Icons/Components/AudioAreaEnvironment.svg similarity index 100% rename from Editor/Icons/Components/AudioAreaEnvironment.svg rename to Assets/Editor/Icons/Components/AudioAreaEnvironment.svg diff --git a/Editor/Icons/Components/AudioEnvironment.svg b/Assets/Editor/Icons/Components/AudioEnvironment.svg similarity index 100% rename from Editor/Icons/Components/AudioEnvironment.svg rename to Assets/Editor/Icons/Components/AudioEnvironment.svg diff --git a/Editor/Icons/Components/AudioListener.svg b/Assets/Editor/Icons/Components/AudioListener.svg similarity index 100% rename from Editor/Icons/Components/AudioListener.svg rename to Assets/Editor/Icons/Components/AudioListener.svg diff --git a/Editor/Icons/Components/AudioMultiPosition.png b/Assets/Editor/Icons/Components/AudioMultiPosition.png similarity index 100% rename from Editor/Icons/Components/AudioMultiPosition.png rename to Assets/Editor/Icons/Components/AudioMultiPosition.png diff --git a/Editor/Icons/Components/AudioPreload.svg b/Assets/Editor/Icons/Components/AudioPreload.svg similarity index 100% rename from Editor/Icons/Components/AudioPreload.svg rename to Assets/Editor/Icons/Components/AudioPreload.svg diff --git a/Editor/Icons/Components/AudioProxy.svg b/Assets/Editor/Icons/Components/AudioProxy.svg similarity index 100% rename from Editor/Icons/Components/AudioProxy.svg rename to Assets/Editor/Icons/Components/AudioProxy.svg diff --git a/Editor/Icons/Components/AudioRtpc.svg b/Assets/Editor/Icons/Components/AudioRtpc.svg similarity index 100% rename from Editor/Icons/Components/AudioRtpc.svg rename to Assets/Editor/Icons/Components/AudioRtpc.svg diff --git a/Editor/Icons/Components/AudioSwitch.svg b/Assets/Editor/Icons/Components/AudioSwitch.svg similarity index 100% rename from Editor/Icons/Components/AudioSwitch.svg rename to Assets/Editor/Icons/Components/AudioSwitch.svg diff --git a/Editor/Icons/Components/AudioTrigger.svg b/Assets/Editor/Icons/Components/AudioTrigger.svg similarity index 100% rename from Editor/Icons/Components/AudioTrigger.svg rename to Assets/Editor/Icons/Components/AudioTrigger.svg diff --git a/Editor/Icons/Components/BehaviorTree.svg b/Assets/Editor/Icons/Components/BehaviorTree.svg similarity index 100% rename from Editor/Icons/Components/BehaviorTree.svg rename to Assets/Editor/Icons/Components/BehaviorTree.svg diff --git a/Editor/Icons/Components/Box.png b/Assets/Editor/Icons/Components/Box.png similarity index 100% rename from Editor/Icons/Components/Box.png rename to Assets/Editor/Icons/Components/Box.png diff --git a/Editor/Icons/Components/Box_Shape.svg b/Assets/Editor/Icons/Components/Box_Shape.svg similarity index 100% rename from Editor/Icons/Components/Box_Shape.svg rename to Assets/Editor/Icons/Components/Box_Shape.svg diff --git a/Editor/Icons/Components/Capsule_Shape.svg b/Assets/Editor/Icons/Components/Capsule_Shape.svg similarity index 100% rename from Editor/Icons/Components/Capsule_Shape.svg rename to Assets/Editor/Icons/Components/Capsule_Shape.svg diff --git a/Editor/Icons/Components/CharacterPhysics.svg b/Assets/Editor/Icons/Components/CharacterPhysics.svg similarity index 100% rename from Editor/Icons/Components/CharacterPhysics.svg rename to Assets/Editor/Icons/Components/CharacterPhysics.svg diff --git a/Editor/Icons/Components/Cloth.svg b/Assets/Editor/Icons/Components/Cloth.svg similarity index 100% rename from Editor/Icons/Components/Cloth.svg rename to Assets/Editor/Icons/Components/Cloth.svg diff --git a/Editor/Icons/Components/CloudGemMessageOfTheDay.svg b/Assets/Editor/Icons/Components/CloudGemMessageOfTheDay.svg similarity index 100% rename from Editor/Icons/Components/CloudGemMessageOfTheDay.svg rename to Assets/Editor/Icons/Components/CloudGemMessageOfTheDay.svg diff --git a/Editor/Icons/Components/ColliderBox.png b/Assets/Editor/Icons/Components/ColliderBox.png similarity index 100% rename from Editor/Icons/Components/ColliderBox.png rename to Assets/Editor/Icons/Components/ColliderBox.png diff --git a/Editor/Icons/Components/ColliderCapsule.png b/Assets/Editor/Icons/Components/ColliderCapsule.png similarity index 100% rename from Editor/Icons/Components/ColliderCapsule.png rename to Assets/Editor/Icons/Components/ColliderCapsule.png diff --git a/Editor/Icons/Components/ColliderCylinder.png b/Assets/Editor/Icons/Components/ColliderCylinder.png similarity index 100% rename from Editor/Icons/Components/ColliderCylinder.png rename to Assets/Editor/Icons/Components/ColliderCylinder.png diff --git a/Editor/Icons/Components/ColliderMesh.svg b/Assets/Editor/Icons/Components/ColliderMesh.svg similarity index 100% rename from Editor/Icons/Components/ColliderMesh.svg rename to Assets/Editor/Icons/Components/ColliderMesh.svg diff --git a/Editor/Icons/Components/ColliderSphere.png b/Assets/Editor/Icons/Components/ColliderSphere.png similarity index 100% rename from Editor/Icons/Components/ColliderSphere.png rename to Assets/Editor/Icons/Components/ColliderSphere.png diff --git a/Editor/Icons/Components/Comment.svg b/Assets/Editor/Icons/Components/Comment.svg similarity index 100% rename from Editor/Icons/Components/Comment.svg rename to Assets/Editor/Icons/Components/Comment.svg diff --git a/Editor/Icons/Components/Component_Placeholder.svg b/Assets/Editor/Icons/Components/Component_Placeholder.svg similarity index 100% rename from Editor/Icons/Components/Component_Placeholder.svg rename to Assets/Editor/Icons/Components/Component_Placeholder.svg diff --git a/Editor/Icons/Components/Compound_Shape.svg b/Assets/Editor/Icons/Components/Compound_Shape.svg similarity index 100% rename from Editor/Icons/Components/Compound_Shape.svg rename to Assets/Editor/Icons/Components/Compound_Shape.svg diff --git a/Editor/Icons/Components/Cylinder.png b/Assets/Editor/Icons/Components/Cylinder.png similarity index 100% rename from Editor/Icons/Components/Cylinder.png rename to Assets/Editor/Icons/Components/Cylinder.png diff --git a/Editor/Icons/Components/Cylinder_Shape.svg b/Assets/Editor/Icons/Components/Cylinder_Shape.svg similarity index 100% rename from Editor/Icons/Components/Cylinder_Shape.svg rename to Assets/Editor/Icons/Components/Cylinder_Shape.svg diff --git a/Editor/Icons/Components/DebugDrawLine.svg b/Assets/Editor/Icons/Components/DebugDrawLine.svg similarity index 100% rename from Editor/Icons/Components/DebugDrawLine.svg rename to Assets/Editor/Icons/Components/DebugDrawLine.svg diff --git a/Editor/Icons/Components/DebugDrawObb.svg b/Assets/Editor/Icons/Components/DebugDrawObb.svg similarity index 100% rename from Editor/Icons/Components/DebugDrawObb.svg rename to Assets/Editor/Icons/Components/DebugDrawObb.svg diff --git a/Editor/Icons/Components/DebugDrawRay.svg b/Assets/Editor/Icons/Components/DebugDrawRay.svg similarity index 100% rename from Editor/Icons/Components/DebugDrawRay.svg rename to Assets/Editor/Icons/Components/DebugDrawRay.svg diff --git a/Editor/Icons/Components/DebugDrawSphere.svg b/Assets/Editor/Icons/Components/DebugDrawSphere.svg similarity index 100% rename from Editor/Icons/Components/DebugDrawSphere.svg rename to Assets/Editor/Icons/Components/DebugDrawSphere.svg diff --git a/Editor/Icons/Components/DebugDrawText.svg b/Assets/Editor/Icons/Components/DebugDrawText.svg similarity index 100% rename from Editor/Icons/Components/DebugDrawText.svg rename to Assets/Editor/Icons/Components/DebugDrawText.svg diff --git a/Editor/Icons/Components/Decal.svg b/Assets/Editor/Icons/Components/Decal.svg similarity index 100% rename from Editor/Icons/Components/Decal.svg rename to Assets/Editor/Icons/Components/Decal.svg diff --git a/Editor/Icons/Components/Disabled/Animation_white.png b/Assets/Editor/Icons/Components/Disabled/Animation_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Animation_white.png rename to Assets/Editor/Icons/Components/Disabled/Animation_white.png diff --git a/Editor/Icons/Components/Disabled/Attachment_white.png b/Assets/Editor/Icons/Components/Disabled/Attachment_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Attachment_white.png rename to Assets/Editor/Icons/Components/Disabled/Attachment_white.png diff --git a/Editor/Icons/Components/Disabled/AudioAreaEnvironment_white.png b/Assets/Editor/Icons/Components/Disabled/AudioAreaEnvironment_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/AudioAreaEnvironment_white.png rename to Assets/Editor/Icons/Components/Disabled/AudioAreaEnvironment_white.png diff --git a/Editor/Icons/Components/Disabled/AudioArea_white.png b/Assets/Editor/Icons/Components/Disabled/AudioArea_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/AudioArea_white.png rename to Assets/Editor/Icons/Components/Disabled/AudioArea_white.png diff --git a/Editor/Icons/Components/Disabled/AudioEnvironment_white.png b/Assets/Editor/Icons/Components/Disabled/AudioEnvironment_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/AudioEnvironment_white.png rename to Assets/Editor/Icons/Components/Disabled/AudioEnvironment_white.png diff --git a/Editor/Icons/Components/Disabled/AudioListener_white.png b/Assets/Editor/Icons/Components/Disabled/AudioListener_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/AudioListener_white.png rename to Assets/Editor/Icons/Components/Disabled/AudioListener_white.png diff --git a/Editor/Icons/Components/Disabled/AudioRtpc_white.png b/Assets/Editor/Icons/Components/Disabled/AudioRtpc_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/AudioRtpc_white.png rename to Assets/Editor/Icons/Components/Disabled/AudioRtpc_white.png diff --git a/Editor/Icons/Components/Disabled/AudioSwitch_white.png b/Assets/Editor/Icons/Components/Disabled/AudioSwitch_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/AudioSwitch_white.png rename to Assets/Editor/Icons/Components/Disabled/AudioSwitch_white.png diff --git a/Editor/Icons/Components/Disabled/AudioTrigger_white.png b/Assets/Editor/Icons/Components/Disabled/AudioTrigger_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/AudioTrigger_white.png rename to Assets/Editor/Icons/Components/Disabled/AudioTrigger_white.png diff --git a/Editor/Icons/Components/Disabled/BehaviorTree_white.png b/Assets/Editor/Icons/Components/Disabled/BehaviorTree_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/BehaviorTree_white.png rename to Assets/Editor/Icons/Components/Disabled/BehaviorTree_white.png diff --git a/Editor/Icons/Components/Disabled/Box_Shape_white.png b/Assets/Editor/Icons/Components/Disabled/Box_Shape_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Box_Shape_white.png rename to Assets/Editor/Icons/Components/Disabled/Box_Shape_white.png diff --git a/Editor/Icons/Components/Disabled/Box_collider_white.png b/Assets/Editor/Icons/Components/Disabled/Box_collider_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Box_collider_white.png rename to Assets/Editor/Icons/Components/Disabled/Box_collider_white.png diff --git a/Editor/Icons/Components/Disabled/Box_white.png b/Assets/Editor/Icons/Components/Disabled/Box_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Box_white.png rename to Assets/Editor/Icons/Components/Disabled/Box_white.png diff --git a/Editor/Icons/Components/Disabled/Capsule_Shape_white.png b/Assets/Editor/Icons/Components/Disabled/Capsule_Shape_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Capsule_Shape_white.png rename to Assets/Editor/Icons/Components/Disabled/Capsule_Shape_white.png diff --git a/Editor/Icons/Components/Disabled/Capsule_white.png b/Assets/Editor/Icons/Components/Disabled/Capsule_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Capsule_white.png rename to Assets/Editor/Icons/Components/Disabled/Capsule_white.png diff --git a/Editor/Icons/Components/Disabled/CharacterPhysics_white.png b/Assets/Editor/Icons/Components/Disabled/CharacterPhysics_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/CharacterPhysics_white.png rename to Assets/Editor/Icons/Components/Disabled/CharacterPhysics_white.png diff --git a/Editor/Icons/Components/Disabled/Comment.png b/Assets/Editor/Icons/Components/Disabled/Comment.png similarity index 100% rename from Editor/Icons/Components/Disabled/Comment.png rename to Assets/Editor/Icons/Components/Disabled/Comment.png diff --git a/Editor/Icons/Components/Disabled/ComponentPlaceholder_white.png b/Assets/Editor/Icons/Components/Disabled/ComponentPlaceholder_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/ComponentPlaceholder_white.png rename to Assets/Editor/Icons/Components/Disabled/ComponentPlaceholder_white.png diff --git a/Editor/Icons/Components/Disabled/Component_Placeholder_white.png b/Assets/Editor/Icons/Components/Disabled/Component_Placeholder_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Component_Placeholder_white.png rename to Assets/Editor/Icons/Components/Disabled/Component_Placeholder_white.png diff --git a/Editor/Icons/Components/Disabled/Cylinder_Shape_white.png b/Assets/Editor/Icons/Components/Disabled/Cylinder_Shape_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Cylinder_Shape_white.png rename to Assets/Editor/Icons/Components/Disabled/Cylinder_Shape_white.png diff --git a/Editor/Icons/Components/Disabled/Cylinder_white.png b/Assets/Editor/Icons/Components/Disabled/Cylinder_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Cylinder_white.png rename to Assets/Editor/Icons/Components/Disabled/Cylinder_white.png diff --git a/Editor/Icons/Components/Disabled/Decal_white.png b/Assets/Editor/Icons/Components/Disabled/Decal_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Decal_white.png rename to Assets/Editor/Icons/Components/Disabled/Decal_white.png diff --git a/Editor/Icons/Components/Disabled/DynamicContent_white.png b/Assets/Editor/Icons/Components/Disabled/DynamicContent_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/DynamicContent_white.png rename to Assets/Editor/Icons/Components/Disabled/DynamicContent_white.png diff --git a/Editor/Icons/Components/Disabled/DynamicMesh_white.png b/Assets/Editor/Icons/Components/Disabled/DynamicMesh_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/DynamicMesh_white.png rename to Assets/Editor/Icons/Components/Disabled/DynamicMesh_white.png diff --git a/Editor/Icons/Components/Disabled/EntityInSlice_white.png b/Assets/Editor/Icons/Components/Disabled/EntityInSlice_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/EntityInSlice_white.png rename to Assets/Editor/Icons/Components/Disabled/EntityInSlice_white.png diff --git a/Editor/Icons/Components/Disabled/Entity_white.png b/Assets/Editor/Icons/Components/Disabled/Entity_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Entity_white.png rename to Assets/Editor/Icons/Components/Disabled/Entity_white.png diff --git a/Editor/Icons/Components/Disabled/FogVolume_white.png b/Assets/Editor/Icons/Components/Disabled/FogVolume_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/FogVolume_white.png rename to Assets/Editor/Icons/Components/Disabled/FogVolume_white.png diff --git a/Editor/Icons/Components/Disabled/ForceVolume_white.png b/Assets/Editor/Icons/Components/Disabled/ForceVolume_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/ForceVolume_white.png rename to Assets/Editor/Icons/Components/Disabled/ForceVolume_white.png diff --git a/Editor/Icons/Components/Disabled/GeometryCache_white.png b/Assets/Editor/Icons/Components/Disabled/GeometryCache_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/GeometryCache_white.png rename to Assets/Editor/Icons/Components/Disabled/GeometryCache_white.png diff --git a/Editor/Icons/Components/Disabled/HttpClientComponent_white.png b/Assets/Editor/Icons/Components/Disabled/HttpClientComponent_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/HttpClientComponent_white.png rename to Assets/Editor/Icons/Components/Disabled/HttpClientComponent_white.png diff --git a/Editor/Icons/Components/Disabled/LensFlare_white.png b/Assets/Editor/Icons/Components/Disabled/LensFlare_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/LensFlare_white.png rename to Assets/Editor/Icons/Components/Disabled/LensFlare_white.png diff --git a/Editor/Icons/Components/Disabled/Light_white.png b/Assets/Editor/Icons/Components/Disabled/Light_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Light_white.png rename to Assets/Editor/Icons/Components/Disabled/Light_white.png diff --git a/Editor/Icons/Components/Disabled/LightningArc_white.png b/Assets/Editor/Icons/Components/Disabled/LightningArc_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/LightningArc_white.png rename to Assets/Editor/Icons/Components/Disabled/LightningArc_white.png diff --git a/Editor/Icons/Components/Disabled/Lightning_white.png b/Assets/Editor/Icons/Components/Disabled/Lightning_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Lightning_white.png rename to Assets/Editor/Icons/Components/Disabled/Lightning_white.png diff --git a/Editor/Icons/Components/Disabled/LookAt_white.png b/Assets/Editor/Icons/Components/Disabled/LookAt_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/LookAt_white.png rename to Assets/Editor/Icons/Components/Disabled/LookAt_white.png diff --git a/Editor/Icons/Components/Disabled/MannequinScopeContext_white.png b/Assets/Editor/Icons/Components/Disabled/MannequinScopeContext_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/MannequinScopeContext_white.png rename to Assets/Editor/Icons/Components/Disabled/MannequinScopeContext_white.png diff --git a/Editor/Icons/Components/Disabled/Mannequin_white.png b/Assets/Editor/Icons/Components/Disabled/Mannequin_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Mannequin_white.png rename to Assets/Editor/Icons/Components/Disabled/Mannequin_white.png diff --git a/Editor/Icons/Components/Disabled/Mesh_collidaer_white 2.png b/Assets/Editor/Icons/Components/Disabled/Mesh_collidaer_white 2.png similarity index 100% rename from Editor/Icons/Components/Disabled/Mesh_collidaer_white 2.png rename to Assets/Editor/Icons/Components/Disabled/Mesh_collidaer_white 2.png diff --git a/Editor/Icons/Components/Disabled/NavigationArea_white.png b/Assets/Editor/Icons/Components/Disabled/NavigationArea_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/NavigationArea_white.png rename to Assets/Editor/Icons/Components/Disabled/NavigationArea_white.png diff --git a/Editor/Icons/Components/Disabled/NavigationSeed_white.png b/Assets/Editor/Icons/Components/Disabled/NavigationSeed_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/NavigationSeed_white.png rename to Assets/Editor/Icons/Components/Disabled/NavigationSeed_white.png diff --git a/Editor/Icons/Components/Disabled/Navigation_white.png b/Assets/Editor/Icons/Components/Disabled/Navigation_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Navigation_white.png rename to Assets/Editor/Icons/Components/Disabled/Navigation_white.png diff --git a/Editor/Icons/Components/Disabled/NetBinding_white.png b/Assets/Editor/Icons/Components/Disabled/NetBinding_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/NetBinding_white.png rename to Assets/Editor/Icons/Components/Disabled/NetBinding_white.png diff --git a/Editor/Icons/Components/Disabled/ObjectAvoidance_white.png b/Assets/Editor/Icons/Components/Disabled/ObjectAvoidance_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/ObjectAvoidance_white.png rename to Assets/Editor/Icons/Components/Disabled/ObjectAvoidance_white.png diff --git a/Editor/Icons/Components/Disabled/Particle_white.png b/Assets/Editor/Icons/Components/Disabled/Particle_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Particle_white.png rename to Assets/Editor/Icons/Components/Disabled/Particle_white.png diff --git a/Editor/Icons/Components/Disabled/PhysicsConstraint_white.png b/Assets/Editor/Icons/Components/Disabled/PhysicsConstraint_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/PhysicsConstraint_white.png rename to Assets/Editor/Icons/Components/Disabled/PhysicsConstraint_white.png diff --git a/Editor/Icons/Components/Disabled/PolygonPrism_white.png b/Assets/Editor/Icons/Components/Disabled/PolygonPrism_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/PolygonPrism_white.png rename to Assets/Editor/Icons/Components/Disabled/PolygonPrism_white.png diff --git a/Editor/Icons/Components/Disabled/PrimitiveCollider_white.png b/Assets/Editor/Icons/Components/Disabled/PrimitiveCollider_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/PrimitiveCollider_white.png rename to Assets/Editor/Icons/Components/Disabled/PrimitiveCollider_white.png diff --git a/Editor/Icons/Components/Disabled/Ragdoll.png b/Assets/Editor/Icons/Components/Disabled/Ragdoll.png similarity index 100% rename from Editor/Icons/Components/Disabled/Ragdoll.png rename to Assets/Editor/Icons/Components/Disabled/Ragdoll.png diff --git a/Editor/Icons/Components/Disabled/Ragdoll_white.png b/Assets/Editor/Icons/Components/Disabled/Ragdoll_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Ragdoll_white.png rename to Assets/Editor/Icons/Components/Disabled/Ragdoll_white.png diff --git a/Editor/Icons/Components/Disabled/RandomTimedSpawner_white.png b/Assets/Editor/Icons/Components/Disabled/RandomTimedSpawner_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/RandomTimedSpawner_white.png rename to Assets/Editor/Icons/Components/Disabled/RandomTimedSpawner_white.png diff --git a/Editor/Icons/Components/Disabled/RigidPhysics_white.png b/Assets/Editor/Icons/Components/Disabled/RigidPhysics_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/RigidPhysics_white.png rename to Assets/Editor/Icons/Components/Disabled/RigidPhysics_white.png diff --git a/Editor/Icons/Components/Disabled/Script_white.png b/Assets/Editor/Icons/Components/Disabled/Script_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Script_white.png rename to Assets/Editor/Icons/Components/Disabled/Script_white.png diff --git a/Editor/Icons/Components/Disabled/SequenceAgent_white.png b/Assets/Editor/Icons/Components/Disabled/SequenceAgent_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/SequenceAgent_white.png rename to Assets/Editor/Icons/Components/Disabled/SequenceAgent_white.png diff --git a/Editor/Icons/Components/Disabled/Sequence_white.png b/Assets/Editor/Icons/Components/Disabled/Sequence_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Sequence_white.png rename to Assets/Editor/Icons/Components/Disabled/Sequence_white.png diff --git a/Editor/Icons/Components/Disabled/Shadow.png b/Assets/Editor/Icons/Components/Disabled/Shadow.png similarity index 100% rename from Editor/Icons/Components/Disabled/Shadow.png rename to Assets/Editor/Icons/Components/Disabled/Shadow.png diff --git a/Editor/Icons/Components/Disabled/SimpleState_white.png b/Assets/Editor/Icons/Components/Disabled/SimpleState_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/SimpleState_white.png rename to Assets/Editor/Icons/Components/Disabled/SimpleState_white.png diff --git a/Editor/Icons/Components/Disabled/SkinnedMesh_white.png b/Assets/Editor/Icons/Components/Disabled/SkinnedMesh_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/SkinnedMesh_white.png rename to Assets/Editor/Icons/Components/Disabled/SkinnedMesh_white.png diff --git a/Editor/Icons/Components/Disabled/SkyHighlight_white.png b/Assets/Editor/Icons/Components/Disabled/SkyHighlight_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/SkyHighlight_white.png rename to Assets/Editor/Icons/Components/Disabled/SkyHighlight_white.png diff --git a/Editor/Icons/Components/Disabled/Snow_white.png b/Assets/Editor/Icons/Components/Disabled/Snow_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Snow_white.png rename to Assets/Editor/Icons/Components/Disabled/Snow_white.png diff --git a/Editor/Icons/Components/Disabled/Spawner_white.png b/Assets/Editor/Icons/Components/Disabled/Spawner_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Spawner_white.png rename to Assets/Editor/Icons/Components/Disabled/Spawner_white.png diff --git a/Editor/Icons/Components/Disabled/Sphere_Shape_white.png b/Assets/Editor/Icons/Components/Disabled/Sphere_Shape_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Sphere_Shape_white.png rename to Assets/Editor/Icons/Components/Disabled/Sphere_Shape_white.png diff --git a/Editor/Icons/Components/Disabled/Sphere_white.png b/Assets/Editor/Icons/Components/Disabled/Sphere_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Sphere_white.png rename to Assets/Editor/Icons/Components/Disabled/Sphere_white.png diff --git a/Editor/Icons/Components/Disabled/Spline_white.png b/Assets/Editor/Icons/Components/Disabled/Spline_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Spline_white.png rename to Assets/Editor/Icons/Components/Disabled/Spline_white.png diff --git a/Editor/Icons/Components/Disabled/StaticData_white.png b/Assets/Editor/Icons/Components/Disabled/StaticData_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/StaticData_white.png rename to Assets/Editor/Icons/Components/Disabled/StaticData_white.png diff --git a/Editor/Icons/Components/Disabled/StaticMesh_white.png b/Assets/Editor/Icons/Components/Disabled/StaticMesh_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/StaticMesh_white.png rename to Assets/Editor/Icons/Components/Disabled/StaticMesh_white.png diff --git a/Editor/Icons/Components/Disabled/StaticPhysics_white.png b/Assets/Editor/Icons/Components/Disabled/StaticPhysics_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/StaticPhysics_white.png rename to Assets/Editor/Icons/Components/Disabled/StaticPhysics_white.png diff --git a/Editor/Icons/Components/Disabled/Tag_white.png b/Assets/Editor/Icons/Components/Disabled/Tag_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Tag_white.png rename to Assets/Editor/Icons/Components/Disabled/Tag_white.png diff --git a/Editor/Icons/Components/Disabled/Transform_white.png b/Assets/Editor/Icons/Components/Disabled/Transform_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Transform_white.png rename to Assets/Editor/Icons/Components/Disabled/Transform_white.png diff --git a/Editor/Icons/Components/Disabled/Trigger_white.png b/Assets/Editor/Icons/Components/Disabled/Trigger_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/Trigger_white.png rename to Assets/Editor/Icons/Components/Disabled/Trigger_white.png diff --git a/Editor/Icons/Components/Disabled/UiCanvasOnMesh_white.png b/Assets/Editor/Icons/Components/Disabled/UiCanvasOnMesh_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/UiCanvasOnMesh_white.png rename to Assets/Editor/Icons/Components/Disabled/UiCanvasOnMesh_white.png diff --git a/Editor/Icons/Components/Disabled/UiCanvasRef_white.png b/Assets/Editor/Icons/Components/Disabled/UiCanvasRef_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/UiCanvasRef_white.png rename to Assets/Editor/Icons/Components/Disabled/UiCanvasRef_white.png diff --git a/Editor/Icons/Components/Disabled/WaterVolume_white.png b/Assets/Editor/Icons/Components/Disabled/WaterVolume_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/WaterVolume_white.png rename to Assets/Editor/Icons/Components/Disabled/WaterVolume_white.png diff --git a/Editor/Icons/Components/Disabled/WindVolume_white.png b/Assets/Editor/Icons/Components/Disabled/WindVolume_white.png similarity index 100% rename from Editor/Icons/Components/Disabled/WindVolume_white.png rename to Assets/Editor/Icons/Components/Disabled/WindVolume_white.png diff --git a/Editor/Icons/Components/Disk_Shape.svg b/Assets/Editor/Icons/Components/Disk_Shape.svg similarity index 100% rename from Editor/Icons/Components/Disk_Shape.svg rename to Assets/Editor/Icons/Components/Disk_Shape.svg diff --git a/Editor/Icons/Components/DynamicContent.png b/Assets/Editor/Icons/Components/DynamicContent.png similarity index 100% rename from Editor/Icons/Components/DynamicContent.png rename to Assets/Editor/Icons/Components/DynamicContent.png diff --git a/Editor/Icons/Components/DynamicMesh.png b/Assets/Editor/Icons/Components/DynamicMesh.png similarity index 100% rename from Editor/Icons/Components/DynamicMesh.png rename to Assets/Editor/Icons/Components/DynamicMesh.png diff --git a/Editor/Icons/Components/Entity.png b/Assets/Editor/Icons/Components/Entity.png similarity index 100% rename from Editor/Icons/Components/Entity.png rename to Assets/Editor/Icons/Components/Entity.png diff --git a/Editor/Icons/Components/EntityInSlice.png b/Assets/Editor/Icons/Components/EntityInSlice.png similarity index 100% rename from Editor/Icons/Components/EntityInSlice.png rename to Assets/Editor/Icons/Components/EntityInSlice.png diff --git a/Editor/Icons/Components/EnvironmentProbe.svg b/Assets/Editor/Icons/Components/EnvironmentProbe.svg similarity index 100% rename from Editor/Icons/Components/EnvironmentProbe.svg rename to Assets/Editor/Icons/Components/EnvironmentProbe.svg diff --git a/Editor/Icons/Components/Flipbook.png b/Assets/Editor/Icons/Components/Flipbook.png similarity index 100% rename from Editor/Icons/Components/Flipbook.png rename to Assets/Editor/Icons/Components/Flipbook.png diff --git a/Editor/Icons/Components/FogVolume.svg b/Assets/Editor/Icons/Components/FogVolume.svg similarity index 100% rename from Editor/Icons/Components/FogVolume.svg rename to Assets/Editor/Icons/Components/FogVolume.svg diff --git a/Editor/Icons/Components/Footstep1.svg b/Assets/Editor/Icons/Components/Footstep1.svg similarity index 100% rename from Editor/Icons/Components/Footstep1.svg rename to Assets/Editor/Icons/Components/Footstep1.svg diff --git a/Editor/Icons/Components/ForceRegion.png b/Assets/Editor/Icons/Components/ForceRegion.png similarity index 100% rename from Editor/Icons/Components/ForceRegion.png rename to Assets/Editor/Icons/Components/ForceRegion.png diff --git a/Editor/Icons/Components/ForceVolume.svg b/Assets/Editor/Icons/Components/ForceVolume.svg similarity index 100% rename from Editor/Icons/Components/ForceVolume.svg rename to Assets/Editor/Icons/Components/ForceVolume.svg diff --git a/Editor/Icons/Components/GeometryCache.svg b/Assets/Editor/Icons/Components/GeometryCache.svg similarity index 100% rename from Editor/Icons/Components/GeometryCache.svg rename to Assets/Editor/Icons/Components/GeometryCache.svg diff --git a/Editor/Icons/Components/HttpClientComponent.png b/Assets/Editor/Icons/Components/HttpClientComponent.png similarity index 100% rename from Editor/Icons/Components/HttpClientComponent.png rename to Assets/Editor/Icons/Components/HttpClientComponent.png diff --git a/Editor/Icons/Components/Layers.svg b/Assets/Editor/Icons/Components/Layers.svg similarity index 100% rename from Editor/Icons/Components/Layers.svg rename to Assets/Editor/Icons/Components/Layers.svg diff --git a/Editor/Icons/Components/LegacyTerrain.svg b/Assets/Editor/Icons/Components/LegacyTerrain.svg similarity index 100% rename from Editor/Icons/Components/LegacyTerrain.svg rename to Assets/Editor/Icons/Components/LegacyTerrain.svg diff --git a/Editor/Icons/Components/LensFlare.svg b/Assets/Editor/Icons/Components/LensFlare.svg similarity index 100% rename from Editor/Icons/Components/LensFlare.svg rename to Assets/Editor/Icons/Components/LensFlare.svg diff --git a/Editor/Icons/Components/Light.png b/Assets/Editor/Icons/Components/Light.png similarity index 100% rename from Editor/Icons/Components/Light.png rename to Assets/Editor/Icons/Components/Light.png diff --git a/Editor/Icons/Components/Lightning.svg b/Assets/Editor/Icons/Components/Lightning.svg similarity index 100% rename from Editor/Icons/Components/Lightning.svg rename to Assets/Editor/Icons/Components/Lightning.svg diff --git a/Editor/Icons/Components/LightningArc.svg b/Assets/Editor/Icons/Components/LightningArc.svg similarity index 100% rename from Editor/Icons/Components/LightningArc.svg rename to Assets/Editor/Icons/Components/LightningArc.svg diff --git a/Editor/Icons/Components/LookAt.png b/Assets/Editor/Icons/Components/LookAt.png similarity index 100% rename from Editor/Icons/Components/LookAt.png rename to Assets/Editor/Icons/Components/LookAt.png diff --git a/Editor/Icons/Components/LuaScript.svg b/Assets/Editor/Icons/Components/LuaScript.svg similarity index 100% rename from Editor/Icons/Components/LuaScript.svg rename to Assets/Editor/Icons/Components/LuaScript.svg diff --git a/Editor/Icons/Components/Mannequin.svg b/Assets/Editor/Icons/Components/Mannequin.svg similarity index 100% rename from Editor/Icons/Components/Mannequin.svg rename to Assets/Editor/Icons/Components/Mannequin.svg diff --git a/Editor/Icons/Components/MannequinScopeContext.svg b/Assets/Editor/Icons/Components/MannequinScopeContext.svg similarity index 100% rename from Editor/Icons/Components/MannequinScopeContext.svg rename to Assets/Editor/Icons/Components/MannequinScopeContext.svg diff --git a/Editor/Icons/Components/MotionParameterSmoothing.svg b/Assets/Editor/Icons/Components/MotionParameterSmoothing.svg similarity index 100% rename from Editor/Icons/Components/MotionParameterSmoothing.svg rename to Assets/Editor/Icons/Components/MotionParameterSmoothing.svg diff --git a/Editor/Icons/Components/Navigation.svg b/Assets/Editor/Icons/Components/Navigation.svg similarity index 100% rename from Editor/Icons/Components/Navigation.svg rename to Assets/Editor/Icons/Components/Navigation.svg diff --git a/Editor/Icons/Components/NavigationArea.svg b/Assets/Editor/Icons/Components/NavigationArea.svg similarity index 100% rename from Editor/Icons/Components/NavigationArea.svg rename to Assets/Editor/Icons/Components/NavigationArea.svg diff --git a/Editor/Icons/Components/NavigationSeed.svg b/Assets/Editor/Icons/Components/NavigationSeed.svg similarity index 100% rename from Editor/Icons/Components/NavigationSeed.svg rename to Assets/Editor/Icons/Components/NavigationSeed.svg diff --git a/Editor/Icons/Components/NetBinding.svg b/Assets/Editor/Icons/Components/NetBinding.svg similarity index 100% rename from Editor/Icons/Components/NetBinding.svg rename to Assets/Editor/Icons/Components/NetBinding.svg diff --git a/Editor/Icons/Components/ObjectAvoidance.png b/Assets/Editor/Icons/Components/ObjectAvoidance.png similarity index 100% rename from Editor/Icons/Components/ObjectAvoidance.png rename to Assets/Editor/Icons/Components/ObjectAvoidance.png diff --git a/Editor/Icons/Components/Particle.svg b/Assets/Editor/Icons/Components/Particle.svg similarity index 100% rename from Editor/Icons/Components/Particle.svg rename to Assets/Editor/Icons/Components/Particle.svg diff --git a/Editor/Icons/Components/PhysXCharacter.svg b/Assets/Editor/Icons/Components/PhysXCharacter.svg similarity index 100% rename from Editor/Icons/Components/PhysXCharacter.svg rename to Assets/Editor/Icons/Components/PhysXCharacter.svg diff --git a/Editor/Icons/Components/PhysXCollider.svg b/Assets/Editor/Icons/Components/PhysXCollider.svg similarity index 100% rename from Editor/Icons/Components/PhysXCollider.svg rename to Assets/Editor/Icons/Components/PhysXCollider.svg diff --git a/Editor/Icons/Components/PhysXRagdoll.svg b/Assets/Editor/Icons/Components/PhysXRagdoll.svg similarity index 100% rename from Editor/Icons/Components/PhysXRagdoll.svg rename to Assets/Editor/Icons/Components/PhysXRagdoll.svg diff --git a/Editor/Icons/Components/PhysXRigidBody.svg b/Assets/Editor/Icons/Components/PhysXRigidBody.svg similarity index 100% rename from Editor/Icons/Components/PhysXRigidBody.svg rename to Assets/Editor/Icons/Components/PhysXRigidBody.svg diff --git a/Editor/Icons/Components/PhysXTerrain.svg b/Assets/Editor/Icons/Components/PhysXTerrain.svg similarity index 100% rename from Editor/Icons/Components/PhysXTerrain.svg rename to Assets/Editor/Icons/Components/PhysXTerrain.svg diff --git a/Editor/Icons/Components/Physics.png b/Assets/Editor/Icons/Components/Physics.png similarity index 100% rename from Editor/Icons/Components/Physics.png rename to Assets/Editor/Icons/Components/Physics.png diff --git a/Editor/Icons/Components/PhysicsConstraint.svg b/Assets/Editor/Icons/Components/PhysicsConstraint.svg similarity index 100% rename from Editor/Icons/Components/PhysicsConstraint.svg rename to Assets/Editor/Icons/Components/PhysicsConstraint.svg diff --git a/Editor/Icons/Components/PointLight.svg b/Assets/Editor/Icons/Components/PointLight.svg similarity index 100% rename from Editor/Icons/Components/PointLight.svg rename to Assets/Editor/Icons/Components/PointLight.svg diff --git a/Editor/Icons/Components/PolygonPrism.svg b/Assets/Editor/Icons/Components/PolygonPrism.svg similarity index 100% rename from Editor/Icons/Components/PolygonPrism.svg rename to Assets/Editor/Icons/Components/PolygonPrism.svg diff --git a/Editor/Icons/Components/PrimitiveCollider.svg b/Assets/Editor/Icons/Components/PrimitiveCollider.svg similarity index 100% rename from Editor/Icons/Components/PrimitiveCollider.svg rename to Assets/Editor/Icons/Components/PrimitiveCollider.svg diff --git a/Editor/Icons/Components/ProjectorLight.svg b/Assets/Editor/Icons/Components/ProjectorLight.svg similarity index 100% rename from Editor/Icons/Components/ProjectorLight.svg rename to Assets/Editor/Icons/Components/ProjectorLight.svg diff --git a/Editor/Icons/Components/Quad_Shape.svg b/Assets/Editor/Icons/Components/Quad_Shape.svg similarity index 100% rename from Editor/Icons/Components/Quad_Shape.svg rename to Assets/Editor/Icons/Components/Quad_Shape.svg diff --git a/Editor/Icons/Components/Ragdoll.png b/Assets/Editor/Icons/Components/Ragdoll.png similarity index 100% rename from Editor/Icons/Components/Ragdoll.png rename to Assets/Editor/Icons/Components/Ragdoll.png diff --git a/Editor/Icons/Components/RandomTimedSpawner.svg b/Assets/Editor/Icons/Components/RandomTimedSpawner.svg similarity index 100% rename from Editor/Icons/Components/RandomTimedSpawner.svg rename to Assets/Editor/Icons/Components/RandomTimedSpawner.svg diff --git a/Editor/Icons/Components/RigidPhysics.svg b/Assets/Editor/Icons/Components/RigidPhysics.svg similarity index 100% rename from Editor/Icons/Components/RigidPhysics.svg rename to Assets/Editor/Icons/Components/RigidPhysics.svg diff --git a/Editor/Icons/Components/ScriptEventAssetReference.png b/Assets/Editor/Icons/Components/ScriptEventAssetReference.png similarity index 100% rename from Editor/Icons/Components/ScriptEventAssetReference.png rename to Assets/Editor/Icons/Components/ScriptEventAssetReference.png diff --git a/Editor/Icons/Components/Sequence.png b/Assets/Editor/Icons/Components/Sequence.png similarity index 100% rename from Editor/Icons/Components/Sequence.png rename to Assets/Editor/Icons/Components/Sequence.png diff --git a/Editor/Icons/Components/SequenceAgent.png b/Assets/Editor/Icons/Components/SequenceAgent.png similarity index 100% rename from Editor/Icons/Components/SequenceAgent.png rename to Assets/Editor/Icons/Components/SequenceAgent.png diff --git a/Editor/Icons/Components/Shadow.svg b/Assets/Editor/Icons/Components/Shadow.svg similarity index 100% rename from Editor/Icons/Components/Shadow.svg rename to Assets/Editor/Icons/Components/Shadow.svg diff --git a/Editor/Icons/Components/SimpleAnimation.svg b/Assets/Editor/Icons/Components/SimpleAnimation.svg similarity index 100% rename from Editor/Icons/Components/SimpleAnimation.svg rename to Assets/Editor/Icons/Components/SimpleAnimation.svg diff --git a/Editor/Icons/Components/SimpleLODDistance.svg b/Assets/Editor/Icons/Components/SimpleLODDistance.svg similarity index 100% rename from Editor/Icons/Components/SimpleLODDistance.svg rename to Assets/Editor/Icons/Components/SimpleLODDistance.svg diff --git a/Editor/Icons/Components/SimpleMotion.svg b/Assets/Editor/Icons/Components/SimpleMotion.svg similarity index 100% rename from Editor/Icons/Components/SimpleMotion.svg rename to Assets/Editor/Icons/Components/SimpleMotion.svg diff --git a/Editor/Icons/Components/SimpleState.svg b/Assets/Editor/Icons/Components/SimpleState.svg similarity index 100% rename from Editor/Icons/Components/SimpleState.svg rename to Assets/Editor/Icons/Components/SimpleState.svg diff --git a/Editor/Icons/Components/SkinnedMesh.svg b/Assets/Editor/Icons/Components/SkinnedMesh.svg similarity index 100% rename from Editor/Icons/Components/SkinnedMesh.svg rename to Assets/Editor/Icons/Components/SkinnedMesh.svg diff --git a/Editor/Icons/Components/SkyHighlight.svg b/Assets/Editor/Icons/Components/SkyHighlight.svg similarity index 100% rename from Editor/Icons/Components/SkyHighlight.svg rename to Assets/Editor/Icons/Components/SkyHighlight.svg diff --git a/Editor/Icons/Components/Snow.svg b/Assets/Editor/Icons/Components/Snow.svg similarity index 100% rename from Editor/Icons/Components/Snow.svg rename to Assets/Editor/Icons/Components/Snow.svg diff --git a/Editor/Icons/Components/Spawner.svg b/Assets/Editor/Icons/Components/Spawner.svg similarity index 100% rename from Editor/Icons/Components/Spawner.svg rename to Assets/Editor/Icons/Components/Spawner.svg diff --git a/Editor/Icons/Components/Sphere.png b/Assets/Editor/Icons/Components/Sphere.png similarity index 100% rename from Editor/Icons/Components/Sphere.png rename to Assets/Editor/Icons/Components/Sphere.png diff --git a/Editor/Icons/Components/Sphere_Shape.svg b/Assets/Editor/Icons/Components/Sphere_Shape.svg similarity index 100% rename from Editor/Icons/Components/Sphere_Shape.svg rename to Assets/Editor/Icons/Components/Sphere_Shape.svg diff --git a/Editor/Icons/Components/Spline.svg b/Assets/Editor/Icons/Components/Spline.svg similarity index 100% rename from Editor/Icons/Components/Spline.svg rename to Assets/Editor/Icons/Components/Spline.svg diff --git a/Editor/Icons/Components/StaticData.png b/Assets/Editor/Icons/Components/StaticData.png similarity index 100% rename from Editor/Icons/Components/StaticData.png rename to Assets/Editor/Icons/Components/StaticData.png diff --git a/Editor/Icons/Components/StaticMesh.svg b/Assets/Editor/Icons/Components/StaticMesh.svg similarity index 100% rename from Editor/Icons/Components/StaticMesh.svg rename to Assets/Editor/Icons/Components/StaticMesh.svg diff --git a/Editor/Icons/Components/StaticPhysics.svg b/Assets/Editor/Icons/Components/StaticPhysics.svg similarity index 100% rename from Editor/Icons/Components/StaticPhysics.svg rename to Assets/Editor/Icons/Components/StaticPhysics.svg diff --git a/Editor/Icons/Components/Tag.svg b/Assets/Editor/Icons/Components/Tag.svg similarity index 100% rename from Editor/Icons/Components/Tag.svg rename to Assets/Editor/Icons/Components/Tag.svg diff --git a/Editor/Icons/Components/Transform.svg b/Assets/Editor/Icons/Components/Transform.svg similarity index 100% rename from Editor/Icons/Components/Transform.svg rename to Assets/Editor/Icons/Components/Transform.svg diff --git a/Editor/Icons/Components/TriggerArea.svg b/Assets/Editor/Icons/Components/TriggerArea.svg similarity index 100% rename from Editor/Icons/Components/TriggerArea.svg rename to Assets/Editor/Icons/Components/TriggerArea.svg diff --git a/Editor/Icons/Components/Tube_Shape.svg b/Assets/Editor/Icons/Components/Tube_Shape.svg similarity index 100% rename from Editor/Icons/Components/Tube_Shape.svg rename to Assets/Editor/Icons/Components/Tube_Shape.svg diff --git a/Editor/Icons/Components/UICanvasAssetRef.svg b/Assets/Editor/Icons/Components/UICanvasAssetRef.svg similarity index 100% rename from Editor/Icons/Components/UICanvasAssetRef.svg rename to Assets/Editor/Icons/Components/UICanvasAssetRef.svg diff --git a/Editor/Icons/Components/UICanvasOnMesh.svg b/Assets/Editor/Icons/Components/UICanvasOnMesh.svg similarity index 100% rename from Editor/Icons/Components/UICanvasOnMesh.svg rename to Assets/Editor/Icons/Components/UICanvasOnMesh.svg diff --git a/Editor/Icons/Components/UICanvasProxyRef.svg b/Assets/Editor/Icons/Components/UICanvasProxyRef.svg similarity index 100% rename from Editor/Icons/Components/UICanvasProxyRef.svg rename to Assets/Editor/Icons/Components/UICanvasProxyRef.svg diff --git a/Editor/Icons/Components/VRPreview.svg b/Assets/Editor/Icons/Components/VRPreview.svg similarity index 100% rename from Editor/Icons/Components/VRPreview.svg rename to Assets/Editor/Icons/Components/VRPreview.svg diff --git a/Editor/Icons/Components/Viewport/Animation.png b/Assets/Editor/Icons/Components/Viewport/Animation.png similarity index 100% rename from Editor/Icons/Components/Viewport/Animation.png rename to Assets/Editor/Icons/Components/Viewport/Animation.png diff --git a/Editor/Icons/Components/Viewport/AreaLight.png b/Assets/Editor/Icons/Components/Viewport/AreaLight.png similarity index 100% rename from Editor/Icons/Components/Viewport/AreaLight.png rename to Assets/Editor/Icons/Components/Viewport/AreaLight.png diff --git a/Editor/Icons/Components/Viewport/Attachment.png b/Assets/Editor/Icons/Components/Viewport/Attachment.png similarity index 100% rename from Editor/Icons/Components/Viewport/Attachment.png rename to Assets/Editor/Icons/Components/Viewport/Attachment.png diff --git a/Editor/Icons/Components/Viewport/AudioArea.png b/Assets/Editor/Icons/Components/Viewport/AudioArea.png similarity index 100% rename from Editor/Icons/Components/Viewport/AudioArea.png rename to Assets/Editor/Icons/Components/Viewport/AudioArea.png diff --git a/Editor/Icons/Components/Viewport/AudioAreaEnvironment.png b/Assets/Editor/Icons/Components/Viewport/AudioAreaEnvironment.png similarity index 100% rename from Editor/Icons/Components/Viewport/AudioAreaEnvironment.png rename to Assets/Editor/Icons/Components/Viewport/AudioAreaEnvironment.png diff --git a/Editor/Icons/Components/Viewport/AudioEnvironment.png b/Assets/Editor/Icons/Components/Viewport/AudioEnvironment.png similarity index 100% rename from Editor/Icons/Components/Viewport/AudioEnvironment.png rename to Assets/Editor/Icons/Components/Viewport/AudioEnvironment.png diff --git a/Editor/Icons/Components/Viewport/AudioListener.png b/Assets/Editor/Icons/Components/Viewport/AudioListener.png similarity index 100% rename from Editor/Icons/Components/Viewport/AudioListener.png rename to Assets/Editor/Icons/Components/Viewport/AudioListener.png diff --git a/Editor/Icons/Components/Viewport/AudioMultiPosition.png b/Assets/Editor/Icons/Components/Viewport/AudioMultiPosition.png similarity index 100% rename from Editor/Icons/Components/Viewport/AudioMultiPosition.png rename to Assets/Editor/Icons/Components/Viewport/AudioMultiPosition.png diff --git a/Editor/Icons/Components/Viewport/AudioRtpc.png b/Assets/Editor/Icons/Components/Viewport/AudioRtpc.png similarity index 100% rename from Editor/Icons/Components/Viewport/AudioRtpc.png rename to Assets/Editor/Icons/Components/Viewport/AudioRtpc.png diff --git a/Editor/Icons/Components/Viewport/AudioSwitch.png b/Assets/Editor/Icons/Components/Viewport/AudioSwitch.png similarity index 100% rename from Editor/Icons/Components/Viewport/AudioSwitch.png rename to Assets/Editor/Icons/Components/Viewport/AudioSwitch.png diff --git a/Editor/Icons/Components/Viewport/AudioTrigger.png b/Assets/Editor/Icons/Components/Viewport/AudioTrigger.png similarity index 100% rename from Editor/Icons/Components/Viewport/AudioTrigger.png rename to Assets/Editor/Icons/Components/Viewport/AudioTrigger.png diff --git a/Editor/Icons/Components/Viewport/BehaviorTree.png b/Assets/Editor/Icons/Components/Viewport/BehaviorTree.png similarity index 100% rename from Editor/Icons/Components/Viewport/BehaviorTree.png rename to Assets/Editor/Icons/Components/Viewport/BehaviorTree.png diff --git a/Editor/Icons/Components/Viewport/Box.png b/Assets/Editor/Icons/Components/Viewport/Box.png similarity index 100% rename from Editor/Icons/Components/Viewport/Box.png rename to Assets/Editor/Icons/Components/Viewport/Box.png diff --git a/Editor/Icons/Components/Viewport/Box_Shape.png b/Assets/Editor/Icons/Components/Viewport/Box_Shape.png similarity index 100% rename from Editor/Icons/Components/Viewport/Box_Shape.png rename to Assets/Editor/Icons/Components/Viewport/Box_Shape.png diff --git a/Editor/Icons/Components/Viewport/Capsule.png b/Assets/Editor/Icons/Components/Viewport/Capsule.png similarity index 100% rename from Editor/Icons/Components/Viewport/Capsule.png rename to Assets/Editor/Icons/Components/Viewport/Capsule.png diff --git a/Editor/Icons/Components/Viewport/Capsule_Shape.png b/Assets/Editor/Icons/Components/Viewport/Capsule_Shape.png similarity index 100% rename from Editor/Icons/Components/Viewport/Capsule_Shape.png rename to Assets/Editor/Icons/Components/Viewport/Capsule_Shape.png diff --git a/Editor/Icons/Components/Viewport/CharacterPhysics.png b/Assets/Editor/Icons/Components/Viewport/CharacterPhysics.png similarity index 100% rename from Editor/Icons/Components/Viewport/CharacterPhysics.png rename to Assets/Editor/Icons/Components/Viewport/CharacterPhysics.png diff --git a/Editor/Icons/Components/Viewport/Comment.png b/Assets/Editor/Icons/Components/Viewport/Comment.png similarity index 100% rename from Editor/Icons/Components/Viewport/Comment.png rename to Assets/Editor/Icons/Components/Viewport/Comment.png diff --git a/Editor/Icons/Components/Viewport/ComponentPlaceholder.png b/Assets/Editor/Icons/Components/Viewport/ComponentPlaceholder.png similarity index 100% rename from Editor/Icons/Components/Viewport/ComponentPlaceholder.png rename to Assets/Editor/Icons/Components/Viewport/ComponentPlaceholder.png diff --git a/Editor/Icons/Components/Viewport/Component_Placeholder.png b/Assets/Editor/Icons/Components/Viewport/Component_Placeholder.png similarity index 100% rename from Editor/Icons/Components/Viewport/Component_Placeholder.png rename to Assets/Editor/Icons/Components/Viewport/Component_Placeholder.png diff --git a/Editor/Icons/Components/Viewport/Cylinder.png b/Assets/Editor/Icons/Components/Viewport/Cylinder.png similarity index 100% rename from Editor/Icons/Components/Viewport/Cylinder.png rename to Assets/Editor/Icons/Components/Viewport/Cylinder.png diff --git a/Editor/Icons/Components/Viewport/Cylinder_Shape.png b/Assets/Editor/Icons/Components/Viewport/Cylinder_Shape.png similarity index 100% rename from Editor/Icons/Components/Viewport/Cylinder_Shape.png rename to Assets/Editor/Icons/Components/Viewport/Cylinder_Shape.png diff --git a/Editor/Icons/Components/Viewport/Decal.png b/Assets/Editor/Icons/Components/Viewport/Decal.png similarity index 100% rename from Editor/Icons/Components/Viewport/Decal.png rename to Assets/Editor/Icons/Components/Viewport/Decal.png diff --git a/Editor/Icons/Components/Viewport/Disk_Shape.png b/Assets/Editor/Icons/Components/Viewport/Disk_Shape.png similarity index 100% rename from Editor/Icons/Components/Viewport/Disk_Shape.png rename to Assets/Editor/Icons/Components/Viewport/Disk_Shape.png diff --git a/Editor/Icons/Components/Viewport/DynamicContent.png b/Assets/Editor/Icons/Components/Viewport/DynamicContent.png similarity index 100% rename from Editor/Icons/Components/Viewport/DynamicContent.png rename to Assets/Editor/Icons/Components/Viewport/DynamicContent.png diff --git a/Editor/Icons/Components/Viewport/DynamicMesh.png b/Assets/Editor/Icons/Components/Viewport/DynamicMesh.png similarity index 100% rename from Editor/Icons/Components/Viewport/DynamicMesh.png rename to Assets/Editor/Icons/Components/Viewport/DynamicMesh.png diff --git a/Editor/Icons/Components/Viewport/Entity.png b/Assets/Editor/Icons/Components/Viewport/Entity.png similarity index 100% rename from Editor/Icons/Components/Viewport/Entity.png rename to Assets/Editor/Icons/Components/Viewport/Entity.png diff --git a/Editor/Icons/Components/Viewport/EntityInSlice.png b/Assets/Editor/Icons/Components/Viewport/EntityInSlice.png similarity index 100% rename from Editor/Icons/Components/Viewport/EntityInSlice.png rename to Assets/Editor/Icons/Components/Viewport/EntityInSlice.png diff --git a/Editor/Icons/Components/Viewport/EnvironmentProbe.png b/Assets/Editor/Icons/Components/Viewport/EnvironmentProbe.png similarity index 100% rename from Editor/Icons/Components/Viewport/EnvironmentProbe.png rename to Assets/Editor/Icons/Components/Viewport/EnvironmentProbe.png diff --git a/Editor/Icons/Components/Viewport/Flipbook.png b/Assets/Editor/Icons/Components/Viewport/Flipbook.png similarity index 100% rename from Editor/Icons/Components/Viewport/Flipbook.png rename to Assets/Editor/Icons/Components/Viewport/Flipbook.png diff --git a/Editor/Icons/Components/Viewport/FogVolume.png b/Assets/Editor/Icons/Components/Viewport/FogVolume.png similarity index 100% rename from Editor/Icons/Components/Viewport/FogVolume.png rename to Assets/Editor/Icons/Components/Viewport/FogVolume.png diff --git a/Editor/Icons/Components/Viewport/ForceVolume.png b/Assets/Editor/Icons/Components/Viewport/ForceVolume.png similarity index 100% rename from Editor/Icons/Components/Viewport/ForceVolume.png rename to Assets/Editor/Icons/Components/Viewport/ForceVolume.png diff --git a/Editor/Icons/Components/Viewport/GeometryCache.png b/Assets/Editor/Icons/Components/Viewport/GeometryCache.png similarity index 100% rename from Editor/Icons/Components/Viewport/GeometryCache.png rename to Assets/Editor/Icons/Components/Viewport/GeometryCache.png diff --git a/Editor/Icons/Components/Viewport/HttpClientComponent.png b/Assets/Editor/Icons/Components/Viewport/HttpClientComponent.png similarity index 100% rename from Editor/Icons/Components/Viewport/HttpClientComponent.png rename to Assets/Editor/Icons/Components/Viewport/HttpClientComponent.png diff --git a/Editor/Icons/Components/Viewport/LensFlare.png b/Assets/Editor/Icons/Components/Viewport/LensFlare.png similarity index 100% rename from Editor/Icons/Components/Viewport/LensFlare.png rename to Assets/Editor/Icons/Components/Viewport/LensFlare.png diff --git a/Editor/Icons/Components/Viewport/Light.png b/Assets/Editor/Icons/Components/Viewport/Light.png similarity index 100% rename from Editor/Icons/Components/Viewport/Light.png rename to Assets/Editor/Icons/Components/Viewport/Light.png diff --git a/Editor/Icons/Components/Viewport/Lightning.png b/Assets/Editor/Icons/Components/Viewport/Lightning.png similarity index 100% rename from Editor/Icons/Components/Viewport/Lightning.png rename to Assets/Editor/Icons/Components/Viewport/Lightning.png diff --git a/Editor/Icons/Components/Viewport/LightningArc.png b/Assets/Editor/Icons/Components/Viewport/LightningArc.png similarity index 100% rename from Editor/Icons/Components/Viewport/LightningArc.png rename to Assets/Editor/Icons/Components/Viewport/LightningArc.png diff --git a/Editor/Icons/Components/Viewport/LookAt.png b/Assets/Editor/Icons/Components/Viewport/LookAt.png similarity index 100% rename from Editor/Icons/Components/Viewport/LookAt.png rename to Assets/Editor/Icons/Components/Viewport/LookAt.png diff --git a/Editor/Icons/Components/Viewport/Mannequin.png b/Assets/Editor/Icons/Components/Viewport/Mannequin.png similarity index 100% rename from Editor/Icons/Components/Viewport/Mannequin.png rename to Assets/Editor/Icons/Components/Viewport/Mannequin.png diff --git a/Editor/Icons/Components/Viewport/MannequinScopeContext.png b/Assets/Editor/Icons/Components/Viewport/MannequinScopeContext.png similarity index 100% rename from Editor/Icons/Components/Viewport/MannequinScopeContext.png rename to Assets/Editor/Icons/Components/Viewport/MannequinScopeContext.png diff --git a/Editor/Icons/Components/Viewport/MeshCollider.png b/Assets/Editor/Icons/Components/Viewport/MeshCollider.png similarity index 100% rename from Editor/Icons/Components/Viewport/MeshCollider.png rename to Assets/Editor/Icons/Components/Viewport/MeshCollider.png diff --git a/Editor/Icons/Components/Viewport/MotionParameterSmoothing.png b/Assets/Editor/Icons/Components/Viewport/MotionParameterSmoothing.png similarity index 100% rename from Editor/Icons/Components/Viewport/MotionParameterSmoothing.png rename to Assets/Editor/Icons/Components/Viewport/MotionParameterSmoothing.png diff --git a/Editor/Icons/Components/Viewport/Navigation.png b/Assets/Editor/Icons/Components/Viewport/Navigation.png similarity index 100% rename from Editor/Icons/Components/Viewport/Navigation.png rename to Assets/Editor/Icons/Components/Viewport/Navigation.png diff --git a/Editor/Icons/Components/Viewport/NavigationArea.png b/Assets/Editor/Icons/Components/Viewport/NavigationArea.png similarity index 100% rename from Editor/Icons/Components/Viewport/NavigationArea.png rename to Assets/Editor/Icons/Components/Viewport/NavigationArea.png diff --git a/Editor/Icons/Components/Viewport/NavigationSeed.png b/Assets/Editor/Icons/Components/Viewport/NavigationSeed.png similarity index 100% rename from Editor/Icons/Components/Viewport/NavigationSeed.png rename to Assets/Editor/Icons/Components/Viewport/NavigationSeed.png diff --git a/Editor/Icons/Components/Viewport/NetBinding.png b/Assets/Editor/Icons/Components/Viewport/NetBinding.png similarity index 100% rename from Editor/Icons/Components/Viewport/NetBinding.png rename to Assets/Editor/Icons/Components/Viewport/NetBinding.png diff --git a/Editor/Icons/Components/Viewport/Nova.png b/Assets/Editor/Icons/Components/Viewport/Nova.png similarity index 100% rename from Editor/Icons/Components/Viewport/Nova.png rename to Assets/Editor/Icons/Components/Viewport/Nova.png diff --git a/Editor/Icons/Components/Viewport/ObjectAvoidance.png b/Assets/Editor/Icons/Components/Viewport/ObjectAvoidance.png similarity index 100% rename from Editor/Icons/Components/Viewport/ObjectAvoidance.png rename to Assets/Editor/Icons/Components/Viewport/ObjectAvoidance.png diff --git a/Editor/Icons/Components/Viewport/Particle.png b/Assets/Editor/Icons/Components/Viewport/Particle.png similarity index 100% rename from Editor/Icons/Components/Viewport/Particle.png rename to Assets/Editor/Icons/Components/Viewport/Particle.png diff --git a/Editor/Icons/Components/Viewport/Physics.png b/Assets/Editor/Icons/Components/Viewport/Physics.png similarity index 100% rename from Editor/Icons/Components/Viewport/Physics.png rename to Assets/Editor/Icons/Components/Viewport/Physics.png diff --git a/Editor/Icons/Components/Viewport/PhysicsConstraint.png b/Assets/Editor/Icons/Components/Viewport/PhysicsConstraint.png similarity index 100% rename from Editor/Icons/Components/Viewport/PhysicsConstraint.png rename to Assets/Editor/Icons/Components/Viewport/PhysicsConstraint.png diff --git a/Editor/Icons/Components/Viewport/PointLight.png b/Assets/Editor/Icons/Components/Viewport/PointLight.png similarity index 100% rename from Editor/Icons/Components/Viewport/PointLight.png rename to Assets/Editor/Icons/Components/Viewport/PointLight.png diff --git a/Editor/Icons/Components/Viewport/PolygonPrism.png b/Assets/Editor/Icons/Components/Viewport/PolygonPrism.png similarity index 100% rename from Editor/Icons/Components/Viewport/PolygonPrism.png rename to Assets/Editor/Icons/Components/Viewport/PolygonPrism.png diff --git a/Editor/Icons/Components/Viewport/Primitive Collider.png b/Assets/Editor/Icons/Components/Viewport/Primitive Collider.png similarity index 100% rename from Editor/Icons/Components/Viewport/Primitive Collider.png rename to Assets/Editor/Icons/Components/Viewport/Primitive Collider.png diff --git a/Editor/Icons/Components/Viewport/PrimitiveCollider.png b/Assets/Editor/Icons/Components/Viewport/PrimitiveCollider.png similarity index 100% rename from Editor/Icons/Components/Viewport/PrimitiveCollider.png rename to Assets/Editor/Icons/Components/Viewport/PrimitiveCollider.png diff --git a/Editor/Icons/Components/Viewport/ProjectorLight.png b/Assets/Editor/Icons/Components/Viewport/ProjectorLight.png similarity index 100% rename from Editor/Icons/Components/Viewport/ProjectorLight.png rename to Assets/Editor/Icons/Components/Viewport/ProjectorLight.png diff --git a/Editor/Icons/Components/Viewport/Quad_Shape.png b/Assets/Editor/Icons/Components/Viewport/Quad_Shape.png similarity index 100% rename from Editor/Icons/Components/Viewport/Quad_Shape.png rename to Assets/Editor/Icons/Components/Viewport/Quad_Shape.png diff --git a/Editor/Icons/Components/Viewport/Ragdoll.png b/Assets/Editor/Icons/Components/Viewport/Ragdoll.png similarity index 100% rename from Editor/Icons/Components/Viewport/Ragdoll.png rename to Assets/Editor/Icons/Components/Viewport/Ragdoll.png diff --git a/Editor/Icons/Components/Viewport/RandomTimedSpawner.png b/Assets/Editor/Icons/Components/Viewport/RandomTimedSpawner.png similarity index 100% rename from Editor/Icons/Components/Viewport/RandomTimedSpawner.png rename to Assets/Editor/Icons/Components/Viewport/RandomTimedSpawner.png diff --git a/Editor/Icons/Components/Viewport/RigidPhysics.png b/Assets/Editor/Icons/Components/Viewport/RigidPhysics.png similarity index 100% rename from Editor/Icons/Components/Viewport/RigidPhysics.png rename to Assets/Editor/Icons/Components/Viewport/RigidPhysics.png diff --git a/Editor/Icons/Components/Viewport/Script.png b/Assets/Editor/Icons/Components/Viewport/Script.png similarity index 100% rename from Editor/Icons/Components/Viewport/Script.png rename to Assets/Editor/Icons/Components/Viewport/Script.png diff --git a/Editor/Icons/Components/Viewport/ScriptEventAssetReference.png b/Assets/Editor/Icons/Components/Viewport/ScriptEventAssetReference.png similarity index 100% rename from Editor/Icons/Components/Viewport/ScriptEventAssetReference.png rename to Assets/Editor/Icons/Components/Viewport/ScriptEventAssetReference.png diff --git a/Editor/Icons/Components/Viewport/Sequence.png b/Assets/Editor/Icons/Components/Viewport/Sequence.png similarity index 100% rename from Editor/Icons/Components/Viewport/Sequence.png rename to Assets/Editor/Icons/Components/Viewport/Sequence.png diff --git a/Editor/Icons/Components/Viewport/SequenceAgent.png b/Assets/Editor/Icons/Components/Viewport/SequenceAgent.png similarity index 100% rename from Editor/Icons/Components/Viewport/SequenceAgent.png rename to Assets/Editor/Icons/Components/Viewport/SequenceAgent.png diff --git a/Editor/Icons/Components/Viewport/Shadow.png b/Assets/Editor/Icons/Components/Viewport/Shadow.png similarity index 100% rename from Editor/Icons/Components/Viewport/Shadow.png rename to Assets/Editor/Icons/Components/Viewport/Shadow.png diff --git a/Editor/Icons/Components/Viewport/SimpleState.png b/Assets/Editor/Icons/Components/Viewport/SimpleState.png similarity index 100% rename from Editor/Icons/Components/Viewport/SimpleState.png rename to Assets/Editor/Icons/Components/Viewport/SimpleState.png diff --git a/Editor/Icons/Components/Viewport/SkinnedMesh.png b/Assets/Editor/Icons/Components/Viewport/SkinnedMesh.png similarity index 100% rename from Editor/Icons/Components/Viewport/SkinnedMesh.png rename to Assets/Editor/Icons/Components/Viewport/SkinnedMesh.png diff --git a/Editor/Icons/Components/Viewport/SkyHighlight.png b/Assets/Editor/Icons/Components/Viewport/SkyHighlight.png similarity index 100% rename from Editor/Icons/Components/Viewport/SkyHighlight.png rename to Assets/Editor/Icons/Components/Viewport/SkyHighlight.png diff --git a/Editor/Icons/Components/Viewport/Snow.png b/Assets/Editor/Icons/Components/Viewport/Snow.png similarity index 100% rename from Editor/Icons/Components/Viewport/Snow.png rename to Assets/Editor/Icons/Components/Viewport/Snow.png diff --git a/Editor/Icons/Components/Viewport/Spawner.png b/Assets/Editor/Icons/Components/Viewport/Spawner.png similarity index 100% rename from Editor/Icons/Components/Viewport/Spawner.png rename to Assets/Editor/Icons/Components/Viewport/Spawner.png diff --git a/Editor/Icons/Components/Viewport/Sphere.png b/Assets/Editor/Icons/Components/Viewport/Sphere.png similarity index 100% rename from Editor/Icons/Components/Viewport/Sphere.png rename to Assets/Editor/Icons/Components/Viewport/Sphere.png diff --git a/Editor/Icons/Components/Viewport/Sphere_Shape.png b/Assets/Editor/Icons/Components/Viewport/Sphere_Shape.png similarity index 100% rename from Editor/Icons/Components/Viewport/Sphere_Shape.png rename to Assets/Editor/Icons/Components/Viewport/Sphere_Shape.png diff --git a/Editor/Icons/Components/Viewport/Spline.png b/Assets/Editor/Icons/Components/Viewport/Spline.png similarity index 100% rename from Editor/Icons/Components/Viewport/Spline.png rename to Assets/Editor/Icons/Components/Viewport/Spline.png diff --git a/Editor/Icons/Components/Viewport/StaticData.png b/Assets/Editor/Icons/Components/Viewport/StaticData.png similarity index 100% rename from Editor/Icons/Components/Viewport/StaticData.png rename to Assets/Editor/Icons/Components/Viewport/StaticData.png diff --git a/Editor/Icons/Components/Viewport/StaticMesh.png b/Assets/Editor/Icons/Components/Viewport/StaticMesh.png similarity index 100% rename from Editor/Icons/Components/Viewport/StaticMesh.png rename to Assets/Editor/Icons/Components/Viewport/StaticMesh.png diff --git a/Editor/Icons/Components/Viewport/StaticPhysics.png b/Assets/Editor/Icons/Components/Viewport/StaticPhysics.png similarity index 100% rename from Editor/Icons/Components/Viewport/StaticPhysics.png rename to Assets/Editor/Icons/Components/Viewport/StaticPhysics.png diff --git a/Editor/Icons/Components/Viewport/Tag.png b/Assets/Editor/Icons/Components/Viewport/Tag.png similarity index 100% rename from Editor/Icons/Components/Viewport/Tag.png rename to Assets/Editor/Icons/Components/Viewport/Tag.png diff --git a/Editor/Icons/Components/Viewport/TerrainPhysics.png b/Assets/Editor/Icons/Components/Viewport/TerrainPhysics.png similarity index 100% rename from Editor/Icons/Components/Viewport/TerrainPhysics.png rename to Assets/Editor/Icons/Components/Viewport/TerrainPhysics.png diff --git a/Editor/Icons/Components/Viewport/Transform.png b/Assets/Editor/Icons/Components/Viewport/Transform.png similarity index 100% rename from Editor/Icons/Components/Viewport/Transform.png rename to Assets/Editor/Icons/Components/Viewport/Transform.png diff --git a/Editor/Icons/Components/Viewport/Trigger.png b/Assets/Editor/Icons/Components/Viewport/Trigger.png similarity index 100% rename from Editor/Icons/Components/Viewport/Trigger.png rename to Assets/Editor/Icons/Components/Viewport/Trigger.png diff --git a/Editor/Icons/Components/Viewport/Tube_Shape.png b/Assets/Editor/Icons/Components/Viewport/Tube_Shape.png similarity index 100% rename from Editor/Icons/Components/Viewport/Tube_Shape.png rename to Assets/Editor/Icons/Components/Viewport/Tube_Shape.png diff --git a/Editor/Icons/Components/Viewport/UiCanvasOnMesh.png b/Assets/Editor/Icons/Components/Viewport/UiCanvasOnMesh.png similarity index 100% rename from Editor/Icons/Components/Viewport/UiCanvasOnMesh.png rename to Assets/Editor/Icons/Components/Viewport/UiCanvasOnMesh.png diff --git a/Editor/Icons/Components/Viewport/UiCanvasRef.png b/Assets/Editor/Icons/Components/Viewport/UiCanvasRef.png similarity index 100% rename from Editor/Icons/Components/Viewport/UiCanvasRef.png rename to Assets/Editor/Icons/Components/Viewport/UiCanvasRef.png diff --git a/Editor/Icons/Components/Viewport/VRPreview.png b/Assets/Editor/Icons/Components/Viewport/VRPreview.png similarity index 100% rename from Editor/Icons/Components/Viewport/VRPreview.png rename to Assets/Editor/Icons/Components/Viewport/VRPreview.png diff --git a/Editor/Icons/Components/Viewport/WaterVolume.png b/Assets/Editor/Icons/Components/Viewport/WaterVolume.png similarity index 100% rename from Editor/Icons/Components/Viewport/WaterVolume.png rename to Assets/Editor/Icons/Components/Viewport/WaterVolume.png diff --git a/Editor/Icons/Components/Viewport/WindVolume.png b/Assets/Editor/Icons/Components/Viewport/WindVolume.png similarity index 100% rename from Editor/Icons/Components/Viewport/WindVolume.png rename to Assets/Editor/Icons/Components/Viewport/WindVolume.png diff --git a/Editor/Icons/Components/WaterRippleGenerator.svg b/Assets/Editor/Icons/Components/WaterRippleGenerator.svg similarity index 100% rename from Editor/Icons/Components/WaterRippleGenerator.svg rename to Assets/Editor/Icons/Components/WaterRippleGenerator.svg diff --git a/Editor/Icons/Components/WaterVolume.svg b/Assets/Editor/Icons/Components/WaterVolume.svg similarity index 100% rename from Editor/Icons/Components/WaterVolume.svg rename to Assets/Editor/Icons/Components/WaterVolume.svg diff --git a/Editor/Icons/Components/WindVolume.svg b/Assets/Editor/Icons/Components/WindVolume.svg similarity index 100% rename from Editor/Icons/Components/WindVolume.svg rename to Assets/Editor/Icons/Components/WindVolume.svg diff --git a/Editor/Icons/PhysX/Move.svg b/Assets/Editor/Icons/PhysX/Move.svg similarity index 100% rename from Editor/Icons/PhysX/Move.svg rename to Assets/Editor/Icons/PhysX/Move.svg diff --git a/Editor/Icons/PhysX/Rotate.svg b/Assets/Editor/Icons/PhysX/Rotate.svg similarity index 100% rename from Editor/Icons/PhysX/Rotate.svg rename to Assets/Editor/Icons/PhysX/Rotate.svg diff --git a/Editor/Icons/PhysX/Scale.svg b/Assets/Editor/Icons/PhysX/Scale.svg similarity index 100% rename from Editor/Icons/PhysX/Scale.svg rename to Assets/Editor/Icons/PhysX/Scale.svg diff --git a/Editor/Icons/PropertyEditor/Browse.png b/Assets/Editor/Icons/PropertyEditor/Browse.png similarity index 100% rename from Editor/Icons/PropertyEditor/Browse.png rename to Assets/Editor/Icons/PropertyEditor/Browse.png diff --git a/Editor/Icons/PropertyEditor/Browse_on.png b/Assets/Editor/Icons/PropertyEditor/Browse_on.png similarity index 100% rename from Editor/Icons/PropertyEditor/Browse_on.png rename to Assets/Editor/Icons/PropertyEditor/Browse_on.png diff --git a/Editor/Icons/PropertyEditor/add.png b/Assets/Editor/Icons/PropertyEditor/add.png similarity index 100% rename from Editor/Icons/PropertyEditor/add.png rename to Assets/Editor/Icons/PropertyEditor/add.png diff --git a/Editor/Icons/PropertyEditor/cross-circle-small.png b/Assets/Editor/Icons/PropertyEditor/cross-circle-small.png similarity index 100% rename from Editor/Icons/PropertyEditor/cross-circle-small.png rename to Assets/Editor/Icons/PropertyEditor/cross-circle-small.png diff --git a/Editor/Icons/PropertyEditor/cross-small.png b/Assets/Editor/Icons/PropertyEditor/cross-small.png similarity index 100% rename from Editor/Icons/PropertyEditor/cross-small.png rename to Assets/Editor/Icons/PropertyEditor/cross-small.png diff --git a/Editor/Icons/PropertyEditor/error_icon.png b/Assets/Editor/Icons/PropertyEditor/error_icon.png similarity index 100% rename from Editor/Icons/PropertyEditor/error_icon.png rename to Assets/Editor/Icons/PropertyEditor/error_icon.png diff --git a/Editor/Icons/PropertyEditor/group_closed.png b/Assets/Editor/Icons/PropertyEditor/group_closed.png similarity index 100% rename from Editor/Icons/PropertyEditor/group_closed.png rename to Assets/Editor/Icons/PropertyEditor/group_closed.png diff --git a/Editor/Icons/PropertyEditor/group_open.png b/Assets/Editor/Icons/PropertyEditor/group_open.png similarity index 100% rename from Editor/Icons/PropertyEditor/group_open.png rename to Assets/Editor/Icons/PropertyEditor/group_open.png diff --git a/Editor/Icons/PropertyEditor/image_icon.svg b/Assets/Editor/Icons/PropertyEditor/image_icon.svg similarity index 100% rename from Editor/Icons/PropertyEditor/image_icon.svg rename to Assets/Editor/Icons/PropertyEditor/image_icon.svg diff --git a/Editor/Icons/PropertyEditor/list-add-small.png b/Assets/Editor/Icons/PropertyEditor/list-add-small.png similarity index 100% rename from Editor/Icons/PropertyEditor/list-add-small.png rename to Assets/Editor/Icons/PropertyEditor/list-add-small.png diff --git a/Editor/Icons/PropertyEditor/open_in.png b/Assets/Editor/Icons/PropertyEditor/open_in.png similarity index 100% rename from Editor/Icons/PropertyEditor/open_in.png rename to Assets/Editor/Icons/PropertyEditor/open_in.png diff --git a/Editor/Icons/PropertyEditor/point_hand.png b/Assets/Editor/Icons/PropertyEditor/point_hand.png similarity index 100% rename from Editor/Icons/PropertyEditor/point_hand.png rename to Assets/Editor/Icons/PropertyEditor/point_hand.png diff --git a/Editor/Icons/PropertyEditor/remove.png b/Assets/Editor/Icons/PropertyEditor/remove.png similarity index 100% rename from Editor/Icons/PropertyEditor/remove.png rename to Assets/Editor/Icons/PropertyEditor/remove.png diff --git a/Editor/Icons/PropertyEditor/reset_icon.png b/Assets/Editor/Icons/PropertyEditor/reset_icon.png similarity index 100% rename from Editor/Icons/PropertyEditor/reset_icon.png rename to Assets/Editor/Icons/PropertyEditor/reset_icon.png diff --git a/Editor/Icons/PropertyEditor/tool_cancel.png b/Assets/Editor/Icons/PropertyEditor/tool_cancel.png similarity index 100% rename from Editor/Icons/PropertyEditor/tool_cancel.png rename to Assets/Editor/Icons/PropertyEditor/tool_cancel.png diff --git a/Editor/Icons/PropertyEditor/tool_cancel_highlight.png b/Assets/Editor/Icons/PropertyEditor/tool_cancel_highlight.png similarity index 100% rename from Editor/Icons/PropertyEditor/tool_cancel_highlight.png rename to Assets/Editor/Icons/PropertyEditor/tool_cancel_highlight.png diff --git a/Editor/Icons/PropertyEditor/tool_cancel_hover.png b/Assets/Editor/Icons/PropertyEditor/tool_cancel_hover.png similarity index 100% rename from Editor/Icons/PropertyEditor/tool_cancel_hover.png rename to Assets/Editor/Icons/PropertyEditor/tool_cancel_hover.png diff --git a/Editor/Icons/PropertyEditor/trash-small.png b/Assets/Editor/Icons/PropertyEditor/trash-small.png similarity index 100% rename from Editor/Icons/PropertyEditor/trash-small.png rename to Assets/Editor/Icons/PropertyEditor/trash-small.png diff --git a/Editor/Icons/PropertyEditor/tree_closed.png b/Assets/Editor/Icons/PropertyEditor/tree_closed.png similarity index 100% rename from Editor/Icons/PropertyEditor/tree_closed.png rename to Assets/Editor/Icons/PropertyEditor/tree_closed.png diff --git a/Editor/Icons/PropertyEditor/tree_open.png b/Assets/Editor/Icons/PropertyEditor/tree_open.png similarity index 100% rename from Editor/Icons/PropertyEditor/tree_open.png rename to Assets/Editor/Icons/PropertyEditor/tree_open.png diff --git a/Editor/Icons/RotationWarning.png b/Assets/Editor/Icons/RotationWarning.png similarity index 100% rename from Editor/Icons/RotationWarning.png rename to Assets/Editor/Icons/RotationWarning.png diff --git a/Editor/Icons/ScaleWarning.png b/Assets/Editor/Icons/ScaleWarning.png similarity index 100% rename from Editor/Icons/ScaleWarning.png rename to Assets/Editor/Icons/ScaleWarning.png diff --git a/Editor/Icons/ScriptCanvas/Add.png b/Assets/Editor/Icons/ScriptCanvas/Add.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Add.png rename to Assets/Editor/Icons/ScriptCanvas/Add.png diff --git a/Editor/Icons/ScriptCanvas/And.png b/Assets/Editor/Icons/ScriptCanvas/And.png similarity index 100% rename from Editor/Icons/ScriptCanvas/And.png rename to Assets/Editor/Icons/ScriptCanvas/And.png diff --git a/Editor/Icons/ScriptCanvas/Boolean.png b/Assets/Editor/Icons/ScriptCanvas/Boolean.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Boolean.png rename to Assets/Editor/Icons/ScriptCanvas/Boolean.png diff --git a/Editor/Icons/ScriptCanvas/Breakpoint.png b/Assets/Editor/Icons/ScriptCanvas/Breakpoint.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Breakpoint.png rename to Assets/Editor/Icons/ScriptCanvas/Breakpoint.png diff --git a/Editor/Icons/ScriptCanvas/Bus.png b/Assets/Editor/Icons/ScriptCanvas/Bus.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Bus.png rename to Assets/Editor/Icons/ScriptCanvas/Bus.png diff --git a/Editor/Icons/ScriptCanvas/Connect.png b/Assets/Editor/Icons/ScriptCanvas/Connect.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Connect.png rename to Assets/Editor/Icons/ScriptCanvas/Connect.png diff --git a/Editor/Icons/ScriptCanvas/Delay.png b/Assets/Editor/Icons/ScriptCanvas/Delay.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Delay.png rename to Assets/Editor/Icons/ScriptCanvas/Delay.png diff --git a/Editor/Icons/ScriptCanvas/Disabled/ScriptCanvas_white.png b/Assets/Editor/Icons/ScriptCanvas/Disabled/ScriptCanvas_white.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Disabled/ScriptCanvas_white.png rename to Assets/Editor/Icons/ScriptCanvas/Disabled/ScriptCanvas_white.png diff --git a/Editor/Icons/ScriptCanvas/Disconnect.png b/Assets/Editor/Icons/ScriptCanvas/Disconnect.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Disconnect.png rename to Assets/Editor/Icons/ScriptCanvas/Disconnect.png diff --git a/Editor/Icons/ScriptCanvas/Divide.png b/Assets/Editor/Icons/ScriptCanvas/Divide.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Divide.png rename to Assets/Editor/Icons/ScriptCanvas/Divide.png diff --git a/Editor/Icons/ScriptCanvas/EntityRef.png b/Assets/Editor/Icons/ScriptCanvas/EntityRef.png similarity index 100% rename from Editor/Icons/ScriptCanvas/EntityRef.png rename to Assets/Editor/Icons/ScriptCanvas/EntityRef.png diff --git a/Editor/Icons/ScriptCanvas/Libraries/All.png b/Assets/Editor/Icons/ScriptCanvas/Libraries/All.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Libraries/All.png rename to Assets/Editor/Icons/ScriptCanvas/Libraries/All.png diff --git a/Editor/Icons/ScriptCanvas/Libraries/Core.png b/Assets/Editor/Icons/ScriptCanvas/Libraries/Core.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Libraries/Core.png rename to Assets/Editor/Icons/ScriptCanvas/Libraries/Core.png diff --git a/Editor/Icons/ScriptCanvas/Libraries/Entity.png b/Assets/Editor/Icons/ScriptCanvas/Libraries/Entity.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Libraries/Entity.png rename to Assets/Editor/Icons/ScriptCanvas/Libraries/Entity.png diff --git a/Editor/Icons/ScriptCanvas/Libraries/Logic.png b/Assets/Editor/Icons/ScriptCanvas/Libraries/Logic.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Libraries/Logic.png rename to Assets/Editor/Icons/ScriptCanvas/Libraries/Logic.png diff --git a/Editor/Icons/ScriptCanvas/Libraries/Math.png b/Assets/Editor/Icons/ScriptCanvas/Libraries/Math.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Libraries/Math.png rename to Assets/Editor/Icons/ScriptCanvas/Libraries/Math.png diff --git a/Editor/Icons/ScriptCanvas/Multiply.png b/Assets/Editor/Icons/ScriptCanvas/Multiply.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Multiply.png rename to Assets/Editor/Icons/ScriptCanvas/Multiply.png diff --git a/Editor/Icons/ScriptCanvas/Not.png b/Assets/Editor/Icons/ScriptCanvas/Not.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Not.png rename to Assets/Editor/Icons/ScriptCanvas/Not.png diff --git a/Editor/Icons/ScriptCanvas/Number.png b/Assets/Editor/Icons/ScriptCanvas/Number.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Number.png rename to Assets/Editor/Icons/ScriptCanvas/Number.png diff --git a/Editor/Icons/ScriptCanvas/Or.png b/Assets/Editor/Icons/ScriptCanvas/Or.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Or.png rename to Assets/Editor/Icons/ScriptCanvas/Or.png diff --git a/Editor/Icons/ScriptCanvas/Placeholder.png b/Assets/Editor/Icons/ScriptCanvas/Placeholder.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Placeholder.png rename to Assets/Editor/Icons/ScriptCanvas/Placeholder.png diff --git a/Editor/Icons/ScriptCanvas/Print.png b/Assets/Editor/Icons/ScriptCanvas/Print.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Print.png rename to Assets/Editor/Icons/ScriptCanvas/Print.png diff --git a/Editor/Icons/ScriptCanvas/Random.png b/Assets/Editor/Icons/ScriptCanvas/Random.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Random.png rename to Assets/Editor/Icons/ScriptCanvas/Random.png diff --git a/Editor/Icons/ScriptCanvas/Rotate.png b/Assets/Editor/Icons/ScriptCanvas/Rotate.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Rotate.png rename to Assets/Editor/Icons/ScriptCanvas/Rotate.png diff --git a/Editor/Icons/ScriptCanvas/ScriptCanvas.svg b/Assets/Editor/Icons/ScriptCanvas/ScriptCanvas.svg similarity index 100% rename from Editor/Icons/ScriptCanvas/ScriptCanvas.svg rename to Assets/Editor/Icons/ScriptCanvas/ScriptCanvas.svg diff --git a/Editor/Icons/ScriptCanvas/Start.png b/Assets/Editor/Icons/ScriptCanvas/Start.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Start.png rename to Assets/Editor/Icons/ScriptCanvas/Start.png diff --git a/Editor/Icons/ScriptCanvas/Step In.png b/Assets/Editor/Icons/ScriptCanvas/Step In.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Step In.png rename to Assets/Editor/Icons/ScriptCanvas/Step In.png diff --git a/Editor/Icons/ScriptCanvas/Step Over.png b/Assets/Editor/Icons/ScriptCanvas/Step Over.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Step Over.png rename to Assets/Editor/Icons/ScriptCanvas/Step Over.png diff --git a/Editor/Icons/ScriptCanvas/String.png b/Assets/Editor/Icons/ScriptCanvas/String.png similarity index 100% rename from Editor/Icons/ScriptCanvas/String.png rename to Assets/Editor/Icons/ScriptCanvas/String.png diff --git a/Editor/Icons/ScriptCanvas/Subtract.png b/Assets/Editor/Icons/ScriptCanvas/Subtract.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Subtract.png rename to Assets/Editor/Icons/ScriptCanvas/Subtract.png diff --git a/Editor/Icons/ScriptCanvas/Sum.png b/Assets/Editor/Icons/ScriptCanvas/Sum.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Sum.png rename to Assets/Editor/Icons/ScriptCanvas/Sum.png diff --git a/Editor/Icons/ScriptCanvas/Viewport/ScriptCanvas.png b/Assets/Editor/Icons/ScriptCanvas/Viewport/ScriptCanvas.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Viewport/ScriptCanvas.png rename to Assets/Editor/Icons/ScriptCanvas/Viewport/ScriptCanvas.png diff --git a/Editor/Icons/ScriptCanvas/Viewport/ScriptCanvas_Function.png b/Assets/Editor/Icons/ScriptCanvas/Viewport/ScriptCanvas_Function.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Viewport/ScriptCanvas_Function.png rename to Assets/Editor/Icons/ScriptCanvas/Viewport/ScriptCanvas_Function.png diff --git a/Editor/Icons/ScriptCanvas/Xor.png b/Assets/Editor/Icons/ScriptCanvas/Xor.png similarity index 100% rename from Editor/Icons/ScriptCanvas/Xor.png rename to Assets/Editor/Icons/ScriptCanvas/Xor.png diff --git a/Editor/Icons/ScriptCanvas/settings.png b/Assets/Editor/Icons/ScriptCanvas/settings.png similarity index 100% rename from Editor/Icons/ScriptCanvas/settings.png rename to Assets/Editor/Icons/ScriptCanvas/settings.png diff --git a/Editor/Icons/WhiteBox/Move.svg b/Assets/Editor/Icons/WhiteBox/Move.svg similarity index 100% rename from Editor/Icons/WhiteBox/Move.svg rename to Assets/Editor/Icons/WhiteBox/Move.svg diff --git a/Editor/Icons/WhiteBox/RestoreMode.svg b/Assets/Editor/Icons/WhiteBox/RestoreMode.svg similarity index 100% rename from Editor/Icons/WhiteBox/RestoreMode.svg rename to Assets/Editor/Icons/WhiteBox/RestoreMode.svg diff --git a/Editor/Icons/WhiteBox/Rotate.svg b/Assets/Editor/Icons/WhiteBox/Rotate.svg similarity index 100% rename from Editor/Icons/WhiteBox/Rotate.svg rename to Assets/Editor/Icons/WhiteBox/Rotate.svg diff --git a/Editor/Icons/WhiteBox/Scale.svg b/Assets/Editor/Icons/WhiteBox/Scale.svg similarity index 100% rename from Editor/Icons/WhiteBox/Scale.svg rename to Assets/Editor/Icons/WhiteBox/Scale.svg diff --git a/Editor/Icons/WhiteBox/SketchMode.svg b/Assets/Editor/Icons/WhiteBox/SketchMode.svg similarity index 100% rename from Editor/Icons/WhiteBox/SketchMode.svg rename to Assets/Editor/Icons/WhiteBox/SketchMode.svg diff --git a/Editor/Icons/animation/add.png b/Assets/Editor/Icons/animation/add.png similarity index 100% rename from Editor/Icons/animation/add.png rename to Assets/Editor/Icons/animation/add.png diff --git a/Editor/Icons/animation/animation.png b/Assets/Editor/Icons/animation/animation.png similarity index 100% rename from Editor/Icons/animation/animation.png rename to Assets/Editor/Icons/animation/animation.png diff --git a/Editor/Icons/animation/animation_additive.png b/Assets/Editor/Icons/animation/animation_additive.png similarity index 100% rename from Editor/Icons/animation/animation_additive.png rename to Assets/Editor/Icons/animation/animation_additive.png diff --git a/Editor/Icons/animation/animation_aimpose.png b/Assets/Editor/Icons/animation/animation_aimpose.png similarity index 100% rename from Editor/Icons/animation/animation_aimpose.png rename to Assets/Editor/Icons/animation/animation_aimpose.png diff --git a/Editor/Icons/animation/animation_bspace.png b/Assets/Editor/Icons/animation/animation_bspace.png similarity index 100% rename from Editor/Icons/animation/animation_bspace.png rename to Assets/Editor/Icons/animation/animation_bspace.png diff --git a/Editor/Icons/animation/animation_comb.png b/Assets/Editor/Icons/animation/animation_comb.png similarity index 100% rename from Editor/Icons/animation/animation_comb.png rename to Assets/Editor/Icons/animation/animation_comb.png diff --git a/Editor/Icons/animation/animation_lookpose.png b/Assets/Editor/Icons/animation/animation_lookpose.png similarity index 100% rename from Editor/Icons/animation/animation_lookpose.png rename to Assets/Editor/Icons/animation/animation_lookpose.png diff --git a/Editor/Icons/animation/animation_offline.png b/Assets/Editor/Icons/animation/animation_offline.png similarity index 100% rename from Editor/Icons/animation/animation_offline.png rename to Assets/Editor/Icons/animation/animation_offline.png diff --git a/Editor/Icons/animation/attachment.png b/Assets/Editor/Icons/animation/attachment.png similarity index 100% rename from Editor/Icons/animation/attachment.png rename to Assets/Editor/Icons/animation/attachment.png diff --git a/Editor/Icons/animation/audio_event_16.png b/Assets/Editor/Icons/animation/audio_event_16.png similarity index 100% rename from Editor/Icons/animation/audio_event_16.png rename to Assets/Editor/Icons/animation/audio_event_16.png diff --git a/Editor/Icons/animation/back_16.png b/Assets/Editor/Icons/animation/back_16.png similarity index 100% rename from Editor/Icons/animation/back_16.png rename to Assets/Editor/Icons/animation/back_16.png diff --git a/Editor/Icons/animation/bind_pose.png b/Assets/Editor/Icons/animation/bind_pose.png similarity index 100% rename from Editor/Icons/animation/bind_pose.png rename to Assets/Editor/Icons/animation/bind_pose.png diff --git a/Editor/Icons/animation/bone.png b/Assets/Editor/Icons/animation/bone.png similarity index 100% rename from Editor/Icons/animation/bone.png rename to Assets/Editor/Icons/animation/bone.png diff --git a/Editor/Icons/animation/build.png b/Assets/Editor/Icons/animation/build.png similarity index 100% rename from Editor/Icons/animation/build.png rename to Assets/Editor/Icons/animation/build.png diff --git a/Editor/Icons/animation/character.png b/Assets/Editor/Icons/animation/character.png similarity index 100% rename from Editor/Icons/animation/character.png rename to Assets/Editor/Icons/animation/character.png diff --git a/Editor/Icons/animation/close.png b/Assets/Editor/Icons/animation/close.png similarity index 100% rename from Editor/Icons/animation/close.png rename to Assets/Editor/Icons/animation/close.png diff --git a/Editor/Icons/animation/close_highlight.png b/Assets/Editor/Icons/animation/close_highlight.png similarity index 100% rename from Editor/Icons/animation/close_highlight.png rename to Assets/Editor/Icons/animation/close_highlight.png diff --git a/Editor/Icons/animation/create_cdf.png b/Assets/Editor/Icons/animation/create_cdf.png similarity index 100% rename from Editor/Icons/animation/create_cdf.png rename to Assets/Editor/Icons/animation/create_cdf.png diff --git a/Editor/Icons/animation/display_options.png b/Assets/Editor/Icons/animation/display_options.png similarity index 100% rename from Editor/Icons/animation/display_options.png rename to Assets/Editor/Icons/animation/display_options.png diff --git a/Editor/Icons/animation/filter_16.png b/Assets/Editor/Icons/animation/filter_16.png similarity index 100% rename from Editor/Icons/animation/filter_16.png rename to Assets/Editor/Icons/animation/filter_16.png diff --git a/Editor/Icons/animation/footsteps.png b/Assets/Editor/Icons/animation/footsteps.png similarity index 100% rename from Editor/Icons/animation/footsteps.png rename to Assets/Editor/Icons/animation/footsteps.png diff --git a/Editor/Icons/animation/force_recompile.png b/Assets/Editor/Icons/animation/force_recompile.png similarity index 100% rename from Editor/Icons/animation/force_recompile.png rename to Assets/Editor/Icons/animation/force_recompile.png diff --git a/Editor/Icons/animation/forward_16.png b/Assets/Editor/Icons/animation/forward_16.png similarity index 100% rename from Editor/Icons/animation/forward_16.png rename to Assets/Editor/Icons/animation/forward_16.png diff --git a/Editor/Icons/animation/gizmo_location.png b/Assets/Editor/Icons/animation/gizmo_location.png similarity index 100% rename from Editor/Icons/animation/gizmo_location.png rename to Assets/Editor/Icons/animation/gizmo_location.png diff --git a/Editor/Icons/animation/grid.png b/Assets/Editor/Icons/animation/grid.png similarity index 100% rename from Editor/Icons/animation/grid.png rename to Assets/Editor/Icons/animation/grid.png diff --git a/Editor/Icons/animation/group.png b/Assets/Editor/Icons/animation/group.png similarity index 100% rename from Editor/Icons/animation/group.png rename to Assets/Editor/Icons/animation/group.png diff --git a/Editor/Icons/animation/import.png b/Assets/Editor/Icons/animation/import.png similarity index 100% rename from Editor/Icons/animation/import.png rename to Assets/Editor/Icons/animation/import.png diff --git a/Editor/Icons/animation/in_folder_16.png b/Assets/Editor/Icons/animation/in_folder_16.png similarity index 100% rename from Editor/Icons/animation/in_folder_16.png rename to Assets/Editor/Icons/animation/in_folder_16.png diff --git a/Editor/Icons/animation/in_folder_and_pak_16.png b/Assets/Editor/Icons/animation/in_folder_and_pak_16.png similarity index 100% rename from Editor/Icons/animation/in_folder_and_pak_16.png rename to Assets/Editor/Icons/animation/in_folder_and_pak_16.png diff --git a/Editor/Icons/animation/in_pak_16.png b/Assets/Editor/Icons/animation/in_pak_16.png similarity index 100% rename from Editor/Icons/animation/in_pak_16.png rename to Assets/Editor/Icons/animation/in_pak_16.png diff --git a/Editor/Icons/animation/lock_16.png b/Assets/Editor/Icons/animation/lock_16.png similarity index 100% rename from Editor/Icons/animation/lock_16.png rename to Assets/Editor/Icons/animation/lock_16.png diff --git a/Editor/Icons/animation/new_animation.png b/Assets/Editor/Icons/animation/new_animation.png similarity index 100% rename from Editor/Icons/animation/new_animation.png rename to Assets/Editor/Icons/animation/new_animation.png diff --git a/Editor/Icons/animation/physics.png b/Assets/Editor/Icons/animation/physics.png similarity index 100% rename from Editor/Icons/animation/physics.png rename to Assets/Editor/Icons/animation/physics.png diff --git a/Editor/Icons/animation/playback_options.png b/Assets/Editor/Icons/animation/playback_options.png similarity index 100% rename from Editor/Icons/animation/playback_options.png rename to Assets/Editor/Icons/animation/playback_options.png diff --git a/Editor/Icons/animation/redo.png b/Assets/Editor/Icons/animation/redo.png similarity index 100% rename from Editor/Icons/animation/redo.png rename to Assets/Editor/Icons/animation/redo.png diff --git a/Editor/Icons/animation/revert.png b/Assets/Editor/Icons/animation/revert.png similarity index 100% rename from Editor/Icons/animation/revert.png rename to Assets/Editor/Icons/animation/revert.png diff --git a/Editor/Icons/animation/rig.png b/Assets/Editor/Icons/animation/rig.png similarity index 100% rename from Editor/Icons/animation/rig.png rename to Assets/Editor/Icons/animation/rig.png diff --git a/Editor/Icons/animation/save.png b/Assets/Editor/Icons/animation/save.png similarity index 100% rename from Editor/Icons/animation/save.png rename to Assets/Editor/Icons/animation/save.png diff --git a/Editor/Icons/animation/selection_16.png b/Assets/Editor/Icons/animation/selection_16.png similarity index 100% rename from Editor/Icons/animation/selection_16.png rename to Assets/Editor/Icons/animation/selection_16.png diff --git a/Editor/Icons/animation/show_in_explorer.png b/Assets/Editor/Icons/animation/show_in_explorer.png similarity index 100% rename from Editor/Icons/animation/show_in_explorer.png rename to Assets/Editor/Icons/animation/show_in_explorer.png diff --git a/Editor/Icons/animation/skeleton.png b/Assets/Editor/Icons/animation/skeleton.png similarity index 100% rename from Editor/Icons/animation/skeleton.png rename to Assets/Editor/Icons/animation/skeleton.png diff --git a/Editor/Icons/animation/skin.png b/Assets/Editor/Icons/animation/skin.png similarity index 100% rename from Editor/Icons/animation/skin.png rename to Assets/Editor/Icons/animation/skin.png diff --git a/Editor/Icons/animation/source_asset_16.png b/Assets/Editor/Icons/animation/source_asset_16.png similarity index 100% rename from Editor/Icons/animation/source_asset_16.png rename to Assets/Editor/Icons/animation/source_asset_16.png diff --git a/Editor/Icons/animation/tool_move.png b/Assets/Editor/Icons/animation/tool_move.png similarity index 100% rename from Editor/Icons/animation/tool_move.png rename to Assets/Editor/Icons/animation/tool_move.png diff --git a/Editor/Icons/animation/tool_rotate.png b/Assets/Editor/Icons/animation/tool_rotate.png similarity index 100% rename from Editor/Icons/animation/tool_rotate.png rename to Assets/Editor/Icons/animation/tool_rotate.png diff --git a/Editor/Icons/animation/tool_scale.png b/Assets/Editor/Icons/animation/tool_scale.png similarity index 100% rename from Editor/Icons/animation/tool_scale.png rename to Assets/Editor/Icons/animation/tool_scale.png diff --git a/Editor/Icons/animation/tool_select.png b/Assets/Editor/Icons/animation/tool_select.png similarity index 100% rename from Editor/Icons/animation/tool_select.png rename to Assets/Editor/Icons/animation/tool_select.png diff --git a/Editor/Icons/animation/undo.png b/Assets/Editor/Icons/animation/undo.png similarity index 100% rename from Editor/Icons/animation/undo.png rename to Assets/Editor/Icons/animation/undo.png diff --git a/Editor/Icons/checkmark_checked.png b/Assets/Editor/Icons/checkmark_checked.png similarity index 100% rename from Editor/Icons/checkmark_checked.png rename to Assets/Editor/Icons/checkmark_checked.png diff --git a/Editor/Icons/checkmark_checked_hover.png b/Assets/Editor/Icons/checkmark_checked_hover.png similarity index 100% rename from Editor/Icons/checkmark_checked_hover.png rename to Assets/Editor/Icons/checkmark_checked_hover.png diff --git a/Editor/Icons/checkmark_unchecked_hover.png b/Assets/Editor/Icons/checkmark_unchecked_hover.png similarity index 100% rename from Editor/Icons/checkmark_unchecked_hover.png rename to Assets/Editor/Icons/checkmark_unchecked_hover.png diff --git a/Editor/Icons/close.png b/Assets/Editor/Icons/close.png similarity index 100% rename from Editor/Icons/close.png rename to Assets/Editor/Icons/close.png diff --git a/Editor/Icons/float.png b/Assets/Editor/Icons/float.png similarity index 100% rename from Editor/Icons/float.png rename to Assets/Editor/Icons/float.png diff --git a/Editor/Icons/lc_camera.png b/Assets/Editor/Icons/lc_camera.png similarity index 100% rename from Editor/Icons/lc_camera.png rename to Assets/Editor/Icons/lc_camera.png diff --git a/Editor/Icons/lc_exportandlaunch.png b/Assets/Editor/Icons/lc_exportandlaunch.png similarity index 100% rename from Editor/Icons/lc_exportandlaunch.png rename to Assets/Editor/Icons/lc_exportandlaunch.png diff --git a/Editor/Icons/lc_pc.png b/Assets/Editor/Icons/lc_pc.png similarity index 100% rename from Editor/Icons/lc_pc.png rename to Assets/Editor/Icons/lc_pc.png diff --git a/Editor/Icons/lc_power.png b/Assets/Editor/Icons/lc_power.png similarity index 100% rename from Editor/Icons/lc_power.png rename to Assets/Editor/Icons/lc_power.png diff --git a/Editor/Icons/lc_sshot.png b/Assets/Editor/Icons/lc_sshot.png similarity index 100% rename from Editor/Icons/lc_sshot.png rename to Assets/Editor/Icons/lc_sshot.png diff --git a/Editor/Icons/lc_sync.png b/Assets/Editor/Icons/lc_sync.png similarity index 100% rename from Editor/Icons/lc_sync.png rename to Assets/Editor/Icons/lc_sync.png diff --git a/Editor/Icons/reset.png b/Assets/Editor/Icons/reset.png similarity index 100% rename from Editor/Icons/reset.png rename to Assets/Editor/Icons/reset.png diff --git a/Editor/Icons/split.png b/Assets/Editor/Icons/split.png similarity index 100% rename from Editor/Icons/split.png rename to Assets/Editor/Icons/split.png diff --git a/Editor/LambdaFunctions/LwALambdaFunction.js b/Assets/Editor/LambdaFunctions/LwALambdaFunction.js similarity index 100% rename from Editor/LambdaFunctions/LwALambdaFunction.js rename to Assets/Editor/LambdaFunctions/LwALambdaFunction.js diff --git a/Editor/LambdaFunctions/LwFacebookLambdaFunction.js b/Assets/Editor/LambdaFunctions/LwFacebookLambdaFunction.js similarity index 100% rename from Editor/LambdaFunctions/LwFacebookLambdaFunction.js rename to Assets/Editor/LambdaFunctions/LwFacebookLambdaFunction.js diff --git a/Editor/LambdaFunctions/LwGenericOpenIdConnectLambdaFunction.js b/Assets/Editor/LambdaFunctions/LwGenericOpenIdConnectLambdaFunction.js similarity index 100% rename from Editor/LambdaFunctions/LwGenericOpenIdConnectLambdaFunction.js rename to Assets/Editor/LambdaFunctions/LwGenericOpenIdConnectLambdaFunction.js diff --git a/Editor/LambdaFunctions/LwGoogleLambdaFunction.js b/Assets/Editor/LambdaFunctions/LwGoogleLambdaFunction.js similarity index 100% rename from Editor/LambdaFunctions/LwGoogleLambdaFunction.js rename to Assets/Editor/LambdaFunctions/LwGoogleLambdaFunction.js diff --git a/Editor/LevelTemplates.xml b/Assets/Editor/LevelTemplates.xml similarity index 100% rename from Editor/LevelTemplates.xml rename to Assets/Editor/LevelTemplates.xml diff --git a/Editor/MapScreenshotSettings.xml b/Assets/Editor/MapScreenshotSettings.xml similarity index 100% rename from Editor/MapScreenshotSettings.xml rename to Assets/Editor/MapScreenshotSettings.xml diff --git a/Editor/Materials/ShaderList.xml b/Assets/Editor/Materials/ShaderList.xml similarity index 100% rename from Editor/Materials/ShaderList.xml rename to Assets/Editor/Materials/ShaderList.xml diff --git a/Editor/Materials/Stripes.tif b/Assets/Editor/Materials/Stripes.tif similarity index 100% rename from Editor/Materials/Stripes.tif rename to Assets/Editor/Materials/Stripes.tif diff --git a/Editor/Materials/Stripes.tif.exportsettings b/Assets/Editor/Materials/Stripes.tif.exportsettings similarity index 100% rename from Editor/Materials/Stripes.tif.exportsettings rename to Assets/Editor/Materials/Stripes.tif.exportsettings diff --git a/Editor/Materials/areasolid.dds b/Assets/Editor/Materials/areasolid.dds similarity index 100% rename from Editor/Materials/areasolid.dds rename to Assets/Editor/Materials/areasolid.dds diff --git a/Editor/Materials/areasolid.mtl b/Assets/Editor/Materials/areasolid.mtl similarity index 100% rename from Editor/Materials/areasolid.mtl rename to Assets/Editor/Materials/areasolid.mtl diff --git a/Editor/Materials/crydesigner_selection.mtl b/Assets/Editor/Materials/crydesigner_selection.mtl similarity index 100% rename from Editor/Materials/crydesigner_selection.mtl rename to Assets/Editor/Materials/crydesigner_selection.mtl diff --git a/Editor/Materials/default_rope.mtl b/Assets/Editor/Materials/default_rope.mtl similarity index 100% rename from Editor/Materials/default_rope.mtl rename to Assets/Editor/Materials/default_rope.mtl diff --git a/Editor/Materials/lodgen_template.mtl b/Assets/Editor/Materials/lodgen_template.mtl similarity index 54% rename from Editor/Materials/lodgen_template.mtl rename to Assets/Editor/Materials/lodgen_template.mtl index 0866c7b28b..761eff9154 100644 --- a/Editor/Materials/lodgen_template.mtl +++ b/Assets/Editor/Materials/lodgen_template.mtl @@ -1,8 +1,8 @@ - - - + + + diff --git a/Editor/Materials/refpicture.mtl b/Assets/Editor/Materials/refpicture.mtl similarity index 100% rename from Editor/Materials/refpicture.mtl rename to Assets/Editor/Materials/refpicture.mtl diff --git a/Editor/Materials/voxel_editor.mtl b/Assets/Editor/Materials/voxel_editor.mtl similarity index 100% rename from Editor/Materials/voxel_editor.mtl rename to Assets/Editor/Materials/voxel_editor.mtl diff --git a/Editor/Materials/voxel_editor.png b/Assets/Editor/Materials/voxel_editor.png similarity index 100% rename from Editor/Materials/voxel_editor.png rename to Assets/Editor/Materials/voxel_editor.png diff --git a/Editor/Materials/voxel_editor.png.exportsettings b/Assets/Editor/Materials/voxel_editor.png.exportsettings similarity index 100% rename from Editor/Materials/voxel_editor.png.exportsettings rename to Assets/Editor/Materials/voxel_editor.png.exportsettings diff --git a/Editor/MissionTemplate.lua b/Assets/Editor/MissionTemplate.lua similarity index 100% rename from Editor/MissionTemplate.lua rename to Assets/Editor/MissionTemplate.lua diff --git a/Editor/ModellingPanel.xml b/Assets/Editor/ModellingPanel.xml similarity index 100% rename from Editor/ModellingPanel.xml rename to Assets/Editor/ModellingPanel.xml diff --git a/Editor/NewEntityTemplate.ent_template b/Assets/Editor/NewEntityTemplate.ent_template similarity index 100% rename from Editor/NewEntityTemplate.ent_template rename to Assets/Editor/NewEntityTemplate.ent_template diff --git a/Editor/NewEntityTemplate.lua_template b/Assets/Editor/NewEntityTemplate.lua_template similarity index 100% rename from Editor/NewEntityTemplate.lua_template rename to Assets/Editor/NewEntityTemplate.lua_template diff --git a/Editor/ObjectIcons/AreaTrigger.bmp b/Assets/Editor/ObjectIcons/AreaTrigger.bmp similarity index 100% rename from Editor/ObjectIcons/AreaTrigger.bmp rename to Assets/Editor/ObjectIcons/AreaTrigger.bmp diff --git a/Editor/ObjectIcons/AudioAreaAmbience.bmp b/Assets/Editor/ObjectIcons/AudioAreaAmbience.bmp similarity index 100% rename from Editor/ObjectIcons/AudioAreaAmbience.bmp rename to Assets/Editor/ObjectIcons/AudioAreaAmbience.bmp diff --git a/Editor/ObjectIcons/AudioAreaEntity.bmp b/Assets/Editor/ObjectIcons/AudioAreaEntity.bmp similarity index 100% rename from Editor/ObjectIcons/AudioAreaEntity.bmp rename to Assets/Editor/ObjectIcons/AudioAreaEntity.bmp diff --git a/Editor/ObjectIcons/AudioAreaRandom.bmp b/Assets/Editor/ObjectIcons/AudioAreaRandom.bmp similarity index 100% rename from Editor/ObjectIcons/AudioAreaRandom.bmp rename to Assets/Editor/ObjectIcons/AudioAreaRandom.bmp diff --git a/Editor/ObjectIcons/Camera.bmp b/Assets/Editor/ObjectIcons/Camera.bmp similarity index 100% rename from Editor/ObjectIcons/Camera.bmp rename to Assets/Editor/ObjectIcons/Camera.bmp diff --git a/Editor/ObjectIcons/Checkpoint.bmp b/Assets/Editor/ObjectIcons/Checkpoint.bmp similarity index 100% rename from Editor/ObjectIcons/Checkpoint.bmp rename to Assets/Editor/ObjectIcons/Checkpoint.bmp diff --git a/Editor/ObjectIcons/ClipVolume.bmp b/Assets/Editor/ObjectIcons/ClipVolume.bmp similarity index 100% rename from Editor/ObjectIcons/ClipVolume.bmp rename to Assets/Editor/ObjectIcons/ClipVolume.bmp diff --git a/Editor/ObjectIcons/Clock.bmp b/Assets/Editor/ObjectIcons/Clock.bmp similarity index 100% rename from Editor/ObjectIcons/Clock.bmp rename to Assets/Editor/ObjectIcons/Clock.bmp diff --git a/Editor/ObjectIcons/Clouds.bmp b/Assets/Editor/ObjectIcons/Clouds.bmp similarity index 100% rename from Editor/ObjectIcons/Clouds.bmp rename to Assets/Editor/ObjectIcons/Clouds.bmp diff --git a/Editor/ObjectIcons/Comment.bmp b/Assets/Editor/ObjectIcons/Comment.bmp similarity index 100% rename from Editor/ObjectIcons/Comment.bmp rename to Assets/Editor/ObjectIcons/Comment.bmp diff --git a/Editor/ObjectIcons/DeadBody.bmp b/Assets/Editor/ObjectIcons/DeadBody.bmp similarity index 100% rename from Editor/ObjectIcons/DeadBody.bmp rename to Assets/Editor/ObjectIcons/DeadBody.bmp diff --git a/Editor/ObjectIcons/Decal.bmp b/Assets/Editor/ObjectIcons/Decal.bmp similarity index 100% rename from Editor/ObjectIcons/Decal.bmp rename to Assets/Editor/ObjectIcons/Decal.bmp diff --git a/Editor/ObjectIcons/Dialog.bmp b/Assets/Editor/ObjectIcons/Dialog.bmp similarity index 100% rename from Editor/ObjectIcons/Dialog.bmp rename to Assets/Editor/ObjectIcons/Dialog.bmp diff --git a/Editor/ObjectIcons/Flash.bmp b/Assets/Editor/ObjectIcons/Flash.bmp similarity index 100% rename from Editor/ObjectIcons/Flash.bmp rename to Assets/Editor/ObjectIcons/Flash.bmp diff --git a/Editor/ObjectIcons/Fog.bmp b/Assets/Editor/ObjectIcons/Fog.bmp similarity index 100% rename from Editor/ObjectIcons/Fog.bmp rename to Assets/Editor/ObjectIcons/Fog.bmp diff --git a/Editor/ObjectIcons/FogVolume.bmp b/Assets/Editor/ObjectIcons/FogVolume.bmp similarity index 100% rename from Editor/ObjectIcons/FogVolume.bmp rename to Assets/Editor/ObjectIcons/FogVolume.bmp diff --git a/Editor/ObjectIcons/GravitySphere.bmp b/Assets/Editor/ObjectIcons/GravitySphere.bmp similarity index 100% rename from Editor/ObjectIcons/GravitySphere.bmp rename to Assets/Editor/ObjectIcons/GravitySphere.bmp diff --git a/Editor/ObjectIcons/Item.bmp b/Assets/Editor/ObjectIcons/Item.bmp similarity index 100% rename from Editor/ObjectIcons/Item.bmp rename to Assets/Editor/ObjectIcons/Item.bmp diff --git a/Editor/ObjectIcons/Ladder.bmp b/Assets/Editor/ObjectIcons/Ladder.bmp similarity index 100% rename from Editor/ObjectIcons/Ladder.bmp rename to Assets/Editor/ObjectIcons/Ladder.bmp diff --git a/Editor/ObjectIcons/Light.bmp b/Assets/Editor/ObjectIcons/Light.bmp similarity index 100% rename from Editor/ObjectIcons/Light.bmp rename to Assets/Editor/ObjectIcons/Light.bmp diff --git a/Editor/ObjectIcons/LightPropagationVolume.bmp b/Assets/Editor/ObjectIcons/LightPropagationVolume.bmp similarity index 100% rename from Editor/ObjectIcons/LightPropagationVolume.bmp rename to Assets/Editor/ObjectIcons/LightPropagationVolume.bmp diff --git a/Editor/ObjectIcons/Lightning.bmp b/Assets/Editor/ObjectIcons/Lightning.bmp similarity index 100% rename from Editor/ObjectIcons/Lightning.bmp rename to Assets/Editor/ObjectIcons/Lightning.bmp diff --git a/Editor/ObjectIcons/Magnet.bmp b/Assets/Editor/ObjectIcons/Magnet.bmp similarity index 100% rename from Editor/ObjectIcons/Magnet.bmp rename to Assets/Editor/ObjectIcons/Magnet.bmp diff --git a/Editor/ObjectIcons/MultiTrigger.bmp b/Assets/Editor/ObjectIcons/MultiTrigger.bmp similarity index 100% rename from Editor/ObjectIcons/MultiTrigger.bmp rename to Assets/Editor/ObjectIcons/MultiTrigger.bmp diff --git a/Editor/ObjectIcons/ODD.bmp b/Assets/Editor/ObjectIcons/ODD.bmp similarity index 100% rename from Editor/ObjectIcons/ODD.bmp rename to Assets/Editor/ObjectIcons/ODD.bmp diff --git a/Editor/ObjectIcons/Particles.bmp b/Assets/Editor/ObjectIcons/Particles.bmp similarity index 100% rename from Editor/ObjectIcons/Particles.bmp rename to Assets/Editor/ObjectIcons/Particles.bmp diff --git a/Editor/ObjectIcons/PrecacheCamera.bmp b/Assets/Editor/ObjectIcons/PrecacheCamera.bmp similarity index 100% rename from Editor/ObjectIcons/PrecacheCamera.bmp rename to Assets/Editor/ObjectIcons/PrecacheCamera.bmp diff --git a/Editor/ObjectIcons/Prefab.bmp b/Assets/Editor/ObjectIcons/Prefab.bmp similarity index 100% rename from Editor/ObjectIcons/Prefab.bmp rename to Assets/Editor/ObjectIcons/Prefab.bmp diff --git a/Editor/ObjectIcons/Prompt.bmp b/Assets/Editor/ObjectIcons/Prompt.bmp similarity index 100% rename from Editor/ObjectIcons/Prompt.bmp rename to Assets/Editor/ObjectIcons/Prompt.bmp diff --git a/Editor/ObjectIcons/SavePoint.bmp b/Assets/Editor/ObjectIcons/SavePoint.bmp similarity index 100% rename from Editor/ObjectIcons/SavePoint.bmp rename to Assets/Editor/ObjectIcons/SavePoint.bmp diff --git a/Editor/ObjectIcons/Seed.bmp b/Assets/Editor/ObjectIcons/Seed.bmp similarity index 100% rename from Editor/ObjectIcons/Seed.bmp rename to Assets/Editor/ObjectIcons/Seed.bmp diff --git a/Editor/ObjectIcons/Sound.bmp b/Assets/Editor/ObjectIcons/Sound.bmp similarity index 100% rename from Editor/ObjectIcons/Sound.bmp rename to Assets/Editor/ObjectIcons/Sound.bmp diff --git a/Editor/ObjectIcons/SpawnPoint.bmp b/Assets/Editor/ObjectIcons/SpawnPoint.bmp similarity index 100% rename from Editor/ObjectIcons/SpawnPoint.bmp rename to Assets/Editor/ObjectIcons/SpawnPoint.bmp diff --git a/Editor/ObjectIcons/T.bmp b/Assets/Editor/ObjectIcons/T.bmp similarity index 100% rename from Editor/ObjectIcons/T.bmp rename to Assets/Editor/ObjectIcons/T.bmp diff --git a/Editor/ObjectIcons/TagPoint.bmp b/Assets/Editor/ObjectIcons/TagPoint.bmp similarity index 100% rename from Editor/ObjectIcons/TagPoint.bmp rename to Assets/Editor/ObjectIcons/TagPoint.bmp diff --git a/Editor/ObjectIcons/Trigger.bmp b/Assets/Editor/ObjectIcons/Trigger.bmp similarity index 100% rename from Editor/ObjectIcons/Trigger.bmp rename to Assets/Editor/ObjectIcons/Trigger.bmp diff --git a/Editor/ObjectIcons/UiCanvasRefEntity.bmp b/Assets/Editor/ObjectIcons/UiCanvasRefEntity.bmp similarity index 100% rename from Editor/ObjectIcons/UiCanvasRefEntity.bmp rename to Assets/Editor/ObjectIcons/UiCanvasRefEntity.bmp diff --git a/Editor/ObjectIcons/User.bmp b/Assets/Editor/ObjectIcons/User.bmp similarity index 100% rename from Editor/ObjectIcons/User.bmp rename to Assets/Editor/ObjectIcons/User.bmp diff --git a/Editor/ObjectIcons/VVVArea.bmp b/Assets/Editor/ObjectIcons/VVVArea.bmp similarity index 100% rename from Editor/ObjectIcons/VVVArea.bmp rename to Assets/Editor/ObjectIcons/VVVArea.bmp diff --git a/Editor/ObjectIcons/W.bmp b/Assets/Editor/ObjectIcons/W.bmp similarity index 100% rename from Editor/ObjectIcons/W.bmp rename to Assets/Editor/ObjectIcons/W.bmp diff --git a/Editor/ObjectIcons/Water.bmp b/Assets/Editor/ObjectIcons/Water.bmp similarity index 100% rename from Editor/ObjectIcons/Water.bmp rename to Assets/Editor/ObjectIcons/Water.bmp diff --git a/Editor/ObjectIcons/animobject.bmp b/Assets/Editor/ObjectIcons/animobject.bmp similarity index 100% rename from Editor/ObjectIcons/animobject.bmp rename to Assets/Editor/ObjectIcons/animobject.bmp diff --git a/Editor/ObjectIcons/bird.bmp b/Assets/Editor/ObjectIcons/bird.bmp similarity index 100% rename from Editor/ObjectIcons/bird.bmp rename to Assets/Editor/ObjectIcons/bird.bmp diff --git a/Editor/ObjectIcons/bug.bmp b/Assets/Editor/ObjectIcons/bug.bmp similarity index 100% rename from Editor/ObjectIcons/bug.bmp rename to Assets/Editor/ObjectIcons/bug.bmp diff --git a/Editor/ObjectIcons/character.bmp b/Assets/Editor/ObjectIcons/character.bmp similarity index 100% rename from Editor/ObjectIcons/character.bmp rename to Assets/Editor/ObjectIcons/character.bmp diff --git a/Editor/ObjectIcons/death.bmp b/Assets/Editor/ObjectIcons/death.bmp similarity index 100% rename from Editor/ObjectIcons/death.bmp rename to Assets/Editor/ObjectIcons/death.bmp diff --git a/Editor/ObjectIcons/door.bmp b/Assets/Editor/ObjectIcons/door.bmp similarity index 100% rename from Editor/ObjectIcons/door.bmp rename to Assets/Editor/ObjectIcons/door.bmp diff --git a/Editor/ObjectIcons/elevator.bmp b/Assets/Editor/ObjectIcons/elevator.bmp similarity index 100% rename from Editor/ObjectIcons/elevator.bmp rename to Assets/Editor/ObjectIcons/elevator.bmp diff --git a/Editor/ObjectIcons/environmentProbe.bmp b/Assets/Editor/ObjectIcons/environmentProbe.bmp similarity index 100% rename from Editor/ObjectIcons/environmentProbe.bmp rename to Assets/Editor/ObjectIcons/environmentProbe.bmp diff --git a/Editor/ObjectIcons/explosion.bmp b/Assets/Editor/ObjectIcons/explosion.bmp similarity index 100% rename from Editor/ObjectIcons/explosion.bmp rename to Assets/Editor/ObjectIcons/explosion.bmp diff --git a/Editor/ObjectIcons/fish.bmp b/Assets/Editor/ObjectIcons/fish.bmp similarity index 100% rename from Editor/ObjectIcons/fish.bmp rename to Assets/Editor/ObjectIcons/fish.bmp diff --git a/Editor/ObjectIcons/forbiddenarea.bmp b/Assets/Editor/ObjectIcons/forbiddenarea.bmp similarity index 100% rename from Editor/ObjectIcons/forbiddenarea.bmp rename to Assets/Editor/ObjectIcons/forbiddenarea.bmp diff --git a/Editor/ObjectIcons/hazard.bmp b/Assets/Editor/ObjectIcons/hazard.bmp similarity index 100% rename from Editor/ObjectIcons/hazard.bmp rename to Assets/Editor/ObjectIcons/hazard.bmp diff --git a/Editor/ObjectIcons/health.bmp b/Assets/Editor/ObjectIcons/health.bmp similarity index 100% rename from Editor/ObjectIcons/health.bmp rename to Assets/Editor/ObjectIcons/health.bmp diff --git a/Editor/ObjectIcons/ledge.bmp b/Assets/Editor/ObjectIcons/ledge.bmp similarity index 100% rename from Editor/ObjectIcons/ledge.bmp rename to Assets/Editor/ObjectIcons/ledge.bmp diff --git a/Editor/ObjectIcons/mine.bmp b/Assets/Editor/ObjectIcons/mine.bmp similarity index 100% rename from Editor/ObjectIcons/mine.bmp rename to Assets/Editor/ObjectIcons/mine.bmp diff --git a/Editor/ObjectIcons/physicsobject.bmp b/Assets/Editor/ObjectIcons/physicsobject.bmp similarity index 100% rename from Editor/ObjectIcons/physicsobject.bmp rename to Assets/Editor/ObjectIcons/physicsobject.bmp diff --git a/Editor/ObjectIcons/prefabbuilding.bmp b/Assets/Editor/ObjectIcons/prefabbuilding.bmp similarity index 100% rename from Editor/ObjectIcons/prefabbuilding.bmp rename to Assets/Editor/ObjectIcons/prefabbuilding.bmp diff --git a/Editor/ObjectIcons/proceduralbuilding.bmp b/Assets/Editor/ObjectIcons/proceduralbuilding.bmp similarity index 100% rename from Editor/ObjectIcons/proceduralbuilding.bmp rename to Assets/Editor/ObjectIcons/proceduralbuilding.bmp diff --git a/Editor/ObjectIcons/proceduralobject.bmp b/Assets/Editor/ObjectIcons/proceduralobject.bmp similarity index 100% rename from Editor/ObjectIcons/proceduralobject.bmp rename to Assets/Editor/ObjectIcons/proceduralobject.bmp diff --git a/Editor/ObjectIcons/proximitytrigger.bmp b/Assets/Editor/ObjectIcons/proximitytrigger.bmp similarity index 100% rename from Editor/ObjectIcons/proximitytrigger.bmp rename to Assets/Editor/ObjectIcons/proximitytrigger.bmp diff --git a/Editor/ObjectIcons/river.bmp b/Assets/Editor/ObjectIcons/river.bmp similarity index 100% rename from Editor/ObjectIcons/river.bmp rename to Assets/Editor/ObjectIcons/river.bmp diff --git a/Editor/ObjectIcons/road.bmp b/Assets/Editor/ObjectIcons/road.bmp similarity index 100% rename from Editor/ObjectIcons/road.bmp rename to Assets/Editor/ObjectIcons/road.bmp diff --git a/Editor/ObjectIcons/rope.bmp b/Assets/Editor/ObjectIcons/rope.bmp similarity index 100% rename from Editor/ObjectIcons/rope.bmp rename to Assets/Editor/ObjectIcons/rope.bmp diff --git a/Editor/ObjectIcons/sequence.bmp b/Assets/Editor/ObjectIcons/sequence.bmp similarity index 100% rename from Editor/ObjectIcons/sequence.bmp rename to Assets/Editor/ObjectIcons/sequence.bmp diff --git a/Editor/ObjectIcons/shake.bmp b/Assets/Editor/ObjectIcons/shake.bmp similarity index 100% rename from Editor/ObjectIcons/shake.bmp rename to Assets/Editor/ObjectIcons/shake.bmp diff --git a/Editor/ObjectIcons/smartobject.bmp b/Assets/Editor/ObjectIcons/smartobject.bmp similarity index 100% rename from Editor/ObjectIcons/smartobject.bmp rename to Assets/Editor/ObjectIcons/smartobject.bmp diff --git a/Editor/ObjectIcons/spawngroup.bmp b/Assets/Editor/ObjectIcons/spawngroup.bmp similarity index 100% rename from Editor/ObjectIcons/spawngroup.bmp rename to Assets/Editor/ObjectIcons/spawngroup.bmp diff --git a/Editor/ObjectIcons/spectator.bmp b/Assets/Editor/ObjectIcons/spectator.bmp similarity index 100% rename from Editor/ObjectIcons/spectator.bmp rename to Assets/Editor/ObjectIcons/spectator.bmp diff --git a/Editor/ObjectIcons/switch.bmp b/Assets/Editor/ObjectIcons/switch.bmp similarity index 100% rename from Editor/ObjectIcons/switch.bmp rename to Assets/Editor/ObjectIcons/switch.bmp diff --git a/Editor/ObjectIcons/territory.bmp b/Assets/Editor/ObjectIcons/territory.bmp similarity index 100% rename from Editor/ObjectIcons/territory.bmp rename to Assets/Editor/ObjectIcons/territory.bmp diff --git a/Editor/ObjectIcons/tornado.bmp b/Assets/Editor/ObjectIcons/tornado.bmp similarity index 100% rename from Editor/ObjectIcons/tornado.bmp rename to Assets/Editor/ObjectIcons/tornado.bmp diff --git a/Editor/ObjectIcons/vehicle.bmp b/Assets/Editor/ObjectIcons/vehicle.bmp similarity index 100% rename from Editor/ObjectIcons/vehicle.bmp rename to Assets/Editor/ObjectIcons/vehicle.bmp diff --git a/Editor/ObjectIcons/voxel.bmp b/Assets/Editor/ObjectIcons/voxel.bmp similarity index 100% rename from Editor/ObjectIcons/voxel.bmp rename to Assets/Editor/ObjectIcons/voxel.bmp diff --git a/Editor/ObjectIcons/wave.bmp b/Assets/Editor/ObjectIcons/wave.bmp similarity index 100% rename from Editor/ObjectIcons/wave.bmp rename to Assets/Editor/ObjectIcons/wave.bmp diff --git a/Editor/ObjectTemplates.xml b/Assets/Editor/ObjectTemplates.xml similarity index 100% rename from Editor/ObjectTemplates.xml rename to Assets/Editor/ObjectTemplates.xml diff --git a/Editor/Objects/Arrow.cgf b/Assets/Editor/Objects/Arrow.cgf similarity index 100% rename from Editor/Objects/Arrow.cgf rename to Assets/Editor/Objects/Arrow.cgf diff --git a/Editor/Objects/Axis.cgf b/Assets/Editor/Objects/Axis.cgf similarity index 100% rename from Editor/Objects/Axis.cgf rename to Assets/Editor/Objects/Axis.cgf diff --git a/Editor/Objects/Clock.cgf b/Assets/Editor/Objects/Clock.cgf similarity index 100% rename from Editor/Objects/Clock.cgf rename to Assets/Editor/Objects/Clock.cgf diff --git a/Editor/Objects/Comment.cgf b/Assets/Editor/Objects/Comment.cgf similarity index 100% rename from Editor/Objects/Comment.cgf rename to Assets/Editor/Objects/Comment.cgf diff --git a/Editor/Objects/CryDesigner_camera.grp b/Assets/Editor/Objects/CryDesigner_camera.grp similarity index 100% rename from Editor/Objects/CryDesigner_camera.grp rename to Assets/Editor/Objects/CryDesigner_camera.grp diff --git a/Editor/Objects/M.cgf b/Assets/Editor/Objects/M.cgf similarity index 100% rename from Editor/Objects/M.cgf rename to Assets/Editor/Objects/M.cgf diff --git a/Editor/Objects/MtlBox.cgf b/Assets/Editor/Objects/MtlBox.cgf similarity index 100% rename from Editor/Objects/MtlBox.cgf rename to Assets/Editor/Objects/MtlBox.cgf diff --git a/Editor/Objects/MtlObjects.max b/Assets/Editor/Objects/MtlObjects.max similarity index 100% rename from Editor/Objects/MtlObjects.max rename to Assets/Editor/Objects/MtlObjects.max diff --git a/Editor/Objects/MtlPlane.cgf b/Assets/Editor/Objects/MtlPlane.cgf similarity index 100% rename from Editor/Objects/MtlPlane.cgf rename to Assets/Editor/Objects/MtlPlane.cgf diff --git a/Editor/Objects/MtlSphere.cgf b/Assets/Editor/Objects/MtlSphere.cgf similarity index 100% rename from Editor/Objects/MtlSphere.cgf rename to Assets/Editor/Objects/MtlSphere.cgf diff --git a/Editor/Objects/MtlSwatch.cgf b/Assets/Editor/Objects/MtlSwatch.cgf similarity index 100% rename from Editor/Objects/MtlSwatch.cgf rename to Assets/Editor/Objects/MtlSwatch.cgf diff --git a/Editor/Objects/MtlTeapot.cgf b/Assets/Editor/Objects/MtlTeapot.cgf similarity index 100% rename from Editor/Objects/MtlTeapot.cgf rename to Assets/Editor/Objects/MtlTeapot.cgf diff --git a/Editor/Objects/MusicTheme.cgf b/Assets/Editor/Objects/MusicTheme.cgf similarity index 100% rename from Editor/Objects/MusicTheme.cgf rename to Assets/Editor/Objects/MusicTheme.cgf diff --git a/Editor/Objects/Particles.cgf b/Assets/Editor/Objects/Particles.cgf similarity index 100% rename from Editor/Objects/Particles.cgf rename to Assets/Editor/Objects/Particles.cgf diff --git a/Editor/Objects/Pyramid.cgf b/Assets/Editor/Objects/Pyramid.cgf similarity index 100% rename from Editor/Objects/Pyramid.cgf rename to Assets/Editor/Objects/Pyramid.cgf diff --git a/Editor/Objects/S.cgf b/Assets/Editor/Objects/S.cgf similarity index 100% rename from Editor/Objects/S.cgf rename to Assets/Editor/Objects/S.cgf diff --git a/Editor/Objects/Sound.cgf b/Assets/Editor/Objects/Sound.cgf similarity index 100% rename from Editor/Objects/Sound.cgf rename to Assets/Editor/Objects/Sound.cgf diff --git a/Editor/Objects/Sphere.cgf b/Assets/Editor/Objects/Sphere.cgf similarity index 100% rename from Editor/Objects/Sphere.cgf rename to Assets/Editor/Objects/Sphere.cgf diff --git a/Editor/Objects/T.cgf b/Assets/Editor/Objects/T.cgf similarity index 100% rename from Editor/Objects/T.cgf rename to Assets/Editor/Objects/T.cgf diff --git a/Editor/Objects/Vis.cgf b/Assets/Editor/Objects/Vis.cgf similarity index 100% rename from Editor/Objects/Vis.cgf rename to Assets/Editor/Objects/Vis.cgf diff --git a/Editor/Objects/W.cgf b/Assets/Editor/Objects/W.cgf similarity index 100% rename from Editor/Objects/W.cgf rename to Assets/Editor/Objects/W.cgf diff --git a/Editor/Objects/ai_hide_point.cgf b/Assets/Editor/Objects/ai_hide_point.cgf similarity index 100% rename from Editor/Objects/ai_hide_point.cgf rename to Assets/Editor/Objects/ai_hide_point.cgf diff --git a/Editor/Objects/anchor.cgf b/Assets/Editor/Objects/anchor.cgf similarity index 100% rename from Editor/Objects/anchor.cgf rename to Assets/Editor/Objects/anchor.cgf diff --git a/Editor/Objects/assaultspawn.cgf b/Assets/Editor/Objects/assaultspawn.cgf similarity index 100% rename from Editor/Objects/assaultspawn.cgf rename to Assets/Editor/Objects/assaultspawn.cgf diff --git a/Editor/Objects/border.cgf b/Assets/Editor/Objects/border.cgf similarity index 100% rename from Editor/Objects/border.cgf rename to Assets/Editor/Objects/border.cgf diff --git a/Editor/Objects/box.cgf b/Assets/Editor/Objects/box.cgf similarity index 100% rename from Editor/Objects/box.cgf rename to Assets/Editor/Objects/box.cgf diff --git a/Editor/Objects/box_nodraw.cgf b/Assets/Editor/Objects/box_nodraw.cgf similarity index 100% rename from Editor/Objects/box_nodraw.cgf rename to Assets/Editor/Objects/box_nodraw.cgf diff --git a/Editor/Objects/buyzone.cgf b/Assets/Editor/Objects/buyzone.cgf similarity index 100% rename from Editor/Objects/buyzone.cgf rename to Assets/Editor/Objects/buyzone.cgf diff --git a/Editor/Objects/c2_car_jump_cross.cgf b/Assets/Editor/Objects/c2_car_jump_cross.cgf similarity index 100% rename from Editor/Objects/c2_car_jump_cross.cgf rename to Assets/Editor/Objects/c2_car_jump_cross.cgf diff --git a/Editor/Objects/c2_crawl_h150.cgf b/Assets/Editor/Objects/c2_crawl_h150.cgf similarity index 100% rename from Editor/Objects/c2_crawl_h150.cgf rename to Assets/Editor/Objects/c2_crawl_h150.cgf diff --git a/Editor/Objects/c2_duck_v125.cgf b/Assets/Editor/Objects/c2_duck_v125.cgf similarity index 100% rename from Editor/Objects/c2_duck_v125.cgf rename to Assets/Editor/Objects/c2_duck_v125.cgf diff --git a/Editor/Objects/c2_jump_h1200.cgf b/Assets/Editor/Objects/c2_jump_h1200.cgf similarity index 100% rename from Editor/Objects/c2_jump_h1200.cgf rename to Assets/Editor/Objects/c2_jump_h1200.cgf diff --git a/Editor/Objects/c2_jump_h500.cgf b/Assets/Editor/Objects/c2_jump_h500.cgf similarity index 100% rename from Editor/Objects/c2_jump_h500.cgf rename to Assets/Editor/Objects/c2_jump_h500.cgf diff --git a/Editor/Objects/c2_jump_h900.cgf b/Assets/Editor/Objects/c2_jump_h900.cgf similarity index 100% rename from Editor/Objects/c2_jump_h900.cgf rename to Assets/Editor/Objects/c2_jump_h900.cgf diff --git a/Editor/Objects/c2_jump_h900_v150.cgf b/Assets/Editor/Objects/c2_jump_h900_v150.cgf similarity index 100% rename from Editor/Objects/c2_jump_h900_v150.cgf rename to Assets/Editor/Objects/c2_jump_h900_v150.cgf diff --git a/Editor/Objects/c2_jump_v150.cgf b/Assets/Editor/Objects/c2_jump_v150.cgf similarity index 100% rename from Editor/Objects/c2_jump_v150.cgf rename to Assets/Editor/Objects/c2_jump_v150.cgf diff --git a/Editor/Objects/c2_jump_v300.cgf b/Assets/Editor/Objects/c2_jump_v300.cgf similarity index 100% rename from Editor/Objects/c2_jump_v300.cgf rename to Assets/Editor/Objects/c2_jump_v300.cgf diff --git a/Editor/Objects/c2_jump_v450.cgf b/Assets/Editor/Objects/c2_jump_v450.cgf similarity index 100% rename from Editor/Objects/c2_jump_v450.cgf rename to Assets/Editor/Objects/c2_jump_v450.cgf diff --git a/Editor/Objects/c2_jumpdown_v900.cgf b/Assets/Editor/Objects/c2_jumpdown_v900.cgf similarity index 100% rename from Editor/Objects/c2_jumpdown_v900.cgf rename to Assets/Editor/Objects/c2_jumpdown_v900.cgf diff --git a/Editor/Objects/c2_jumpwindow_combo_v550.cgf b/Assets/Editor/Objects/c2_jumpwindow_combo_v550.cgf similarity index 100% rename from Editor/Objects/c2_jumpwindow_combo_v550.cgf rename to Assets/Editor/Objects/c2_jumpwindow_combo_v550.cgf diff --git a/Editor/Objects/c2_jumpwindow_v550.cgf b/Assets/Editor/Objects/c2_jumpwindow_v550.cgf similarity index 100% rename from Editor/Objects/c2_jumpwindow_v550.cgf rename to Assets/Editor/Objects/c2_jumpwindow_v550.cgf diff --git a/Editor/Objects/c2_jumpzigzag_v300_v750_lft.cgf b/Assets/Editor/Objects/c2_jumpzigzag_v300_v750_lft.cgf similarity index 100% rename from Editor/Objects/c2_jumpzigzag_v300_v750_lft.cgf rename to Assets/Editor/Objects/c2_jumpzigzag_v300_v750_lft.cgf diff --git a/Editor/Objects/c2_jumpzigzag_v300_v750_rgt.cgf b/Assets/Editor/Objects/c2_jumpzigzag_v300_v750_rgt.cgf similarity index 100% rename from Editor/Objects/c2_jumpzigzag_v300_v750_rgt.cgf rename to Assets/Editor/Objects/c2_jumpzigzag_v300_v750_rgt.cgf diff --git a/Editor/Objects/c2_slide_h400.cgf b/Assets/Editor/Objects/c2_slide_h400.cgf similarity index 100% rename from Editor/Objects/c2_slide_h400.cgf rename to Assets/Editor/Objects/c2_slide_h400.cgf diff --git a/Editor/Objects/c2_slidedown_v1800.cgf b/Assets/Editor/Objects/c2_slidedown_v1800.cgf similarity index 100% rename from Editor/Objects/c2_slidedown_v1800.cgf rename to Assets/Editor/Objects/c2_slidedown_v1800.cgf diff --git a/Editor/Objects/c2_vault_v125.cgf b/Assets/Editor/Objects/c2_vault_v125.cgf similarity index 100% rename from Editor/Objects/c2_vault_v125.cgf rename to Assets/Editor/Objects/c2_vault_v125.cgf diff --git a/Editor/Objects/c2_vault_v800.cgf b/Assets/Editor/Objects/c2_vault_v800.cgf similarity index 100% rename from Editor/Objects/c2_vault_v800.cgf rename to Assets/Editor/Objects/c2_vault_v800.cgf diff --git a/Editor/Objects/c2_wall_jump_h900_v450.cgf b/Assets/Editor/Objects/c2_wall_jump_h900_v450.cgf similarity index 100% rename from Editor/Objects/c2_wall_jump_h900_v450.cgf rename to Assets/Editor/Objects/c2_wall_jump_h900_v450.cgf diff --git a/Editor/Objects/c2_wall_run_h900_v300.cgf b/Assets/Editor/Objects/c2_wall_run_h900_v300.cgf similarity index 100% rename from Editor/Objects/c2_wall_run_h900_v300.cgf rename to Assets/Editor/Objects/c2_wall_run_h900_v300.cgf diff --git a/Editor/Objects/c3_dive_h900.cgf b/Assets/Editor/Objects/c3_dive_h900.cgf similarity index 100% rename from Editor/Objects/c3_dive_h900.cgf rename to Assets/Editor/Objects/c3_dive_h900.cgf diff --git a/Editor/Objects/c3_doorbreak_human.cgf b/Assets/Editor/Objects/c3_doorbreak_human.cgf similarity index 100% rename from Editor/Objects/c3_doorbreak_human.cgf rename to Assets/Editor/Objects/c3_doorbreak_human.cgf diff --git a/Editor/Objects/c3_doorframe.cgf b/Assets/Editor/Objects/c3_doorframe.cgf similarity index 100% rename from Editor/Objects/c3_doorframe.cgf rename to Assets/Editor/Objects/c3_doorframe.cgf diff --git a/Editor/Objects/c3_jump_v150_large.cgf b/Assets/Editor/Objects/c3_jump_v150_large.cgf similarity index 100% rename from Editor/Objects/c3_jump_v150_large.cgf rename to Assets/Editor/Objects/c3_jump_v150_large.cgf diff --git a/Editor/Objects/c3_jump_v300_large.cgf b/Assets/Editor/Objects/c3_jump_v300_large.cgf similarity index 100% rename from Editor/Objects/c3_jump_v300_large.cgf rename to Assets/Editor/Objects/c3_jump_v300_large.cgf diff --git a/Editor/Objects/c3_jump_v450_large.cgf b/Assets/Editor/Objects/c3_jump_v450_large.cgf similarity index 100% rename from Editor/Objects/c3_jump_v450_large.cgf rename to Assets/Editor/Objects/c3_jump_v450_large.cgf diff --git a/Editor/Objects/c3_repeldown_v2600.cgf b/Assets/Editor/Objects/c3_repeldown_v2600.cgf similarity index 100% rename from Editor/Objects/c3_repeldown_v2600.cgf rename to Assets/Editor/Objects/c3_repeldown_v2600.cgf diff --git a/Editor/Objects/c3_repeldown_v900.cgf b/Assets/Editor/Objects/c3_repeldown_v900.cgf similarity index 100% rename from Editor/Objects/c3_repeldown_v900.cgf rename to Assets/Editor/Objects/c3_repeldown_v900.cgf diff --git a/Editor/Objects/c3_so_cornerPopOutSearchLeft.cgf b/Assets/Editor/Objects/c3_so_cornerPopOutSearchLeft.cgf similarity index 100% rename from Editor/Objects/c3_so_cornerPopOutSearchLeft.cgf rename to Assets/Editor/Objects/c3_so_cornerPopOutSearchLeft.cgf diff --git a/Editor/Objects/c3_so_cornerPopOutSearchRight.cgf b/Assets/Editor/Objects/c3_so_cornerPopOutSearchRight.cgf similarity index 100% rename from Editor/Objects/c3_so_cornerPopOutSearchRight.cgf rename to Assets/Editor/Objects/c3_so_cornerPopOutSearchRight.cgf diff --git a/Editor/Objects/c3_vault_v125_large.cgf b/Assets/Editor/Objects/c3_vault_v125_large.cgf similarity index 100% rename from Editor/Objects/c3_vault_v125_large.cgf rename to Assets/Editor/Objects/c3_vault_v125_large.cgf diff --git a/Editor/Objects/c3_zipline_7500_15.cgf b/Assets/Editor/Objects/c3_zipline_7500_15.cgf similarity index 100% rename from Editor/Objects/c3_zipline_7500_15.cgf rename to Assets/Editor/Objects/c3_zipline_7500_15.cgf diff --git a/Editor/Objects/collision_dummy_100x50.cgf b/Assets/Editor/Objects/collision_dummy_100x50.cgf similarity index 100% rename from Editor/Objects/collision_dummy_100x50.cgf rename to Assets/Editor/Objects/collision_dummy_100x50.cgf diff --git a/Editor/Objects/collision_dummy_25x50.cgf b/Assets/Editor/Objects/collision_dummy_25x50.cgf similarity index 100% rename from Editor/Objects/collision_dummy_25x50.cgf rename to Assets/Editor/Objects/collision_dummy_25x50.cgf diff --git a/Editor/Objects/collision_dummy_50x50.cgf b/Assets/Editor/Objects/collision_dummy_50x50.cgf similarity index 100% rename from Editor/Objects/collision_dummy_50x50.cgf rename to Assets/Editor/Objects/collision_dummy_50x50.cgf diff --git a/Editor/Objects/corner270.cgf b/Assets/Editor/Objects/corner270.cgf similarity index 100% rename from Editor/Objects/corner270.cgf rename to Assets/Editor/Objects/corner270.cgf diff --git a/Editor/Objects/editor_helpers.max b/Assets/Editor/Objects/editor_helpers.max similarity index 100% rename from Editor/Objects/editor_helpers.max rename to Assets/Editor/Objects/editor_helpers.max diff --git a/Editor/Objects/energypoint.cgf b/Assets/Editor/Objects/energypoint.cgf similarity index 100% rename from Editor/Objects/energypoint.cgf rename to Assets/Editor/Objects/energypoint.cgf diff --git a/Editor/Objects/entrypoint.cgf b/Assets/Editor/Objects/entrypoint.cgf similarity index 100% rename from Editor/Objects/entrypoint.cgf rename to Assets/Editor/Objects/entrypoint.cgf diff --git a/Editor/Objects/envcube.cgf b/Assets/Editor/Objects/envcube.cgf similarity index 100% rename from Editor/Objects/envcube.cgf rename to Assets/Editor/Objects/envcube.cgf diff --git a/Editor/Objects/envcube.max b/Assets/Editor/Objects/envcube.max similarity index 100% rename from Editor/Objects/envcube.max rename to Assets/Editor/Objects/envcube.max diff --git a/Editor/Objects/envcube.mtl b/Assets/Editor/Objects/envcube.mtl similarity index 100% rename from Editor/Objects/envcube.mtl rename to Assets/Editor/Objects/envcube.mtl diff --git a/Editor/Objects/factory.cgf b/Assets/Editor/Objects/factory.cgf similarity index 100% rename from Editor/Objects/factory.cgf rename to Assets/Editor/Objects/factory.cgf diff --git a/Editor/Objects/flock.cgf b/Assets/Editor/Objects/flock.cgf similarity index 100% rename from Editor/Objects/flock.cgf rename to Assets/Editor/Objects/flock.cgf diff --git a/Editor/Objects/forbiddenarea.cgf b/Assets/Editor/Objects/forbiddenarea.cgf similarity index 100% rename from Editor/Objects/forbiddenarea.cgf rename to Assets/Editor/Objects/forbiddenarea.cgf diff --git a/Editor/Objects/gradb.dds b/Assets/Editor/Objects/gradb.dds similarity index 100% rename from Editor/Objects/gradb.dds rename to Assets/Editor/Objects/gradb.dds diff --git a/Editor/Objects/gradf.dds b/Assets/Editor/Objects/gradf.dds similarity index 100% rename from Editor/Objects/gradf.dds rename to Assets/Editor/Objects/gradf.dds diff --git a/Editor/Objects/helper.mtl b/Assets/Editor/Objects/helper.mtl similarity index 100% rename from Editor/Objects/helper.mtl rename to Assets/Editor/Objects/helper.mtl diff --git a/Editor/Objects/helper_illum.mtl b/Assets/Editor/Objects/helper_illum.mtl similarity index 100% rename from Editor/Objects/helper_illum.mtl rename to Assets/Editor/Objects/helper_illum.mtl diff --git a/Editor/Objects/hidepoint.cgf b/Assets/Editor/Objects/hidepoint.cgf similarity index 100% rename from Editor/Objects/hidepoint.cgf rename to Assets/Editor/Objects/hidepoint.cgf diff --git a/Editor/Objects/hidepoint_sec.cgf b/Assets/Editor/Objects/hidepoint_sec.cgf similarity index 100% rename from Editor/Objects/hidepoint_sec.cgf rename to Assets/Editor/Objects/hidepoint_sec.cgf diff --git a/Editor/Objects/highvault.cgf b/Assets/Editor/Objects/highvault.cgf similarity index 100% rename from Editor/Objects/highvault.cgf rename to Assets/Editor/Objects/highvault.cgf diff --git a/Editor/Objects/hq.cgf b/Assets/Editor/Objects/hq.cgf similarity index 100% rename from Editor/Objects/hq.cgf rename to Assets/Editor/Objects/hq.cgf diff --git a/Editor/Objects/invisiblebox.cgf b/Assets/Editor/Objects/invisiblebox.cgf similarity index 100% rename from Editor/Objects/invisiblebox.cgf rename to Assets/Editor/Objects/invisiblebox.cgf diff --git a/Editor/Objects/invisibleobstruct.cgf b/Assets/Editor/Objects/invisibleobstruct.cgf similarity index 100% rename from Editor/Objects/invisibleobstruct.cgf rename to Assets/Editor/Objects/invisibleobstruct.cgf diff --git a/Editor/Objects/invisibleocclude.cgf b/Assets/Editor/Objects/invisibleocclude.cgf similarity index 100% rename from Editor/Objects/invisibleocclude.cgf rename to Assets/Editor/Objects/invisibleocclude.cgf diff --git a/Editor/Objects/invisiblewall.cgf b/Assets/Editor/Objects/invisiblewall.cgf similarity index 100% rename from Editor/Objects/invisiblewall.cgf rename to Assets/Editor/Objects/invisiblewall.cgf diff --git a/Editor/Objects/jump_150.cgf b/Assets/Editor/Objects/jump_150.cgf similarity index 100% rename from Editor/Objects/jump_150.cgf rename to Assets/Editor/Objects/jump_150.cgf diff --git a/Editor/Objects/jump_300.cgf b/Assets/Editor/Objects/jump_300.cgf similarity index 100% rename from Editor/Objects/jump_300.cgf rename to Assets/Editor/Objects/jump_300.cgf diff --git a/Editor/Objects/jump_450.cgf b/Assets/Editor/Objects/jump_450.cgf similarity index 100% rename from Editor/Objects/jump_450.cgf rename to Assets/Editor/Objects/jump_450.cgf diff --git a/Editor/Objects/leap_1000.cgf b/Assets/Editor/Objects/leap_1000.cgf similarity index 100% rename from Editor/Objects/leap_1000.cgf rename to Assets/Editor/Objects/leap_1000.cgf diff --git a/Editor/Objects/leap_500.cgf b/Assets/Editor/Objects/leap_500.cgf similarity index 100% rename from Editor/Objects/leap_500.cgf rename to Assets/Editor/Objects/leap_500.cgf diff --git a/Editor/Objects/light_omni.cgf b/Assets/Editor/Objects/light_omni.cgf similarity index 100% rename from Editor/Objects/light_omni.cgf rename to Assets/Editor/Objects/light_omni.cgf diff --git a/Editor/Objects/light_spot.cgf b/Assets/Editor/Objects/light_spot.cgf similarity index 100% rename from Editor/Objects/light_spot.cgf rename to Assets/Editor/Objects/light_spot.cgf diff --git a/Editor/Objects/lightsphere.cgf b/Assets/Editor/Objects/lightsphere.cgf similarity index 100% rename from Editor/Objects/lightsphere.cgf rename to Assets/Editor/Objects/lightsphere.cgf diff --git a/Editor/Objects/measurehelper_A.cgf b/Assets/Editor/Objects/measurehelper_A.cgf similarity index 100% rename from Editor/Objects/measurehelper_A.cgf rename to Assets/Editor/Objects/measurehelper_A.cgf diff --git a/Editor/Objects/measurehelper_B.cgf b/Assets/Editor/Objects/measurehelper_B.cgf similarity index 100% rename from Editor/Objects/measurehelper_B.cgf rename to Assets/Editor/Objects/measurehelper_B.cgf diff --git a/Editor/Objects/mtlbox.mtl b/Assets/Editor/Objects/mtlbox.mtl similarity index 100% rename from Editor/Objects/mtlbox.mtl rename to Assets/Editor/Objects/mtlbox.mtl diff --git a/Editor/Objects/mtlobjects.mtl b/Assets/Editor/Objects/mtlobjects.mtl similarity index 100% rename from Editor/Objects/mtlobjects.mtl rename to Assets/Editor/Objects/mtlobjects.mtl diff --git a/Editor/Objects/objective.cgf b/Assets/Editor/Objects/objective.cgf similarity index 100% rename from Editor/Objects/objective.cgf rename to Assets/Editor/Objects/objective.cgf diff --git a/Editor/Objects/phoenix.cgf b/Assets/Editor/Objects/phoenix.cgf similarity index 100% rename from Editor/Objects/phoenix.cgf rename to Assets/Editor/Objects/phoenix.cgf diff --git a/Editor/Objects/refpicture.cgf b/Assets/Editor/Objects/refpicture.cgf similarity index 100% rename from Editor/Objects/refpicture.cgf rename to Assets/Editor/Objects/refpicture.cgf diff --git a/Editor/Objects/refpicture.max b/Assets/Editor/Objects/refpicture.max similarity index 100% rename from Editor/Objects/refpicture.max rename to Assets/Editor/Objects/refpicture.max diff --git a/Editor/Objects/reinforcement_point.cgf b/Assets/Editor/Objects/reinforcement_point.cgf similarity index 100% rename from Editor/Objects/reinforcement_point.cgf rename to Assets/Editor/Objects/reinforcement_point.cgf diff --git a/Editor/Objects/smartobject_helper.max b/Assets/Editor/Objects/smartobject_helper.max similarity index 100% rename from Editor/Objects/smartobject_helper.max rename to Assets/Editor/Objects/smartobject_helper.max diff --git a/Editor/Objects/spawngroup.cgf b/Assets/Editor/Objects/spawngroup.cgf similarity index 100% rename from Editor/Objects/spawngroup.cgf rename to Assets/Editor/Objects/spawngroup.cgf diff --git a/Editor/Objects/spawnpointhelper.cgf b/Assets/Editor/Objects/spawnpointhelper.cgf similarity index 100% rename from Editor/Objects/spawnpointhelper.cgf rename to Assets/Editor/Objects/spawnpointhelper.cgf diff --git a/Editor/Objects/spawnpointhelper.mtl b/Assets/Editor/Objects/spawnpointhelper.mtl similarity index 100% rename from Editor/Objects/spawnpointhelper.mtl rename to Assets/Editor/Objects/spawnpointhelper.mtl diff --git a/Editor/Objects/stayOnWallFire_left.cgf b/Assets/Editor/Objects/stayOnWallFire_left.cgf similarity index 100% rename from Editor/Objects/stayOnWallFire_left.cgf rename to Assets/Editor/Objects/stayOnWallFire_left.cgf diff --git a/Editor/Objects/suit_jump_300.cgf b/Assets/Editor/Objects/suit_jump_300.cgf similarity index 100% rename from Editor/Objects/suit_jump_300.cgf rename to Assets/Editor/Objects/suit_jump_300.cgf diff --git a/Editor/Objects/suit_jump_800.cgf b/Assets/Editor/Objects/suit_jump_800.cgf similarity index 100% rename from Editor/Objects/suit_jump_800.cgf rename to Assets/Editor/Objects/suit_jump_800.cgf diff --git a/Editor/Objects/suit_leap_800.cgf b/Assets/Editor/Objects/suit_leap_800.cgf similarity index 100% rename from Editor/Objects/suit_leap_800.cgf rename to Assets/Editor/Objects/suit_leap_800.cgf diff --git a/Editor/Plugins/ParticleEditorPlugin/defaults/DefaultParticleEmitters.xml b/Assets/Editor/Plugins/ParticleEditorPlugin/defaults/DefaultParticleEmitters.xml similarity index 100% rename from Editor/Plugins/ParticleEditorPlugin/defaults/DefaultParticleEmitters.xml rename to Assets/Editor/Plugins/ParticleEditorPlugin/defaults/DefaultParticleEmitters.xml diff --git a/Editor/Plugins/ParticleEditorPlugin/defaults/defaultParticle.dds b/Assets/Editor/Plugins/ParticleEditorPlugin/defaults/defaultParticle.dds similarity index 100% rename from Editor/Plugins/ParticleEditorPlugin/defaults/defaultParticle.dds rename to Assets/Editor/Plugins/ParticleEditorPlugin/defaults/defaultParticle.dds diff --git a/Editor/Plugins/ParticleEditorPlugin/defaults/feather01.tif b/Assets/Editor/Plugins/ParticleEditorPlugin/defaults/feather01.tif similarity index 100% rename from Editor/Plugins/ParticleEditorPlugin/defaults/feather01.tif rename to Assets/Editor/Plugins/ParticleEditorPlugin/defaults/feather01.tif diff --git a/Editor/Plugins/ParticleEditorPlugin/defaults/puffup01.tif b/Assets/Editor/Plugins/ParticleEditorPlugin/defaults/puffup01.tif similarity index 100% rename from Editor/Plugins/ParticleEditorPlugin/defaults/puffup01.tif rename to Assets/Editor/Plugins/ParticleEditorPlugin/defaults/puffup01.tif diff --git a/Editor/Plugins/ParticleEditorPlugin/settings/ToolTips.xml b/Assets/Editor/Plugins/ParticleEditorPlugin/settings/ToolTips.xml similarity index 100% rename from Editor/Plugins/ParticleEditorPlugin/settings/ToolTips.xml rename to Assets/Editor/Plugins/ParticleEditorPlugin/settings/ToolTips.xml diff --git a/Editor/Plugins/UiCanvasEditor/CanvasIcons/Anchor_Left.tif b/Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Anchor_Left.tif similarity index 100% rename from Editor/Plugins/UiCanvasEditor/CanvasIcons/Anchor_Left.tif rename to Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Anchor_Left.tif diff --git a/Editor/Plugins/UiCanvasEditor/CanvasIcons/Anchor_TopLeft.tif b/Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Anchor_TopLeft.tif similarity index 100% rename from Editor/Plugins/UiCanvasEditor/CanvasIcons/Anchor_TopLeft.tif rename to Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Anchor_TopLeft.tif diff --git a/Editor/Plugins/UiCanvasEditor/CanvasIcons/Anchor_Whole.tif b/Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Anchor_Whole.tif similarity index 100% rename from Editor/Plugins/UiCanvasEditor/CanvasIcons/Anchor_Whole.tif rename to Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Anchor_Whole.tif diff --git a/Editor/Plugins/UiCanvasEditor/CanvasIcons/Border_Selected.tif b/Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Border_Selected.tif similarity index 100% rename from Editor/Plugins/UiCanvasEditor/CanvasIcons/Border_Selected.tif rename to Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Border_Selected.tif diff --git a/Editor/Plugins/UiCanvasEditor/CanvasIcons/Border_Unselected.tif b/Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Border_Unselected.tif similarity index 100% rename from Editor/Plugins/UiCanvasEditor/CanvasIcons/Border_Unselected.tif rename to Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Border_Unselected.tif diff --git a/Editor/Plugins/UiCanvasEditor/CanvasIcons/Canvas_Background.tif b/Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Canvas_Background.tif similarity index 100% rename from Editor/Plugins/UiCanvasEditor/CanvasIcons/Canvas_Background.tif rename to Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Canvas_Background.tif diff --git a/Editor/Plugins/UiCanvasEditor/CanvasIcons/DottedLine.tif b/Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/DottedLine.tif similarity index 100% rename from Editor/Plugins/UiCanvasEditor/CanvasIcons/DottedLine.tif rename to Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/DottedLine.tif diff --git a/Editor/Plugins/UiCanvasEditor/CanvasIcons/Pivot.tif b/Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Pivot.tif similarity index 100% rename from Editor/Plugins/UiCanvasEditor/CanvasIcons/Pivot.tif rename to Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Pivot.tif diff --git a/Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Center_Square.tif b/Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Center_Square.tif similarity index 100% rename from Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Center_Square.tif rename to Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Center_Square.tif diff --git a/Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Circle.tif b/Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Circle.tif similarity index 100% rename from Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Circle.tif rename to Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Circle.tif diff --git a/Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Square_X.tif b/Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Square_X.tif similarity index 100% rename from Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Square_X.tif rename to Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Square_X.tif diff --git a/Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Square_Y.tif b/Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Square_Y.tif similarity index 100% rename from Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Square_Y.tif rename to Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Square_Y.tif diff --git a/Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Triangle_X.tif b/Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Triangle_X.tif similarity index 100% rename from Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Triangle_X.tif rename to Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Triangle_X.tif diff --git a/Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Triangle_Y.tif b/Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Triangle_Y.tif similarity index 100% rename from Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Triangle_Y.tif rename to Assets/Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Triangle_Y.tif diff --git a/Editor/Presets/GeomCache/game.cbc b/Assets/Editor/Presets/GeomCache/game.cbc similarity index 100% rename from Editor/Presets/GeomCache/game.cbc rename to Assets/Editor/Presets/GeomCache/game.cbc diff --git a/Editor/Presets/GeomCache/game_lz4hc.cbc b/Assets/Editor/Presets/GeomCache/game_lz4hc.cbc similarity index 100% rename from Editor/Presets/GeomCache/game_lz4hc.cbc rename to Assets/Editor/Presets/GeomCache/game_lz4hc.cbc diff --git a/Editor/Presets/GeomCache/game_z_up.cbc b/Assets/Editor/Presets/GeomCache/game_z_up.cbc similarity index 100% rename from Editor/Presets/GeomCache/game_z_up.cbc rename to Assets/Editor/Presets/GeomCache/game_z_up.cbc diff --git a/Editor/Presets/GeomCache/game_z_up_lz4hc.cbc b/Assets/Editor/Presets/GeomCache/game_z_up_lz4hc.cbc similarity index 100% rename from Editor/Presets/GeomCache/game_z_up_lz4hc.cbc rename to Assets/Editor/Presets/GeomCache/game_z_up_lz4hc.cbc diff --git a/Editor/Presets/GeomCache/prerendered.cbc b/Assets/Editor/Presets/GeomCache/prerendered.cbc similarity index 100% rename from Editor/Presets/GeomCache/prerendered.cbc rename to Assets/Editor/Presets/GeomCache/prerendered.cbc diff --git a/Editor/Presets/GeomCache/prerendered_z_up.cbc b/Assets/Editor/Presets/GeomCache/prerendered_z_up.cbc similarity index 100% rename from Editor/Presets/GeomCache/prerendered_z_up.cbc rename to Assets/Editor/Presets/GeomCache/prerendered_z_up.cbc diff --git a/Editor/Presets/GeomCache/rigids_only.cbc b/Assets/Editor/Presets/GeomCache/rigids_only.cbc similarity index 100% rename from Editor/Presets/GeomCache/rigids_only.cbc rename to Assets/Editor/Presets/GeomCache/rigids_only.cbc diff --git a/Editor/Presets/GeomCache/rigids_only_z_up.cbc b/Assets/Editor/Presets/GeomCache/rigids_only_z_up.cbc similarity index 100% rename from Editor/Presets/GeomCache/rigids_only_z_up.cbc rename to Assets/Editor/Presets/GeomCache/rigids_only_z_up.cbc diff --git a/Editor/Presets/GeomCache/uncompressed.cbc b/Assets/Editor/Presets/GeomCache/uncompressed.cbc similarity index 100% rename from Editor/Presets/GeomCache/uncompressed.cbc rename to Assets/Editor/Presets/GeomCache/uncompressed.cbc diff --git a/Editor/Presets/GeomCache/uncompressed_z_up.cbc b/Assets/Editor/Presets/GeomCache/uncompressed_z_up.cbc similarity index 100% rename from Editor/Presets/GeomCache/uncompressed_z_up.cbc rename to Assets/Editor/Presets/GeomCache/uncompressed_z_up.cbc diff --git a/Editor/Presets/MobileSettings/GPUAndDriverLists.json b/Assets/Editor/Presets/MobileSettings/GPUAndDriverLists.json similarity index 100% rename from Editor/Presets/MobileSettings/GPUAndDriverLists.json rename to Assets/Editor/Presets/MobileSettings/GPUAndDriverLists.json diff --git a/Editor/Presets/MobileSettings/IPhone7.lms b/Assets/Editor/Presets/MobileSettings/IPhone7.lms similarity index 100% rename from Editor/Presets/MobileSettings/IPhone7.lms rename to Assets/Editor/Presets/MobileSettings/IPhone7.lms diff --git a/Editor/Presets/MobileSettings/IpadPro.lms b/Assets/Editor/Presets/MobileSettings/IpadPro.lms similarity index 100% rename from Editor/Presets/MobileSettings/IpadPro.lms rename to Assets/Editor/Presets/MobileSettings/IpadPro.lms diff --git a/Editor/Presets/MobileSettings/MobileFeatureBlackList.json b/Assets/Editor/Presets/MobileSettings/MobileFeatureBlackList.json similarity index 100% rename from Editor/Presets/MobileSettings/MobileFeatureBlackList.json rename to Assets/Editor/Presets/MobileSettings/MobileFeatureBlackList.json diff --git a/Editor/Presets/MobileSettings/Nexus9.lms b/Assets/Editor/Presets/MobileSettings/Nexus9.lms similarity index 100% rename from Editor/Presets/MobileSettings/Nexus9.lms rename to Assets/Editor/Presets/MobileSettings/Nexus9.lms diff --git a/Editor/Presets/MobileSettings/SamsungGalaxyS7_Mali.lms b/Assets/Editor/Presets/MobileSettings/SamsungGalaxyS7_Mali.lms similarity index 100% rename from Editor/Presets/MobileSettings/SamsungGalaxyS7_Mali.lms rename to Assets/Editor/Presets/MobileSettings/SamsungGalaxyS7_Mali.lms diff --git a/Editor/Presets/MobileSettings/SamsungGalaxyS7_Qualcomm.lms b/Assets/Editor/Presets/MobileSettings/SamsungGalaxyS7_Qualcomm.lms similarity index 100% rename from Editor/Presets/MobileSettings/SamsungGalaxyS7_Qualcomm.lms rename to Assets/Editor/Presets/MobileSettings/SamsungGalaxyS7_Qualcomm.lms diff --git a/Editor/PropertyEnumerations.xml b/Assets/Editor/PropertyEnumerations.xml similarity index 100% rename from Editor/PropertyEnumerations.xml rename to Assets/Editor/PropertyEnumerations.xml diff --git a/Editor/Scripts/Shelves/icons/Albedo.png b/Assets/Editor/Scripts/Shelves/icons/Albedo.png similarity index 100% rename from Editor/Scripts/Shelves/icons/Albedo.png rename to Assets/Editor/Scripts/Shelves/icons/Albedo.png diff --git a/Editor/Scripts/Shelves/icons/Diffuse_Lighting.png b/Assets/Editor/Scripts/Shelves/icons/Diffuse_Lighting.png similarity index 100% rename from Editor/Scripts/Shelves/icons/Diffuse_Lighting.png rename to Assets/Editor/Scripts/Shelves/icons/Diffuse_Lighting.png diff --git a/Editor/Scripts/Shelves/icons/Diffuse_Texture_Res_360.png b/Assets/Editor/Scripts/Shelves/icons/Diffuse_Texture_Res_360.png similarity index 100% rename from Editor/Scripts/Shelves/icons/Diffuse_Texture_Res_360.png rename to Assets/Editor/Scripts/Shelves/icons/Diffuse_Texture_Res_360.png diff --git a/Editor/Scripts/Shelves/icons/Empty_Wireframe.png b/Assets/Editor/Scripts/Shelves/icons/Empty_Wireframe.png similarity index 100% rename from Editor/Scripts/Shelves/icons/Empty_Wireframe.png rename to Assets/Editor/Scripts/Shelves/icons/Empty_Wireframe.png diff --git a/Editor/Scripts/Shelves/icons/Exit.png b/Assets/Editor/Scripts/Shelves/icons/Exit.png similarity index 100% rename from Editor/Scripts/Shelves/icons/Exit.png rename to Assets/Editor/Scripts/Shelves/icons/Exit.png diff --git a/Editor/Scripts/Shelves/icons/Fuzziness.png b/Assets/Editor/Scripts/Shelves/icons/Fuzziness.png similarity index 100% rename from Editor/Scripts/Shelves/icons/Fuzziness.png rename to Assets/Editor/Scripts/Shelves/icons/Fuzziness.png diff --git a/Editor/Scripts/Shelves/icons/Gloss.png b/Assets/Editor/Scripts/Shelves/icons/Gloss.png similarity index 100% rename from Editor/Scripts/Shelves/icons/Gloss.png rename to Assets/Editor/Scripts/Shelves/icons/Gloss.png diff --git a/Editor/Scripts/Shelves/icons/Normal_Texture_Res_360.png b/Assets/Editor/Scripts/Shelves/icons/Normal_Texture_Res_360.png similarity index 100% rename from Editor/Scripts/Shelves/icons/Normal_Texture_Res_360.png rename to Assets/Editor/Scripts/Shelves/icons/Normal_Texture_Res_360.png diff --git a/Editor/Scripts/Shelves/icons/PrefabAddLibrary.png b/Assets/Editor/Scripts/Shelves/icons/PrefabAddLibrary.png similarity index 100% rename from Editor/Scripts/Shelves/icons/PrefabAddLibrary.png rename to Assets/Editor/Scripts/Shelves/icons/PrefabAddLibrary.png diff --git a/Editor/Scripts/Shelves/icons/PrefabAddSelection.png b/Assets/Editor/Scripts/Shelves/icons/PrefabAddSelection.png similarity index 100% rename from Editor/Scripts/Shelves/icons/PrefabAddSelection.png rename to Assets/Editor/Scripts/Shelves/icons/PrefabAddSelection.png diff --git a/Editor/Scripts/Shelves/icons/PrefabBreak.png b/Assets/Editor/Scripts/Shelves/icons/PrefabBreak.png similarity index 100% rename from Editor/Scripts/Shelves/icons/PrefabBreak.png rename to Assets/Editor/Scripts/Shelves/icons/PrefabBreak.png diff --git a/Editor/Scripts/Shelves/icons/PrefabConvert.png b/Assets/Editor/Scripts/Shelves/icons/PrefabConvert.png similarity index 100% rename from Editor/Scripts/Shelves/icons/PrefabConvert.png rename to Assets/Editor/Scripts/Shelves/icons/PrefabConvert.png diff --git a/Editor/Scripts/Shelves/icons/PrefabCreate.png b/Assets/Editor/Scripts/Shelves/icons/PrefabCreate.png similarity index 100% rename from Editor/Scripts/Shelves/icons/PrefabCreate.png rename to Assets/Editor/Scripts/Shelves/icons/PrefabCreate.png diff --git a/Editor/Scripts/Shelves/icons/PrefabIsolate.png b/Assets/Editor/Scripts/Shelves/icons/PrefabIsolate.png similarity index 100% rename from Editor/Scripts/Shelves/icons/PrefabIsolate.png rename to Assets/Editor/Scripts/Shelves/icons/PrefabIsolate.png diff --git a/Editor/Scripts/Shelves/icons/Scattering.png b/Assets/Editor/Scripts/Shelves/icons/Scattering.png similarity index 100% rename from Editor/Scripts/Shelves/icons/Scattering.png rename to Assets/Editor/Scripts/Shelves/icons/Scattering.png diff --git a/Editor/Scripts/Shelves/icons/Solid_Wireframe.png b/Assets/Editor/Scripts/Shelves/icons/Solid_Wireframe.png similarity index 100% rename from Editor/Scripts/Shelves/icons/Solid_Wireframe.png rename to Assets/Editor/Scripts/Shelves/icons/Solid_Wireframe.png diff --git a/Editor/Scripts/Shelves/icons/Spec_Amount.png b/Assets/Editor/Scripts/Shelves/icons/Spec_Amount.png similarity index 100% rename from Editor/Scripts/Shelves/icons/Spec_Amount.png rename to Assets/Editor/Scripts/Shelves/icons/Spec_Amount.png diff --git a/Editor/Scripts/Shelves/icons/Spec_Lighting.png b/Assets/Editor/Scripts/Shelves/icons/Spec_Lighting.png similarity index 100% rename from Editor/Scripts/Shelves/icons/Spec_Lighting.png rename to Assets/Editor/Scripts/Shelves/icons/Spec_Lighting.png diff --git a/Editor/Scripts/Shelves/icons/Texel_Per_Meter_1024.png b/Assets/Editor/Scripts/Shelves/icons/Texel_Per_Meter_1024.png similarity index 100% rename from Editor/Scripts/Shelves/icons/Texel_Per_Meter_1024.png rename to Assets/Editor/Scripts/Shelves/icons/Texel_Per_Meter_1024.png diff --git a/Editor/Scripts/Shelves/icons/Texel_Per_Meter_256.png b/Assets/Editor/Scripts/Shelves/icons/Texel_Per_Meter_256.png similarity index 100% rename from Editor/Scripts/Shelves/icons/Texel_Per_Meter_256.png rename to Assets/Editor/Scripts/Shelves/icons/Texel_Per_Meter_256.png diff --git a/Editor/Scripts/Shelves/icons/Texel_Per_Meter_512.png b/Assets/Editor/Scripts/Shelves/icons/Texel_Per_Meter_512.png similarity index 100% rename from Editor/Scripts/Shelves/icons/Texel_Per_Meter_512.png rename to Assets/Editor/Scripts/Shelves/icons/Texel_Per_Meter_512.png diff --git a/Editor/Scripts/Shelves/icons/all.png b/Assets/Editor/Scripts/Shelves/icons/all.png similarity index 100% rename from Editor/Scripts/Shelves/icons/all.png rename to Assets/Editor/Scripts/Shelves/icons/all.png diff --git a/Editor/Scripts/Shelves/icons/beams.png b/Assets/Editor/Scripts/Shelves/icons/beams.png similarity index 100% rename from Editor/Scripts/Shelves/icons/beams.png rename to Assets/Editor/Scripts/Shelves/icons/beams.png diff --git a/Editor/Scripts/Shelves/icons/blanker.png b/Assets/Editor/Scripts/Shelves/icons/blanker.png similarity index 100% rename from Editor/Scripts/Shelves/icons/blanker.png rename to Assets/Editor/Scripts/Shelves/icons/blanker.png diff --git a/Editor/Scripts/Shelves/icons/bounding_box.png b/Assets/Editor/Scripts/Shelves/icons/bounding_box.png similarity index 100% rename from Editor/Scripts/Shelves/icons/bounding_box.png rename to Assets/Editor/Scripts/Shelves/icons/bounding_box.png diff --git a/Editor/Scripts/Shelves/icons/brushes.png b/Assets/Editor/Scripts/Shelves/icons/brushes.png similarity index 100% rename from Editor/Scripts/Shelves/icons/brushes.png rename to Assets/Editor/Scripts/Shelves/icons/brushes.png diff --git a/Editor/Scripts/Shelves/icons/cloud.png b/Assets/Editor/Scripts/Shelves/icons/cloud.png similarity index 100% rename from Editor/Scripts/Shelves/icons/cloud.png rename to Assets/Editor/Scripts/Shelves/icons/cloud.png diff --git a/Editor/Scripts/Shelves/icons/cloud_dark.png b/Assets/Editor/Scripts/Shelves/icons/cloud_dark.png similarity index 100% rename from Editor/Scripts/Shelves/icons/cloud_dark.png rename to Assets/Editor/Scripts/Shelves/icons/cloud_dark.png diff --git a/Editor/Scripts/Shelves/icons/cloud_dark_rain.png b/Assets/Editor/Scripts/Shelves/icons/cloud_dark_rain.png similarity index 100% rename from Editor/Scripts/Shelves/icons/cloud_dark_rain.png rename to Assets/Editor/Scripts/Shelves/icons/cloud_dark_rain.png diff --git a/Editor/Scripts/Shelves/icons/collisions.png b/Assets/Editor/Scripts/Shelves/icons/collisions.png similarity index 100% rename from Editor/Scripts/Shelves/icons/collisions.png rename to Assets/Editor/Scripts/Shelves/icons/collisions.png diff --git a/Editor/Scripts/Shelves/icons/create_ao_volume_box.png b/Assets/Editor/Scripts/Shelves/icons/create_ao_volume_box.png similarity index 100% rename from Editor/Scripts/Shelves/icons/create_ao_volume_box.png rename to Assets/Editor/Scripts/Shelves/icons/create_ao_volume_box.png diff --git a/Editor/Scripts/Shelves/icons/create_both_vis_box_envprobe.png b/Assets/Editor/Scripts/Shelves/icons/create_both_vis_box_envprobe.png similarity index 100% rename from Editor/Scripts/Shelves/icons/create_both_vis_box_envprobe.png rename to Assets/Editor/Scripts/Shelves/icons/create_both_vis_box_envprobe.png diff --git a/Editor/Scripts/Shelves/icons/create_envprobe.png b/Assets/Editor/Scripts/Shelves/icons/create_envprobe.png similarity index 100% rename from Editor/Scripts/Shelves/icons/create_envprobe.png rename to Assets/Editor/Scripts/Shelves/icons/create_envprobe.png diff --git a/Editor/Scripts/Shelves/icons/create_portal_box.png b/Assets/Editor/Scripts/Shelves/icons/create_portal_box.png similarity index 100% rename from Editor/Scripts/Shelves/icons/create_portal_box.png rename to Assets/Editor/Scripts/Shelves/icons/create_portal_box.png diff --git a/Editor/Scripts/Shelves/icons/create_vis_box.png b/Assets/Editor/Scripts/Shelves/icons/create_vis_box.png similarity index 100% rename from Editor/Scripts/Shelves/icons/create_vis_box.png rename to Assets/Editor/Scripts/Shelves/icons/create_vis_box.png diff --git a/Editor/Scripts/Shelves/icons/create_vis_box_and_portal_box.png b/Assets/Editor/Scripts/Shelves/icons/create_vis_box_and_portal_box.png similarity index 100% rename from Editor/Scripts/Shelves/icons/create_vis_box_and_portal_box.png rename to Assets/Editor/Scripts/Shelves/icons/create_vis_box_and_portal_box.png diff --git a/Editor/Scripts/Shelves/icons/create_vis_box_env_probe_and_portal.png b/Assets/Editor/Scripts/Shelves/icons/create_vis_box_env_probe_and_portal.png similarity index 100% rename from Editor/Scripts/Shelves/icons/create_vis_box_env_probe_and_portal.png rename to Assets/Editor/Scripts/Shelves/icons/create_vis_box_env_probe_and_portal.png diff --git a/Editor/Scripts/Shelves/icons/cubemap.png b/Assets/Editor/Scripts/Shelves/icons/cubemap.png similarity index 100% rename from Editor/Scripts/Shelves/icons/cubemap.png rename to Assets/Editor/Scripts/Shelves/icons/cubemap.png diff --git a/Editor/Scripts/Shelves/icons/decals.png b/Assets/Editor/Scripts/Shelves/icons/decals.png similarity index 100% rename from Editor/Scripts/Shelves/icons/decals.png rename to Assets/Editor/Scripts/Shelves/icons/decals.png diff --git a/Editor/Scripts/Shelves/icons/default_material.png b/Assets/Editor/Scripts/Shelves/icons/default_material.png similarity index 100% rename from Editor/Scripts/Shelves/icons/default_material.png rename to Assets/Editor/Scripts/Shelves/icons/default_material.png diff --git a/Editor/Scripts/Shelves/icons/default_material_with_normals.png b/Assets/Editor/Scripts/Shelves/icons/default_material_with_normals.png similarity index 100% rename from Editor/Scripts/Shelves/icons/default_material_with_normals.png rename to Assets/Editor/Scripts/Shelves/icons/default_material_with_normals.png diff --git a/Editor/Scripts/Shelves/icons/designer.png b/Assets/Editor/Scripts/Shelves/icons/designer.png similarity index 100% rename from Editor/Scripts/Shelves/icons/designer.png rename to Assets/Editor/Scripts/Shelves/icons/designer.png diff --git a/Editor/Scripts/Shelves/icons/diff_acc.png b/Assets/Editor/Scripts/Shelves/icons/diff_acc.png similarity index 100% rename from Editor/Scripts/Shelves/icons/diff_acc.png rename to Assets/Editor/Scripts/Shelves/icons/diff_acc.png diff --git a/Editor/Scripts/Shelves/icons/display_info.png b/Assets/Editor/Scripts/Shelves/icons/display_info.png similarity index 100% rename from Editor/Scripts/Shelves/icons/display_info.png rename to Assets/Editor/Scripts/Shelves/icons/display_info.png diff --git a/Editor/Scripts/Shelves/icons/dual_layer_mask.png b/Assets/Editor/Scripts/Shelves/icons/dual_layer_mask.png similarity index 100% rename from Editor/Scripts/Shelves/icons/dual_layer_mask.png rename to Assets/Editor/Scripts/Shelves/icons/dual_layer_mask.png diff --git a/Editor/Scripts/Shelves/icons/dynamiclights.png b/Assets/Editor/Scripts/Shelves/icons/dynamiclights.png similarity index 100% rename from Editor/Scripts/Shelves/icons/dynamiclights.png rename to Assets/Editor/Scripts/Shelves/icons/dynamiclights.png diff --git a/Editor/Scripts/Shelves/icons/entities.png b/Assets/Editor/Scripts/Shelves/icons/entities.png similarity index 100% rename from Editor/Scripts/Shelves/icons/entities.png rename to Assets/Editor/Scripts/Shelves/icons/entities.png diff --git a/Editor/Scripts/Shelves/icons/eye_adaptation_speed.png b/Assets/Editor/Scripts/Shelves/icons/eye_adaptation_speed.png similarity index 100% rename from Editor/Scripts/Shelves/icons/eye_adaptation_speed.png rename to Assets/Editor/Scripts/Shelves/icons/eye_adaptation_speed.png diff --git a/Editor/Scripts/Shelves/icons/fog.png b/Assets/Editor/Scripts/Shelves/icons/fog.png similarity index 100% rename from Editor/Scripts/Shelves/icons/fog.png rename to Assets/Editor/Scripts/Shelves/icons/fog.png diff --git a/Editor/Scripts/Shelves/icons/fogvolumes.png b/Assets/Editor/Scripts/Shelves/icons/fogvolumes.png similarity index 100% rename from Editor/Scripts/Shelves/icons/fogvolumes.png rename to Assets/Editor/Scripts/Shelves/icons/fogvolumes.png diff --git a/Editor/Scripts/Shelves/icons/freeze_particles.png b/Assets/Editor/Scripts/Shelves/icons/freeze_particles.png similarity index 100% rename from Editor/Scripts/Shelves/icons/freeze_particles.png rename to Assets/Editor/Scripts/Shelves/icons/freeze_particles.png diff --git a/Editor/Scripts/Shelves/icons/full_shading.png b/Assets/Editor/Scripts/Shelves/icons/full_shading.png similarity index 100% rename from Editor/Scripts/Shelves/icons/full_shading.png rename to Assets/Editor/Scripts/Shelves/icons/full_shading.png diff --git a/Editor/Scripts/Shelves/icons/gamma.png b/Assets/Editor/Scripts/Shelves/icons/gamma.png similarity index 100% rename from Editor/Scripts/Shelves/icons/gamma.png rename to Assets/Editor/Scripts/Shelves/icons/gamma.png diff --git a/Editor/Scripts/Shelves/icons/gi.png b/Assets/Editor/Scripts/Shelves/icons/gi.png similarity index 100% rename from Editor/Scripts/Shelves/icons/gi.png rename to Assets/Editor/Scripts/Shelves/icons/gi.png diff --git a/Editor/Scripts/Shelves/icons/lens_flare.png b/Assets/Editor/Scripts/Shelves/icons/lens_flare.png similarity index 100% rename from Editor/Scripts/Shelves/icons/lens_flare.png rename to Assets/Editor/Scripts/Shelves/icons/lens_flare.png diff --git a/Editor/Scripts/Shelves/icons/lighting_only.png b/Assets/Editor/Scripts/Shelves/icons/lighting_only.png similarity index 100% rename from Editor/Scripts/Shelves/icons/lighting_only.png rename to Assets/Editor/Scripts/Shelves/icons/lighting_only.png diff --git a/Editor/Scripts/Shelves/icons/lods.png b/Assets/Editor/Scripts/Shelves/icons/lods.png similarity index 100% rename from Editor/Scripts/Shelves/icons/lods.png rename to Assets/Editor/Scripts/Shelves/icons/lods.png diff --git a/Editor/Scripts/Shelves/icons/lsao.png b/Assets/Editor/Scripts/Shelves/icons/lsao.png similarity index 100% rename from Editor/Scripts/Shelves/icons/lsao.png rename to Assets/Editor/Scripts/Shelves/icons/lsao.png diff --git a/Editor/Scripts/Shelves/icons/lsao_toggle.png b/Assets/Editor/Scripts/Shelves/icons/lsao_toggle.png similarity index 100% rename from Editor/Scripts/Shelves/icons/lsao_toggle.png rename to Assets/Editor/Scripts/Shelves/icons/lsao_toggle.png diff --git a/Editor/Scripts/Shelves/icons/lsro.png b/Assets/Editor/Scripts/Shelves/icons/lsro.png similarity index 100% rename from Editor/Scripts/Shelves/icons/lsro.png rename to Assets/Editor/Scripts/Shelves/icons/lsro.png diff --git a/Editor/Scripts/Shelves/icons/normals.png b/Assets/Editor/Scripts/Shelves/icons/normals.png similarity index 100% rename from Editor/Scripts/Shelves/icons/normals.png rename to Assets/Editor/Scripts/Shelves/icons/normals.png diff --git a/Editor/Scripts/Shelves/icons/normals_x.png b/Assets/Editor/Scripts/Shelves/icons/normals_x.png similarity index 100% rename from Editor/Scripts/Shelves/icons/normals_x.png rename to Assets/Editor/Scripts/Shelves/icons/normals_x.png diff --git a/Editor/Scripts/Shelves/icons/normals_y.png b/Assets/Editor/Scripts/Shelves/icons/normals_y.png similarity index 100% rename from Editor/Scripts/Shelves/icons/normals_y.png rename to Assets/Editor/Scripts/Shelves/icons/normals_y.png diff --git a/Editor/Scripts/Shelves/icons/normals_z.png b/Assets/Editor/Scripts/Shelves/icons/normals_z.png similarity index 100% rename from Editor/Scripts/Shelves/icons/normals_z.png rename to Assets/Editor/Scripts/Shelves/icons/normals_z.png diff --git a/Editor/Scripts/Shelves/icons/ocean.png b/Assets/Editor/Scripts/Shelves/icons/ocean.png similarity index 100% rename from Editor/Scripts/Shelves/icons/ocean.png rename to Assets/Editor/Scripts/Shelves/icons/ocean.png diff --git a/Editor/Scripts/Shelves/icons/particles.png b/Assets/Editor/Scripts/Shelves/icons/particles.png similarity index 100% rename from Editor/Scripts/Shelves/icons/particles.png rename to Assets/Editor/Scripts/Shelves/icons/particles.png diff --git a/Editor/Scripts/Shelves/icons/particles_bounds.png b/Assets/Editor/Scripts/Shelves/icons/particles_bounds.png similarity index 100% rename from Editor/Scripts/Shelves/icons/particles_bounds.png rename to Assets/Editor/Scripts/Shelves/icons/particles_bounds.png diff --git a/Editor/Scripts/Shelves/icons/particles_off.png b/Assets/Editor/Scripts/Shelves/icons/particles_off.png similarity index 100% rename from Editor/Scripts/Shelves/icons/particles_off.png rename to Assets/Editor/Scripts/Shelves/icons/particles_off.png diff --git a/Editor/Scripts/Shelves/icons/particles_overdraw.png b/Assets/Editor/Scripts/Shelves/icons/particles_overdraw.png similarity index 100% rename from Editor/Scripts/Shelves/icons/particles_overdraw.png rename to Assets/Editor/Scripts/Shelves/icons/particles_overdraw.png diff --git a/Editor/Scripts/Shelves/icons/particles_screen_coverage.png b/Assets/Editor/Scripts/Shelves/icons/particles_screen_coverage.png similarity index 100% rename from Editor/Scripts/Shelves/icons/particles_screen_coverage.png rename to Assets/Editor/Scripts/Shelves/icons/particles_screen_coverage.png diff --git a/Editor/Scripts/Shelves/icons/placeholder.png b/Assets/Editor/Scripts/Shelves/icons/placeholder.png similarity index 100% rename from Editor/Scripts/Shelves/icons/placeholder.png rename to Assets/Editor/Scripts/Shelves/icons/placeholder.png diff --git a/Editor/Scripts/Shelves/icons/prefab.png b/Assets/Editor/Scripts/Shelves/icons/prefab.png similarity index 100% rename from Editor/Scripts/Shelves/icons/prefab.png rename to Assets/Editor/Scripts/Shelves/icons/prefab.png diff --git a/Editor/Scripts/Shelves/icons/reflections.png b/Assets/Editor/Scripts/Shelves/icons/reflections.png similarity index 100% rename from Editor/Scripts/Shelves/icons/reflections.png rename to Assets/Editor/Scripts/Shelves/icons/reflections.png diff --git a/Editor/Scripts/Shelves/icons/reset.png b/Assets/Editor/Scripts/Shelves/icons/reset.png similarity index 100% rename from Editor/Scripts/Shelves/icons/reset.png rename to Assets/Editor/Scripts/Shelves/icons/reset.png diff --git a/Editor/Scripts/Shelves/icons/selfocc.png b/Assets/Editor/Scripts/Shelves/icons/selfocc.png similarity index 100% rename from Editor/Scripts/Shelves/icons/selfocc.png rename to Assets/Editor/Scripts/Shelves/icons/selfocc.png diff --git a/Editor/Scripts/Shelves/icons/shaded_wireframe.png b/Assets/Editor/Scripts/Shelves/icons/shaded_wireframe.png similarity index 100% rename from Editor/Scripts/Shelves/icons/shaded_wireframe.png rename to Assets/Editor/Scripts/Shelves/icons/shaded_wireframe.png diff --git a/Editor/Scripts/Shelves/icons/shadows.png b/Assets/Editor/Scripts/Shelves/icons/shadows.png similarity index 100% rename from Editor/Scripts/Shelves/icons/shadows.png rename to Assets/Editor/Scripts/Shelves/icons/shadows.png diff --git a/Editor/Scripts/Shelves/icons/showlines.png b/Assets/Editor/Scripts/Shelves/icons/showlines.png similarity index 100% rename from Editor/Scripts/Shelves/icons/showlines.png rename to Assets/Editor/Scripts/Shelves/icons/showlines.png diff --git a/Editor/Scripts/Shelves/icons/sky.png b/Assets/Editor/Scripts/Shelves/icons/sky.png similarity index 100% rename from Editor/Scripts/Shelves/icons/sky.png rename to Assets/Editor/Scripts/Shelves/icons/sky.png diff --git a/Editor/Scripts/Shelves/icons/spec_acc.png b/Assets/Editor/Scripts/Shelves/icons/spec_acc.png similarity index 100% rename from Editor/Scripts/Shelves/icons/spec_acc.png rename to Assets/Editor/Scripts/Shelves/icons/spec_acc.png diff --git a/Editor/Scripts/Shelves/icons/spec_lum.png b/Assets/Editor/Scripts/Shelves/icons/spec_lum.png similarity index 100% rename from Editor/Scripts/Shelves/icons/spec_lum.png rename to Assets/Editor/Scripts/Shelves/icons/spec_lum.png diff --git a/Editor/Scripts/Shelves/icons/spec_occ.png b/Assets/Editor/Scripts/Shelves/icons/spec_occ.png similarity index 100% rename from Editor/Scripts/Shelves/icons/spec_occ.png rename to Assets/Editor/Scripts/Shelves/icons/spec_occ.png diff --git a/Editor/Scripts/Shelves/icons/ssao.png b/Assets/Editor/Scripts/Shelves/icons/ssao.png similarity index 100% rename from Editor/Scripts/Shelves/icons/ssao.png rename to Assets/Editor/Scripts/Shelves/icons/ssao.png diff --git a/Editor/Scripts/Shelves/icons/ssdo.png b/Assets/Editor/Scripts/Shelves/icons/ssdo.png similarity index 100% rename from Editor/Scripts/Shelves/icons/ssdo.png rename to Assets/Editor/Scripts/Shelves/icons/ssdo.png diff --git a/Editor/Scripts/Shelves/icons/ssdo_toggle.png b/Assets/Editor/Scripts/Shelves/icons/ssdo_toggle.png similarity index 100% rename from Editor/Scripts/Shelves/icons/ssdo_toggle.png rename to Assets/Editor/Scripts/Shelves/icons/ssdo_toggle.png diff --git a/Editor/Scripts/Shelves/icons/sun.big.png b/Assets/Editor/Scripts/Shelves/icons/sun.big.png similarity index 100% rename from Editor/Scripts/Shelves/icons/sun.big.png rename to Assets/Editor/Scripts/Shelves/icons/sun.big.png diff --git a/Editor/Scripts/Shelves/icons/tangents.png b/Assets/Editor/Scripts/Shelves/icons/tangents.png similarity index 100% rename from Editor/Scripts/Shelves/icons/tangents.png rename to Assets/Editor/Scripts/Shelves/icons/tangents.png diff --git a/Editor/Scripts/Shelves/icons/terrain.png b/Assets/Editor/Scripts/Shelves/icons/terrain.png similarity index 100% rename from Editor/Scripts/Shelves/icons/terrain.png rename to Assets/Editor/Scripts/Shelves/icons/terrain.png diff --git a/Editor/Scripts/Shelves/icons/time_scale_double.png b/Assets/Editor/Scripts/Shelves/icons/time_scale_double.png similarity index 100% rename from Editor/Scripts/Shelves/icons/time_scale_double.png rename to Assets/Editor/Scripts/Shelves/icons/time_scale_double.png diff --git a/Editor/Scripts/Shelves/icons/time_scale_frozen.png b/Assets/Editor/Scripts/Shelves/icons/time_scale_frozen.png similarity index 100% rename from Editor/Scripts/Shelves/icons/time_scale_frozen.png rename to Assets/Editor/Scripts/Shelves/icons/time_scale_frozen.png diff --git a/Editor/Scripts/Shelves/icons/time_scale_half.png b/Assets/Editor/Scripts/Shelves/icons/time_scale_half.png similarity index 100% rename from Editor/Scripts/Shelves/icons/time_scale_half.png rename to Assets/Editor/Scripts/Shelves/icons/time_scale_half.png diff --git a/Editor/Scripts/Shelves/icons/time_scale_quarter.png b/Assets/Editor/Scripts/Shelves/icons/time_scale_quarter.png similarity index 100% rename from Editor/Scripts/Shelves/icons/time_scale_quarter.png rename to Assets/Editor/Scripts/Shelves/icons/time_scale_quarter.png diff --git a/Editor/Scripts/Shelves/icons/time_scale_tenth.png b/Assets/Editor/Scripts/Shelves/icons/time_scale_tenth.png similarity index 100% rename from Editor/Scripts/Shelves/icons/time_scale_tenth.png rename to Assets/Editor/Scripts/Shelves/icons/time_scale_tenth.png diff --git a/Editor/Scripts/Shelves/icons/tod.png b/Assets/Editor/Scripts/Shelves/icons/tod.png similarity index 100% rename from Editor/Scripts/Shelves/icons/tod.png rename to Assets/Editor/Scripts/Shelves/icons/tod.png diff --git a/Editor/Scripts/Shelves/icons/translucency.png b/Assets/Editor/Scripts/Shelves/icons/translucency.png similarity index 100% rename from Editor/Scripts/Shelves/icons/translucency.png rename to Assets/Editor/Scripts/Shelves/icons/translucency.png diff --git a/Editor/Scripts/Shelves/icons/transparency.png b/Assets/Editor/Scripts/Shelves/icons/transparency.png similarity index 100% rename from Editor/Scripts/Shelves/icons/transparency.png rename to Assets/Editor/Scripts/Shelves/icons/transparency.png diff --git a/Editor/Scripts/Shelves/icons/valid_albedo.png b/Assets/Editor/Scripts/Shelves/icons/valid_albedo.png similarity index 100% rename from Editor/Scripts/Shelves/icons/valid_albedo.png rename to Assets/Editor/Scripts/Shelves/icons/valid_albedo.png diff --git a/Editor/Scripts/Shelves/icons/valid_spec_lum.png b/Assets/Editor/Scripts/Shelves/icons/valid_spec_lum.png similarity index 100% rename from Editor/Scripts/Shelves/icons/valid_spec_lum.png rename to Assets/Editor/Scripts/Shelves/icons/valid_spec_lum.png diff --git a/Editor/Scripts/Shelves/icons/vegetation.png b/Assets/Editor/Scripts/Shelves/icons/vegetation.png similarity index 100% rename from Editor/Scripts/Shelves/icons/vegetation.png rename to Assets/Editor/Scripts/Shelves/icons/vegetation.png diff --git a/Editor/Scripts/Shelves/icons/vertex_normals.png b/Assets/Editor/Scripts/Shelves/icons/vertex_normals.png similarity index 100% rename from Editor/Scripts/Shelves/icons/vertex_normals.png rename to Assets/Editor/Scripts/Shelves/icons/vertex_normals.png diff --git a/Editor/Scripts/Shelves/icons/vis_area.png b/Assets/Editor/Scripts/Shelves/icons/vis_area.png similarity index 100% rename from Editor/Scripts/Shelves/icons/vis_area.png rename to Assets/Editor/Scripts/Shelves/icons/vis_area.png diff --git a/Editor/Scripts/Shelves/icons/water_volume.png b/Assets/Editor/Scripts/Shelves/icons/water_volume.png similarity index 100% rename from Editor/Scripts/Shelves/icons/water_volume.png rename to Assets/Editor/Scripts/Shelves/icons/water_volume.png diff --git a/Editor/Scripts/Shelves/icons/wind.png b/Assets/Editor/Scripts/Shelves/icons/wind.png similarity index 100% rename from Editor/Scripts/Shelves/icons/wind.png rename to Assets/Editor/Scripts/Shelves/icons/wind.png diff --git a/Editor/Scripts/Shelves/icons/wireframe.png b/Assets/Editor/Scripts/Shelves/icons/wireframe.png similarity index 100% rename from Editor/Scripts/Shelves/icons/wireframe.png rename to Assets/Editor/Scripts/Shelves/icons/wireframe.png diff --git a/Editor/Scripts/TrackView/example.py b/Assets/Editor/Scripts/TrackView/example.py similarity index 100% rename from Editor/Scripts/TrackView/example.py rename to Assets/Editor/Scripts/TrackView/example.py diff --git a/Editor/Scripts/editor_script_validation.py b/Assets/Editor/Scripts/editor_script_validation.py similarity index 100% rename from Editor/Scripts/editor_script_validation.py rename to Assets/Editor/Scripts/editor_script_validation.py diff --git a/Editor/Scripts/export_all_project_levels.py b/Assets/Editor/Scripts/export_all_project_levels.py similarity index 100% rename from Editor/Scripts/export_all_project_levels.py rename to Assets/Editor/Scripts/export_all_project_levels.py diff --git a/Editor/Scripts/generatelod.py b/Assets/Editor/Scripts/generatelod.py similarity index 100% rename from Editor/Scripts/generatelod.py rename to Assets/Editor/Scripts/generatelod.py diff --git a/Editor/Scripts/rename_cgf.py b/Assets/Editor/Scripts/rename_cgf.py similarity index 100% rename from Editor/Scripts/rename_cgf.py rename to Assets/Editor/Scripts/rename_cgf.py diff --git a/Editor/Scripts/select_story_anim_objects.py b/Assets/Editor/Scripts/select_story_anim_objects.py similarity index 100% rename from Editor/Scripts/select_story_anim_objects.py rename to Assets/Editor/Scripts/select_story_anim_objects.py diff --git a/Editor/Scripts/tools_shelf_actions.py b/Assets/Editor/Scripts/tools_shelf_actions.py similarity index 100% rename from Editor/Scripts/tools_shelf_actions.py rename to Assets/Editor/Scripts/tools_shelf_actions.py diff --git a/Editor/SoundTemplates.xml b/Assets/Editor/SoundTemplates.xml similarity index 100% rename from Editor/SoundTemplates.xml rename to Assets/Editor/SoundTemplates.xml diff --git a/Editor/Styles/AssetImporterWindow.qss b/Assets/Editor/Styles/AssetImporterWindow.qss similarity index 100% rename from Editor/Styles/AssetImporterWindow.qss rename to Assets/Editor/Styles/AssetImporterWindow.qss diff --git a/Editor/Styles/AssetProcessor.qss b/Assets/Editor/Styles/AssetProcessor.qss similarity index 100% rename from Editor/Styles/AssetProcessor.qss rename to Assets/Editor/Styles/AssetProcessor.qss diff --git a/Editor/Styles/AssetProcessorGlobalStyleSheet.qss b/Assets/Editor/Styles/AssetProcessorGlobalStyleSheet.qss similarity index 100% rename from Editor/Styles/AssetProcessorGlobalStyleSheet.qss rename to Assets/Editor/Styles/AssetProcessorGlobalStyleSheet.qss diff --git a/Editor/Styles/AssetProcessorGlobalStyleSheetVariables.json b/Assets/Editor/Styles/AssetProcessorGlobalStyleSheetVariables.json similarity index 100% rename from Editor/Styles/AssetProcessorGlobalStyleSheetVariables.json rename to Assets/Editor/Styles/AssetProcessorGlobalStyleSheetVariables.json diff --git a/Editor/Styles/CryDark.cjstyles b/Assets/Editor/Styles/CryDark.cjstyles similarity index 100% rename from Editor/Styles/CryDark.cjstyles rename to Assets/Editor/Styles/CryDark.cjstyles diff --git a/Editor/Styles/CryLight.cjstyles b/Assets/Editor/Styles/CryLight.cjstyles similarity index 100% rename from Editor/Styles/CryLight.cjstyles rename to Assets/Editor/Styles/CryLight.cjstyles diff --git a/Editor/Styles/MultiMeshSelectionPane.qss b/Assets/Editor/Styles/MultiMeshSelectionPane.qss similarity index 100% rename from Editor/Styles/MultiMeshSelectionPane.qss rename to Assets/Editor/Styles/MultiMeshSelectionPane.qss diff --git a/Editor/Styles/Office2007.dll b/Assets/Editor/Styles/Office2007.dll similarity index 100% rename from Editor/Styles/Office2007.dll rename to Assets/Editor/Styles/Office2007.dll diff --git a/Editor/Styles/Office2007Black.dll b/Assets/Editor/Styles/Office2007Black.dll similarity index 100% rename from Editor/Styles/Office2007Black.dll rename to Assets/Editor/Styles/Office2007Black.dll diff --git a/Editor/Styles/Office2007Silver.dll b/Assets/Editor/Styles/Office2007Silver.dll similarity index 100% rename from Editor/Styles/Office2007Silver.dll rename to Assets/Editor/Styles/Office2007Silver.dll diff --git a/Editor/Styles/StyleSheetImages/Validation_icon.png b/Assets/Editor/Styles/StyleSheetImages/Validation_icon.png similarity index 100% rename from Editor/Styles/StyleSheetImages/Validation_icon.png rename to Assets/Editor/Styles/StyleSheetImages/Validation_icon.png diff --git a/Editor/Styles/StyleSheetImages/about_dark.png b/Assets/Editor/Styles/StyleSheetImages/about_dark.png similarity index 100% rename from Editor/Styles/StyleSheetImages/about_dark.png rename to Assets/Editor/Styles/StyleSheetImages/about_dark.png diff --git a/Editor/Styles/StyleSheetImages/about_light.png b/Assets/Editor/Styles/StyleSheetImages/about_light.png similarity index 100% rename from Editor/Styles/StyleSheetImages/about_light.png rename to Assets/Editor/Styles/StyleSheetImages/about_light.png diff --git a/Editor/Styles/StyleSheetImages/arrow_down_V2.png b/Assets/Editor/Styles/StyleSheetImages/arrow_down_V2.png similarity index 100% rename from Editor/Styles/StyleSheetImages/arrow_down_V2.png rename to Assets/Editor/Styles/StyleSheetImages/arrow_down_V2.png diff --git a/Editor/Styles/StyleSheetImages/arrow_left_V2.png b/Assets/Editor/Styles/StyleSheetImages/arrow_left_V2.png similarity index 100% rename from Editor/Styles/StyleSheetImages/arrow_left_V2.png rename to Assets/Editor/Styles/StyleSheetImages/arrow_left_V2.png diff --git a/Editor/Styles/StyleSheetImages/arrow_right_V2.png b/Assets/Editor/Styles/StyleSheetImages/arrow_right_V2.png similarity index 100% rename from Editor/Styles/StyleSheetImages/arrow_right_V2.png rename to Assets/Editor/Styles/StyleSheetImages/arrow_right_V2.png diff --git a/Editor/Styles/StyleSheetImages/arrow_up_V2.png b/Assets/Editor/Styles/StyleSheetImages/arrow_up_V2.png similarity index 100% rename from Editor/Styles/StyleSheetImages/arrow_up_V2.png rename to Assets/Editor/Styles/StyleSheetImages/arrow_up_V2.png diff --git a/Editor/Styles/StyleSheetImages/checkbox_checked.png b/Assets/Editor/Styles/StyleSheetImages/checkbox_checked.png similarity index 100% rename from Editor/Styles/StyleSheetImages/checkbox_checked.png rename to Assets/Editor/Styles/StyleSheetImages/checkbox_checked.png diff --git a/Editor/Styles/StyleSheetImages/checkbox_checked_disabled.png b/Assets/Editor/Styles/StyleSheetImages/checkbox_checked_disabled.png similarity index 100% rename from Editor/Styles/StyleSheetImages/checkbox_checked_disabled.png rename to Assets/Editor/Styles/StyleSheetImages/checkbox_checked_disabled.png diff --git a/Editor/Styles/StyleSheetImages/checkbox_checked_hover.png b/Assets/Editor/Styles/StyleSheetImages/checkbox_checked_hover.png similarity index 100% rename from Editor/Styles/StyleSheetImages/checkbox_checked_hover.png rename to Assets/Editor/Styles/StyleSheetImages/checkbox_checked_hover.png diff --git a/Editor/Styles/StyleSheetImages/checkbox_checked_pressed.png b/Assets/Editor/Styles/StyleSheetImages/checkbox_checked_pressed.png similarity index 100% rename from Editor/Styles/StyleSheetImages/checkbox_checked_pressed.png rename to Assets/Editor/Styles/StyleSheetImages/checkbox_checked_pressed.png diff --git a/Editor/Styles/StyleSheetImages/checkbox_indeterminate_hover .png b/Assets/Editor/Styles/StyleSheetImages/checkbox_indeterminate_hover .png similarity index 100% rename from Editor/Styles/StyleSheetImages/checkbox_indeterminate_hover .png rename to Assets/Editor/Styles/StyleSheetImages/checkbox_indeterminate_hover .png diff --git a/Editor/Styles/StyleSheetImages/checkbox_indeterminate_pressed.png b/Assets/Editor/Styles/StyleSheetImages/checkbox_indeterminate_pressed.png similarity index 100% rename from Editor/Styles/StyleSheetImages/checkbox_indeterminate_pressed.png rename to Assets/Editor/Styles/StyleSheetImages/checkbox_indeterminate_pressed.png diff --git a/Editor/Styles/StyleSheetImages/checkbox_unchecked.png b/Assets/Editor/Styles/StyleSheetImages/checkbox_unchecked.png similarity index 100% rename from Editor/Styles/StyleSheetImages/checkbox_unchecked.png rename to Assets/Editor/Styles/StyleSheetImages/checkbox_unchecked.png diff --git a/Editor/Styles/StyleSheetImages/checkbox_unchecked_disabled.png b/Assets/Editor/Styles/StyleSheetImages/checkbox_unchecked_disabled.png similarity index 100% rename from Editor/Styles/StyleSheetImages/checkbox_unchecked_disabled.png rename to Assets/Editor/Styles/StyleSheetImages/checkbox_unchecked_disabled.png diff --git a/Editor/Styles/StyleSheetImages/checkbox_unchecked_hover.png b/Assets/Editor/Styles/StyleSheetImages/checkbox_unchecked_hover.png similarity index 100% rename from Editor/Styles/StyleSheetImages/checkbox_unchecked_hover.png rename to Assets/Editor/Styles/StyleSheetImages/checkbox_unchecked_hover.png diff --git a/Editor/Styles/StyleSheetImages/checkbox_unchecked_pressed.png b/Assets/Editor/Styles/StyleSheetImages/checkbox_unchecked_pressed.png similarity index 100% rename from Editor/Styles/StyleSheetImages/checkbox_unchecked_pressed.png rename to Assets/Editor/Styles/StyleSheetImages/checkbox_unchecked_pressed.png diff --git a/Editor/Styles/StyleSheetImages/dropdown_arrow.png b/Assets/Editor/Styles/StyleSheetImages/dropdown_arrow.png similarity index 100% rename from Editor/Styles/StyleSheetImages/dropdown_arrow.png rename to Assets/Editor/Styles/StyleSheetImages/dropdown_arrow.png diff --git a/Editor/Styles/StyleSheetImages/error_icon.png b/Assets/Editor/Styles/StyleSheetImages/error_icon.png similarity index 100% rename from Editor/Styles/StyleSheetImages/error_icon.png rename to Assets/Editor/Styles/StyleSheetImages/error_icon.png diff --git a/Editor/Styles/StyleSheetImages/help.png b/Assets/Editor/Styles/StyleSheetImages/help.png similarity index 100% rename from Editor/Styles/StyleSheetImages/help.png rename to Assets/Editor/Styles/StyleSheetImages/help.png diff --git a/Editor/Styles/StyleSheetImages/info_icon.png b/Assets/Editor/Styles/StyleSheetImages/info_icon.png similarity index 100% rename from Editor/Styles/StyleSheetImages/info_icon.png rename to Assets/Editor/Styles/StyleSheetImages/info_icon.png diff --git a/Editor/Styles/StyleSheetImages/radiobutton_checked.png b/Assets/Editor/Styles/StyleSheetImages/radiobutton_checked.png similarity index 100% rename from Editor/Styles/StyleSheetImages/radiobutton_checked.png rename to Assets/Editor/Styles/StyleSheetImages/radiobutton_checked.png diff --git a/Editor/Styles/StyleSheetImages/radiobutton_checked_disabled.png b/Assets/Editor/Styles/StyleSheetImages/radiobutton_checked_disabled.png similarity index 100% rename from Editor/Styles/StyleSheetImages/radiobutton_checked_disabled.png rename to Assets/Editor/Styles/StyleSheetImages/radiobutton_checked_disabled.png diff --git a/Editor/Styles/StyleSheetImages/radiobutton_unchecked.png b/Assets/Editor/Styles/StyleSheetImages/radiobutton_unchecked.png similarity index 100% rename from Editor/Styles/StyleSheetImages/radiobutton_unchecked.png rename to Assets/Editor/Styles/StyleSheetImages/radiobutton_unchecked.png diff --git a/Editor/Styles/StyleSheetImages/radiobutton_unchecked_disabled.png b/Assets/Editor/Styles/StyleSheetImages/radiobutton_unchecked_disabled.png similarity index 100% rename from Editor/Styles/StyleSheetImages/radiobutton_unchecked_disabled.png rename to Assets/Editor/Styles/StyleSheetImages/radiobutton_unchecked_disabled.png diff --git a/Editor/Styles/StyleSheetImages/spinbox_down.png b/Assets/Editor/Styles/StyleSheetImages/spinbox_down.png similarity index 100% rename from Editor/Styles/StyleSheetImages/spinbox_down.png rename to Assets/Editor/Styles/StyleSheetImages/spinbox_down.png diff --git a/Editor/Styles/StyleSheetImages/spinbox_up.png b/Assets/Editor/Styles/StyleSheetImages/spinbox_up.png similarity index 100% rename from Editor/Styles/StyleSheetImages/spinbox_up.png rename to Assets/Editor/Styles/StyleSheetImages/spinbox_up.png diff --git a/Editor/Styles/StyleSheetImages/treeview_arrow_down.png b/Assets/Editor/Styles/StyleSheetImages/treeview_arrow_down.png similarity index 100% rename from Editor/Styles/StyleSheetImages/treeview_arrow_down.png rename to Assets/Editor/Styles/StyleSheetImages/treeview_arrow_down.png diff --git a/Editor/Styles/StyleSheetImages/treeview_arrow_right.png b/Assets/Editor/Styles/StyleSheetImages/treeview_arrow_right.png similarity index 100% rename from Editor/Styles/StyleSheetImages/treeview_arrow_right.png rename to Assets/Editor/Styles/StyleSheetImages/treeview_arrow_right.png diff --git a/Editor/Styles/stylesheet_Dark.qss b/Assets/Editor/Styles/stylesheet_Dark.qss similarity index 100% rename from Editor/Styles/stylesheet_Dark.qss rename to Assets/Editor/Styles/stylesheet_Dark.qss diff --git a/Editor/Styles/stylesheet_Light.qss b/Assets/Editor/Styles/stylesheet_Light.qss similarity index 100% rename from Editor/Styles/stylesheet_Light.qss rename to Assets/Editor/Styles/stylesheet_Light.qss diff --git a/Editor/ToolBox.xml b/Assets/Editor/ToolBox.xml similarity index 100% rename from Editor/ToolBox.xml rename to Assets/Editor/ToolBox.xml diff --git a/Editor/Translation/scriptcanvas_en_us.ts b/Assets/Editor/Translation/scriptcanvas_en_us.ts similarity index 100% rename from Editor/Translation/scriptcanvas_en_us.ts rename to Assets/Editor/Translation/scriptcanvas_en_us.ts diff --git a/Editor/UI/AssetBrowserRibbon.xml b/Assets/Editor/UI/AssetBrowserRibbon.xml similarity index 100% rename from Editor/UI/AssetBrowserRibbon.xml rename to Assets/Editor/UI/AssetBrowserRibbon.xml diff --git a/Editor/UI/Icons/AddSel.png b/Assets/Editor/UI/Icons/AddSel.png similarity index 100% rename from Editor/UI/Icons/AddSel.png rename to Assets/Editor/UI/Icons/AddSel.png diff --git a/Editor/UI/Icons/AlObjGrid.png b/Assets/Editor/UI/Icons/AlObjGrid.png similarity index 100% rename from Editor/UI/Icons/AlObjGrid.png rename to Assets/Editor/UI/Icons/AlObjGrid.png diff --git a/Editor/UI/Icons/AlObjSurf.png b/Assets/Editor/UI/Icons/AlObjSurf.png similarity index 100% rename from Editor/UI/Icons/AlObjSurf.png rename to Assets/Editor/UI/Icons/AlObjSurf.png diff --git a/Editor/UI/Icons/AlSelect.png b/Assets/Editor/UI/Icons/AlSelect.png similarity index 100% rename from Editor/UI/Icons/AlSelect.png rename to Assets/Editor/UI/Icons/AlSelect.png diff --git a/Editor/UI/Icons/Animation Graph.png b/Assets/Editor/UI/Icons/Animation Graph.png similarity index 100% rename from Editor/UI/Icons/Animation Graph.png rename to Assets/Editor/UI/Icons/Animation Graph.png diff --git a/Editor/UI/Icons/Asset Browser.png b/Assets/Editor/UI/Icons/Asset Browser.png similarity index 100% rename from Editor/UI/Icons/Asset Browser.png rename to Assets/Editor/UI/Icons/Asset Browser.png diff --git a/Editor/UI/Icons/AssetBrowserCheckers.png b/Assets/Editor/UI/Icons/AssetBrowserCheckers.png similarity index 100% rename from Editor/UI/Icons/AssetBrowserCheckers.png rename to Assets/Editor/UI/Icons/AssetBrowserCheckers.png diff --git a/Editor/UI/Icons/AssetBrowserFilterPresets.png b/Assets/Editor/UI/Icons/AssetBrowserFilterPresets.png similarity index 100% rename from Editor/UI/Icons/AssetBrowserFilterPresets.png rename to Assets/Editor/UI/Icons/AssetBrowserFilterPresets.png diff --git a/Editor/UI/Icons/AssetBrowserFromViewportSel.png b/Assets/Editor/UI/Icons/AssetBrowserFromViewportSel.png similarity index 100% rename from Editor/UI/Icons/AssetBrowserFromViewportSel.png rename to Assets/Editor/UI/Icons/AssetBrowserFromViewportSel.png diff --git a/Editor/UI/Icons/AssetBrowserRefresh.png b/Assets/Editor/UI/Icons/AssetBrowserRefresh.png similarity index 100% rename from Editor/UI/Icons/AssetBrowserRefresh.png rename to Assets/Editor/UI/Icons/AssetBrowserRefresh.png diff --git a/Editor/UI/Icons/AssetBrowserSelectInViewport.png b/Assets/Editor/UI/Icons/AssetBrowserSelectInViewport.png similarity index 100% rename from Editor/UI/Icons/AssetBrowserSelectInViewport.png rename to Assets/Editor/UI/Icons/AssetBrowserSelectInViewport.png diff --git a/Editor/UI/Icons/AssetBrowserSound.png b/Assets/Editor/UI/Icons/AssetBrowserSound.png similarity index 100% rename from Editor/UI/Icons/AssetBrowserSound.png rename to Assets/Editor/UI/Icons/AssetBrowserSound.png diff --git a/Editor/UI/Icons/AssetBrowserThumbInvalid.png b/Assets/Editor/UI/Icons/AssetBrowserThumbInvalid.png similarity index 100% rename from Editor/UI/Icons/AssetBrowserThumbInvalid.png rename to Assets/Editor/UI/Icons/AssetBrowserThumbInvalid.png diff --git a/Editor/UI/Icons/AssetBrowserThumbLoading.png b/Assets/Editor/UI/Icons/AssetBrowserThumbLoading.png similarity index 100% rename from Editor/UI/Icons/AssetBrowserThumbLoading.png rename to Assets/Editor/UI/Icons/AssetBrowserThumbLoading.png diff --git a/Editor/UI/Icons/AssetBrowserTooltipShadow.png b/Assets/Editor/UI/Icons/AssetBrowserTooltipShadow.png similarity index 100% rename from Editor/UI/Icons/AssetBrowserTooltipShadow.png rename to Assets/Editor/UI/Icons/AssetBrowserTooltipShadow.png diff --git a/Editor/UI/Icons/AssetFav.png b/Assets/Editor/UI/Icons/AssetFav.png similarity index 100% rename from Editor/UI/Icons/AssetFav.png rename to Assets/Editor/UI/Icons/AssetFav.png diff --git a/Editor/UI/Icons/AssetTag.png b/Assets/Editor/UI/Icons/AssetTag.png similarity index 100% rename from Editor/UI/Icons/AssetTag.png rename to Assets/Editor/UI/Icons/AssetTag.png diff --git a/Editor/UI/Icons/Attach.png b/Assets/Editor/UI/Icons/Attach.png similarity index 100% rename from Editor/UI/Icons/Attach.png rename to Assets/Editor/UI/Icons/Attach.png diff --git a/Editor/UI/Icons/AutoSync.png b/Assets/Editor/UI/Icons/AutoSync.png similarity index 100% rename from Editor/UI/Icons/AutoSync.png rename to Assets/Editor/UI/Icons/AutoSync.png diff --git a/Editor/UI/Icons/Character Tool.png b/Assets/Editor/UI/Icons/Character Tool.png similarity index 100% rename from Editor/UI/Icons/Character Tool.png rename to Assets/Editor/UI/Icons/Character Tool.png diff --git a/Editor/UI/Icons/Clone.png b/Assets/Editor/UI/Icons/Clone.png similarity index 100% rename from Editor/UI/Icons/Clone.png rename to Assets/Editor/UI/Icons/Clone.png diff --git a/Editor/UI/Icons/CloseGroup.png b/Assets/Editor/UI/Icons/CloseGroup.png similarity index 100% rename from Editor/UI/Icons/CloseGroup.png rename to Assets/Editor/UI/Icons/CloseGroup.png diff --git a/Editor/UI/Icons/Cloud.png b/Assets/Editor/UI/Icons/Cloud.png similarity index 100% rename from Editor/UI/Icons/Cloud.png rename to Assets/Editor/UI/Icons/Cloud.png diff --git a/Editor/UI/Icons/ConOpt.png b/Assets/Editor/UI/Icons/ConOpt.png similarity index 100% rename from Editor/UI/Icons/ConOpt.png rename to Assets/Editor/UI/Icons/ConOpt.png diff --git a/Editor/UI/Icons/ConvertSelToBrushes.png b/Assets/Editor/UI/Icons/ConvertSelToBrushes.png similarity index 100% rename from Editor/UI/Icons/ConvertSelToBrushes.png rename to Assets/Editor/UI/Icons/ConvertSelToBrushes.png diff --git a/Editor/UI/Icons/ConvertSelToDesigner.png b/Assets/Editor/UI/Icons/ConvertSelToDesigner.png similarity index 100% rename from Editor/UI/Icons/ConvertSelToDesigner.png rename to Assets/Editor/UI/Icons/ConvertSelToDesigner.png diff --git a/Editor/UI/Icons/ConvertSelToSimpleEntity.png b/Assets/Editor/UI/Icons/ConvertSelToSimpleEntity.png similarity index 100% rename from Editor/UI/Icons/ConvertSelToSimpleEntity.png rename to Assets/Editor/UI/Icons/ConvertSelToSimpleEntity.png diff --git a/Editor/UI/Icons/ConvertSelToStaticEntity.png b/Assets/Editor/UI/Icons/ConvertSelToStaticEntity.png similarity index 100% rename from Editor/UI/Icons/ConvertSelToStaticEntity.png rename to Assets/Editor/UI/Icons/ConvertSelToStaticEntity.png diff --git a/Editor/UI/Icons/Database View.png b/Assets/Editor/UI/Icons/Database View.png similarity index 100% rename from Editor/UI/Icons/Database View.png rename to Assets/Editor/UI/Icons/Database View.png diff --git a/Editor/UI/Icons/DelSel.png b/Assets/Editor/UI/Icons/DelSel.png similarity index 100% rename from Editor/UI/Icons/DelSel.png rename to Assets/Editor/UI/Icons/DelSel.png diff --git a/Editor/UI/Icons/Delete.png b/Assets/Editor/UI/Icons/Delete.png similarity index 100% rename from Editor/UI/Icons/Delete.png rename to Assets/Editor/UI/Icons/Delete.png diff --git a/Editor/UI/Icons/Detach.png b/Assets/Editor/UI/Icons/Detach.png similarity index 100% rename from Editor/UI/Icons/Detach.png rename to Assets/Editor/UI/Icons/Detach.png diff --git a/Editor/UI/Icons/Dialog Editor.png b/Assets/Editor/UI/Icons/Dialog Editor.png similarity index 100% rename from Editor/UI/Icons/Dialog Editor.png rename to Assets/Editor/UI/Icons/Dialog Editor.png diff --git a/Editor/UI/Icons/Edit Terrain Lighting.png b/Assets/Editor/UI/Icons/Edit Terrain Lighting.png similarity index 100% rename from Editor/UI/Icons/Edit Terrain Lighting.png rename to Assets/Editor/UI/Icons/Edit Terrain Lighting.png diff --git a/Editor/UI/Icons/Edit Vegetation.png b/Assets/Editor/UI/Icons/Edit Vegetation.png similarity index 100% rename from Editor/UI/Icons/Edit Vegetation.png rename to Assets/Editor/UI/Icons/Edit Vegetation.png diff --git a/Editor/UI/Icons/Editor Settings Manager.png b/Assets/Editor/UI/Icons/Editor Settings Manager.png similarity index 100% rename from Editor/UI/Icons/Editor Settings Manager.png rename to Assets/Editor/UI/Icons/Editor Settings Manager.png diff --git a/Editor/UI/Icons/Error Report.png b/Assets/Editor/UI/Icons/Error Report.png similarity index 100% rename from Editor/UI/Icons/Error Report.png rename to Assets/Editor/UI/Icons/Error Report.png diff --git a/Editor/UI/Icons/Export Block.png b/Assets/Editor/UI/Icons/Export Block.png similarity index 100% rename from Editor/UI/Icons/Export Block.png rename to Assets/Editor/UI/Icons/Export Block.png diff --git a/Editor/UI/Icons/Facial Editor.png b/Assets/Editor/UI/Icons/Facial Editor.png similarity index 100% rename from Editor/UI/Icons/Facial Editor.png rename to Assets/Editor/UI/Icons/Facial Editor.png diff --git a/Editor/UI/Icons/Fetch.png b/Assets/Editor/UI/Icons/Fetch.png similarity index 100% rename from Editor/UI/Icons/Fetch.png rename to Assets/Editor/UI/Icons/Fetch.png diff --git a/Editor/UI/Icons/Flatten Terrain.png b/Assets/Editor/UI/Icons/Flatten Terrain.png similarity index 100% rename from Editor/UI/Icons/Flatten Terrain.png rename to Assets/Editor/UI/Icons/Flatten Terrain.png diff --git a/Editor/UI/Icons/Follow.png b/Assets/Editor/UI/Icons/Follow.png similarity index 100% rename from Editor/UI/Icons/Follow.png rename to Assets/Editor/UI/Icons/Follow.png diff --git a/Editor/UI/Icons/FollowSnap.png b/Assets/Editor/UI/Icons/FollowSnap.png similarity index 100% rename from Editor/UI/Icons/FollowSnap.png rename to Assets/Editor/UI/Icons/FollowSnap.png diff --git a/Editor/UI/Icons/ForceSyncLevelToConsole.png b/Assets/Editor/UI/Icons/ForceSyncLevelToConsole.png similarity index 100% rename from Editor/UI/Icons/ForceSyncLevelToConsole.png rename to Assets/Editor/UI/Icons/ForceSyncLevelToConsole.png diff --git a/Editor/UI/Icons/Freeze.png b/Assets/Editor/UI/Icons/Freeze.png similarity index 100% rename from Editor/UI/Icons/Freeze.png rename to Assets/Editor/UI/Icons/Freeze.png diff --git a/Editor/UI/Icons/Front.png b/Assets/Editor/UI/Icons/Front.png similarity index 100% rename from Editor/UI/Icons/Front.png rename to Assets/Editor/UI/Icons/Front.png diff --git a/Editor/UI/Icons/GetPhysics.png b/Assets/Editor/UI/Icons/GetPhysics.png similarity index 100% rename from Editor/UI/Icons/GetPhysics.png rename to Assets/Editor/UI/Icons/GetPhysics.png diff --git a/Editor/UI/Icons/GoToObj.png b/Assets/Editor/UI/Icons/GoToObj.png similarity index 100% rename from Editor/UI/Icons/GoToObj.png rename to Assets/Editor/UI/Icons/GoToObj.png diff --git a/Editor/UI/Icons/GotoTagPoint.png b/Assets/Editor/UI/Icons/GotoTagPoint.png similarity index 100% rename from Editor/UI/Icons/GotoTagPoint.png rename to Assets/Editor/UI/Icons/GotoTagPoint.png diff --git a/Editor/UI/Icons/Group.png b/Assets/Editor/UI/Icons/Group.png similarity index 100% rename from Editor/UI/Icons/Group.png rename to Assets/Editor/UI/Icons/Group.png diff --git a/Editor/UI/Icons/Hide.png b/Assets/Editor/UI/Icons/Hide.png similarity index 100% rename from Editor/UI/Icons/Hide.png rename to Assets/Editor/UI/Icons/Hide.png diff --git a/Editor/UI/Icons/Hold.png b/Assets/Editor/UI/Icons/Hold.png similarity index 100% rename from Editor/UI/Icons/Hold.png rename to Assets/Editor/UI/Icons/Hold.png diff --git a/Editor/UI/Icons/Import Block.png b/Assets/Editor/UI/Icons/Import Block.png similarity index 100% rename from Editor/UI/Icons/Import Block.png rename to Assets/Editor/UI/Icons/Import Block.png diff --git a/Editor/UI/Icons/ImportExport Terrain Texture.png b/Assets/Editor/UI/Icons/ImportExport Terrain Texture.png similarity index 100% rename from Editor/UI/Icons/ImportExport Terrain Texture.png rename to Assets/Editor/UI/Icons/ImportExport Terrain Texture.png diff --git a/Editor/UI/Icons/Invert.png b/Assets/Editor/UI/Icons/Invert.png similarity index 100% rename from Editor/UI/Icons/Invert.png rename to Assets/Editor/UI/Icons/Invert.png diff --git a/Editor/UI/Icons/LNM Editor.png b/Assets/Editor/UI/Icons/LNM Editor.png similarity index 100% rename from Editor/UI/Icons/LNM Editor.png rename to Assets/Editor/UI/Icons/LNM Editor.png diff --git a/Editor/UI/Icons/LaunchLevel.png b/Assets/Editor/UI/Icons/LaunchLevel.png similarity index 100% rename from Editor/UI/Icons/LaunchLevel.png rename to Assets/Editor/UI/Icons/LaunchLevel.png diff --git a/Editor/UI/Icons/Layer Editor.png b/Assets/Editor/UI/Icons/Layer Editor.png similarity index 100% rename from Editor/UI/Icons/Layer Editor.png rename to Assets/Editor/UI/Icons/Layer Editor.png diff --git a/Editor/UI/Icons/Layer.png b/Assets/Editor/UI/Icons/Layer.png similarity index 100% rename from Editor/UI/Icons/Layer.png rename to Assets/Editor/UI/Icons/Layer.png diff --git a/Editor/UI/Icons/Left.png b/Assets/Editor/UI/Icons/Left.png similarity index 100% rename from Editor/UI/Icons/Left.png rename to Assets/Editor/UI/Icons/Left.png diff --git a/Editor/UI/Icons/Lighting Tool.png b/Assets/Editor/UI/Icons/Lighting Tool.png similarity index 100% rename from Editor/UI/Icons/Lighting Tool.png rename to Assets/Editor/UI/Icons/Lighting Tool.png diff --git a/Editor/UI/Icons/Link.png b/Assets/Editor/UI/Icons/Link.png similarity index 100% rename from Editor/UI/Icons/Link.png rename to Assets/Editor/UI/Icons/Link.png diff --git a/Editor/UI/Icons/LoadGameLevel.png b/Assets/Editor/UI/Icons/LoadGameLevel.png similarity index 100% rename from Editor/UI/Icons/LoadGameLevel.png rename to Assets/Editor/UI/Icons/LoadGameLevel.png diff --git a/Editor/UI/Icons/LoadGameLevel_16x16.png b/Assets/Editor/UI/Icons/LoadGameLevel_16x16.png similarity index 100% rename from Editor/UI/Icons/LoadGameLevel_16x16.png rename to Assets/Editor/UI/Icons/LoadGameLevel_16x16.png diff --git a/Editor/UI/Icons/LoadLevel.png b/Assets/Editor/UI/Icons/LoadLevel.png similarity index 100% rename from Editor/UI/Icons/LoadLevel.png rename to Assets/Editor/UI/Icons/LoadLevel.png diff --git a/Editor/UI/Icons/LoadSelObj.png b/Assets/Editor/UI/Icons/LoadSelObj.png similarity index 100% rename from Editor/UI/Icons/LoadSelObj.png rename to Assets/Editor/UI/Icons/LoadSelObj.png diff --git a/Editor/UI/Icons/LoadSelObj_16x16.png b/Assets/Editor/UI/Icons/LoadSelObj_16x16.png similarity index 100% rename from Editor/UI/Icons/LoadSelObj_16x16.png rename to Assets/Editor/UI/Icons/LoadSelObj_16x16.png diff --git a/Editor/UI/Icons/MakePref.png b/Assets/Editor/UI/Icons/MakePref.png similarity index 100% rename from Editor/UI/Icons/MakePref.png rename to Assets/Editor/UI/Icons/MakePref.png diff --git a/Editor/UI/Icons/Mannequin Editor.png b/Assets/Editor/UI/Icons/Mannequin Editor.png similarity index 100% rename from Editor/UI/Icons/Mannequin Editor.png rename to Assets/Editor/UI/Icons/Mannequin Editor.png diff --git a/Editor/UI/Icons/Mannequin.png b/Assets/Editor/UI/Icons/Mannequin.png similarity index 100% rename from Editor/UI/Icons/Mannequin.png rename to Assets/Editor/UI/Icons/Mannequin.png diff --git a/Editor/UI/Icons/Map.png b/Assets/Editor/UI/Icons/Map.png similarity index 100% rename from Editor/UI/Icons/Map.png rename to Assets/Editor/UI/Icons/Map.png diff --git a/Editor/UI/Icons/Material Editor.png b/Assets/Editor/UI/Icons/Material Editor.png similarity index 100% rename from Editor/UI/Icons/Material Editor.png rename to Assets/Editor/UI/Icons/Material Editor.png diff --git a/Editor/UI/Icons/Material_Editor_16x16.png b/Assets/Editor/UI/Icons/Material_Editor_16x16.png similarity index 100% rename from Editor/UI/Icons/Material_Editor_16x16.png rename to Assets/Editor/UI/Icons/Material_Editor_16x16.png diff --git a/Editor/UI/Icons/Measurement System Tool.png b/Assets/Editor/UI/Icons/Measurement System Tool.png similarity index 100% rename from Editor/UI/Icons/Measurement System Tool.png rename to Assets/Editor/UI/Icons/Measurement System Tool.png diff --git a/Editor/UI/Icons/Missing Asset Resolver.png b/Assets/Editor/UI/Icons/Missing Asset Resolver.png similarity index 100% rename from Editor/UI/Icons/Missing Asset Resolver.png rename to Assets/Editor/UI/Icons/Missing Asset Resolver.png diff --git a/Editor/UI/Icons/Model Preview.png b/Assets/Editor/UI/Icons/Model Preview.png similarity index 100% rename from Editor/UI/Icons/Model Preview.png rename to Assets/Editor/UI/Icons/Model Preview.png diff --git a/Editor/UI/Icons/Modular Editor.png b/Assets/Editor/UI/Icons/Modular Editor.png similarity index 100% rename from Editor/UI/Icons/Modular Editor.png rename to Assets/Editor/UI/Icons/Modular Editor.png diff --git a/Editor/UI/Icons/Move.png b/Assets/Editor/UI/Icons/Move.png similarity index 100% rename from Editor/UI/Icons/Move.png rename to Assets/Editor/UI/Icons/Move.png diff --git a/Editor/UI/Icons/NavContinuousUpdate.png b/Assets/Editor/UI/Icons/NavContinuousUpdate.png similarity index 100% rename from Editor/UI/Icons/NavContinuousUpdate.png rename to Assets/Editor/UI/Icons/NavContinuousUpdate.png diff --git a/Editor/UI/Icons/NavContinuousUpdate2.png b/Assets/Editor/UI/Icons/NavContinuousUpdate2.png similarity index 100% rename from Editor/UI/Icons/NavContinuousUpdate2.png rename to Assets/Editor/UI/Icons/NavContinuousUpdate2.png diff --git a/Editor/UI/Icons/NavDebugDisplay.png b/Assets/Editor/UI/Icons/NavDebugDisplay.png similarity index 100% rename from Editor/UI/Icons/NavDebugDisplay.png rename to Assets/Editor/UI/Icons/NavDebugDisplay.png diff --git a/Editor/UI/Icons/NavNewArea.png b/Assets/Editor/UI/Icons/NavNewArea.png similarity index 100% rename from Editor/UI/Icons/NavNewArea.png rename to Assets/Editor/UI/Icons/NavNewArea.png diff --git a/Editor/UI/Icons/NavNewSeed.png b/Assets/Editor/UI/Icons/NavNewSeed.png similarity index 100% rename from Editor/UI/Icons/NavNewSeed.png rename to Assets/Editor/UI/Icons/NavNewSeed.png diff --git a/Editor/UI/Icons/NavShowAreas.png b/Assets/Editor/UI/Icons/NavShowAreas.png similarity index 100% rename from Editor/UI/Icons/NavShowAreas.png rename to Assets/Editor/UI/Icons/NavShowAreas.png diff --git a/Editor/UI/Icons/NavShowAreas2.png b/Assets/Editor/UI/Icons/NavShowAreas2.png similarity index 100% rename from Editor/UI/Icons/NavShowAreas2.png rename to Assets/Editor/UI/Icons/NavShowAreas2.png diff --git a/Editor/UI/Icons/OpenGroup.png b/Assets/Editor/UI/Icons/OpenGroup.png similarity index 100% rename from Editor/UI/Icons/OpenGroup.png rename to Assets/Editor/UI/Icons/OpenGroup.png diff --git a/Editor/UI/Icons/Perspective.png b/Assets/Editor/UI/Icons/Perspective.png similarity index 100% rename from Editor/UI/Icons/Perspective.png rename to Assets/Editor/UI/Icons/Perspective.png diff --git a/Editor/UI/Icons/QCollapsePanel/collapsed.png b/Assets/Editor/UI/Icons/QCollapsePanel/collapsed.png similarity index 100% rename from Editor/UI/Icons/QCollapsePanel/collapsed.png rename to Assets/Editor/UI/Icons/QCollapsePanel/collapsed.png diff --git a/Editor/UI/Icons/QCollapsePanel/open.png b/Assets/Editor/UI/Icons/QCollapsePanel/open.png similarity index 100% rename from Editor/UI/Icons/QCollapsePanel/open.png rename to Assets/Editor/UI/Icons/QCollapsePanel/open.png diff --git a/Editor/UI/Icons/QEditorCollapseGroup/arrow_down_V2.png b/Assets/Editor/UI/Icons/QEditorCollapseGroup/arrow_down_V2.png similarity index 100% rename from Editor/UI/Icons/QEditorCollapseGroup/arrow_down_V2.png rename to Assets/Editor/UI/Icons/QEditorCollapseGroup/arrow_down_V2.png diff --git a/Editor/UI/Icons/QEditorCollapseGroup/arrow_right_V2.png b/Assets/Editor/UI/Icons/QEditorCollapseGroup/arrow_right_V2.png similarity index 100% rename from Editor/UI/Icons/QEditorCollapseGroup/arrow_right_V2.png rename to Assets/Editor/UI/Icons/QEditorCollapseGroup/arrow_right_V2.png diff --git a/Editor/UI/Icons/Redo.png b/Assets/Editor/UI/Icons/Redo.png similarity index 100% rename from Editor/UI/Icons/Redo.png rename to Assets/Editor/UI/Icons/Redo.png diff --git a/Editor/UI/Icons/RefCoord.png b/Assets/Editor/UI/Icons/RefCoord.png similarity index 100% rename from Editor/UI/Icons/RefCoord.png rename to Assets/Editor/UI/Icons/RefCoord.png diff --git a/Editor/UI/Icons/Reload Terrain-.png b/Assets/Editor/UI/Icons/Reload Terrain-.png similarity index 100% rename from Editor/UI/Icons/Reload Terrain-.png rename to Assets/Editor/UI/Icons/Reload Terrain-.png diff --git a/Editor/UI/Icons/Reload Terrain.png b/Assets/Editor/UI/Icons/Reload Terrain.png similarity index 100% rename from Editor/UI/Icons/Reload Terrain.png rename to Assets/Editor/UI/Icons/Reload Terrain.png diff --git a/Editor/UI/Icons/ReloadAll.png b/Assets/Editor/UI/Icons/ReloadAll.png similarity index 100% rename from Editor/UI/Icons/ReloadAll.png rename to Assets/Editor/UI/Icons/ReloadAll.png diff --git a/Editor/UI/Icons/Rename.png b/Assets/Editor/UI/Icons/Rename.png similarity index 100% rename from Editor/UI/Icons/Rename.png rename to Assets/Editor/UI/Icons/Rename.png diff --git a/Editor/UI/Icons/ResetPhysics.png b/Assets/Editor/UI/Icons/ResetPhysics.png similarity index 100% rename from Editor/UI/Icons/ResetPhysics.png rename to Assets/Editor/UI/Icons/ResetPhysics.png diff --git a/Editor/UI/Icons/Resize Terrain.png b/Assets/Editor/UI/Icons/Resize Terrain.png similarity index 100% rename from Editor/UI/Icons/Resize Terrain.png rename to Assets/Editor/UI/Icons/Resize Terrain.png diff --git a/Editor/UI/Icons/Rotate.png b/Assets/Editor/UI/Icons/Rotate.png similarity index 100% rename from Editor/UI/Icons/Rotate.png rename to Assets/Editor/UI/Icons/Rotate.png diff --git a/Editor/UI/Icons/Ruler.png b/Assets/Editor/UI/Icons/Ruler.png similarity index 100% rename from Editor/UI/Icons/Ruler.png rename to Assets/Editor/UI/Icons/Ruler.png diff --git a/Editor/UI/Icons/Save as Geometry.png b/Assets/Editor/UI/Icons/Save as Geometry.png similarity index 100% rename from Editor/UI/Icons/Save as Geometry.png rename to Assets/Editor/UI/Icons/Save as Geometry.png diff --git a/Editor/UI/Icons/SaveGameLevel.png b/Assets/Editor/UI/Icons/SaveGameLevel.png similarity index 100% rename from Editor/UI/Icons/SaveGameLevel.png rename to Assets/Editor/UI/Icons/SaveGameLevel.png diff --git a/Editor/UI/Icons/SaveSelObj.png b/Assets/Editor/UI/Icons/SaveSelObj.png similarity index 100% rename from Editor/UI/Icons/SaveSelObj.png rename to Assets/Editor/UI/Icons/SaveSelObj.png diff --git a/Editor/UI/Icons/SaveTagPoint.png b/Assets/Editor/UI/Icons/SaveTagPoint.png similarity index 100% rename from Editor/UI/Icons/SaveTagPoint.png rename to Assets/Editor/UI/Icons/SaveTagPoint.png diff --git a/Editor/UI/Icons/Scale.png b/Assets/Editor/UI/Icons/Scale.png similarity index 100% rename from Editor/UI/Icons/Scale.png rename to Assets/Editor/UI/Icons/Scale.png diff --git a/Editor/UI/Icons/SelObjType.png b/Assets/Editor/UI/Icons/SelObjType.png similarity index 100% rename from Editor/UI/Icons/SelObjType.png rename to Assets/Editor/UI/Icons/SelObjType.png diff --git a/Editor/UI/Icons/Select Objects.png b/Assets/Editor/UI/Icons/Select Objects.png similarity index 100% rename from Editor/UI/Icons/Select Objects.png rename to Assets/Editor/UI/Icons/Select Objects.png diff --git a/Editor/UI/Icons/Select.png b/Assets/Editor/UI/Icons/Select.png similarity index 100% rename from Editor/UI/Icons/Select.png rename to Assets/Editor/UI/Icons/Select.png diff --git a/Editor/UI/Icons/SelectAll.png b/Assets/Editor/UI/Icons/SelectAll.png similarity index 100% rename from Editor/UI/Icons/SelectAll.png rename to Assets/Editor/UI/Icons/SelectAll.png diff --git a/Editor/UI/Icons/SelectNone.png b/Assets/Editor/UI/Icons/SelectNone.png similarity index 100% rename from Editor/UI/Icons/SelectNone.png rename to Assets/Editor/UI/Icons/SelectNone.png diff --git a/Editor/UI/Icons/SelectObjects.png b/Assets/Editor/UI/Icons/SelectObjects.png similarity index 100% rename from Editor/UI/Icons/SelectObjects.png rename to Assets/Editor/UI/Icons/SelectObjects.png diff --git a/Editor/UI/Icons/SelectTerrainArea.png b/Assets/Editor/UI/Icons/SelectTerrainArea.png similarity index 100% rename from Editor/UI/Icons/SelectTerrainArea.png rename to Assets/Editor/UI/Icons/SelectTerrainArea.png diff --git a/Editor/UI/Icons/SelectionMask.bmp b/Assets/Editor/UI/Icons/SelectionMask.bmp similarity index 100% rename from Editor/UI/Icons/SelectionMask.bmp rename to Assets/Editor/UI/Icons/SelectionMask.bmp diff --git a/Editor/UI/Icons/SetHeight.png b/Assets/Editor/UI/Icons/SetHeight.png similarity index 100% rename from Editor/UI/Icons/SetHeight.png rename to Assets/Editor/UI/Icons/SetHeight.png diff --git a/Editor/UI/Icons/ShowRollup.png b/Assets/Editor/UI/Icons/ShowRollup.png similarity index 100% rename from Editor/UI/Icons/ShowRollup.png rename to Assets/Editor/UI/Icons/ShowRollup.png diff --git a/Editor/UI/Icons/SimObj.png b/Assets/Editor/UI/Icons/SimObj.png similarity index 100% rename from Editor/UI/Icons/SimObj.png rename to Assets/Editor/UI/Icons/SimObj.png diff --git a/Editor/UI/Icons/Smart Objects Editor.png b/Assets/Editor/UI/Icons/Smart Objects Editor.png similarity index 100% rename from Editor/UI/Icons/Smart Objects Editor.png rename to Assets/Editor/UI/Icons/Smart Objects Editor.png diff --git a/Editor/UI/Icons/Smooth Terrain.png b/Assets/Editor/UI/Icons/Smooth Terrain.png similarity index 100% rename from Editor/UI/Icons/Smooth Terrain.png rename to Assets/Editor/UI/Icons/Smooth Terrain.png diff --git a/Editor/UI/Icons/SnapAngle.png b/Assets/Editor/UI/Icons/SnapAngle.png similarity index 100% rename from Editor/UI/Icons/SnapAngle.png rename to Assets/Editor/UI/Icons/SnapAngle.png diff --git a/Editor/UI/Icons/SnapGrid.png b/Assets/Editor/UI/Icons/SnapGrid.png similarity index 100% rename from Editor/UI/Icons/SnapGrid.png rename to Assets/Editor/UI/Icons/SnapGrid.png diff --git a/Editor/UI/Icons/SyncCamera.png b/Assets/Editor/UI/Icons/SyncCamera.png similarity index 100% rename from Editor/UI/Icons/SyncCamera.png rename to Assets/Editor/UI/Icons/SyncCamera.png diff --git a/Editor/UI/Icons/SyncData.png b/Assets/Editor/UI/Icons/SyncData.png similarity index 100% rename from Editor/UI/Icons/SyncData.png rename to Assets/Editor/UI/Icons/SyncData.png diff --git a/Editor/UI/Icons/Terrain Editor.png b/Assets/Editor/UI/Icons/Terrain Editor.png similarity index 100% rename from Editor/UI/Icons/Terrain Editor.png rename to Assets/Editor/UI/Icons/Terrain Editor.png diff --git a/Editor/UI/Icons/Terrain Texture Layers.png b/Assets/Editor/UI/Icons/Terrain Texture Layers.png similarity index 100% rename from Editor/UI/Icons/Terrain Texture Layers.png rename to Assets/Editor/UI/Icons/Terrain Texture Layers.png diff --git a/Editor/UI/Icons/Time of Day.png b/Assets/Editor/UI/Icons/Time of Day.png similarity index 100% rename from Editor/UI/Icons/Time of Day.png rename to Assets/Editor/UI/Icons/Time of Day.png diff --git a/Editor/UI/Icons/Top.png b/Assets/Editor/UI/Icons/Top.png similarity index 100% rename from Editor/UI/Icons/Top.png rename to Assets/Editor/UI/Icons/Top.png diff --git a/Editor/UI/Icons/Track View.png b/Assets/Editor/UI/Icons/Track View.png similarity index 100% rename from Editor/UI/Icons/Track View.png rename to Assets/Editor/UI/Icons/Track View.png diff --git a/Editor/UI/Icons/UI Emulator.png b/Assets/Editor/UI/Icons/UI Emulator.png similarity index 100% rename from Editor/UI/Icons/UI Emulator.png rename to Assets/Editor/UI/Icons/UI Emulator.png diff --git a/Editor/UI/Icons/Undo.png b/Assets/Editor/UI/Icons/Undo.png similarity index 100% rename from Editor/UI/Icons/Undo.png rename to Assets/Editor/UI/Icons/Undo.png diff --git a/Editor/UI/Icons/Unfreeze.png b/Assets/Editor/UI/Icons/Unfreeze.png similarity index 100% rename from Editor/UI/Icons/Unfreeze.png rename to Assets/Editor/UI/Icons/Unfreeze.png diff --git a/Editor/UI/Icons/Ungroup.png b/Assets/Editor/UI/Icons/Ungroup.png similarity index 100% rename from Editor/UI/Icons/Ungroup.png rename to Assets/Editor/UI/Icons/Ungroup.png diff --git a/Editor/UI/Icons/UnhideAll.png b/Assets/Editor/UI/Icons/UnhideAll.png similarity index 100% rename from Editor/UI/Icons/UnhideAll.png rename to Assets/Editor/UI/Icons/UnhideAll.png diff --git a/Editor/UI/Icons/UnhideAll_32.png b/Assets/Editor/UI/Icons/UnhideAll_32.png similarity index 100% rename from Editor/UI/Icons/UnhideAll_32.png rename to Assets/Editor/UI/Icons/UnhideAll_32.png diff --git a/Editor/UI/Icons/Unlink.png b/Assets/Editor/UI/Icons/Unlink.png similarity index 100% rename from Editor/UI/Icons/Unlink.png rename to Assets/Editor/UI/Icons/Unlink.png diff --git a/Editor/UI/Icons/UploadFilesToConsole.png b/Assets/Editor/UI/Icons/UploadFilesToConsole.png similarity index 100% rename from Editor/UI/Icons/UploadFilesToConsole.png rename to Assets/Editor/UI/Icons/UploadFilesToConsole.png diff --git a/Editor/UI/Icons/Vehicle Editor.png b/Assets/Editor/UI/Icons/Vehicle Editor.png similarity index 100% rename from Editor/UI/Icons/Vehicle Editor.png rename to Assets/Editor/UI/Icons/Vehicle Editor.png diff --git a/Editor/UI/Icons/VertexSnapping.png b/Assets/Editor/UI/Icons/VertexSnapping.png similarity index 100% rename from Editor/UI/Icons/VertexSnapping.png rename to Assets/Editor/UI/Icons/VertexSnapping.png diff --git a/Editor/UI/Icons/Visual Log Viewer.png b/Assets/Editor/UI/Icons/Visual Log Viewer.png similarity index 100% rename from Editor/UI/Icons/Visual Log Viewer.png rename to Assets/Editor/UI/Icons/Visual Log Viewer.png diff --git a/Editor/UI/Icons/VisualBudgetSystemAnalyzeOne.png b/Assets/Editor/UI/Icons/VisualBudgetSystemAnalyzeOne.png similarity index 100% rename from Editor/UI/Icons/VisualBudgetSystemAnalyzeOne.png rename to Assets/Editor/UI/Icons/VisualBudgetSystemAnalyzeOne.png diff --git a/Editor/UI/Icons/VisualBudgetSystemShow.png b/Assets/Editor/UI/Icons/VisualBudgetSystemShow.png similarity index 100% rename from Editor/UI/Icons/VisualBudgetSystemShow.png rename to Assets/Editor/UI/Icons/VisualBudgetSystemShow.png diff --git a/Editor/UI/Icons/VisualizeNavigationAccessibility.png b/Assets/Editor/UI/Icons/VisualizeNavigationAccessibility.png similarity index 100% rename from Editor/UI/Icons/VisualizeNavigationAccessibility.png rename to Assets/Editor/UI/Icons/VisualizeNavigationAccessibility.png diff --git a/Editor/UI/Icons/XAxis.png b/Assets/Editor/UI/Icons/XAxis.png similarity index 100% rename from Editor/UI/Icons/XAxis.png rename to Assets/Editor/UI/Icons/XAxis.png diff --git a/Editor/UI/Icons/XYAxis.png b/Assets/Editor/UI/Icons/XYAxis.png similarity index 100% rename from Editor/UI/Icons/XYAxis.png rename to Assets/Editor/UI/Icons/XYAxis.png diff --git a/Editor/UI/Icons/YAxis.png b/Assets/Editor/UI/Icons/YAxis.png similarity index 100% rename from Editor/UI/Icons/YAxis.png rename to Assets/Editor/UI/Icons/YAxis.png diff --git a/Editor/UI/Icons/Z View.png b/Assets/Editor/UI/Icons/Z View.png similarity index 100% rename from Editor/UI/Icons/Z View.png rename to Assets/Editor/UI/Icons/Z View.png diff --git a/Editor/UI/Icons/ZAxis.png b/Assets/Editor/UI/Icons/ZAxis.png similarity index 100% rename from Editor/UI/Icons/ZAxis.png rename to Assets/Editor/UI/Icons/ZAxis.png diff --git a/Editor/UI/Icons/asset_animated_geom.png b/Assets/Editor/UI/Icons/asset_animated_geom.png similarity index 100% rename from Editor/UI/Icons/asset_animated_geom.png rename to Assets/Editor/UI/Icons/asset_animated_geom.png diff --git a/Editor/UI/Icons/asset_character.png b/Assets/Editor/UI/Icons/asset_character.png similarity index 100% rename from Editor/UI/Icons/asset_character.png rename to Assets/Editor/UI/Icons/asset_character.png diff --git a/Editor/UI/Icons/asset_material.png b/Assets/Editor/UI/Icons/asset_material.png similarity index 100% rename from Editor/UI/Icons/asset_material.png rename to Assets/Editor/UI/Icons/asset_material.png diff --git a/Editor/UI/Icons/asset_missing_thumb.png b/Assets/Editor/UI/Icons/asset_missing_thumb.png similarity index 100% rename from Editor/UI/Icons/asset_missing_thumb.png rename to Assets/Editor/UI/Icons/asset_missing_thumb.png diff --git a/Editor/UI/Icons/asset_model.png b/Assets/Editor/UI/Icons/asset_model.png similarity index 100% rename from Editor/UI/Icons/asset_model.png rename to Assets/Editor/UI/Icons/asset_model.png diff --git a/Editor/UI/Icons/asset_sound.png b/Assets/Editor/UI/Icons/asset_sound.png similarity index 100% rename from Editor/UI/Icons/asset_sound.png rename to Assets/Editor/UI/Icons/asset_sound.png diff --git a/Editor/UI/Icons/asset_texture.png b/Assets/Editor/UI/Icons/asset_texture.png similarity index 100% rename from Editor/UI/Icons/asset_texture.png rename to Assets/Editor/UI/Icons/asset_texture.png diff --git a/Editor/UI/Icons/mann_clip.png b/Assets/Editor/UI/Icons/mann_clip.png similarity index 100% rename from Editor/UI/Icons/mann_clip.png rename to Assets/Editor/UI/Icons/mann_clip.png diff --git a/Editor/UI/Icons/mann_folder.png b/Assets/Editor/UI/Icons/mann_folder.png similarity index 100% rename from Editor/UI/Icons/mann_folder.png rename to Assets/Editor/UI/Icons/mann_folder.png diff --git a/Editor/UI/Icons/mann_tag.png b/Assets/Editor/UI/Icons/mann_tag.png similarity index 100% rename from Editor/UI/Icons/mann_tag.png rename to Assets/Editor/UI/Icons/mann_tag.png diff --git a/Editor/UI/Icons/toolbar/Load_Icon.png b/Assets/Editor/UI/Icons/toolbar/Load_Icon.png similarity index 100% rename from Editor/UI/Icons/toolbar/Load_Icon.png rename to Assets/Editor/UI/Icons/toolbar/Load_Icon.png diff --git a/Editor/UI/Icons/toolbar/itemAdd.png b/Assets/Editor/UI/Icons/toolbar/itemAdd.png similarity index 100% rename from Editor/UI/Icons/toolbar/itemAdd.png rename to Assets/Editor/UI/Icons/toolbar/itemAdd.png diff --git a/Editor/UI/Icons/toolbar/itemAssign.png b/Assets/Editor/UI/Icons/toolbar/itemAssign.png similarity index 100% rename from Editor/UI/Icons/toolbar/itemAssign.png rename to Assets/Editor/UI/Icons/toolbar/itemAssign.png diff --git a/Editor/UI/Icons/toolbar/itemClone.png b/Assets/Editor/UI/Icons/toolbar/itemClone.png similarity index 100% rename from Editor/UI/Icons/toolbar/itemClone.png rename to Assets/Editor/UI/Icons/toolbar/itemClone.png diff --git a/Editor/UI/Icons/toolbar/itemGetProperties.png b/Assets/Editor/UI/Icons/toolbar/itemGetProperties.png similarity index 100% rename from Editor/UI/Icons/toolbar/itemGetProperties.png rename to Assets/Editor/UI/Icons/toolbar/itemGetProperties.png diff --git a/Editor/UI/Icons/toolbar/itemReload.png b/Assets/Editor/UI/Icons/toolbar/itemReload.png similarity index 100% rename from Editor/UI/Icons/toolbar/itemReload.png rename to Assets/Editor/UI/Icons/toolbar/itemReload.png diff --git a/Editor/UI/Icons/toolbar/itemRemove.png b/Assets/Editor/UI/Icons/toolbar/itemRemove.png similarity index 100% rename from Editor/UI/Icons/toolbar/itemRemove.png rename to Assets/Editor/UI/Icons/toolbar/itemRemove.png diff --git a/Editor/UI/Icons/toolbar/libraryAdd.png b/Assets/Editor/UI/Icons/toolbar/libraryAdd.png similarity index 100% rename from Editor/UI/Icons/toolbar/libraryAdd.png rename to Assets/Editor/UI/Icons/toolbar/libraryAdd.png diff --git a/Editor/UI/Icons/toolbar/libraryLoad.png b/Assets/Editor/UI/Icons/toolbar/libraryLoad.png similarity index 100% rename from Editor/UI/Icons/toolbar/libraryLoad.png rename to Assets/Editor/UI/Icons/toolbar/libraryLoad.png diff --git a/Editor/UI/Icons/toolbar/libraryReload.png b/Assets/Editor/UI/Icons/toolbar/libraryReload.png similarity index 100% rename from Editor/UI/Icons/toolbar/libraryReload.png rename to Assets/Editor/UI/Icons/toolbar/libraryReload.png diff --git a/Editor/UI/Icons/toolbar/libraryRemove.png b/Assets/Editor/UI/Icons/toolbar/libraryRemove.png similarity index 100% rename from Editor/UI/Icons/toolbar/libraryRemove.png rename to Assets/Editor/UI/Icons/toolbar/libraryRemove.png diff --git a/Editor/UI/Icons/toolbar/librarySave.png b/Assets/Editor/UI/Icons/toolbar/librarySave.png similarity index 100% rename from Editor/UI/Icons/toolbar/librarySave.png rename to Assets/Editor/UI/Icons/toolbar/librarySave.png diff --git a/Editor/UI/Icons/toolbar/particleSpecialActivate.png b/Assets/Editor/UI/Icons/toolbar/particleSpecialActivate.png similarity index 100% rename from Editor/UI/Icons/toolbar/particleSpecialActivate.png rename to Assets/Editor/UI/Icons/toolbar/particleSpecialActivate.png diff --git a/Editor/UI/Icons/toolbar/particleSpecialReset.png b/Assets/Editor/UI/Icons/toolbar/particleSpecialReset.png similarity index 100% rename from Editor/UI/Icons/toolbar/particleSpecialReset.png rename to Assets/Editor/UI/Icons/toolbar/particleSpecialReset.png diff --git a/Editor/UI/Icons/toolbar/standardCopy.png b/Assets/Editor/UI/Icons/toolbar/standardCopy.png similarity index 100% rename from Editor/UI/Icons/toolbar/standardCopy.png rename to Assets/Editor/UI/Icons/toolbar/standardCopy.png diff --git a/Editor/UI/Icons/toolbar/standardPaste.png b/Assets/Editor/UI/Icons/toolbar/standardPaste.png similarity index 100% rename from Editor/UI/Icons/toolbar/standardPaste.png rename to Assets/Editor/UI/Icons/toolbar/standardPaste.png diff --git a/Editor/UI/Icons/toolbar/standardRedo.png b/Assets/Editor/UI/Icons/toolbar/standardRedo.png similarity index 100% rename from Editor/UI/Icons/toolbar/standardRedo.png rename to Assets/Editor/UI/Icons/toolbar/standardRedo.png diff --git a/Editor/UI/Icons/toolbar/standardUndo.png b/Assets/Editor/UI/Icons/toolbar/standardUndo.png similarity index 100% rename from Editor/UI/Icons/toolbar/standardUndo.png rename to Assets/Editor/UI/Icons/toolbar/standardUndo.png diff --git a/Editor/UI/Icons/treeview/ParticleEditor/empty_icon.png b/Assets/Editor/UI/Icons/treeview/ParticleEditor/empty_icon.png similarity index 100% rename from Editor/UI/Icons/treeview/ParticleEditor/empty_icon.png rename to Assets/Editor/UI/Icons/treeview/ParticleEditor/empty_icon.png diff --git a/Editor/UI/Icons/treeview/ParticleEditor/group_icon.png b/Assets/Editor/UI/Icons/treeview/ParticleEditor/group_icon.png similarity index 100% rename from Editor/UI/Icons/treeview/ParticleEditor/group_icon.png rename to Assets/Editor/UI/Icons/treeview/ParticleEditor/group_icon.png diff --git a/Editor/UI/Icons/treeview/ParticleEditor/group_with_lod_icon.png b/Assets/Editor/UI/Icons/treeview/ParticleEditor/group_with_lod_icon.png similarity index 100% rename from Editor/UI/Icons/treeview/ParticleEditor/group_with_lod_icon.png rename to Assets/Editor/UI/Icons/treeview/ParticleEditor/group_with_lod_icon.png diff --git a/Editor/UI/Icons/treeview/ParticleEditor/lod_icon.png b/Assets/Editor/UI/Icons/treeview/ParticleEditor/lod_icon.png similarity index 100% rename from Editor/UI/Icons/treeview/ParticleEditor/lod_icon.png rename to Assets/Editor/UI/Icons/treeview/ParticleEditor/lod_icon.png diff --git a/Editor/UI/Icons/treeview/group.png b/Assets/Editor/UI/Icons/treeview/group.png similarity index 100% rename from Editor/UI/Icons/treeview/group.png rename to Assets/Editor/UI/Icons/treeview/group.png diff --git a/Editor/UI/Icons/treeview/group_inactive.png b/Assets/Editor/UI/Icons/treeview/group_inactive.png similarity index 100% rename from Editor/UI/Icons/treeview/group_inactive.png rename to Assets/Editor/UI/Icons/treeview/group_inactive.png diff --git a/Editor/UI/Icons/treeview/item.png b/Assets/Editor/UI/Icons/treeview/item.png similarity index 100% rename from Editor/UI/Icons/treeview/item.png rename to Assets/Editor/UI/Icons/treeview/item.png diff --git a/Editor/UI/Icons/treeview/item_inactive.png b/Assets/Editor/UI/Icons/treeview/item_inactive.png similarity index 100% rename from Editor/UI/Icons/treeview/item_inactive.png rename to Assets/Editor/UI/Icons/treeview/item_inactive.png diff --git a/Editor/UI/WipFeatures.xml b/Assets/Editor/UI/WipFeatures.xml similarity index 100% rename from Editor/UI/WipFeatures.xml rename to Assets/Editor/UI/WipFeatures.xml diff --git a/Editor/UI/releaseTranslations.py b/Assets/Editor/UI/releaseTranslations.py similarity index 100% rename from Editor/UI/releaseTranslations.py rename to Assets/Editor/UI/releaseTranslations.py diff --git a/Editor/UI/removeTranslationFiles.py b/Assets/Editor/UI/removeTranslationFiles.py similarity index 100% rename from Editor/UI/removeTranslationFiles.py rename to Assets/Editor/UI/removeTranslationFiles.py diff --git a/Editor/UI/updateTranslatableText.py b/Assets/Editor/UI/updateTranslatableText.py similarity index 100% rename from Editor/UI/updateTranslatableText.py rename to Assets/Editor/UI/updateTranslatableText.py diff --git a/Editor/UserTools.xml b/Assets/Editor/UserTools.xml similarity index 100% rename from Editor/UserTools.xml rename to Assets/Editor/UserTools.xml diff --git a/Editor/asset_thumbnail.tod b/Assets/Editor/asset_thumbnail.tod similarity index 100% rename from Editor/asset_thumbnail.tod rename to Assets/Editor/asset_thumbnail.tod diff --git a/Editor/default_time_of_day.xml b/Assets/Editor/default_time_of_day.xml similarity index 100% rename from Editor/default_time_of_day.xml rename to Assets/Editor/default_time_of_day.xml diff --git a/Editor/uiCanvasEditorResolutionPresets.xml b/Assets/Editor/uiCanvasEditorResolutionPresets.xml similarity index 100% rename from Editor/uiCanvasEditorResolutionPresets.xml rename to Assets/Editor/uiCanvasEditorResolutionPresets.xml diff --git a/Engine/Config/AutoTestChain.cfg b/Assets/Engine/Config/AutoTestChain.cfg similarity index 100% rename from Engine/Config/AutoTestChain.cfg rename to Assets/Engine/Config/AutoTestChain.cfg diff --git a/Engine/Config/AutoTestTimeDemo.cfg b/Assets/Engine/Config/AutoTestTimeDemo.cfg similarity index 100% rename from Engine/Config/AutoTestTimeDemo.cfg rename to Assets/Engine/Config/AutoTestTimeDemo.cfg diff --git a/Engine/Config/AutotestPlaythrough.cfg b/Assets/Engine/Config/AutotestPlaythrough.cfg similarity index 100% rename from Engine/Config/AutotestPlaythrough.cfg rename to Assets/Engine/Config/AutotestPlaythrough.cfg diff --git a/Engine/Config/CVarGroups/sys_spec_Full.cfg b/Assets/Engine/Config/CVarGroups/sys_spec_Full.cfg similarity index 100% rename from Engine/Config/CVarGroups/sys_spec_Full.cfg rename to Assets/Engine/Config/CVarGroups/sys_spec_Full.cfg diff --git a/Engine/Config/CVarGroups/sys_spec_GameEffects.cfg b/Assets/Engine/Config/CVarGroups/sys_spec_GameEffects.cfg similarity index 100% rename from Engine/Config/CVarGroups/sys_spec_GameEffects.cfg rename to Assets/Engine/Config/CVarGroups/sys_spec_GameEffects.cfg diff --git a/Engine/Config/CVarGroups/sys_spec_ObjectDetail.cfg b/Assets/Engine/Config/CVarGroups/sys_spec_ObjectDetail.cfg similarity index 100% rename from Engine/Config/CVarGroups/sys_spec_ObjectDetail.cfg rename to Assets/Engine/Config/CVarGroups/sys_spec_ObjectDetail.cfg diff --git a/Engine/Config/CVarGroups/sys_spec_Particles.cfg b/Assets/Engine/Config/CVarGroups/sys_spec_Particles.cfg similarity index 100% rename from Engine/Config/CVarGroups/sys_spec_Particles.cfg rename to Assets/Engine/Config/CVarGroups/sys_spec_Particles.cfg diff --git a/Engine/Config/CVarGroups/sys_spec_Physics.cfg b/Assets/Engine/Config/CVarGroups/sys_spec_Physics.cfg similarity index 100% rename from Engine/Config/CVarGroups/sys_spec_Physics.cfg rename to Assets/Engine/Config/CVarGroups/sys_spec_Physics.cfg diff --git a/Engine/Config/CVarGroups/sys_spec_PostProcessing.cfg b/Assets/Engine/Config/CVarGroups/sys_spec_PostProcessing.cfg similarity index 100% rename from Engine/Config/CVarGroups/sys_spec_PostProcessing.cfg rename to Assets/Engine/Config/CVarGroups/sys_spec_PostProcessing.cfg diff --git a/Engine/Config/CVarGroups/sys_spec_Quality.cfg b/Assets/Engine/Config/CVarGroups/sys_spec_Quality.cfg similarity index 100% rename from Engine/Config/CVarGroups/sys_spec_Quality.cfg rename to Assets/Engine/Config/CVarGroups/sys_spec_Quality.cfg diff --git a/Engine/Config/CVarGroups/sys_spec_Shading.cfg b/Assets/Engine/Config/CVarGroups/sys_spec_Shading.cfg similarity index 100% rename from Engine/Config/CVarGroups/sys_spec_Shading.cfg rename to Assets/Engine/Config/CVarGroups/sys_spec_Shading.cfg diff --git a/Engine/Config/CVarGroups/sys_spec_Shadows.cfg b/Assets/Engine/Config/CVarGroups/sys_spec_Shadows.cfg similarity index 100% rename from Engine/Config/CVarGroups/sys_spec_Shadows.cfg rename to Assets/Engine/Config/CVarGroups/sys_spec_Shadows.cfg diff --git a/Engine/Config/CVarGroups/sys_spec_Sound.cfg b/Assets/Engine/Config/CVarGroups/sys_spec_Sound.cfg similarity index 100% rename from Engine/Config/CVarGroups/sys_spec_Sound.cfg rename to Assets/Engine/Config/CVarGroups/sys_spec_Sound.cfg diff --git a/Engine/Config/CVarGroups/sys_spec_Texture.cfg b/Assets/Engine/Config/CVarGroups/sys_spec_Texture.cfg similarity index 100% rename from Engine/Config/CVarGroups/sys_spec_Texture.cfg rename to Assets/Engine/Config/CVarGroups/sys_spec_Texture.cfg diff --git a/Engine/Config/CVarGroups/sys_spec_TextureResolution.cfg b/Assets/Engine/Config/CVarGroups/sys_spec_TextureResolution.cfg similarity index 100% rename from Engine/Config/CVarGroups/sys_spec_TextureResolution.cfg rename to Assets/Engine/Config/CVarGroups/sys_spec_TextureResolution.cfg diff --git a/Engine/Config/CVarGroups/sys_spec_VolumetricEffects.cfg b/Assets/Engine/Config/CVarGroups/sys_spec_VolumetricEffects.cfg similarity index 100% rename from Engine/Config/CVarGroups/sys_spec_VolumetricEffects.cfg rename to Assets/Engine/Config/CVarGroups/sys_spec_VolumetricEffects.cfg diff --git a/Engine/Config/CVarGroups/sys_spec_Water.cfg b/Assets/Engine/Config/CVarGroups/sys_spec_Water.cfg similarity index 100% rename from Engine/Config/CVarGroups/sys_spec_Water.cfg rename to Assets/Engine/Config/CVarGroups/sys_spec_Water.cfg diff --git a/Engine/Config/HDD_cache.xml b/Assets/Engine/Config/HDD_cache.xml similarity index 100% rename from Engine/Config/HDD_cache.xml rename to Assets/Engine/Config/HDD_cache.xml diff --git a/Engine/Config/PerfHud_PC.xml b/Assets/Engine/Config/PerfHud_PC.xml similarity index 100% rename from Engine/Config/PerfHud_PC.xml rename to Assets/Engine/Config/PerfHud_PC.xml diff --git a/Engine/Config/aidebug.cfg b/Assets/Engine/Config/aidebug.cfg similarity index 100% rename from Engine/Config/aidebug.cfg rename to Assets/Engine/Config/aidebug.cfg diff --git a/Engine/Config/artprof.cfg b/Assets/Engine/Config/artprof.cfg similarity index 100% rename from Engine/Config/artprof.cfg rename to Assets/Engine/Config/artprof.cfg diff --git a/Engine/Config/artprof_user.cfg b/Assets/Engine/Config/artprof_user.cfg similarity index 100% rename from Engine/Config/artprof_user.cfg rename to Assets/Engine/Config/artprof_user.cfg diff --git a/Engine/Config/benchmark_cpu.cfg b/Assets/Engine/Config/benchmark_cpu.cfg similarity index 100% rename from Engine/Config/benchmark_cpu.cfg rename to Assets/Engine/Config/benchmark_cpu.cfg diff --git a/Engine/Config/benchmark_gpu.cfg b/Assets/Engine/Config/benchmark_gpu.cfg similarity index 100% rename from Engine/Config/benchmark_gpu.cfg rename to Assets/Engine/Config/benchmark_gpu.cfg diff --git a/Engine/Config/config.dat b/Assets/Engine/Config/config.dat similarity index 100% rename from Engine/Config/config.dat rename to Assets/Engine/Config/config.dat diff --git a/Engine/Config/engine_core.thread_config b/Assets/Engine/Config/engine_core.thread_config similarity index 100% rename from Engine/Config/engine_core.thread_config rename to Assets/Engine/Config/engine_core.thread_config diff --git a/Engine/Config/engine_sandbox.thread_config b/Assets/Engine/Config/engine_sandbox.thread_config similarity index 100% rename from Engine/Config/engine_sandbox.thread_config rename to Assets/Engine/Config/engine_sandbox.thread_config diff --git a/Engine/Config/gpu/amd.txt b/Assets/Engine/Config/gpu/amd.txt similarity index 100% rename from Engine/Config/gpu/amd.txt rename to Assets/Engine/Config/gpu/amd.txt diff --git a/Engine/Config/gpu/android_gpus.xml b/Assets/Engine/Config/gpu/android_gpus.xml similarity index 100% rename from Engine/Config/gpu/android_gpus.xml rename to Assets/Engine/Config/gpu/android_gpus.xml diff --git a/Engine/Config/gpu/android_models.xml b/Assets/Engine/Config/gpu/android_models.xml similarity index 100% rename from Engine/Config/gpu/android_models.xml rename to Assets/Engine/Config/gpu/android_models.xml diff --git a/Engine/Config/gpu/intel.txt b/Assets/Engine/Config/gpu/intel.txt similarity index 100% rename from Engine/Config/gpu/intel.txt rename to Assets/Engine/Config/gpu/intel.txt diff --git a/Engine/Config/gpu/ios_models.xml b/Assets/Engine/Config/gpu/ios_models.xml similarity index 100% rename from Engine/Config/gpu/ios_models.xml rename to Assets/Engine/Config/gpu/ios_models.xml diff --git a/Engine/Config/gpu/nvidia.txt b/Assets/Engine/Config/gpu/nvidia.txt similarity index 100% rename from Engine/Config/gpu/nvidia.txt rename to Assets/Engine/Config/gpu/nvidia.txt diff --git a/Engine/Config/mgpu.cfg b/Assets/Engine/Config/mgpu.cfg similarity index 100% rename from Engine/Config/mgpu.cfg rename to Assets/Engine/Config/mgpu.cfg diff --git a/Engine/Config/multiplayer.cfg b/Assets/Engine/Config/multiplayer.cfg similarity index 100% rename from Engine/Config/multiplayer.cfg rename to Assets/Engine/Config/multiplayer.cfg diff --git a/Engine/Config/multiplayer_console.cfg b/Assets/Engine/Config/multiplayer_console.cfg similarity index 100% rename from Engine/Config/multiplayer_console.cfg rename to Assets/Engine/Config/multiplayer_console.cfg diff --git a/Engine/Config/multiplayer_pc.cfg b/Assets/Engine/Config/multiplayer_pc.cfg similarity index 100% rename from Engine/Config/multiplayer_pc.cfg rename to Assets/Engine/Config/multiplayer_pc.cfg diff --git a/Engine/Config/performance.cfg b/Assets/Engine/Config/performance.cfg similarity index 100% rename from Engine/Config/performance.cfg rename to Assets/Engine/Config/performance.cfg diff --git a/Engine/Config/recording.cfg b/Assets/Engine/Config/recording.cfg similarity index 100% rename from Engine/Config/recording.cfg rename to Assets/Engine/Config/recording.cfg diff --git a/Engine/Config/singleplayer.cfg b/Assets/Engine/Config/singleplayer.cfg similarity index 100% rename from Engine/Config/singleplayer.cfg rename to Assets/Engine/Config/singleplayer.cfg diff --git a/Engine/Config/sketch_off.cfg b/Assets/Engine/Config/sketch_off.cfg similarity index 100% rename from Engine/Config/sketch_off.cfg rename to Assets/Engine/Config/sketch_off.cfg diff --git a/Engine/Config/sketch_on.cfg b/Assets/Engine/Config/sketch_on.cfg similarity index 100% rename from Engine/Config/sketch_on.cfg rename to Assets/Engine/Config/sketch_on.cfg diff --git a/Engine/Config/spec/android_MaliT760.cfg b/Assets/Engine/Config/spec/android_MaliT760.cfg similarity index 100% rename from Engine/Config/spec/android_MaliT760.cfg rename to Assets/Engine/Config/spec/android_MaliT760.cfg diff --git a/Engine/Config/spec/android_high.cfg b/Assets/Engine/Config/spec/android_high.cfg similarity index 100% rename from Engine/Config/spec/android_high.cfg rename to Assets/Engine/Config/spec/android_high.cfg diff --git a/Engine/Config/spec/android_high_nogmem.cfg b/Assets/Engine/Config/spec/android_high_nogmem.cfg similarity index 100% rename from Engine/Config/spec/android_high_nogmem.cfg rename to Assets/Engine/Config/spec/android_high_nogmem.cfg diff --git a/Engine/Config/spec/android_low.cfg b/Assets/Engine/Config/spec/android_low.cfg similarity index 100% rename from Engine/Config/spec/android_low.cfg rename to Assets/Engine/Config/spec/android_low.cfg diff --git a/Engine/Config/spec/android_medium.cfg b/Assets/Engine/Config/spec/android_medium.cfg similarity index 100% rename from Engine/Config/spec/android_medium.cfg rename to Assets/Engine/Config/spec/android_medium.cfg diff --git a/Engine/Config/spec/android_veryhigh.cfg b/Assets/Engine/Config/spec/android_veryhigh.cfg similarity index 100% rename from Engine/Config/spec/android_veryhigh.cfg rename to Assets/Engine/Config/spec/android_veryhigh.cfg diff --git a/Engine/Config/spec/ios_high.cfg b/Assets/Engine/Config/spec/ios_high.cfg similarity index 100% rename from Engine/Config/spec/ios_high.cfg rename to Assets/Engine/Config/spec/ios_high.cfg diff --git a/Engine/Config/spec/ios_low.cfg b/Assets/Engine/Config/spec/ios_low.cfg similarity index 100% rename from Engine/Config/spec/ios_low.cfg rename to Assets/Engine/Config/spec/ios_low.cfg diff --git a/Engine/Config/spec/ios_medium.cfg b/Assets/Engine/Config/spec/ios_medium.cfg similarity index 100% rename from Engine/Config/spec/ios_medium.cfg rename to Assets/Engine/Config/spec/ios_medium.cfg diff --git a/Engine/Config/spec/ios_veryhigh.cfg b/Assets/Engine/Config/spec/ios_veryhigh.cfg similarity index 100% rename from Engine/Config/spec/ios_veryhigh.cfg rename to Assets/Engine/Config/spec/ios_veryhigh.cfg diff --git a/Engine/Config/spec/osx_metal_high.cfg b/Assets/Engine/Config/spec/osx_metal_high.cfg similarity index 100% rename from Engine/Config/spec/osx_metal_high.cfg rename to Assets/Engine/Config/spec/osx_metal_high.cfg diff --git a/Engine/Config/spec/osx_metal_low.cfg b/Assets/Engine/Config/spec/osx_metal_low.cfg similarity index 100% rename from Engine/Config/spec/osx_metal_low.cfg rename to Assets/Engine/Config/spec/osx_metal_low.cfg diff --git a/Engine/Config/spec/osx_metal_medium.cfg b/Assets/Engine/Config/spec/osx_metal_medium.cfg similarity index 100% rename from Engine/Config/spec/osx_metal_medium.cfg rename to Assets/Engine/Config/spec/osx_metal_medium.cfg diff --git a/Engine/Config/spec/osx_metal_veryhigh.cfg b/Assets/Engine/Config/spec/osx_metal_veryhigh.cfg similarity index 100% rename from Engine/Config/spec/osx_metal_veryhigh.cfg rename to Assets/Engine/Config/spec/osx_metal_veryhigh.cfg diff --git a/Engine/Config/spec/pc_high.cfg b/Assets/Engine/Config/spec/pc_high.cfg similarity index 100% rename from Engine/Config/spec/pc_high.cfg rename to Assets/Engine/Config/spec/pc_high.cfg diff --git a/Engine/Config/spec/pc_low.cfg b/Assets/Engine/Config/spec/pc_low.cfg similarity index 100% rename from Engine/Config/spec/pc_low.cfg rename to Assets/Engine/Config/spec/pc_low.cfg diff --git a/Engine/Config/spec/pc_medium.cfg b/Assets/Engine/Config/spec/pc_medium.cfg similarity index 100% rename from Engine/Config/spec/pc_medium.cfg rename to Assets/Engine/Config/spec/pc_medium.cfg diff --git a/Engine/Config/spec/pc_veryhigh.cfg b/Assets/Engine/Config/spec/pc_veryhigh.cfg similarity index 100% rename from Engine/Config/spec/pc_veryhigh.cfg rename to Assets/Engine/Config/spec/pc_veryhigh.cfg diff --git a/Engine/Config/statoscope.cfg b/Assets/Engine/Config/statoscope.cfg similarity index 100% rename from Engine/Config/statoscope.cfg rename to Assets/Engine/Config/statoscope.cfg diff --git a/Engine/Config/user.cfg b/Assets/Engine/Config/user.cfg similarity index 100% rename from Engine/Config/user.cfg rename to Assets/Engine/Config/user.cfg diff --git a/Engine/Config/vid_capture_reset.cfg b/Assets/Engine/Config/vid_capture_reset.cfg similarity index 100% rename from Engine/Config/vid_capture_reset.cfg rename to Assets/Engine/Config/vid_capture_reset.cfg diff --git a/Engine/Config/vid_capture_setup.cfg b/Assets/Engine/Config/vid_capture_setup.cfg similarity index 100% rename from Engine/Config/vid_capture_setup.cfg rename to Assets/Engine/Config/vid_capture_setup.cfg diff --git a/Engine/Config/vid_capture_start.cfg b/Assets/Engine/Config/vid_capture_start.cfg similarity index 100% rename from Engine/Config/vid_capture_start.cfg rename to Assets/Engine/Config/vid_capture_start.cfg diff --git a/Engine/Config/vid_capture_stop.cfg b/Assets/Engine/Config/vid_capture_stop.cfg similarity index 100% rename from Engine/Config/vid_capture_stop.cfg rename to Assets/Engine/Config/vid_capture_stop.cfg diff --git a/Engine/Config/vr.cfg b/Assets/Engine/Config/vr.cfg similarity index 100% rename from Engine/Config/vr.cfg rename to Assets/Engine/Config/vr.cfg diff --git a/Engine/EngineAssets/Animated/WaterVolume.dds b/Assets/Engine/EngineAssets/Animated/WaterVolume.dds similarity index 100% rename from Engine/EngineAssets/Animated/WaterVolume.dds rename to Assets/Engine/EngineAssets/Animated/WaterVolume.dds diff --git a/Engine/EngineAssets/CodeCoverage/hit.tif b/Assets/Engine/EngineAssets/CodeCoverage/hit.tif similarity index 100% rename from Engine/EngineAssets/CodeCoverage/hit.tif rename to Assets/Engine/EngineAssets/CodeCoverage/hit.tif diff --git a/Engine/EngineAssets/CodeCoverage/hit.tif.exportsettings b/Assets/Engine/EngineAssets/CodeCoverage/hit.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/CodeCoverage/hit.tif.exportsettings rename to Assets/Engine/EngineAssets/CodeCoverage/hit.tif.exportsettings diff --git a/Engine/EngineAssets/CodeCoverage/pbar.tif b/Assets/Engine/EngineAssets/CodeCoverage/pbar.tif similarity index 100% rename from Engine/EngineAssets/CodeCoverage/pbar.tif rename to Assets/Engine/EngineAssets/CodeCoverage/pbar.tif diff --git a/Engine/EngineAssets/CodeCoverage/pbar.tif.exportsettings b/Assets/Engine/EngineAssets/CodeCoverage/pbar.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/CodeCoverage/pbar.tif.exportsettings rename to Assets/Engine/EngineAssets/CodeCoverage/pbar.tif.exportsettings diff --git a/Engine/EngineAssets/CodeCoverage/unexpected.tif b/Assets/Engine/EngineAssets/CodeCoverage/unexpected.tif similarity index 100% rename from Engine/EngineAssets/CodeCoverage/unexpected.tif rename to Assets/Engine/EngineAssets/CodeCoverage/unexpected.tif diff --git a/Engine/EngineAssets/CodeCoverage/unexpected.tif.exportsettings b/Assets/Engine/EngineAssets/CodeCoverage/unexpected.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/CodeCoverage/unexpected.tif.exportsettings rename to Assets/Engine/EngineAssets/CodeCoverage/unexpected.tif.exportsettings diff --git a/Engine/EngineAssets/GeomCaches/defaultGeomCache.abc b/Assets/Engine/EngineAssets/GeomCaches/defaultGeomCache.abc similarity index 100% rename from Engine/EngineAssets/GeomCaches/defaultGeomCache.abc rename to Assets/Engine/EngineAssets/GeomCaches/defaultGeomCache.abc diff --git a/Engine/EngineAssets/GeomCaches/defaultGeomCache.cbc b/Assets/Engine/EngineAssets/GeomCaches/defaultGeomCache.cbc similarity index 100% rename from Engine/EngineAssets/GeomCaches/defaultGeomCache.cbc rename to Assets/Engine/EngineAssets/GeomCaches/defaultGeomCache.cbc diff --git a/Engine/EngineAssets/GeomCaches/defaultGeomCache.ma b/Assets/Engine/EngineAssets/GeomCaches/defaultGeomCache.ma similarity index 100% rename from Engine/EngineAssets/GeomCaches/defaultGeomCache.ma rename to Assets/Engine/EngineAssets/GeomCaches/defaultGeomCache.ma diff --git a/Engine/EngineAssets/GeomCaches/defaultGeomCache.mtl b/Assets/Engine/EngineAssets/GeomCaches/defaultGeomCache.mtl similarity index 100% rename from Engine/EngineAssets/GeomCaches/defaultGeomCache.mtl rename to Assets/Engine/EngineAssets/GeomCaches/defaultGeomCache.mtl diff --git a/Engine/EngineAssets/Icons/AverageMemoryUsage.TIF b/Assets/Engine/EngineAssets/Icons/AverageMemoryUsage.TIF similarity index 100% rename from Engine/EngineAssets/Icons/AverageMemoryUsage.TIF rename to Assets/Engine/EngineAssets/Icons/AverageMemoryUsage.TIF diff --git a/Engine/EngineAssets/Icons/AverageMemoryUsage.TIF.exportsettings b/Assets/Engine/EngineAssets/Icons/AverageMemoryUsage.TIF.exportsettings similarity index 100% rename from Engine/EngineAssets/Icons/AverageMemoryUsage.TIF.exportsettings rename to Assets/Engine/EngineAssets/Icons/AverageMemoryUsage.TIF.exportsettings diff --git a/Engine/EngineAssets/Icons/HighMemoryUsage.TIF b/Assets/Engine/EngineAssets/Icons/HighMemoryUsage.TIF similarity index 100% rename from Engine/EngineAssets/Icons/HighMemoryUsage.TIF rename to Assets/Engine/EngineAssets/Icons/HighMemoryUsage.TIF diff --git a/Engine/EngineAssets/Icons/HighMemoryUsage.TIF.exportsettings b/Assets/Engine/EngineAssets/Icons/HighMemoryUsage.TIF.exportsettings similarity index 100% rename from Engine/EngineAssets/Icons/HighMemoryUsage.TIF.exportsettings rename to Assets/Engine/EngineAssets/Icons/HighMemoryUsage.TIF.exportsettings diff --git a/Engine/EngineAssets/Icons/LevelShaderCacheMiss.tif b/Assets/Engine/EngineAssets/Icons/LevelShaderCacheMiss.tif similarity index 100% rename from Engine/EngineAssets/Icons/LevelShaderCacheMiss.tif rename to Assets/Engine/EngineAssets/Icons/LevelShaderCacheMiss.tif diff --git a/Engine/EngineAssets/Icons/LevelShaderCacheMiss.tif.exportsettings b/Assets/Engine/EngineAssets/Icons/LevelShaderCacheMiss.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Icons/LevelShaderCacheMiss.tif.exportsettings rename to Assets/Engine/EngineAssets/Icons/LevelShaderCacheMiss.tif.exportsettings diff --git a/Engine/EngineAssets/Icons/LivePreview.TIF b/Assets/Engine/EngineAssets/Icons/LivePreview.TIF similarity index 100% rename from Engine/EngineAssets/Icons/LivePreview.TIF rename to Assets/Engine/EngineAssets/Icons/LivePreview.TIF diff --git a/Engine/EngineAssets/Icons/LivePreview.TIF.exportsettings b/Assets/Engine/EngineAssets/Icons/LivePreview.TIF.exportsettings similarity index 100% rename from Engine/EngineAssets/Icons/LivePreview.TIF.exportsettings rename to Assets/Engine/EngineAssets/Icons/LivePreview.TIF.exportsettings diff --git a/Engine/EngineAssets/Icons/LowMemoryUsage.TIF b/Assets/Engine/EngineAssets/Icons/LowMemoryUsage.TIF similarity index 100% rename from Engine/EngineAssets/Icons/LowMemoryUsage.TIF rename to Assets/Engine/EngineAssets/Icons/LowMemoryUsage.TIF diff --git a/Engine/EngineAssets/Icons/LowMemoryUsage.TIF.exportsettings b/Assets/Engine/EngineAssets/Icons/LowMemoryUsage.TIF.exportsettings similarity index 100% rename from Engine/EngineAssets/Icons/LowMemoryUsage.TIF.exportsettings rename to Assets/Engine/EngineAssets/Icons/LowMemoryUsage.TIF.exportsettings diff --git a/Engine/EngineAssets/Icons/NavigationProcessing.tif b/Assets/Engine/EngineAssets/Icons/NavigationProcessing.tif similarity index 100% rename from Engine/EngineAssets/Icons/NavigationProcessing.tif rename to Assets/Engine/EngineAssets/Icons/NavigationProcessing.tif diff --git a/Engine/EngineAssets/Icons/NavigationProcessing.tif.exportsettings b/Assets/Engine/EngineAssets/Icons/NavigationProcessing.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Icons/NavigationProcessing.tif.exportsettings rename to Assets/Engine/EngineAssets/Icons/NavigationProcessing.tif.exportsettings diff --git a/Engine/EngineAssets/Icons/NullSoundSystem.tif b/Assets/Engine/EngineAssets/Icons/NullSoundSystem.tif similarity index 100% rename from Engine/EngineAssets/Icons/NullSoundSystem.tif rename to Assets/Engine/EngineAssets/Icons/NullSoundSystem.tif diff --git a/Engine/EngineAssets/Icons/NullSoundSystem.tif.exportsettings b/Assets/Engine/EngineAssets/Icons/NullSoundSystem.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Icons/NullSoundSystem.tif.exportsettings rename to Assets/Engine/EngineAssets/Icons/NullSoundSystem.tif.exportsettings diff --git a/Engine/EngineAssets/Icons/ShaderCompiling.tif b/Assets/Engine/EngineAssets/Icons/ShaderCompiling.tif similarity index 100% rename from Engine/EngineAssets/Icons/ShaderCompiling.tif rename to Assets/Engine/EngineAssets/Icons/ShaderCompiling.tif diff --git a/Engine/EngineAssets/Icons/ShaderCompiling.tif.exportsettings b/Assets/Engine/EngineAssets/Icons/ShaderCompiling.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Icons/ShaderCompiling.tif.exportsettings rename to Assets/Engine/EngineAssets/Icons/ShaderCompiling.tif.exportsettings diff --git a/Engine/EngineAssets/Icons/Streaming.tif b/Assets/Engine/EngineAssets/Icons/Streaming.tif similarity index 100% rename from Engine/EngineAssets/Icons/Streaming.tif rename to Assets/Engine/EngineAssets/Icons/Streaming.tif diff --git a/Engine/EngineAssets/Icons/Streaming.tif.exportsettings b/Assets/Engine/EngineAssets/Icons/Streaming.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Icons/Streaming.tif.exportsettings rename to Assets/Engine/EngineAssets/Icons/Streaming.tif.exportsettings diff --git a/Engine/EngineAssets/Icons/StreamingTerrain.tif b/Assets/Engine/EngineAssets/Icons/StreamingTerrain.tif similarity index 100% rename from Engine/EngineAssets/Icons/StreamingTerrain.tif rename to Assets/Engine/EngineAssets/Icons/StreamingTerrain.tif diff --git a/Engine/EngineAssets/Icons/StreamingTerrain.tif.exportsettings b/Assets/Engine/EngineAssets/Icons/StreamingTerrain.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Icons/StreamingTerrain.tif.exportsettings rename to Assets/Engine/EngineAssets/Icons/StreamingTerrain.tif.exportsettings diff --git a/Engine/EngineAssets/LevelForSliceEditing/LevelForSliceEditing.ly b/Assets/Engine/EngineAssets/LevelForSliceEditing/LevelForSliceEditing.ly similarity index 100% rename from Engine/EngineAssets/LevelForSliceEditing/LevelForSliceEditing.ly rename to Assets/Engine/EngineAssets/LevelForSliceEditing/LevelForSliceEditing.ly diff --git a/Engine/EngineAssets/LevelForSliceEditing/filelist.xml b/Assets/Engine/EngineAssets/LevelForSliceEditing/filelist.xml similarity index 100% rename from Engine/EngineAssets/LevelForSliceEditing/filelist.xml rename to Assets/Engine/EngineAssets/LevelForSliceEditing/filelist.xml diff --git a/Engine/EngineAssets/LevelForSliceEditing/level.pak b/Assets/Engine/EngineAssets/LevelForSliceEditing/level.pak similarity index 100% rename from Engine/EngineAssets/LevelForSliceEditing/level.pak rename to Assets/Engine/EngineAssets/LevelForSliceEditing/level.pak diff --git a/Engine/EngineAssets/LevelForSliceEditing/leveldata/environment.xml b/Assets/Engine/EngineAssets/LevelForSliceEditing/leveldata/environment.xml similarity index 100% rename from Engine/EngineAssets/LevelForSliceEditing/leveldata/environment.xml rename to Assets/Engine/EngineAssets/LevelForSliceEditing/leveldata/environment.xml diff --git a/Engine/EngineAssets/LevelForSliceEditing/leveldata/heightmap.dat b/Assets/Engine/EngineAssets/LevelForSliceEditing/leveldata/heightmap.dat similarity index 100% rename from Engine/EngineAssets/LevelForSliceEditing/leveldata/heightmap.dat rename to Assets/Engine/EngineAssets/LevelForSliceEditing/leveldata/heightmap.dat diff --git a/Engine/EngineAssets/LevelForSliceEditing/leveldata/terraintexture.xml b/Assets/Engine/EngineAssets/LevelForSliceEditing/leveldata/terraintexture.xml similarity index 100% rename from Engine/EngineAssets/LevelForSliceEditing/leveldata/terraintexture.xml rename to Assets/Engine/EngineAssets/LevelForSliceEditing/leveldata/terraintexture.xml diff --git a/Engine/EngineAssets/LevelForSliceEditing/leveldata/timeofday.xml b/Assets/Engine/EngineAssets/LevelForSliceEditing/leveldata/timeofday.xml similarity index 100% rename from Engine/EngineAssets/LevelForSliceEditing/leveldata/timeofday.xml rename to Assets/Engine/EngineAssets/LevelForSliceEditing/leveldata/timeofday.xml diff --git a/Engine/EngineAssets/LevelForSliceEditing/leveldata/vegetationmap.dat b/Assets/Engine/EngineAssets/LevelForSliceEditing/leveldata/vegetationmap.dat similarity index 100% rename from Engine/EngineAssets/LevelForSliceEditing/leveldata/vegetationmap.dat rename to Assets/Engine/EngineAssets/LevelForSliceEditing/leveldata/vegetationmap.dat diff --git a/Engine/EngineAssets/LevelForSliceEditing/tags.txt b/Assets/Engine/EngineAssets/LevelForSliceEditing/tags.txt similarity index 100% rename from Engine/EngineAssets/LevelForSliceEditing/tags.txt rename to Assets/Engine/EngineAssets/LevelForSliceEditing/tags.txt diff --git a/Engine/EngineAssets/Materials/Fog/FogVolumeBox.mtl b/Assets/Engine/EngineAssets/Materials/Fog/FogVolumeBox.mtl similarity index 100% rename from Engine/EngineAssets/Materials/Fog/FogVolumeBox.mtl rename to Assets/Engine/EngineAssets/Materials/Fog/FogVolumeBox.mtl diff --git a/Engine/EngineAssets/Materials/Fog/FogVolumeEllipsoid.mtl b/Assets/Engine/EngineAssets/Materials/Fog/FogVolumeEllipsoid.mtl similarity index 100% rename from Engine/EngineAssets/Materials/Fog/FogVolumeEllipsoid.mtl rename to Assets/Engine/EngineAssets/Materials/Fog/FogVolumeEllipsoid.mtl diff --git a/Engine/EngineAssets/Materials/Fog/OceanInto.mtl b/Assets/Engine/EngineAssets/Materials/Fog/OceanInto.mtl similarity index 100% rename from Engine/EngineAssets/Materials/Fog/OceanInto.mtl rename to Assets/Engine/EngineAssets/Materials/Fog/OceanInto.mtl diff --git a/Engine/EngineAssets/Materials/Fog/OceanIntoLowSpec.mtl b/Assets/Engine/EngineAssets/Materials/Fog/OceanIntoLowSpec.mtl similarity index 100% rename from Engine/EngineAssets/Materials/Fog/OceanIntoLowSpec.mtl rename to Assets/Engine/EngineAssets/Materials/Fog/OceanIntoLowSpec.mtl diff --git a/Engine/EngineAssets/Materials/Fog/OceanOutof.mtl b/Assets/Engine/EngineAssets/Materials/Fog/OceanOutof.mtl similarity index 100% rename from Engine/EngineAssets/Materials/Fog/OceanOutof.mtl rename to Assets/Engine/EngineAssets/Materials/Fog/OceanOutof.mtl diff --git a/Engine/EngineAssets/Materials/Fog/OceanOutofLowSpec.mtl b/Assets/Engine/EngineAssets/Materials/Fog/OceanOutofLowSpec.mtl similarity index 100% rename from Engine/EngineAssets/Materials/Fog/OceanOutofLowSpec.mtl rename to Assets/Engine/EngineAssets/Materials/Fog/OceanOutofLowSpec.mtl diff --git a/Engine/EngineAssets/Materials/Fog/WaterFogVolumeInto.mtl b/Assets/Engine/EngineAssets/Materials/Fog/WaterFogVolumeInto.mtl similarity index 100% rename from Engine/EngineAssets/Materials/Fog/WaterFogVolumeInto.mtl rename to Assets/Engine/EngineAssets/Materials/Fog/WaterFogVolumeInto.mtl diff --git a/Engine/EngineAssets/Materials/Fog/WaterFogVolumeOutof.mtl b/Assets/Engine/EngineAssets/Materials/Fog/WaterFogVolumeOutof.mtl similarity index 100% rename from Engine/EngineAssets/Materials/Fog/WaterFogVolumeOutof.mtl rename to Assets/Engine/EngineAssets/Materials/Fog/WaterFogVolumeOutof.mtl diff --git a/Engine/EngineAssets/Materials/PhysProxyTooBig.mtl b/Assets/Engine/EngineAssets/Materials/PhysProxyTooBig.mtl similarity index 100% rename from Engine/EngineAssets/Materials/PhysProxyTooBig.mtl rename to Assets/Engine/EngineAssets/Materials/PhysProxyTooBig.mtl diff --git a/Engine/EngineAssets/Materials/Water/WaterOceanBottom.mtl b/Assets/Engine/EngineAssets/Materials/Water/WaterOceanBottom.mtl similarity index 100% rename from Engine/EngineAssets/Materials/Water/WaterOceanBottom.mtl rename to Assets/Engine/EngineAssets/Materials/Water/WaterOceanBottom.mtl diff --git a/Engine/EngineAssets/Materials/Water/ocean_default.mtl b/Assets/Engine/EngineAssets/Materials/Water/ocean_default.mtl similarity index 100% rename from Engine/EngineAssets/Materials/Water/ocean_default.mtl rename to Assets/Engine/EngineAssets/Materials/Water/ocean_default.mtl diff --git a/Engine/EngineAssets/Materials/collision_proxy_entitiesonly.mtl b/Assets/Engine/EngineAssets/Materials/collision_proxy_entitiesonly.mtl similarity index 100% rename from Engine/EngineAssets/Materials/collision_proxy_entitiesonly.mtl rename to Assets/Engine/EngineAssets/Materials/collision_proxy_entitiesonly.mtl diff --git a/Engine/EngineAssets/Materials/decals/default.mtl b/Assets/Engine/EngineAssets/Materials/decals/default.mtl similarity index 100% rename from Engine/EngineAssets/Materials/decals/default.mtl rename to Assets/Engine/EngineAssets/Materials/decals/default.mtl diff --git a/Engine/EngineAssets/Materials/lens_optics.mtl b/Assets/Engine/EngineAssets/Materials/lens_optics.mtl similarity index 100% rename from Engine/EngineAssets/Materials/lens_optics.mtl rename to Assets/Engine/EngineAssets/Materials/lens_optics.mtl diff --git a/Engine/EngineAssets/Materials/sky/sky.mtl b/Assets/Engine/EngineAssets/Materials/sky/sky.mtl similarity index 100% rename from Engine/EngineAssets/Materials/sky/sky.mtl rename to Assets/Engine/EngineAssets/Materials/sky/sky.mtl diff --git a/Engine/EngineAssets/Materials/test/Holotest/hologram.mtl b/Assets/Engine/EngineAssets/Materials/test/Holotest/hologram.mtl similarity index 100% rename from Engine/EngineAssets/Materials/test/Holotest/hologram.mtl rename to Assets/Engine/EngineAssets/Materials/test/Holotest/hologram.mtl diff --git a/Engine/EngineAssets/Materials/test/Holotest/test2.tif b/Assets/Engine/EngineAssets/Materials/test/Holotest/test2.tif similarity index 100% rename from Engine/EngineAssets/Materials/test/Holotest/test2.tif rename to Assets/Engine/EngineAssets/Materials/test/Holotest/test2.tif diff --git a/Engine/EngineAssets/Materials/test/Holotest/test2.tif.exportsettings b/Assets/Engine/EngineAssets/Materials/test/Holotest/test2.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Materials/test/Holotest/test2.tif.exportsettings rename to Assets/Engine/EngineAssets/Materials/test/Holotest/test2.tif.exportsettings diff --git a/Engine/EngineAssets/Materials/test/Holotest/tews1.tif b/Assets/Engine/EngineAssets/Materials/test/Holotest/tews1.tif similarity index 100% rename from Engine/EngineAssets/Materials/test/Holotest/tews1.tif rename to Assets/Engine/EngineAssets/Materials/test/Holotest/tews1.tif diff --git a/Engine/EngineAssets/Materials/test/Holotest/tews1.tif.exportsettings b/Assets/Engine/EngineAssets/Materials/test/Holotest/tews1.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Materials/test/Holotest/tews1.tif.exportsettings rename to Assets/Engine/EngineAssets/Materials/test/Holotest/tews1.tif.exportsettings diff --git a/Engine/EngineAssets/Materials/test/Holotest/tile1.cgf b/Assets/Engine/EngineAssets/Materials/test/Holotest/tile1.cgf similarity index 100% rename from Engine/EngineAssets/Materials/test/Holotest/tile1.cgf rename to Assets/Engine/EngineAssets/Materials/test/Holotest/tile1.cgf diff --git a/Engine/EngineAssets/Materials/test/Holotest/tile1.max b/Assets/Engine/EngineAssets/Materials/test/Holotest/tile1.max similarity index 100% rename from Engine/EngineAssets/Materials/test/Holotest/tile1.max rename to Assets/Engine/EngineAssets/Materials/test/Holotest/tile1.max diff --git a/Engine/EngineAssets/Materials/test/chromium.mtl b/Assets/Engine/EngineAssets/Materials/test/chromium.mtl similarity index 100% rename from Engine/EngineAssets/Materials/test/chromium.mtl rename to Assets/Engine/EngineAssets/Materials/test/chromium.mtl diff --git a/Engine/EngineAssets/Materials/test/glass2.mtl b/Assets/Engine/EngineAssets/Materials/test/glass2.mtl similarity index 100% rename from Engine/EngineAssets/Materials/test/glass2.mtl rename to Assets/Engine/EngineAssets/Materials/test/glass2.mtl diff --git a/Engine/EngineAssets/Materials/test/hologram.mtl b/Assets/Engine/EngineAssets/Materials/test/hologram.mtl similarity index 100% rename from Engine/EngineAssets/Materials/test/hologram.mtl rename to Assets/Engine/EngineAssets/Materials/test/hologram.mtl diff --git a/Engine/EngineAssets/Materials/test/lightbeam.mtl b/Assets/Engine/EngineAssets/Materials/test/lightbeam.mtl similarity index 100% rename from Engine/EngineAssets/Materials/test/lightbeam.mtl rename to Assets/Engine/EngineAssets/Materials/test/lightbeam.mtl diff --git a/Engine/EngineAssets/Materials/test/lightbeam_floodlight.mtl b/Assets/Engine/EngineAssets/Materials/test/lightbeam_floodlight.mtl similarity index 100% rename from Engine/EngineAssets/Materials/test/lightbeam_floodlight.mtl rename to Assets/Engine/EngineAssets/Materials/test/lightbeam_floodlight.mtl diff --git a/Engine/EngineAssets/Materials/test/lighthouseBeam.mtl b/Assets/Engine/EngineAssets/Materials/test/lighthouseBeam.mtl similarity index 100% rename from Engine/EngineAssets/Materials/test/lighthouseBeam.mtl rename to Assets/Engine/EngineAssets/Materials/test/lighthouseBeam.mtl diff --git a/Engine/EngineAssets/Materials/test/lighthousetemplebeam.mtl b/Assets/Engine/EngineAssets/Materials/test/lighthousetemplebeam.mtl similarity index 100% rename from Engine/EngineAssets/Materials/test/lighthousetemplebeam.mtl rename to Assets/Engine/EngineAssets/Materials/test/lighthousetemplebeam.mtl diff --git a/Engine/EngineAssets/Materials/test/nodraw.mtl b/Assets/Engine/EngineAssets/Materials/test/nodraw.mtl similarity index 100% rename from Engine/EngineAssets/Materials/test/nodraw.mtl rename to Assets/Engine/EngineAssets/Materials/test/nodraw.mtl diff --git a/Engine/EngineAssets/Materials/test/sky.mtl b/Assets/Engine/EngineAssets/Materials/test/sky.mtl similarity index 100% rename from Engine/EngineAssets/Materials/test/sky.mtl rename to Assets/Engine/EngineAssets/Materials/test/sky.mtl diff --git a/Engine/EngineAssets/Materials/test/skyHDR.mtl b/Assets/Engine/EngineAssets/Materials/test/skyHDR.mtl similarity index 100% rename from Engine/EngineAssets/Materials/test/skyHDR.mtl rename to Assets/Engine/EngineAssets/Materials/test/skyHDR.mtl diff --git a/Engine/EngineAssets/Materials/test/textures/glass_wall_ddn.tif b/Assets/Engine/EngineAssets/Materials/test/textures/glass_wall_ddn.tif similarity index 100% rename from Engine/EngineAssets/Materials/test/textures/glass_wall_ddn.tif rename to Assets/Engine/EngineAssets/Materials/test/textures/glass_wall_ddn.tif diff --git a/Engine/EngineAssets/Materials/test/textures/templeBeam.tif b/Assets/Engine/EngineAssets/Materials/test/textures/templeBeam.tif similarity index 100% rename from Engine/EngineAssets/Materials/test/textures/templeBeam.tif rename to Assets/Engine/EngineAssets/Materials/test/textures/templeBeam.tif diff --git a/Engine/EngineAssets/Materials/test/textures/templeBeam.tif.exportsettings b/Assets/Engine/EngineAssets/Materials/test/textures/templeBeam.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Materials/test/textures/templeBeam.tif.exportsettings rename to Assets/Engine/EngineAssets/Materials/test/textures/templeBeam.tif.exportsettings diff --git a/Engine/EngineAssets/Materials/test/volumeObject.mtl b/Assets/Engine/EngineAssets/Materials/test/volumeObject.mtl similarity index 100% rename from Engine/EngineAssets/Materials/test/volumeObject.mtl rename to Assets/Engine/EngineAssets/Materials/test/volumeObject.mtl diff --git a/Engine/EngineAssets/Materials/test/volumeObject2.mtl b/Assets/Engine/EngineAssets/Materials/test/volumeObject2.mtl similarity index 100% rename from Engine/EngineAssets/Materials/test/volumeObject2.mtl rename to Assets/Engine/EngineAssets/Materials/test/volumeObject2.mtl diff --git a/Engine/EngineAssets/Objects/Default.cgf b/Assets/Engine/EngineAssets/Objects/Default.cgf similarity index 100% rename from Engine/EngineAssets/Objects/Default.cgf rename to Assets/Engine/EngineAssets/Objects/Default.cgf diff --git a/Engine/EngineAssets/Objects/helper.mtl b/Assets/Engine/EngineAssets/Objects/helper.mtl similarity index 100% rename from Engine/EngineAssets/Objects/helper.mtl rename to Assets/Engine/EngineAssets/Objects/helper.mtl diff --git a/Engine/EngineAssets/Production/MidGray.tif b/Assets/Engine/EngineAssets/Production/MidGray.tif similarity index 100% rename from Engine/EngineAssets/Production/MidGray.tif rename to Assets/Engine/EngineAssets/Production/MidGray.tif diff --git a/Engine/EngineAssets/Production/MidGray.tif.exportsettings b/Assets/Engine/EngineAssets/Production/MidGray.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Production/MidGray.tif.exportsettings rename to Assets/Engine/EngineAssets/Production/MidGray.tif.exportsettings diff --git a/Engine/EngineAssets/Production/TangentReference_ddn.tif b/Assets/Engine/EngineAssets/Production/TangentReference_ddn.tif similarity index 100% rename from Engine/EngineAssets/Production/TangentReference_ddn.tif rename to Assets/Engine/EngineAssets/Production/TangentReference_ddn.tif diff --git a/Engine/EngineAssets/Production/TangentReference_ddn.tif.exportsettings b/Assets/Engine/EngineAssets/Production/TangentReference_ddn.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Production/TangentReference_ddn.tif.exportsettings rename to Assets/Engine/EngineAssets/Production/TangentReference_ddn.tif.exportsettings diff --git a/Engine/EngineAssets/Production/UV.tif b/Assets/Engine/EngineAssets/Production/UV.tif similarity index 100% rename from Engine/EngineAssets/Production/UV.tif rename to Assets/Engine/EngineAssets/Production/UV.tif diff --git a/Engine/EngineAssets/Production/UV.tif.exportsettings b/Assets/Engine/EngineAssets/Production/UV.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Production/UV.tif.exportsettings rename to Assets/Engine/EngineAssets/Production/UV.tif.exportsettings diff --git a/Engine/EngineAssets/ScreenSpace/AreaTex.dds b/Assets/Engine/EngineAssets/ScreenSpace/AreaTex.dds similarity index 100% rename from Engine/EngineAssets/ScreenSpace/AreaTex.dds rename to Assets/Engine/EngineAssets/ScreenSpace/AreaTex.dds diff --git a/Engine/EngineAssets/ScreenSpace/NormalsFitting.dds b/Assets/Engine/EngineAssets/ScreenSpace/NormalsFitting.dds similarity index 100% rename from Engine/EngineAssets/ScreenSpace/NormalsFitting.dds rename to Assets/Engine/EngineAssets/ScreenSpace/NormalsFitting.dds diff --git a/Engine/EngineAssets/ScreenSpace/PointsOnSphere4x4.tif b/Assets/Engine/EngineAssets/ScreenSpace/PointsOnSphere4x4.tif similarity index 100% rename from Engine/EngineAssets/ScreenSpace/PointsOnSphere4x4.tif rename to Assets/Engine/EngineAssets/ScreenSpace/PointsOnSphere4x4.tif diff --git a/Engine/EngineAssets/ScreenSpace/PointsOnSphere4x4.tif.exportsettings b/Assets/Engine/EngineAssets/ScreenSpace/PointsOnSphere4x4.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/ScreenSpace/PointsOnSphere4x4.tif.exportsettings rename to Assets/Engine/EngineAssets/ScreenSpace/PointsOnSphere4x4.tif.exportsettings diff --git a/Engine/EngineAssets/ScreenSpace/PointsOnSphereVO4x4.tif b/Assets/Engine/EngineAssets/ScreenSpace/PointsOnSphereVO4x4.tif similarity index 100% rename from Engine/EngineAssets/ScreenSpace/PointsOnSphereVO4x4.tif rename to Assets/Engine/EngineAssets/ScreenSpace/PointsOnSphereVO4x4.tif diff --git a/Engine/EngineAssets/ScreenSpace/PointsOnSphereVO4x4.tif.exportsettings b/Assets/Engine/EngineAssets/ScreenSpace/PointsOnSphereVO4x4.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/ScreenSpace/PointsOnSphereVO4x4.tif.exportsettings rename to Assets/Engine/EngineAssets/ScreenSpace/PointsOnSphereVO4x4.tif.exportsettings diff --git a/Engine/EngineAssets/ScreenSpace/SearchTex.dds b/Assets/Engine/EngineAssets/ScreenSpace/SearchTex.dds similarity index 100% rename from Engine/EngineAssets/ScreenSpace/SearchTex.dds rename to Assets/Engine/EngineAssets/ScreenSpace/SearchTex.dds diff --git a/Engine/EngineAssets/ScreenSpace/bokeh_love.TIF b/Assets/Engine/EngineAssets/ScreenSpace/bokeh_love.TIF similarity index 100% rename from Engine/EngineAssets/ScreenSpace/bokeh_love.TIF rename to Assets/Engine/EngineAssets/ScreenSpace/bokeh_love.TIF diff --git a/Engine/EngineAssets/ScreenSpace/bokeh_love.TIF.exportsettings b/Assets/Engine/EngineAssets/ScreenSpace/bokeh_love.TIF.exportsettings similarity index 100% rename from Engine/EngineAssets/ScreenSpace/bokeh_love.TIF.exportsettings rename to Assets/Engine/EngineAssets/ScreenSpace/bokeh_love.TIF.exportsettings diff --git a/Engine/EngineAssets/ScreenSpace/bokeh_music.TIF b/Assets/Engine/EngineAssets/ScreenSpace/bokeh_music.TIF similarity index 100% rename from Engine/EngineAssets/ScreenSpace/bokeh_music.TIF rename to Assets/Engine/EngineAssets/ScreenSpace/bokeh_music.TIF diff --git a/Engine/EngineAssets/ScreenSpace/bokeh_music.TIF.exportsettings b/Assets/Engine/EngineAssets/ScreenSpace/bokeh_music.TIF.exportsettings similarity index 100% rename from Engine/EngineAssets/ScreenSpace/bokeh_music.TIF.exportsettings rename to Assets/Engine/EngineAssets/ScreenSpace/bokeh_music.TIF.exportsettings diff --git a/Engine/EngineAssets/ScreenSpace/bokeh_pentagon.TIF b/Assets/Engine/EngineAssets/ScreenSpace/bokeh_pentagon.TIF similarity index 100% rename from Engine/EngineAssets/ScreenSpace/bokeh_pentagon.TIF rename to Assets/Engine/EngineAssets/ScreenSpace/bokeh_pentagon.TIF diff --git a/Engine/EngineAssets/ScreenSpace/bokeh_pentagon.TIF.exportsettings b/Assets/Engine/EngineAssets/ScreenSpace/bokeh_pentagon.TIF.exportsettings similarity index 100% rename from Engine/EngineAssets/ScreenSpace/bokeh_pentagon.TIF.exportsettings rename to Assets/Engine/EngineAssets/ScreenSpace/bokeh_pentagon.TIF.exportsettings diff --git a/Engine/EngineAssets/ScreenSpace/bokeh_spherical.TIF b/Assets/Engine/EngineAssets/ScreenSpace/bokeh_spherical.TIF similarity index 100% rename from Engine/EngineAssets/ScreenSpace/bokeh_spherical.TIF rename to Assets/Engine/EngineAssets/ScreenSpace/bokeh_spherical.TIF diff --git a/Engine/EngineAssets/ScreenSpace/bokeh_spherical.TIF.exportsettings b/Assets/Engine/EngineAssets/ScreenSpace/bokeh_spherical.TIF.exportsettings similarity index 100% rename from Engine/EngineAssets/ScreenSpace/bokeh_spherical.TIF.exportsettings rename to Assets/Engine/EngineAssets/ScreenSpace/bokeh_spherical.TIF.exportsettings diff --git a/Engine/EngineAssets/ScreenSpace/bokeh_square.TIF b/Assets/Engine/EngineAssets/ScreenSpace/bokeh_square.TIF similarity index 100% rename from Engine/EngineAssets/ScreenSpace/bokeh_square.TIF rename to Assets/Engine/EngineAssets/ScreenSpace/bokeh_square.TIF diff --git a/Engine/EngineAssets/ScreenSpace/bokeh_square.TIF.exportsettings b/Assets/Engine/EngineAssets/ScreenSpace/bokeh_square.TIF.exportsettings similarity index 100% rename from Engine/EngineAssets/ScreenSpace/bokeh_square.TIF.exportsettings rename to Assets/Engine/EngineAssets/ScreenSpace/bokeh_square.TIF.exportsettings diff --git a/Engine/EngineAssets/ScreenSpace/bokeh_star.TIF b/Assets/Engine/EngineAssets/ScreenSpace/bokeh_star.TIF similarity index 100% rename from Engine/EngineAssets/ScreenSpace/bokeh_star.TIF rename to Assets/Engine/EngineAssets/ScreenSpace/bokeh_star.TIF diff --git a/Engine/EngineAssets/ScreenSpace/bokeh_star.TIF.exportsettings b/Assets/Engine/EngineAssets/ScreenSpace/bokeh_star.TIF.exportsettings similarity index 100% rename from Engine/EngineAssets/ScreenSpace/bokeh_star.TIF.exportsettings rename to Assets/Engine/EngineAssets/ScreenSpace/bokeh_star.TIF.exportsettings diff --git a/Engine/EngineAssets/ScreenSpace/film_grain.dds b/Assets/Engine/EngineAssets/ScreenSpace/film_grain.dds similarity index 100% rename from Engine/EngineAssets/ScreenSpace/film_grain.dds rename to Assets/Engine/EngineAssets/ScreenSpace/film_grain.dds diff --git a/Engine/EngineAssets/ScreenSpace/grain_bayer_mul.tif b/Assets/Engine/EngineAssets/ScreenSpace/grain_bayer_mul.tif similarity index 100% rename from Engine/EngineAssets/ScreenSpace/grain_bayer_mul.tif rename to Assets/Engine/EngineAssets/ScreenSpace/grain_bayer_mul.tif diff --git a/Engine/EngineAssets/ScreenSpace/grain_bayer_mul.tif.exportsettings b/Assets/Engine/EngineAssets/ScreenSpace/grain_bayer_mul.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/ScreenSpace/grain_bayer_mul.tif.exportsettings rename to Assets/Engine/EngineAssets/ScreenSpace/grain_bayer_mul.tif.exportsettings diff --git a/Engine/EngineAssets/Shading/SonarVisionGradient.TIF b/Assets/Engine/EngineAssets/Shading/SonarVisionGradient.TIF similarity index 100% rename from Engine/EngineAssets/Shading/SonarVisionGradient.TIF rename to Assets/Engine/EngineAssets/Shading/SonarVisionGradient.TIF diff --git a/Engine/EngineAssets/Shading/SonarVisionGradient.TIF.exportsettings b/Assets/Engine/EngineAssets/Shading/SonarVisionGradient.TIF.exportsettings similarity index 100% rename from Engine/EngineAssets/Shading/SonarVisionGradient.TIF.exportsettings rename to Assets/Engine/EngineAssets/Shading/SonarVisionGradient.TIF.exportsettings diff --git a/Engine/EngineAssets/Shading/ThermalVisionGradient.tif b/Assets/Engine/EngineAssets/Shading/ThermalVisionGradient.tif similarity index 100% rename from Engine/EngineAssets/Shading/ThermalVisionGradient.tif rename to Assets/Engine/EngineAssets/Shading/ThermalVisionGradient.tif diff --git a/Engine/EngineAssets/Shading/ThermalVisionGradient.tif.exportsettings b/Assets/Engine/EngineAssets/Shading/ThermalVisionGradient.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Shading/ThermalVisionGradient.tif.exportsettings rename to Assets/Engine/EngineAssets/Shading/ThermalVisionGradient.tif.exportsettings diff --git a/Engine/EngineAssets/Shading/ThermalVisionGradient02.TIF b/Assets/Engine/EngineAssets/Shading/ThermalVisionGradient02.TIF similarity index 100% rename from Engine/EngineAssets/Shading/ThermalVisionGradient02.TIF rename to Assets/Engine/EngineAssets/Shading/ThermalVisionGradient02.TIF diff --git a/Engine/EngineAssets/Shading/ThermalVisionGradient02.TIF.exportsettings b/Assets/Engine/EngineAssets/Shading/ThermalVisionGradient02.TIF.exportsettings similarity index 100% rename from Engine/EngineAssets/Shading/ThermalVisionGradient02.TIF.exportsettings rename to Assets/Engine/EngineAssets/Shading/ThermalVisionGradient02.TIF.exportsettings diff --git a/Engine/EngineAssets/Shading/WaterFoam.TIF b/Assets/Engine/EngineAssets/Shading/WaterFoam.TIF similarity index 100% rename from Engine/EngineAssets/Shading/WaterFoam.TIF rename to Assets/Engine/EngineAssets/Shading/WaterFoam.TIF diff --git a/Engine/EngineAssets/Shading/WaterFoam.TIF.exportsettings b/Assets/Engine/EngineAssets/Shading/WaterFoam.TIF.exportsettings similarity index 100% rename from Engine/EngineAssets/Shading/WaterFoam.TIF.exportsettings rename to Assets/Engine/EngineAssets/Shading/WaterFoam.TIF.exportsettings diff --git a/Engine/EngineAssets/Shading/cook_d_sampler_G16R16F.dds b/Assets/Engine/EngineAssets/Shading/cook_d_sampler_G16R16F.dds similarity index 100% rename from Engine/EngineAssets/Shading/cook_d_sampler_G16R16F.dds rename to Assets/Engine/EngineAssets/Shading/cook_d_sampler_G16R16F.dds diff --git a/Engine/EngineAssets/Shading/defaultProbe_cm.tif b/Assets/Engine/EngineAssets/Shading/defaultProbe_cm.tif similarity index 100% rename from Engine/EngineAssets/Shading/defaultProbe_cm.tif rename to Assets/Engine/EngineAssets/Shading/defaultProbe_cm.tif diff --git a/Engine/EngineAssets/Shading/environmentBRDF.tif b/Assets/Engine/EngineAssets/Shading/environmentBRDF.tif similarity index 100% rename from Engine/EngineAssets/Shading/environmentBRDF.tif rename to Assets/Engine/EngineAssets/Shading/environmentBRDF.tif diff --git a/Engine/EngineAssets/Shading/generic_reflections.tif b/Assets/Engine/EngineAssets/Shading/generic_reflections.tif similarity index 100% rename from Engine/EngineAssets/Shading/generic_reflections.tif rename to Assets/Engine/EngineAssets/Shading/generic_reflections.tif diff --git a/Engine/EngineAssets/Shading/generic_reflections.tif.exportsettings b/Assets/Engine/EngineAssets/Shading/generic_reflections.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Shading/generic_reflections.tif.exportsettings rename to Assets/Engine/EngineAssets/Shading/generic_reflections.tif.exportsettings diff --git a/Engine/EngineAssets/Shading/layer_effect_anim_function.tif b/Assets/Engine/EngineAssets/Shading/layer_effect_anim_function.tif similarity index 100% rename from Engine/EngineAssets/Shading/layer_effect_anim_function.tif rename to Assets/Engine/EngineAssets/Shading/layer_effect_anim_function.tif diff --git a/Engine/EngineAssets/Shading/layer_effect_anim_function.tif.exportsettings b/Assets/Engine/EngineAssets/Shading/layer_effect_anim_function.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Shading/layer_effect_anim_function.tif.exportsettings rename to Assets/Engine/EngineAssets/Shading/layer_effect_anim_function.tif.exportsettings diff --git a/Engine/EngineAssets/Shading/nanosuit_mask.TIF b/Assets/Engine/EngineAssets/Shading/nanosuit_mask.TIF similarity index 100% rename from Engine/EngineAssets/Shading/nanosuit_mask.TIF rename to Assets/Engine/EngineAssets/Shading/nanosuit_mask.TIF diff --git a/Engine/EngineAssets/Shading/nanosuit_mask.TIF.exportsettings b/Assets/Engine/EngineAssets/Shading/nanosuit_mask.TIF.exportsettings similarity index 100% rename from Engine/EngineAssets/Shading/nanosuit_mask.TIF.exportsettings rename to Assets/Engine/EngineAssets/Shading/nanosuit_mask.TIF.exportsettings diff --git a/Engine/EngineAssets/Shading/nanosuit_modes_grads.TIF b/Assets/Engine/EngineAssets/Shading/nanosuit_modes_grads.TIF similarity index 100% rename from Engine/EngineAssets/Shading/nanosuit_modes_grads.TIF rename to Assets/Engine/EngineAssets/Shading/nanosuit_modes_grads.TIF diff --git a/Engine/EngineAssets/Shading/nanosuit_modes_grads.TIF.exportsettings b/Assets/Engine/EngineAssets/Shading/nanosuit_modes_grads.TIF.exportsettings similarity index 100% rename from Engine/EngineAssets/Shading/nanosuit_modes_grads.TIF.exportsettings rename to Assets/Engine/EngineAssets/Shading/nanosuit_modes_grads.TIF.exportsettings diff --git a/Engine/EngineAssets/Shading/vignetting.TIF b/Assets/Engine/EngineAssets/Shading/vignetting.TIF similarity index 100% rename from Engine/EngineAssets/Shading/vignetting.TIF rename to Assets/Engine/EngineAssets/Shading/vignetting.TIF diff --git a/Engine/EngineAssets/Shading/vignetting.TIF.exportsettings b/Assets/Engine/EngineAssets/Shading/vignetting.TIF.exportsettings similarity index 100% rename from Engine/EngineAssets/Shading/vignetting.TIF.exportsettings rename to Assets/Engine/EngineAssets/Shading/vignetting.TIF.exportsettings diff --git a/Engine/EngineAssets/Sky/optical.lut b/Assets/Engine/EngineAssets/Sky/optical.lut similarity index 100% rename from Engine/EngineAssets/Sky/optical.lut rename to Assets/Engine/EngineAssets/Sky/optical.lut diff --git a/Engine/EngineAssets/Sky/stars.dat b/Assets/Engine/EngineAssets/Sky/stars.dat similarity index 100% rename from Engine/EngineAssets/Sky/stars.dat rename to Assets/Engine/EngineAssets/Sky/stars.dat diff --git a/Engine/EngineAssets/Slices/DefaultLevelSetup.slice b/Assets/Engine/EngineAssets/Slices/DefaultLevelSetup.slice similarity index 100% rename from Engine/EngineAssets/Slices/DefaultLevelSetup.slice rename to Assets/Engine/EngineAssets/Slices/DefaultLevelSetup.slice diff --git a/Engine/EngineAssets/TextureMsg/DefaultNoUVs.tif b/Assets/Engine/EngineAssets/TextureMsg/DefaultNoUVs.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/DefaultNoUVs.tif rename to Assets/Engine/EngineAssets/TextureMsg/DefaultNoUVs.tif diff --git a/Engine/EngineAssets/TextureMsg/DefaultNoUVs.tif.exportsettings b/Assets/Engine/EngineAssets/TextureMsg/DefaultNoUVs.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/TextureMsg/DefaultNoUVs.tif.exportsettings rename to Assets/Engine/EngineAssets/TextureMsg/DefaultNoUVs.tif.exportsettings diff --git a/Engine/EngineAssets/TextureMsg/DefaultNoUVs_ddn.tif b/Assets/Engine/EngineAssets/TextureMsg/DefaultNoUVs_ddn.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/DefaultNoUVs_ddn.tif rename to Assets/Engine/EngineAssets/TextureMsg/DefaultNoUVs_ddn.tif diff --git a/Engine/EngineAssets/TextureMsg/DefaultNoUVs_spec.tif b/Assets/Engine/EngineAssets/TextureMsg/DefaultNoUVs_spec.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/DefaultNoUVs_spec.tif rename to Assets/Engine/EngineAssets/TextureMsg/DefaultNoUVs_spec.tif diff --git a/Engine/EngineAssets/TextureMsg/DefaultSolids.mtl b/Assets/Engine/EngineAssets/TextureMsg/DefaultSolids.mtl similarity index 100% rename from Engine/EngineAssets/TextureMsg/DefaultSolids.mtl rename to Assets/Engine/EngineAssets/TextureMsg/DefaultSolids.mtl diff --git a/Engine/EngineAssets/TextureMsg/DefaultSolids_ddn.tif b/Assets/Engine/EngineAssets/TextureMsg/DefaultSolids_ddn.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/DefaultSolids_ddn.tif rename to Assets/Engine/EngineAssets/TextureMsg/DefaultSolids_ddn.tif diff --git a/Engine/EngineAssets/TextureMsg/DefaultSolids_diff.tif b/Assets/Engine/EngineAssets/TextureMsg/DefaultSolids_diff.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/DefaultSolids_diff.tif rename to Assets/Engine/EngineAssets/TextureMsg/DefaultSolids_diff.tif diff --git a/Engine/EngineAssets/TextureMsg/DefaultSolids_diff.tif.exportsettings b/Assets/Engine/EngineAssets/TextureMsg/DefaultSolids_diff.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/TextureMsg/DefaultSolids_diff.tif.exportsettings rename to Assets/Engine/EngineAssets/TextureMsg/DefaultSolids_diff.tif.exportsettings diff --git a/Engine/EngineAssets/TextureMsg/DefaultSolids_spec.tif b/Assets/Engine/EngineAssets/TextureMsg/DefaultSolids_spec.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/DefaultSolids_spec.tif rename to Assets/Engine/EngineAssets/TextureMsg/DefaultSolids_spec.tif diff --git a/Engine/EngineAssets/TextureMsg/NotFound.psd b/Assets/Engine/EngineAssets/TextureMsg/NotFound.psd similarity index 100% rename from Engine/EngineAssets/TextureMsg/NotFound.psd rename to Assets/Engine/EngineAssets/TextureMsg/NotFound.psd diff --git a/Engine/EngineAssets/TextureMsg/NotFound.tif b/Assets/Engine/EngineAssets/TextureMsg/NotFound.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/NotFound.tif rename to Assets/Engine/EngineAssets/TextureMsg/NotFound.tif diff --git a/Engine/EngineAssets/TextureMsg/NotFound_a.tif b/Assets/Engine/EngineAssets/TextureMsg/NotFound_a.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/NotFound_a.tif rename to Assets/Engine/EngineAssets/TextureMsg/NotFound_a.tif diff --git a/Engine/EngineAssets/TextureMsg/NotFound_cm.tif b/Assets/Engine/EngineAssets/TextureMsg/NotFound_cm.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/NotFound_cm.tif rename to Assets/Engine/EngineAssets/TextureMsg/NotFound_cm.tif diff --git a/Engine/EngineAssets/TextureMsg/NotFound_ddn.tif b/Assets/Engine/EngineAssets/TextureMsg/NotFound_ddn.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/NotFound_ddn.tif rename to Assets/Engine/EngineAssets/TextureMsg/NotFound_ddn.tif diff --git a/Engine/EngineAssets/TextureMsg/NotFound_ddna.tif b/Assets/Engine/EngineAssets/TextureMsg/NotFound_ddna.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/NotFound_ddna.tif rename to Assets/Engine/EngineAssets/TextureMsg/NotFound_ddna.tif diff --git a/Engine/EngineAssets/TextureMsg/PhysProxyTooBig.tif b/Assets/Engine/EngineAssets/TextureMsg/PhysProxyTooBig.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/PhysProxyTooBig.tif rename to Assets/Engine/EngineAssets/TextureMsg/PhysProxyTooBig.tif diff --git a/Engine/EngineAssets/TextureMsg/PhysProxyTooBig.tif.exportsettings b/Assets/Engine/EngineAssets/TextureMsg/PhysProxyTooBig.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/TextureMsg/PhysProxyTooBig.tif.exportsettings rename to Assets/Engine/EngineAssets/TextureMsg/PhysProxyTooBig.tif.exportsettings diff --git a/Engine/EngineAssets/TextureMsg/RCError.psd b/Assets/Engine/EngineAssets/TextureMsg/RCError.psd similarity index 100% rename from Engine/EngineAssets/TextureMsg/RCError.psd rename to Assets/Engine/EngineAssets/TextureMsg/RCError.psd diff --git a/Engine/EngineAssets/TextureMsg/RCError.tif b/Assets/Engine/EngineAssets/TextureMsg/RCError.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/RCError.tif rename to Assets/Engine/EngineAssets/TextureMsg/RCError.tif diff --git a/Engine/EngineAssets/TextureMsg/RCError_a.tif b/Assets/Engine/EngineAssets/TextureMsg/RCError_a.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/RCError_a.tif rename to Assets/Engine/EngineAssets/TextureMsg/RCError_a.tif diff --git a/Engine/EngineAssets/TextureMsg/RCError_a.tif.exportsettings b/Assets/Engine/EngineAssets/TextureMsg/RCError_a.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/TextureMsg/RCError_a.tif.exportsettings rename to Assets/Engine/EngineAssets/TextureMsg/RCError_a.tif.exportsettings diff --git a/Engine/EngineAssets/TextureMsg/RCError_cm.tif b/Assets/Engine/EngineAssets/TextureMsg/RCError_cm.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/RCError_cm.tif rename to Assets/Engine/EngineAssets/TextureMsg/RCError_cm.tif diff --git a/Engine/EngineAssets/TextureMsg/RCError_ddn.tif b/Assets/Engine/EngineAssets/TextureMsg/RCError_ddn.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/RCError_ddn.tif rename to Assets/Engine/EngineAssets/TextureMsg/RCError_ddn.tif diff --git a/Engine/EngineAssets/TextureMsg/RCError_ddn.tif.exportsettings b/Assets/Engine/EngineAssets/TextureMsg/RCError_ddn.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/TextureMsg/RCError_ddn.tif.exportsettings rename to Assets/Engine/EngineAssets/TextureMsg/RCError_ddn.tif.exportsettings diff --git a/Engine/EngineAssets/TextureMsg/RCError_ddna.tif b/Assets/Engine/EngineAssets/TextureMsg/RCError_ddna.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/RCError_ddna.tif rename to Assets/Engine/EngineAssets/TextureMsg/RCError_ddna.tif diff --git a/Engine/EngineAssets/TextureMsg/RCError_ddna.tif.exportsettings b/Assets/Engine/EngineAssets/TextureMsg/RCError_ddna.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/TextureMsg/RCError_ddna.tif.exportsettings rename to Assets/Engine/EngineAssets/TextureMsg/RCError_ddna.tif.exportsettings diff --git a/Engine/EngineAssets/TextureMsg/ReplaceMe.tif b/Assets/Engine/EngineAssets/TextureMsg/ReplaceMe.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/ReplaceMe.tif rename to Assets/Engine/EngineAssets/TextureMsg/ReplaceMe.tif diff --git a/Engine/EngineAssets/TextureMsg/ReplaceMe.tif.exportsettings b/Assets/Engine/EngineAssets/TextureMsg/ReplaceMe.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/TextureMsg/ReplaceMe.tif.exportsettings rename to Assets/Engine/EngineAssets/TextureMsg/ReplaceMe.tif.exportsettings diff --git a/Engine/EngineAssets/TextureMsg/ReplaceMeCm.tif b/Assets/Engine/EngineAssets/TextureMsg/ReplaceMeCm.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/ReplaceMeCm.tif rename to Assets/Engine/EngineAssets/TextureMsg/ReplaceMeCm.tif diff --git a/Engine/EngineAssets/TextureMsg/ReplaceMeCm.tif.exportsettings b/Assets/Engine/EngineAssets/TextureMsg/ReplaceMeCm.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/TextureMsg/ReplaceMeCm.tif.exportsettings rename to Assets/Engine/EngineAssets/TextureMsg/ReplaceMeCm.tif.exportsettings diff --git a/Engine/EngineAssets/TextureMsg/ReplaceMeRelease.tif b/Assets/Engine/EngineAssets/TextureMsg/ReplaceMeRelease.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/ReplaceMeRelease.tif rename to Assets/Engine/EngineAssets/TextureMsg/ReplaceMeRelease.tif diff --git a/Engine/EngineAssets/TextureMsg/ReplaceMeRelease.tif.exportsettings b/Assets/Engine/EngineAssets/TextureMsg/ReplaceMeRelease.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/TextureMsg/ReplaceMeRelease.tif.exportsettings rename to Assets/Engine/EngineAssets/TextureMsg/ReplaceMeRelease.tif.exportsettings diff --git a/Engine/EngineAssets/TextureMsg/ShaderCompiling.tif b/Assets/Engine/EngineAssets/TextureMsg/ShaderCompiling.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/ShaderCompiling.tif rename to Assets/Engine/EngineAssets/TextureMsg/ShaderCompiling.tif diff --git a/Engine/EngineAssets/TextureMsg/ShaderCompiling.tif.exportsettings b/Assets/Engine/EngineAssets/TextureMsg/ShaderCompiling.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/TextureMsg/ShaderCompiling.tif.exportsettings rename to Assets/Engine/EngineAssets/TextureMsg/ShaderCompiling.tif.exportsettings diff --git a/Engine/EngineAssets/TextureMsg/ShaderError.tif b/Assets/Engine/EngineAssets/TextureMsg/ShaderError.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/ShaderError.tif rename to Assets/Engine/EngineAssets/TextureMsg/ShaderError.tif diff --git a/Engine/EngineAssets/TextureMsg/ShaderError.tif.exportsettings b/Assets/Engine/EngineAssets/TextureMsg/ShaderError.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/TextureMsg/ShaderError.tif.exportsettings rename to Assets/Engine/EngineAssets/TextureMsg/ShaderError.tif.exportsettings diff --git a/Engine/EngineAssets/TextureMsg/TextureCompiling.tif b/Assets/Engine/EngineAssets/TextureMsg/TextureCompiling.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/TextureCompiling.tif rename to Assets/Engine/EngineAssets/TextureMsg/TextureCompiling.tif diff --git a/Engine/EngineAssets/TextureMsg/TextureCompiling_a.tif b/Assets/Engine/EngineAssets/TextureMsg/TextureCompiling_a.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/TextureCompiling_a.tif rename to Assets/Engine/EngineAssets/TextureMsg/TextureCompiling_a.tif diff --git a/Engine/EngineAssets/TextureMsg/TextureCompiling_a.tif.exportsettings b/Assets/Engine/EngineAssets/TextureMsg/TextureCompiling_a.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/TextureMsg/TextureCompiling_a.tif.exportsettings rename to Assets/Engine/EngineAssets/TextureMsg/TextureCompiling_a.tif.exportsettings diff --git a/Engine/EngineAssets/TextureMsg/TextureCompiling_cm.tif b/Assets/Engine/EngineAssets/TextureMsg/TextureCompiling_cm.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/TextureCompiling_cm.tif rename to Assets/Engine/EngineAssets/TextureMsg/TextureCompiling_cm.tif diff --git a/Engine/EngineAssets/TextureMsg/TextureCompiling_ddn.tif b/Assets/Engine/EngineAssets/TextureMsg/TextureCompiling_ddn.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/TextureCompiling_ddn.tif rename to Assets/Engine/EngineAssets/TextureMsg/TextureCompiling_ddn.tif diff --git a/Engine/EngineAssets/TextureMsg/TextureCompiling_ddn.tif.exportsettings b/Assets/Engine/EngineAssets/TextureMsg/TextureCompiling_ddn.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/TextureMsg/TextureCompiling_ddn.tif.exportsettings rename to Assets/Engine/EngineAssets/TextureMsg/TextureCompiling_ddn.tif.exportsettings diff --git a/Engine/EngineAssets/TextureMsg/TextureCompiling_ddna.tif b/Assets/Engine/EngineAssets/TextureMsg/TextureCompiling_ddna.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/TextureCompiling_ddna.tif rename to Assets/Engine/EngineAssets/TextureMsg/TextureCompiling_ddna.tif diff --git a/Engine/EngineAssets/TextureMsg/TextureCompiling_ddna.tif.exportsettings b/Assets/Engine/EngineAssets/TextureMsg/TextureCompiling_ddna.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/TextureMsg/TextureCompiling_ddna.tif.exportsettings rename to Assets/Engine/EngineAssets/TextureMsg/TextureCompiling_ddna.tif.exportsettings diff --git a/Engine/EngineAssets/TextureMsg/color_Black.tif b/Assets/Engine/EngineAssets/TextureMsg/color_Black.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/color_Black.tif rename to Assets/Engine/EngineAssets/TextureMsg/color_Black.tif diff --git a/Engine/EngineAssets/TextureMsg/color_Blue.tif b/Assets/Engine/EngineAssets/TextureMsg/color_Blue.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/color_Blue.tif rename to Assets/Engine/EngineAssets/TextureMsg/color_Blue.tif diff --git a/Engine/EngineAssets/TextureMsg/color_Cyan.tif b/Assets/Engine/EngineAssets/TextureMsg/color_Cyan.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/color_Cyan.tif rename to Assets/Engine/EngineAssets/TextureMsg/color_Cyan.tif diff --git a/Engine/EngineAssets/TextureMsg/color_Green.tif b/Assets/Engine/EngineAssets/TextureMsg/color_Green.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/color_Green.tif rename to Assets/Engine/EngineAssets/TextureMsg/color_Green.tif diff --git a/Engine/EngineAssets/TextureMsg/color_Magenta.tif b/Assets/Engine/EngineAssets/TextureMsg/color_Magenta.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/color_Magenta.tif rename to Assets/Engine/EngineAssets/TextureMsg/color_Magenta.tif diff --git a/Engine/EngineAssets/TextureMsg/color_Orange.tif b/Assets/Engine/EngineAssets/TextureMsg/color_Orange.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/color_Orange.tif rename to Assets/Engine/EngineAssets/TextureMsg/color_Orange.tif diff --git a/Engine/EngineAssets/TextureMsg/color_Purple.tif b/Assets/Engine/EngineAssets/TextureMsg/color_Purple.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/color_Purple.tif rename to Assets/Engine/EngineAssets/TextureMsg/color_Purple.tif diff --git a/Engine/EngineAssets/TextureMsg/color_Red.tif b/Assets/Engine/EngineAssets/TextureMsg/color_Red.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/color_Red.tif rename to Assets/Engine/EngineAssets/TextureMsg/color_Red.tif diff --git a/Engine/EngineAssets/TextureMsg/color_White.tif b/Assets/Engine/EngineAssets/TextureMsg/color_White.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/color_White.tif rename to Assets/Engine/EngineAssets/TextureMsg/color_White.tif diff --git a/Engine/EngineAssets/TextureMsg/color_Yellow.tif b/Assets/Engine/EngineAssets/TextureMsg/color_Yellow.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/color_Yellow.tif rename to Assets/Engine/EngineAssets/TextureMsg/color_Yellow.tif diff --git a/Engine/EngineAssets/TextureMsg/mipmapdebug.tif b/Assets/Engine/EngineAssets/TextureMsg/mipmapdebug.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/mipmapdebug.tif rename to Assets/Engine/EngineAssets/TextureMsg/mipmapdebug.tif diff --git a/Engine/EngineAssets/TextureMsg/orange_for_designer.tif b/Assets/Engine/EngineAssets/TextureMsg/orange_for_designer.tif similarity index 100% rename from Engine/EngineAssets/TextureMsg/orange_for_designer.tif rename to Assets/Engine/EngineAssets/TextureMsg/orange_for_designer.tif diff --git a/Engine/EngineAssets/Textures/BlackAlpha.tif b/Assets/Engine/EngineAssets/Textures/BlackAlpha.tif similarity index 100% rename from Engine/EngineAssets/Textures/BlackAlpha.tif rename to Assets/Engine/EngineAssets/Textures/BlackAlpha.tif diff --git a/Engine/EngineAssets/Textures/BlackCM.tif b/Assets/Engine/EngineAssets/Textures/BlackCM.tif similarity index 100% rename from Engine/EngineAssets/Textures/BlackCM.tif rename to Assets/Engine/EngineAssets/Textures/BlackCM.tif diff --git a/Engine/EngineAssets/Textures/BlackCM.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/BlackCM.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/BlackCM.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/BlackCM.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/Cubemap/default_level_cubemap.tif b/Assets/Engine/EngineAssets/Textures/Cubemap/default_level_cubemap.tif similarity index 100% rename from Engine/EngineAssets/Textures/Cubemap/default_level_cubemap.tif rename to Assets/Engine/EngineAssets/Textures/Cubemap/default_level_cubemap.tif diff --git a/Engine/EngineAssets/Textures/Cursor_Green.tif b/Assets/Engine/EngineAssets/Textures/Cursor_Green.tif similarity index 100% rename from Engine/EngineAssets/Textures/Cursor_Green.tif rename to Assets/Engine/EngineAssets/Textures/Cursor_Green.tif diff --git a/Engine/EngineAssets/Textures/Cursor_Green.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/Cursor_Green.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/Cursor_Green.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/Cursor_Green.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/FogVolShadowJitter.tif b/Assets/Engine/EngineAssets/Textures/FogVolShadowJitter.tif similarity index 100% rename from Engine/EngineAssets/Textures/FogVolShadowJitter.tif rename to Assets/Engine/EngineAssets/Textures/FogVolShadowJitter.tif diff --git a/Engine/EngineAssets/Textures/FogVolShadowJitter.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/FogVolShadowJitter.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/FogVolShadowJitter.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/FogVolShadowJitter.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/Frozen/frost_noise3.dds b/Assets/Engine/EngineAssets/Textures/Frozen/frost_noise3.dds similarity index 100% rename from Engine/EngineAssets/Textures/Frozen/frost_noise3.dds rename to Assets/Engine/EngineAssets/Textures/Frozen/frost_noise3.dds diff --git a/Engine/EngineAssets/Textures/Frozen/frost_noise4.tif b/Assets/Engine/EngineAssets/Textures/Frozen/frost_noise4.tif similarity index 100% rename from Engine/EngineAssets/Textures/Frozen/frost_noise4.tif rename to Assets/Engine/EngineAssets/Textures/Frozen/frost_noise4.tif diff --git a/Engine/EngineAssets/Textures/Frozen/snow_spatter.tif b/Assets/Engine/EngineAssets/Textures/Frozen/snow_spatter.tif similarity index 100% rename from Engine/EngineAssets/Textures/Frozen/snow_spatter.tif rename to Assets/Engine/EngineAssets/Textures/Frozen/snow_spatter.tif diff --git a/Engine/EngineAssets/Textures/GreyAlpha.tif b/Assets/Engine/EngineAssets/Textures/GreyAlpha.tif similarity index 100% rename from Engine/EngineAssets/Textures/GreyAlpha.tif rename to Assets/Engine/EngineAssets/Textures/GreyAlpha.tif diff --git a/Engine/EngineAssets/Textures/GreyAlpha.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/GreyAlpha.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/GreyAlpha.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/GreyAlpha.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/Palette/cloak_interlation.dds b/Assets/Engine/EngineAssets/Textures/Palette/cloak_interlation.dds similarity index 100% rename from Engine/EngineAssets/Textures/Palette/cloak_interlation.dds rename to Assets/Engine/EngineAssets/Textures/Palette/cloak_interlation.dds diff --git a/Engine/EngineAssets/Textures/Palette/cloak_palette.tif b/Assets/Engine/EngineAssets/Textures/Palette/cloak_palette.tif similarity index 100% rename from Engine/EngineAssets/Textures/Palette/cloak_palette.tif rename to Assets/Engine/EngineAssets/Textures/Palette/cloak_palette.tif diff --git a/Engine/EngineAssets/Textures/Palette/cloak_palette.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/Palette/cloak_palette.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/Palette/cloak_palette.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/Palette/cloak_palette.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/Palette/cloak_sparks.dds b/Assets/Engine/EngineAssets/Textures/Palette/cloak_sparks.dds similarity index 100% rename from Engine/EngineAssets/Textures/Palette/cloak_sparks.dds rename to Assets/Engine/EngineAssets/Textures/Palette/cloak_sparks.dds diff --git a/Engine/EngineAssets/Textures/Palette/cloak_transition.dds b/Assets/Engine/EngineAssets/Textures/Palette/cloak_transition.dds similarity index 100% rename from Engine/EngineAssets/Textures/Palette/cloak_transition.dds rename to Assets/Engine/EngineAssets/Textures/Palette/cloak_transition.dds diff --git a/Engine/EngineAssets/Textures/TexelsPerMeterGrad.tif b/Assets/Engine/EngineAssets/Textures/TexelsPerMeterGrad.tif similarity index 100% rename from Engine/EngineAssets/Textures/TexelsPerMeterGrad.tif rename to Assets/Engine/EngineAssets/Textures/TexelsPerMeterGrad.tif diff --git a/Engine/EngineAssets/Textures/TexelsPerMeterGrad.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/TexelsPerMeterGrad.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/TexelsPerMeterGrad.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/TexelsPerMeterGrad.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/VolumeRaster.tif b/Assets/Engine/EngineAssets/Textures/VolumeRaster.tif similarity index 100% rename from Engine/EngineAssets/Textures/VolumeRaster.tif rename to Assets/Engine/EngineAssets/Textures/VolumeRaster.tif diff --git a/Engine/EngineAssets/Textures/VolumeRaster.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/VolumeRaster.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/VolumeRaster.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/VolumeRaster.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/alienhud_distortionimage.tif b/Assets/Engine/EngineAssets/Textures/alienhud_distortionimage.tif similarity index 100% rename from Engine/EngineAssets/Textures/alienhud_distortionimage.tif rename to Assets/Engine/EngineAssets/Textures/alienhud_distortionimage.tif diff --git a/Engine/EngineAssets/Textures/alienhud_distortionimage.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/alienhud_distortionimage.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/alienhud_distortionimage.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/alienhud_distortionimage.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/alienhud_noise1.tif b/Assets/Engine/EngineAssets/Textures/alienhud_noise1.tif similarity index 100% rename from Engine/EngineAssets/Textures/alienhud_noise1.tif rename to Assets/Engine/EngineAssets/Textures/alienhud_noise1.tif diff --git a/Engine/EngineAssets/Textures/alienhud_noise1.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/alienhud_noise1.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/alienhud_noise1.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/alienhud_noise1.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/black.tif b/Assets/Engine/EngineAssets/Textures/black.tif similarity index 100% rename from Engine/EngineAssets/Textures/black.tif rename to Assets/Engine/EngineAssets/Textures/black.tif diff --git a/Engine/EngineAssets/Textures/black.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/black.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/black.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/black.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/caustics_sampler.dds b/Assets/Engine/EngineAssets/Textures/caustics_sampler.dds similarity index 100% rename from Engine/EngineAssets/Textures/caustics_sampler.dds rename to Assets/Engine/EngineAssets/Textures/caustics_sampler.dds diff --git a/Engine/EngineAssets/Textures/color.tif b/Assets/Engine/EngineAssets/Textures/color.tif similarity index 100% rename from Engine/EngineAssets/Textures/color.tif rename to Assets/Engine/EngineAssets/Textures/color.tif diff --git a/Engine/EngineAssets/Textures/default_cch.tif b/Assets/Engine/EngineAssets/Textures/default_cch.tif similarity index 100% rename from Engine/EngineAssets/Textures/default_cch.tif rename to Assets/Engine/EngineAssets/Textures/default_cch.tif diff --git a/Engine/EngineAssets/Textures/default_cch.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/default_cch.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/default_cch.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/default_cch.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/defaults/16_12.tif b/Assets/Engine/EngineAssets/Textures/defaults/16_12.tif similarity index 100% rename from Engine/EngineAssets/Textures/defaults/16_12.tif rename to Assets/Engine/EngineAssets/Textures/defaults/16_12.tif diff --git a/Engine/EngineAssets/Textures/defaults/16_34.tif b/Assets/Engine/EngineAssets/Textures/defaults/16_34.tif similarity index 100% rename from Engine/EngineAssets/Textures/defaults/16_34.tif rename to Assets/Engine/EngineAssets/Textures/defaults/16_34.tif diff --git a/Engine/EngineAssets/Textures/defaults/16_5.tif b/Assets/Engine/EngineAssets/Textures/defaults/16_5.tif similarity index 100% rename from Engine/EngineAssets/Textures/defaults/16_5.tif rename to Assets/Engine/EngineAssets/Textures/defaults/16_5.tif diff --git a/Engine/EngineAssets/Textures/defaults/16_grey.tif b/Assets/Engine/EngineAssets/Textures/defaults/16_grey.tif similarity index 100% rename from Engine/EngineAssets/Textures/defaults/16_grey.tif rename to Assets/Engine/EngineAssets/Textures/defaults/16_grey.tif diff --git a/Engine/EngineAssets/Textures/defaults/spot_default.tif b/Assets/Engine/EngineAssets/Textures/defaults/spot_default.tif similarity index 100% rename from Engine/EngineAssets/Textures/defaults/spot_default.tif rename to Assets/Engine/EngineAssets/Textures/defaults/spot_default.tif diff --git a/Engine/EngineAssets/Textures/detailDecalVariation.tif b/Assets/Engine/EngineAssets/Textures/detailDecalVariation.tif similarity index 100% rename from Engine/EngineAssets/Textures/detailDecalVariation.tif rename to Assets/Engine/EngineAssets/Textures/detailDecalVariation.tif diff --git a/Engine/EngineAssets/Textures/dither_2.dds b/Assets/Engine/EngineAssets/Textures/dither_2.dds similarity index 100% rename from Engine/EngineAssets/Textures/dither_2.dds rename to Assets/Engine/EngineAssets/Textures/dither_2.dds diff --git a/Engine/EngineAssets/Textures/dither_pattern_2d.dds b/Assets/Engine/EngineAssets/Textures/dither_pattern_2d.dds similarity index 100% rename from Engine/EngineAssets/Textures/dither_pattern_2d.dds rename to Assets/Engine/EngineAssets/Textures/dither_pattern_2d.dds diff --git a/Engine/EngineAssets/Textures/flares/Flare_Glow001.tif b/Assets/Engine/EngineAssets/Textures/flares/Flare_Glow001.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/Flare_Glow001.tif rename to Assets/Engine/EngineAssets/Textures/flares/Flare_Glow001.tif diff --git a/Engine/EngineAssets/Textures/flares/Flare_Glow002.tif b/Assets/Engine/EngineAssets/Textures/flares/Flare_Glow002.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/Flare_Glow002.tif rename to Assets/Engine/EngineAssets/Textures/flares/Flare_Glow002.tif diff --git a/Engine/EngineAssets/Textures/flares/Flare_Orbs001.tif b/Assets/Engine/EngineAssets/Textures/flares/Flare_Orbs001.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/Flare_Orbs001.tif rename to Assets/Engine/EngineAssets/Textures/flares/Flare_Orbs001.tif diff --git a/Engine/EngineAssets/Textures/flares/Flare_SoftSpot001.tif b/Assets/Engine/EngineAssets/Textures/flares/Flare_SoftSpot001.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/Flare_SoftSpot001.tif rename to Assets/Engine/EngineAssets/Textures/flares/Flare_SoftSpot001.tif diff --git a/Engine/EngineAssets/Textures/flares/Flare_SoftSpot002.tif b/Assets/Engine/EngineAssets/Textures/flares/Flare_SoftSpot002.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/Flare_SoftSpot002.tif rename to Assets/Engine/EngineAssets/Textures/flares/Flare_SoftSpot002.tif diff --git a/Engine/EngineAssets/Textures/flares/Flare_Sun001.tif b/Assets/Engine/EngineAssets/Textures/flares/Flare_Sun001.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/Flare_Sun001.tif rename to Assets/Engine/EngineAssets/Textures/flares/Flare_Sun001.tif diff --git a/Engine/EngineAssets/Textures/flares/flare01.tif b/Assets/Engine/EngineAssets/Textures/flares/flare01.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/flare01.tif rename to Assets/Engine/EngineAssets/Textures/flares/flare01.tif diff --git a/Engine/EngineAssets/Textures/flares/flare02.tif b/Assets/Engine/EngineAssets/Textures/flares/flare02.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/flare02.tif rename to Assets/Engine/EngineAssets/Textures/flares/flare02.tif diff --git a/Engine/EngineAssets/Textures/flares/ghost_grey.tif b/Assets/Engine/EngineAssets/Textures/flares/ghost_grey.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/ghost_grey.tif rename to Assets/Engine/EngineAssets/Textures/flares/ghost_grey.tif diff --git a/Engine/EngineAssets/Textures/flares/ghost_multicolor.tif b/Assets/Engine/EngineAssets/Textures/flares/ghost_multicolor.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/ghost_multicolor.tif rename to Assets/Engine/EngineAssets/Textures/flares/ghost_multicolor.tif diff --git a/Engine/EngineAssets/Textures/flares/icons/ghost.tif b/Assets/Engine/EngineAssets/Textures/flares/icons/ghost.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/icons/ghost.tif rename to Assets/Engine/EngineAssets/Textures/flares/icons/ghost.tif diff --git a/Engine/EngineAssets/Textures/flares/icons/ghost.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/flares/icons/ghost.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/flares/icons/ghost.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/flares/icons/ghost.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/flares/icons/glow.tif b/Assets/Engine/EngineAssets/Textures/flares/icons/glow.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/icons/glow.tif rename to Assets/Engine/EngineAssets/Textures/flares/icons/glow.tif diff --git a/Engine/EngineAssets/Textures/flares/icons/glow.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/flares/icons/glow.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/flares/icons/glow.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/flares/icons/glow.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/flares/icons/iris_shafts.tif b/Assets/Engine/EngineAssets/Textures/flares/icons/iris_shafts.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/icons/iris_shafts.tif rename to Assets/Engine/EngineAssets/Textures/flares/icons/iris_shafts.tif diff --git a/Engine/EngineAssets/Textures/flares/icons/iris_shafts.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/flares/icons/iris_shafts.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/flares/icons/iris_shafts.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/flares/icons/iris_shafts.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/flares/icons/multi_ghost.tif b/Assets/Engine/EngineAssets/Textures/flares/icons/multi_ghost.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/icons/multi_ghost.tif rename to Assets/Engine/EngineAssets/Textures/flares/icons/multi_ghost.tif diff --git a/Engine/EngineAssets/Textures/flares/icons/multi_ghost.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/flares/icons/multi_ghost.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/flares/icons/multi_ghost.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/flares/icons/multi_ghost.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/flares/icons/orbs.tif b/Assets/Engine/EngineAssets/Textures/flares/icons/orbs.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/icons/orbs.tif rename to Assets/Engine/EngineAssets/Textures/flares/icons/orbs.tif diff --git a/Engine/EngineAssets/Textures/flares/icons/orbs.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/flares/icons/orbs.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/flares/icons/orbs.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/flares/icons/orbs.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/flares/icons/ring.tif b/Assets/Engine/EngineAssets/Textures/flares/icons/ring.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/icons/ring.tif rename to Assets/Engine/EngineAssets/Textures/flares/icons/ring.tif diff --git a/Engine/EngineAssets/Textures/flares/icons/ring.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/flares/icons/ring.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/flares/icons/ring.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/flares/icons/ring.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/flares/icons/test_demo.tif b/Assets/Engine/EngineAssets/Textures/flares/icons/test_demo.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/icons/test_demo.tif rename to Assets/Engine/EngineAssets/Textures/flares/icons/test_demo.tif diff --git a/Engine/EngineAssets/Textures/flares/icons/test_demo.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/flares/icons/test_demo.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/flares/icons/test_demo.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/flares/icons/test_demo.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/flares/icons/vol_shafts.tif b/Assets/Engine/EngineAssets/Textures/flares/icons/vol_shafts.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/icons/vol_shafts.tif rename to Assets/Engine/EngineAssets/Textures/flares/icons/vol_shafts.tif diff --git a/Engine/EngineAssets/Textures/flares/icons/vol_shafts.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/flares/icons/vol_shafts.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/flares/icons/vol_shafts.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/flares/icons/vol_shafts.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/flares/iris_shaft.tif b/Assets/Engine/EngineAssets/Textures/flares/iris_shaft.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/iris_shaft.tif rename to Assets/Engine/EngineAssets/Textures/flares/iris_shaft.tif diff --git a/Engine/EngineAssets/Textures/flares/lens_blurshape.tif b/Assets/Engine/EngineAssets/Textures/flares/lens_blurshape.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/lens_blurshape.tif rename to Assets/Engine/EngineAssets/Textures/flares/lens_blurshape.tif diff --git a/Engine/EngineAssets/Textures/flares/lens_dirtyglass.tif b/Assets/Engine/EngineAssets/Textures/flares/lens_dirtyglass.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/lens_dirtyglass.tif rename to Assets/Engine/EngineAssets/Textures/flares/lens_dirtyglass.tif diff --git a/Engine/EngineAssets/Textures/flares/lens_noise01.tif b/Assets/Engine/EngineAssets/Textures/flares/lens_noise01.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/lens_noise01.tif rename to Assets/Engine/EngineAssets/Textures/flares/lens_noise01.tif diff --git a/Engine/EngineAssets/Textures/flares/lens_raindrops.tif b/Assets/Engine/EngineAssets/Textures/flares/lens_raindrops.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/lens_raindrops.tif rename to Assets/Engine/EngineAssets/Textures/flares/lens_raindrops.tif diff --git a/Engine/EngineAssets/Textures/flares/lens_raindrops02.tif b/Assets/Engine/EngineAssets/Textures/flares/lens_raindrops02.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/lens_raindrops02.tif rename to Assets/Engine/EngineAssets/Textures/flares/lens_raindrops02.tif diff --git a/Engine/EngineAssets/Textures/flares/orb_01.tif b/Assets/Engine/EngineAssets/Textures/flares/orb_01.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/orb_01.tif rename to Assets/Engine/EngineAssets/Textures/flares/orb_01.tif diff --git a/Engine/EngineAssets/Textures/flares/orb_cell01.tif b/Assets/Engine/EngineAssets/Textures/flares/orb_cell01.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/orb_cell01.tif rename to Assets/Engine/EngineAssets/Textures/flares/orb_cell01.tif diff --git a/Engine/EngineAssets/Textures/flares/orb_cell02.tif b/Assets/Engine/EngineAssets/Textures/flares/orb_cell02.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/orb_cell02.tif rename to Assets/Engine/EngineAssets/Textures/flares/orb_cell02.tif diff --git a/Engine/EngineAssets/Textures/flares/orb_cell03.tif b/Assets/Engine/EngineAssets/Textures/flares/orb_cell03.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/orb_cell03.tif rename to Assets/Engine/EngineAssets/Textures/flares/orb_cell03.tif diff --git a/Engine/EngineAssets/Textures/flares/orb_cell04.tif b/Assets/Engine/EngineAssets/Textures/flares/orb_cell04.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/orb_cell04.tif rename to Assets/Engine/EngineAssets/Textures/flares/orb_cell04.tif diff --git a/Engine/EngineAssets/Textures/flares/spectrum_full.tif b/Assets/Engine/EngineAssets/Textures/flares/spectrum_full.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/spectrum_full.tif rename to Assets/Engine/EngineAssets/Textures/flares/spectrum_full.tif diff --git a/Engine/EngineAssets/Textures/flares/spectrum_half.tif b/Assets/Engine/EngineAssets/Textures/flares/spectrum_half.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/spectrum_half.tif rename to Assets/Engine/EngineAssets/Textures/flares/spectrum_half.tif diff --git a/Engine/EngineAssets/Textures/flares/spectrum_quater.tif b/Assets/Engine/EngineAssets/Textures/flares/spectrum_quater.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/spectrum_quater.tif rename to Assets/Engine/EngineAssets/Textures/flares/spectrum_quater.tif diff --git a/Engine/EngineAssets/Textures/flares/spectrum_specs.tif b/Assets/Engine/EngineAssets/Textures/flares/spectrum_specs.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/spectrum_specs.tif rename to Assets/Engine/EngineAssets/Textures/flares/spectrum_specs.tif diff --git a/Engine/EngineAssets/Textures/flares/streak01.tif b/Assets/Engine/EngineAssets/Textures/flares/streak01.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/streak01.tif rename to Assets/Engine/EngineAssets/Textures/flares/streak01.tif diff --git a/Engine/EngineAssets/Textures/flares/visor_scratch.tif b/Assets/Engine/EngineAssets/Textures/flares/visor_scratch.tif similarity index 100% rename from Engine/EngineAssets/Textures/flares/visor_scratch.tif rename to Assets/Engine/EngineAssets/Textures/flares/visor_scratch.tif diff --git a/Engine/EngineAssets/Textures/fresnel_sampler.dds b/Assets/Engine/EngineAssets/Textures/fresnel_sampler.dds similarity index 100% rename from Engine/EngineAssets/Textures/fresnel_sampler.dds rename to Assets/Engine/EngineAssets/Textures/fresnel_sampler.dds diff --git a/Engine/EngineAssets/Textures/fringe_map.dds b/Assets/Engine/EngineAssets/Textures/fringe_map.dds similarity index 100% rename from Engine/EngineAssets/Textures/fringe_map.dds rename to Assets/Engine/EngineAssets/Textures/fringe_map.dds diff --git a/Engine/EngineAssets/Textures/frost_refl2.tif b/Assets/Engine/EngineAssets/Textures/frost_refl2.tif similarity index 100% rename from Engine/EngineAssets/Textures/frost_refl2.tif rename to Assets/Engine/EngineAssets/Textures/frost_refl2.tif diff --git a/Engine/EngineAssets/Textures/frost_refl2.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/frost_refl2.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/frost_refl2.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/frost_refl2.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/fuzzy_pow_sampler_merged.dds b/Assets/Engine/EngineAssets/Textures/fuzzy_pow_sampler_merged.dds similarity index 100% rename from Engine/EngineAssets/Textures/fuzzy_pow_sampler_merged.dds rename to Assets/Engine/EngineAssets/Textures/fuzzy_pow_sampler_merged.dds diff --git a/Engine/EngineAssets/Textures/glass_decalatlas_ddn.tif b/Assets/Engine/EngineAssets/Textures/glass_decalatlas_ddn.tif similarity index 100% rename from Engine/EngineAssets/Textures/glass_decalatlas_ddn.tif rename to Assets/Engine/EngineAssets/Textures/glass_decalatlas_ddn.tif diff --git a/Engine/EngineAssets/Textures/glass_decalatlas_ddn.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/glass_decalatlas_ddn.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/glass_decalatlas_ddn.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/glass_decalatlas_ddn.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/glass_decalatlas_diff.tif b/Assets/Engine/EngineAssets/Textures/glass_decalatlas_diff.tif similarity index 100% rename from Engine/EngineAssets/Textures/glass_decalatlas_diff.tif rename to Assets/Engine/EngineAssets/Textures/glass_decalatlas_diff.tif diff --git a/Engine/EngineAssets/Textures/glass_decalatlas_diff.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/glass_decalatlas_diff.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/glass_decalatlas_diff.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/glass_decalatlas_diff.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/grey.dds b/Assets/Engine/EngineAssets/Textures/grey.dds similarity index 100% rename from Engine/EngineAssets/Textures/grey.dds rename to Assets/Engine/EngineAssets/Textures/grey.dds diff --git a/Engine/EngineAssets/Textures/hex.tif b/Assets/Engine/EngineAssets/Textures/hex.tif similarity index 100% rename from Engine/EngineAssets/Textures/hex.tif rename to Assets/Engine/EngineAssets/Textures/hex.tif diff --git a/Engine/EngineAssets/Textures/hex.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/hex.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/hex.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/hex.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/hex_ddn.tif b/Assets/Engine/EngineAssets/Textures/hex_ddn.tif similarity index 100% rename from Engine/EngineAssets/Textures/hex_ddn.tif rename to Assets/Engine/EngineAssets/Textures/hex_ddn.tif diff --git a/Engine/EngineAssets/Textures/hex_ddn.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/hex_ddn.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/hex_ddn.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/hex_ddn.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/hex_grad.tif b/Assets/Engine/EngineAssets/Textures/hex_grad.tif similarity index 100% rename from Engine/EngineAssets/Textures/hex_grad.tif rename to Assets/Engine/EngineAssets/Textures/hex_grad.tif diff --git a/Engine/EngineAssets/Textures/hex_grad.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/hex_grad.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/hex_grad.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/hex_grad.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/hex_line.tif b/Assets/Engine/EngineAssets/Textures/hex_line.tif similarity index 100% rename from Engine/EngineAssets/Textures/hex_line.tif rename to Assets/Engine/EngineAssets/Textures/hex_line.tif diff --git a/Engine/EngineAssets/Textures/hex_line.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/hex_line.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/hex_line.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/hex_line.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/hex_rand.tif b/Assets/Engine/EngineAssets/Textures/hex_rand.tif similarity index 100% rename from Engine/EngineAssets/Textures/hex_rand.tif rename to Assets/Engine/EngineAssets/Textures/hex_rand.tif diff --git a/Engine/EngineAssets/Textures/hex_rand.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/hex_rand.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/hex_rand.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/hex_rand.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/hiteffect_areas.tif b/Assets/Engine/EngineAssets/Textures/hiteffect_areas.tif similarity index 100% rename from Engine/EngineAssets/Textures/hiteffect_areas.tif rename to Assets/Engine/EngineAssets/Textures/hiteffect_areas.tif diff --git a/Engine/EngineAssets/Textures/hiteffect_areas.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/hiteffect_areas.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/hiteffect_areas.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/hiteffect_areas.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/hiteffect_blurmask_ddn.tif b/Assets/Engine/EngineAssets/Textures/hiteffect_blurmask_ddn.tif similarity index 100% rename from Engine/EngineAssets/Textures/hiteffect_blurmask_ddn.tif rename to Assets/Engine/EngineAssets/Textures/hiteffect_blurmask_ddn.tif diff --git a/Engine/EngineAssets/Textures/hiteffect_blurmask_ddn.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/hiteffect_blurmask_ddn.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/hiteffect_blurmask_ddn.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/hiteffect_blurmask_ddn.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/hiteffect_healthgradient.tif b/Assets/Engine/EngineAssets/Textures/hiteffect_healthgradient.tif similarity index 100% rename from Engine/EngineAssets/Textures/hiteffect_healthgradient.tif rename to Assets/Engine/EngineAssets/Textures/hiteffect_healthgradient.tif diff --git a/Engine/EngineAssets/Textures/hiteffect_healthgradient.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/hiteffect_healthgradient.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/hiteffect_healthgradient.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/hiteffect_healthgradient.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/hiteffect_lvlgradient.tif b/Assets/Engine/EngineAssets/Textures/hiteffect_lvlgradient.tif similarity index 100% rename from Engine/EngineAssets/Textures/hiteffect_lvlgradient.tif rename to Assets/Engine/EngineAssets/Textures/hiteffect_lvlgradient.tif diff --git a/Engine/EngineAssets/Textures/hiteffect_lvlgradient.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/hiteffect_lvlgradient.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/hiteffect_lvlgradient.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/hiteffect_lvlgradient.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/hiteffect_round.tif b/Assets/Engine/EngineAssets/Textures/hiteffect_round.tif similarity index 100% rename from Engine/EngineAssets/Textures/hiteffect_round.tif rename to Assets/Engine/EngineAssets/Textures/hiteffect_round.tif diff --git a/Engine/EngineAssets/Textures/hiteffect_round.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/hiteffect_round.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/hiteffect_round.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/hiteffect_round.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/hiteffect_veinsblood.tif b/Assets/Engine/EngineAssets/Textures/hiteffect_veinsblood.tif similarity index 100% rename from Engine/EngineAssets/Textures/hiteffect_veinsblood.tif rename to Assets/Engine/EngineAssets/Textures/hiteffect_veinsblood.tif diff --git a/Engine/EngineAssets/Textures/hiteffect_veinsblood.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/hiteffect_veinsblood.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/hiteffect_veinsblood.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/hiteffect_veinsblood.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/interference.dds b/Assets/Engine/EngineAssets/Textures/interference.dds similarity index 100% rename from Engine/EngineAssets/Textures/interference.dds rename to Assets/Engine/EngineAssets/Textures/interference.dds diff --git a/Engine/EngineAssets/Textures/jumpnoisehighfrequency_x27y19.dds b/Assets/Engine/EngineAssets/Textures/jumpnoisehighfrequency_x27y19.dds similarity index 100% rename from Engine/EngineAssets/Textures/jumpnoisehighfrequency_x27y19.dds rename to Assets/Engine/EngineAssets/Textures/jumpnoisehighfrequency_x27y19.dds diff --git a/Engine/EngineAssets/Textures/moisturedroplets.tif b/Assets/Engine/EngineAssets/Textures/moisturedroplets.tif similarity index 100% rename from Engine/EngineAssets/Textures/moisturedroplets.tif rename to Assets/Engine/EngineAssets/Textures/moisturedroplets.tif diff --git a/Engine/EngineAssets/Textures/moisturedroplets.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/moisturedroplets.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/moisturedroplets.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/moisturedroplets.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/nightvis_grad.tif b/Assets/Engine/EngineAssets/Textures/nightvis_grad.tif similarity index 100% rename from Engine/EngineAssets/Textures/nightvis_grad.tif rename to Assets/Engine/EngineAssets/Textures/nightvis_grad.tif diff --git a/Engine/EngineAssets/Textures/nightvis_grad.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/nightvis_grad.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/nightvis_grad.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/nightvis_grad.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/noise.tif b/Assets/Engine/EngineAssets/Textures/noise.tif similarity index 100% rename from Engine/EngineAssets/Textures/noise.tif rename to Assets/Engine/EngineAssets/Textures/noise.tif diff --git a/Engine/EngineAssets/Textures/noise3d.dds b/Assets/Engine/EngineAssets/Textures/noise3d.dds similarity index 100% rename from Engine/EngineAssets/Textures/noise3d.dds rename to Assets/Engine/EngineAssets/Textures/noise3d.dds diff --git a/Engine/EngineAssets/Textures/oceanwaves_ddn.tif b/Assets/Engine/EngineAssets/Textures/oceanwaves_ddn.tif similarity index 100% rename from Engine/EngineAssets/Textures/oceanwaves_ddn.tif rename to Assets/Engine/EngineAssets/Textures/oceanwaves_ddn.tif diff --git a/Engine/EngineAssets/Textures/oceanwaves_ddn.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/oceanwaves_ddn.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/oceanwaves_ddn.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/oceanwaves_ddn.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/palletteInst.dds b/Assets/Engine/EngineAssets/Textures/palletteInst.dds similarity index 100% rename from Engine/EngineAssets/Textures/palletteInst.dds rename to Assets/Engine/EngineAssets/Textures/palletteInst.dds diff --git a/Engine/EngineAssets/Textures/perlinNoise2d.tif b/Assets/Engine/EngineAssets/Textures/perlinNoise2d.tif similarity index 100% rename from Engine/EngineAssets/Textures/perlinNoise2d.tif rename to Assets/Engine/EngineAssets/Textures/perlinNoise2d.tif diff --git a/Engine/EngineAssets/Textures/perlinNoise2d.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/perlinNoise2d.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/perlinNoise2d.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/perlinNoise2d.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/perlinNoiseDerivatives.tif b/Assets/Engine/EngineAssets/Textures/perlinNoiseDerivatives.tif similarity index 100% rename from Engine/EngineAssets/Textures/perlinNoiseDerivatives.tif rename to Assets/Engine/EngineAssets/Textures/perlinNoiseDerivatives.tif diff --git a/Engine/EngineAssets/Textures/perlinNoiseDerivatives.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/perlinNoiseDerivatives.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/perlinNoiseDerivatives.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/perlinNoiseDerivatives.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/perlinNoiseNormal_ddn.tif b/Assets/Engine/EngineAssets/Textures/perlinNoiseNormal_ddn.tif similarity index 100% rename from Engine/EngineAssets/Textures/perlinNoiseNormal_ddn.tif rename to Assets/Engine/EngineAssets/Textures/perlinNoiseNormal_ddn.tif diff --git a/Engine/EngineAssets/Textures/perlinNoiseNormal_ddn.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/perlinNoiseNormal_ddn.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/perlinNoiseNormal_ddn.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/perlinNoiseNormal_ddn.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/perlinNoise_sum.tif b/Assets/Engine/EngineAssets/Textures/perlinNoise_sum.tif similarity index 100% rename from Engine/EngineAssets/Textures/perlinNoise_sum.tif rename to Assets/Engine/EngineAssets/Textures/perlinNoise_sum.tif diff --git a/Engine/EngineAssets/Textures/perlinNoise_sum.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/perlinNoise_sum.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/perlinNoise_sum.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/perlinNoise_sum.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/perlinNoise_sum_small.tif b/Assets/Engine/EngineAssets/Textures/perlinNoise_sum_small.tif similarity index 100% rename from Engine/EngineAssets/Textures/perlinNoise_sum_small.tif rename to Assets/Engine/EngineAssets/Textures/perlinNoise_sum_small.tif diff --git a/Engine/EngineAssets/Textures/perlinNoise_sum_small.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/perlinNoise_sum_small.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/perlinNoise_sum_small.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/perlinNoise_sum_small.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/pixeltex.dds b/Assets/Engine/EngineAssets/Textures/pixeltex.dds similarity index 100% rename from Engine/EngineAssets/Textures/pixeltex.dds rename to Assets/Engine/EngineAssets/Textures/pixeltex.dds diff --git a/Engine/EngineAssets/Textures/rotrandomcm.dds b/Assets/Engine/EngineAssets/Textures/rotrandomcm.dds similarity index 100% rename from Engine/EngineAssets/Textures/rotrandomcm.dds rename to Assets/Engine/EngineAssets/Textures/rotrandomcm.dds diff --git a/Engine/EngineAssets/Textures/scratch.tif b/Assets/Engine/EngineAssets/Textures/scratch.tif similarity index 100% rename from Engine/EngineAssets/Textures/scratch.tif rename to Assets/Engine/EngineAssets/Textures/scratch.tif diff --git a/Engine/EngineAssets/Textures/scratch.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/scratch.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/scratch.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/scratch.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/scratch_ddn.tif b/Assets/Engine/EngineAssets/Textures/scratch_ddn.tif similarity index 100% rename from Engine/EngineAssets/Textures/scratch_ddn.tif rename to Assets/Engine/EngineAssets/Textures/scratch_ddn.tif diff --git a/Engine/EngineAssets/Textures/scratch_ddn.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/scratch_ddn.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/scratch_ddn.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/scratch_ddn.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/screen_noisy_bump.dds b/Assets/Engine/EngineAssets/Textures/screen_noisy_bump.dds similarity index 100% rename from Engine/EngineAssets/Textures/screen_noisy_bump.dds rename to Assets/Engine/EngineAssets/Textures/screen_noisy_bump.dds diff --git a/Engine/EngineAssets/Textures/screenfrost_alpha.TIF b/Assets/Engine/EngineAssets/Textures/screenfrost_alpha.TIF similarity index 100% rename from Engine/EngineAssets/Textures/screenfrost_alpha.TIF rename to Assets/Engine/EngineAssets/Textures/screenfrost_alpha.TIF diff --git a/Engine/EngineAssets/Textures/screenfrost_alpha.TIF.exportsettings b/Assets/Engine/EngineAssets/Textures/screenfrost_alpha.TIF.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/screenfrost_alpha.TIF.exportsettings rename to Assets/Engine/EngineAssets/Textures/screenfrost_alpha.TIF.exportsettings diff --git a/Engine/EngineAssets/Textures/screenfrost_ddn.TIF b/Assets/Engine/EngineAssets/Textures/screenfrost_ddn.TIF similarity index 100% rename from Engine/EngineAssets/Textures/screenfrost_ddn.TIF rename to Assets/Engine/EngineAssets/Textures/screenfrost_ddn.TIF diff --git a/Engine/EngineAssets/Textures/screenfrost_ddn.TIF.exportsettings b/Assets/Engine/EngineAssets/Textures/screenfrost_ddn.TIF.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/screenfrost_ddn.TIF.exportsettings rename to Assets/Engine/EngineAssets/Textures/screenfrost_ddn.TIF.exportsettings diff --git a/Engine/EngineAssets/Textures/snowflakes.tif b/Assets/Engine/EngineAssets/Textures/snowflakes.tif similarity index 100% rename from Engine/EngineAssets/Textures/snowflakes.tif rename to Assets/Engine/EngineAssets/Textures/snowflakes.tif diff --git a/Engine/EngineAssets/Textures/snowflakes.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/snowflakes.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/snowflakes.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/snowflakes.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/startscreen.tif b/Assets/Engine/EngineAssets/Textures/startscreen.tif similarity index 100% rename from Engine/EngineAssets/Textures/startscreen.tif rename to Assets/Engine/EngineAssets/Textures/startscreen.tif diff --git a/Engine/EngineAssets/Textures/startscreen.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/startscreen.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/startscreen.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/startscreen.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/user_tex1.tif b/Assets/Engine/EngineAssets/Textures/user_tex1.tif similarity index 100% rename from Engine/EngineAssets/Textures/user_tex1.tif rename to Assets/Engine/EngineAssets/Textures/user_tex1.tif diff --git a/Engine/EngineAssets/Textures/user_tex2.tif b/Assets/Engine/EngineAssets/Textures/user_tex2.tif similarity index 100% rename from Engine/EngineAssets/Textures/user_tex2.tif rename to Assets/Engine/EngineAssets/Textures/user_tex2.tif diff --git a/Engine/EngineAssets/Textures/vector_noise.dds b/Assets/Engine/EngineAssets/Textures/vector_noise.dds similarity index 100% rename from Engine/EngineAssets/Textures/vector_noise.dds rename to Assets/Engine/EngineAssets/Textures/vector_noise.dds diff --git a/Engine/EngineAssets/Textures/water_droplets.dds b/Assets/Engine/EngineAssets/Textures/water_droplets.dds similarity index 100% rename from Engine/EngineAssets/Textures/water_droplets.dds rename to Assets/Engine/EngineAssets/Textures/water_droplets.dds diff --git a/Engine/EngineAssets/Textures/water_gloss.tif b/Assets/Engine/EngineAssets/Textures/water_gloss.tif similarity index 100% rename from Engine/EngineAssets/Textures/water_gloss.tif rename to Assets/Engine/EngineAssets/Textures/water_gloss.tif diff --git a/Engine/EngineAssets/Textures/water_gloss.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/water_gloss.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/water_gloss.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/water_gloss.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/white.tif b/Assets/Engine/EngineAssets/Textures/white.tif similarity index 100% rename from Engine/EngineAssets/Textures/white.tif rename to Assets/Engine/EngineAssets/Textures/white.tif diff --git a/Engine/EngineAssets/Textures/white.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/white.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/white.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/white.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/white_cm.tif b/Assets/Engine/EngineAssets/Textures/white_cm.tif similarity index 100% rename from Engine/EngineAssets/Textures/white_cm.tif rename to Assets/Engine/EngineAssets/Textures/white_cm.tif diff --git a/Engine/EngineAssets/Textures/white_cm.tif.exportsettings b/Assets/Engine/EngineAssets/Textures/white_cm.tif.exportsettings similarity index 100% rename from Engine/EngineAssets/Textures/white_cm.tif.exportsettings rename to Assets/Engine/EngineAssets/Textures/white_cm.tif.exportsettings diff --git a/Engine/EngineAssets/Textures/white_ddn.tif b/Assets/Engine/EngineAssets/Textures/white_ddn.tif similarity index 100% rename from Engine/EngineAssets/Textures/white_ddn.tif rename to Assets/Engine/EngineAssets/Textures/white_ddn.tif diff --git a/Engine/EngineAssets/defaulttextures.xml b/Assets/Engine/EngineAssets/defaulttextures.xml similarity index 100% rename from Engine/EngineAssets/defaulttextures.xml rename to Assets/Engine/EngineAssets/defaulttextures.xml diff --git a/Engine/Engine_Dependencies.xml b/Assets/Engine/Engine_Dependencies.xml similarity index 100% rename from Engine/Engine_Dependencies.xml rename to Assets/Engine/Engine_Dependencies.xml diff --git a/Engine/Entities/AnimObject.ent b/Assets/Engine/Entities/AnimObject.ent similarity index 100% rename from Engine/Entities/AnimObject.ent rename to Assets/Engine/Entities/AnimObject.ent diff --git a/Engine/Entities/AreaBezierVolume.ent b/Assets/Engine/Entities/AreaBezierVolume.ent similarity index 100% rename from Engine/Entities/AreaBezierVolume.ent rename to Assets/Engine/Entities/AreaBezierVolume.ent diff --git a/Engine/Entities/AreaBox.ent b/Assets/Engine/Entities/AreaBox.ent similarity index 100% rename from Engine/Entities/AreaBox.ent rename to Assets/Engine/Entities/AreaBox.ent diff --git a/Engine/Entities/AreaShape.ent b/Assets/Engine/Entities/AreaShape.ent similarity index 100% rename from Engine/Entities/AreaShape.ent rename to Assets/Engine/Entities/AreaShape.ent diff --git a/Engine/Entities/AreaSolid.ent b/Assets/Engine/Entities/AreaSolid.ent similarity index 100% rename from Engine/Entities/AreaSolid.ent rename to Assets/Engine/Entities/AreaSolid.ent diff --git a/Engine/Entities/AreaSphere.ent b/Assets/Engine/Entities/AreaSphere.ent similarity index 100% rename from Engine/Entities/AreaSphere.ent rename to Assets/Engine/Entities/AreaSphere.ent diff --git a/Engine/Entities/AreaTrigger.ent b/Assets/Engine/Entities/AreaTrigger.ent similarity index 100% rename from Engine/Entities/AreaTrigger.ent rename to Assets/Engine/Entities/AreaTrigger.ent diff --git a/Engine/Entities/AudioAreaAmbience.ent b/Assets/Engine/Entities/AudioAreaAmbience.ent similarity index 100% rename from Engine/Entities/AudioAreaAmbience.ent rename to Assets/Engine/Entities/AudioAreaAmbience.ent diff --git a/Engine/Entities/AudioAreaEntity.ent b/Assets/Engine/Entities/AudioAreaEntity.ent similarity index 100% rename from Engine/Entities/AudioAreaEntity.ent rename to Assets/Engine/Entities/AudioAreaEntity.ent diff --git a/Engine/Entities/AudioAreaRandom.ent b/Assets/Engine/Entities/AudioAreaRandom.ent similarity index 100% rename from Engine/Entities/AudioAreaRandom.ent rename to Assets/Engine/Entities/AudioAreaRandom.ent diff --git a/Engine/Entities/AudioTriggerSpot.ent b/Assets/Engine/Entities/AudioTriggerSpot.ent similarity index 100% rename from Engine/Entities/AudioTriggerSpot.ent rename to Assets/Engine/Entities/AudioTriggerSpot.ent diff --git a/Engine/Entities/BasicEntity.ent b/Assets/Engine/Entities/BasicEntity.ent similarity index 100% rename from Engine/Entities/BasicEntity.ent rename to Assets/Engine/Entities/BasicEntity.ent diff --git a/Engine/Entities/CActorWrapper.ent b/Assets/Engine/Entities/CActorWrapper.ent similarity index 100% rename from Engine/Entities/CActorWrapper.ent rename to Assets/Engine/Entities/CActorWrapper.ent diff --git a/Engine/Entities/CameraSource.ent b/Assets/Engine/Entities/CameraSource.ent similarity index 100% rename from Engine/Entities/CameraSource.ent rename to Assets/Engine/Entities/CameraSource.ent diff --git a/Engine/Entities/CameraTarget.ent b/Assets/Engine/Entities/CameraTarget.ent similarity index 100% rename from Engine/Entities/CameraTarget.ent rename to Assets/Engine/Entities/CameraTarget.ent diff --git a/Engine/Entities/Comment.ent b/Assets/Engine/Entities/Comment.ent similarity index 100% rename from Engine/Entities/Comment.ent rename to Assets/Engine/Entities/Comment.ent diff --git a/Engine/Entities/EnvironmentLight.ent b/Assets/Engine/Entities/EnvironmentLight.ent similarity index 100% rename from Engine/Entities/EnvironmentLight.ent rename to Assets/Engine/Entities/EnvironmentLight.ent diff --git a/Engine/Entities/FogVolume.ent b/Assets/Engine/Entities/FogVolume.ent similarity index 100% rename from Engine/Entities/FogVolume.ent rename to Assets/Engine/Entities/FogVolume.ent diff --git a/Engine/Entities/GeomCache.ent b/Assets/Engine/Entities/GeomCache.ent similarity index 100% rename from Engine/Entities/GeomCache.ent rename to Assets/Engine/Entities/GeomCache.ent diff --git a/Engine/Entities/Light.ent b/Assets/Engine/Entities/Light.ent similarity index 100% rename from Engine/Entities/Light.ent rename to Assets/Engine/Entities/Light.ent diff --git a/Engine/Entities/LivingEntity.ent b/Assets/Engine/Entities/LivingEntity.ent similarity index 100% rename from Engine/Entities/LivingEntity.ent rename to Assets/Engine/Entities/LivingEntity.ent diff --git a/Engine/Entities/NavigationSeedPoint.ent b/Assets/Engine/Entities/NavigationSeedPoint.ent similarity index 100% rename from Engine/Entities/NavigationSeedPoint.ent rename to Assets/Engine/Entities/NavigationSeedPoint.ent diff --git a/Engine/Entities/ParticleEffect.ent b/Assets/Engine/Entities/ParticleEffect.ent similarity index 100% rename from Engine/Entities/ParticleEffect.ent rename to Assets/Engine/Entities/ParticleEffect.ent diff --git a/Engine/Entities/ProceduralObject.ent b/Assets/Engine/Entities/ProceduralObject.ent similarity index 100% rename from Engine/Entities/ProceduralObject.ent rename to Assets/Engine/Entities/ProceduralObject.ent diff --git a/Engine/Entities/ProximityTrigger.ent b/Assets/Engine/Entities/ProximityTrigger.ent similarity index 100% rename from Engine/Entities/ProximityTrigger.ent rename to Assets/Engine/Entities/ProximityTrigger.ent diff --git a/Engine/Entities/RigidBody.ent b/Assets/Engine/Entities/RigidBody.ent similarity index 100% rename from Engine/Entities/RigidBody.ent rename to Assets/Engine/Entities/RigidBody.ent diff --git a/Engine/Entities/RigidBodyEx.ent b/Assets/Engine/Entities/RigidBodyEx.ent similarity index 100% rename from Engine/Entities/RigidBodyEx.ent rename to Assets/Engine/Entities/RigidBodyEx.ent diff --git a/Engine/Entities/SmartObject.ent b/Assets/Engine/Entities/SmartObject.ent similarity index 100% rename from Engine/Entities/SmartObject.ent rename to Assets/Engine/Entities/SmartObject.ent diff --git a/Engine/Entities/TagPoint.ent b/Assets/Engine/Entities/TagPoint.ent similarity index 100% rename from Engine/Entities/TagPoint.ent rename to Assets/Engine/Entities/TagPoint.ent diff --git a/Engine/Entities/UiCanvasRef.ent b/Assets/Engine/Entities/UiCanvasRef.ent similarity index 100% rename from Engine/Entities/UiCanvasRef.ent rename to Assets/Engine/Entities/UiCanvasRef.ent diff --git a/Engine/Fonts/Vera.ttf b/Assets/Engine/Fonts/Vera.ttf similarity index 100% rename from Engine/Fonts/Vera.ttf rename to Assets/Engine/Fonts/Vera.ttf diff --git a/Engine/Fonts/VeraMono.ttf b/Assets/Engine/Fonts/VeraMono.ttf similarity index 100% rename from Engine/Fonts/VeraMono.ttf rename to Assets/Engine/Fonts/VeraMono.ttf diff --git a/Engine/Fonts/Vera_COPYRIGHT.TXT b/Assets/Engine/Fonts/Vera_COPYRIGHT.TXT similarity index 100% rename from Engine/Fonts/Vera_COPYRIGHT.TXT rename to Assets/Engine/Fonts/Vera_COPYRIGHT.TXT diff --git a/Engine/Fonts/Vera_RELEASENOTES.TXT b/Assets/Engine/Fonts/Vera_RELEASENOTES.TXT similarity index 100% rename from Engine/Fonts/Vera_RELEASENOTES.TXT rename to Assets/Engine/Fonts/Vera_RELEASENOTES.TXT diff --git a/Engine/Fonts/console.font b/Assets/Engine/Fonts/console.font similarity index 100% rename from Engine/Fonts/console.font rename to Assets/Engine/Fonts/console.font diff --git a/Engine/Fonts/console.xml b/Assets/Engine/Fonts/console.xml similarity index 100% rename from Engine/Fonts/console.xml rename to Assets/Engine/Fonts/console.xml diff --git a/Engine/Fonts/default-ui.font b/Assets/Engine/Fonts/default-ui.font similarity index 100% rename from Engine/Fonts/default-ui.font rename to Assets/Engine/Fonts/default-ui.font diff --git a/Engine/Fonts/default-ui.xml b/Assets/Engine/Fonts/default-ui.xml similarity index 100% rename from Engine/Fonts/default-ui.xml rename to Assets/Engine/Fonts/default-ui.xml diff --git a/Engine/Fonts/default.font b/Assets/Engine/Fonts/default.font similarity index 100% rename from Engine/Fonts/default.font rename to Assets/Engine/Fonts/default.font diff --git a/Engine/Fonts/default.xml b/Assets/Engine/Fonts/default.xml similarity index 100% rename from Engine/Fonts/default.xml rename to Assets/Engine/Fonts/default.xml diff --git a/Engine/Fonts/hud.font b/Assets/Engine/Fonts/hud.font similarity index 100% rename from Engine/Fonts/hud.font rename to Assets/Engine/Fonts/hud.font diff --git a/Engine/Fonts/hud.xml b/Assets/Engine/Fonts/hud.xml similarity index 100% rename from Engine/Fonts/hud.xml rename to Assets/Engine/Fonts/hud.xml diff --git a/Engine/Libs/MaterialEffects/FXLibs/collisions.xml b/Assets/Engine/Libs/MaterialEffects/FXLibs/collisions.xml similarity index 100% rename from Engine/Libs/MaterialEffects/FXLibs/collisions.xml rename to Assets/Engine/Libs/MaterialEffects/FXLibs/collisions.xml diff --git a/Engine/Libs/MaterialEffects/materialeffects.xml b/Assets/Engine/Libs/MaterialEffects/materialeffects.xml similarity index 100% rename from Engine/Libs/MaterialEffects/materialeffects.xml rename to Assets/Engine/Libs/MaterialEffects/materialeffects.xml diff --git a/Engine/Libs/MaterialEffects/surfacetypes.xml b/Assets/Engine/Libs/MaterialEffects/surfacetypes.xml similarity index 100% rename from Engine/Libs/MaterialEffects/surfacetypes.xml rename to Assets/Engine/Libs/MaterialEffects/surfacetypes.xml diff --git a/Engine/Libs/PostEffectGroups/Default.xml b/Assets/Engine/Libs/PostEffectGroups/Default.xml similarity index 100% rename from Engine/Libs/PostEffectGroups/Default.xml rename to Assets/Engine/Libs/PostEffectGroups/Default.xml diff --git a/Engine/Objects/default/editorprimitive.mtl b/Assets/Engine/Objects/default/editorprimitive.mtl similarity index 100% rename from Engine/Objects/default/editorprimitive.mtl rename to Assets/Engine/Objects/default/editorprimitive.mtl diff --git a/Engine/Objects/default/primitive_capsule.cgf b/Assets/Engine/Objects/default/primitive_capsule.cgf similarity index 100% rename from Engine/Objects/default/primitive_capsule.cgf rename to Assets/Engine/Objects/default/primitive_capsule.cgf diff --git a/Engine/Objects/default/primitive_cube.cgf b/Assets/Engine/Objects/default/primitive_cube.cgf similarity index 100% rename from Engine/Objects/default/primitive_cube.cgf rename to Assets/Engine/Objects/default/primitive_cube.cgf diff --git a/Engine/Objects/default/primitive_plane.cgf b/Assets/Engine/Objects/default/primitive_plane.cgf similarity index 100% rename from Engine/Objects/default/primitive_plane.cgf rename to Assets/Engine/Objects/default/primitive_plane.cgf diff --git a/Engine/Objects/default/primitive_sphere.cgf b/Assets/Engine/Objects/default/primitive_sphere.cgf similarity index 100% rename from Engine/Objects/default/primitive_sphere.cgf rename to Assets/Engine/Objects/default/primitive_sphere.cgf diff --git a/Engine/Schema/Environment.xmlschema b/Assets/Engine/Schema/Environment.xmlschema similarity index 100% rename from Engine/Schema/Environment.xmlschema rename to Assets/Engine/Schema/Environment.xmlschema diff --git a/Engine/Schema/FlaresLibrary.xmlschema b/Assets/Engine/Schema/FlaresLibrary.xmlschema similarity index 100% rename from Engine/Schema/FlaresLibrary.xmlschema rename to Assets/Engine/Schema/FlaresLibrary.xmlschema diff --git a/Engine/Schema/Font.xmlschema b/Assets/Engine/Schema/Font.xmlschema similarity index 100% rename from Engine/Schema/Font.xmlschema rename to Assets/Engine/Schema/Font.xmlschema diff --git a/Engine/Schema/ParticleLibrary.xmlschema b/Assets/Engine/Schema/ParticleLibrary.xmlschema similarity index 100% rename from Engine/Schema/ParticleLibrary.xmlschema rename to Assets/Engine/Schema/ParticleLibrary.xmlschema diff --git a/Engine/Schema/cloudlibrary.xmlschema b/Assets/Engine/Schema/cloudlibrary.xmlschema similarity index 100% rename from Engine/Schema/cloudlibrary.xmlschema rename to Assets/Engine/Schema/cloudlibrary.xmlschema diff --git a/Engine/Schema/editorappdescriptor.xmlschema b/Assets/Engine/Schema/editorappdescriptor.xmlschema similarity index 100% rename from Engine/Schema/editorappdescriptor.xmlschema rename to Assets/Engine/Schema/editorappdescriptor.xmlschema diff --git a/Engine/Schema/enginedependency.xmlschema b/Assets/Engine/Schema/enginedependency.xmlschema similarity index 100% rename from Engine/Schema/enginedependency.xmlschema rename to Assets/Engine/Schema/enginedependency.xmlschema diff --git a/Engine/Schema/ent.xmlschema b/Assets/Engine/Schema/ent.xmlschema similarity index 100% rename from Engine/Schema/ent.xmlschema rename to Assets/Engine/Schema/ent.xmlschema diff --git a/Engine/Schema/gameappdescriptor.xmlschema b/Assets/Engine/Schema/gameappdescriptor.xmlschema similarity index 100% rename from Engine/Schema/gameappdescriptor.xmlschema rename to Assets/Engine/Schema/gameappdescriptor.xmlschema diff --git a/Engine/Schema/materialeffectlibrary.xmlschema b/Assets/Engine/Schema/materialeffectlibrary.xmlschema similarity index 100% rename from Engine/Schema/materialeffectlibrary.xmlschema rename to Assets/Engine/Schema/materialeffectlibrary.xmlschema diff --git a/Engine/Schema/materialeffects.xmlschema b/Assets/Engine/Schema/materialeffects.xmlschema similarity index 100% rename from Engine/Schema/materialeffects.xmlschema rename to Assets/Engine/Schema/materialeffects.xmlschema diff --git a/Engine/Schema/rainandsnowtextures.xmlschema b/Assets/Engine/Schema/rainandsnowtextures.xmlschema similarity index 100% rename from Engine/Schema/rainandsnowtextures.xmlschema rename to Assets/Engine/Schema/rainandsnowtextures.xmlschema diff --git a/Engine/Schema/surfacetypes.xmlschema b/Assets/Engine/Schema/surfacetypes.xmlschema similarity index 100% rename from Engine/Schema/surfacetypes.xmlschema rename to Assets/Engine/Schema/surfacetypes.xmlschema diff --git a/Engine/Schema/vegdescriptorlist.xmlschema b/Assets/Engine/Schema/vegdescriptorlist.xmlschema similarity index 100% rename from Engine/Schema/vegdescriptorlist.xmlschema rename to Assets/Engine/Schema/vegdescriptorlist.xmlschema diff --git a/Engine/Scripts/EngineCommon.lua b/Assets/Engine/Scripts/EngineCommon.lua similarity index 100% rename from Engine/Scripts/EngineCommon.lua rename to Assets/Engine/Scripts/EngineCommon.lua diff --git a/Engine/Scripts/Entities/AI/NavigationSeedPoint.lua b/Assets/Engine/Scripts/Entities/AI/NavigationSeedPoint.lua similarity index 100% rename from Engine/Scripts/Entities/AI/NavigationSeedPoint.lua rename to Assets/Engine/Scripts/Entities/AI/NavigationSeedPoint.lua diff --git a/Engine/Scripts/Entities/AI/SmartObject.lua b/Assets/Engine/Scripts/Entities/AI/SmartObject.lua similarity index 100% rename from Engine/Scripts/Entities/AI/SmartObject.lua rename to Assets/Engine/Scripts/Entities/AI/SmartObject.lua diff --git a/Engine/Scripts/Entities/AI/TagPoint.lua b/Assets/Engine/Scripts/Entities/AI/TagPoint.lua similarity index 100% rename from Engine/Scripts/Entities/AI/TagPoint.lua rename to Assets/Engine/Scripts/Entities/AI/TagPoint.lua diff --git a/Engine/Scripts/Entities/Actor/CActorWrapper.lua b/Assets/Engine/Scripts/Entities/Actor/CActorWrapper.lua similarity index 100% rename from Engine/Scripts/Entities/Actor/CActorWrapper.lua rename to Assets/Engine/Scripts/Entities/Actor/CActorWrapper.lua diff --git a/Engine/Scripts/Entities/Anim/MannequinObject.lua b/Assets/Engine/Scripts/Entities/Anim/MannequinObject.lua similarity index 100% rename from Engine/Scripts/Entities/Anim/MannequinObject.lua rename to Assets/Engine/Scripts/Entities/Anim/MannequinObject.lua diff --git a/Engine/Scripts/Entities/Default/GeomEntity.lua b/Assets/Engine/Scripts/Entities/Default/GeomEntity.lua similarity index 100% rename from Engine/Scripts/Entities/Default/GeomEntity.lua rename to Assets/Engine/Scripts/Entities/Default/GeomEntity.lua diff --git a/Engine/Scripts/Entities/Default/RopeEntity.lua b/Assets/Engine/Scripts/Entities/Default/RopeEntity.lua similarity index 100% rename from Engine/Scripts/Entities/Default/RopeEntity.lua rename to Assets/Engine/Scripts/Entities/Default/RopeEntity.lua diff --git a/Engine/Scripts/Entities/Environment/WaterVolume.lua b/Assets/Engine/Scripts/Entities/Environment/WaterVolume.lua similarity index 100% rename from Engine/Scripts/Entities/Environment/WaterVolume.lua rename to Assets/Engine/Scripts/Entities/Environment/WaterVolume.lua diff --git a/Engine/Scripts/Entities/Lights/EnvironmentLight.lua b/Assets/Engine/Scripts/Entities/Lights/EnvironmentLight.lua similarity index 100% rename from Engine/Scripts/Entities/Lights/EnvironmentLight.lua rename to Assets/Engine/Scripts/Entities/Lights/EnvironmentLight.lua diff --git a/Engine/Scripts/Entities/Lights/Light.lua b/Assets/Engine/Scripts/Entities/Lights/Light.lua similarity index 100% rename from Engine/Scripts/Entities/Lights/Light.lua rename to Assets/Engine/Scripts/Entities/Lights/Light.lua diff --git a/Engine/Scripts/Entities/Others/CameraSource.lua b/Assets/Engine/Scripts/Entities/Others/CameraSource.lua similarity index 100% rename from Engine/Scripts/Entities/Others/CameraSource.lua rename to Assets/Engine/Scripts/Entities/Others/CameraSource.lua diff --git a/Engine/Scripts/Entities/Others/CameraTarget.lua b/Assets/Engine/Scripts/Entities/Others/CameraTarget.lua similarity index 100% rename from Engine/Scripts/Entities/Others/CameraTarget.lua rename to Assets/Engine/Scripts/Entities/Others/CameraTarget.lua diff --git a/Engine/Scripts/Entities/Others/Comment.lua b/Assets/Engine/Scripts/Entities/Others/Comment.lua similarity index 100% rename from Engine/Scripts/Entities/Others/Comment.lua rename to Assets/Engine/Scripts/Entities/Others/Comment.lua diff --git a/Engine/Scripts/Entities/Others/ProceduralObject.lua b/Assets/Engine/Scripts/Entities/Others/ProceduralObject.lua similarity index 100% rename from Engine/Scripts/Entities/Others/ProceduralObject.lua rename to Assets/Engine/Scripts/Entities/Others/ProceduralObject.lua diff --git a/Engine/Scripts/Entities/Others/RigidBody.lua b/Assets/Engine/Scripts/Entities/Others/RigidBody.lua similarity index 100% rename from Engine/Scripts/Entities/Others/RigidBody.lua rename to Assets/Engine/Scripts/Entities/Others/RigidBody.lua diff --git a/Engine/Scripts/Entities/Particle/ParticleEffect.lua b/Assets/Engine/Scripts/Entities/Particle/ParticleEffect.lua similarity index 100% rename from Engine/Scripts/Entities/Particle/ParticleEffect.lua rename to Assets/Engine/Scripts/Entities/Particle/ParticleEffect.lua diff --git a/Engine/Scripts/Entities/Physics/AnimObject.lua b/Assets/Engine/Scripts/Entities/Physics/AnimObject.lua similarity index 100% rename from Engine/Scripts/Entities/Physics/AnimObject.lua rename to Assets/Engine/Scripts/Entities/Physics/AnimObject.lua diff --git a/Engine/Scripts/Entities/Physics/AreaBezierVolume.lua b/Assets/Engine/Scripts/Entities/Physics/AreaBezierVolume.lua similarity index 100% rename from Engine/Scripts/Entities/Physics/AreaBezierVolume.lua rename to Assets/Engine/Scripts/Entities/Physics/AreaBezierVolume.lua diff --git a/Engine/Scripts/Entities/Physics/BasicEntity.lua b/Assets/Engine/Scripts/Entities/Physics/BasicEntity.lua similarity index 100% rename from Engine/Scripts/Entities/Physics/BasicEntity.lua rename to Assets/Engine/Scripts/Entities/Physics/BasicEntity.lua diff --git a/Engine/Scripts/Entities/Physics/LivingEntity.lua b/Assets/Engine/Scripts/Entities/Physics/LivingEntity.lua similarity index 100% rename from Engine/Scripts/Entities/Physics/LivingEntity.lua rename to Assets/Engine/Scripts/Entities/Physics/LivingEntity.lua diff --git a/Engine/Scripts/Entities/Physics/RigidBodyEx.lua b/Assets/Engine/Scripts/Entities/Physics/RigidBodyEx.lua similarity index 100% rename from Engine/Scripts/Entities/Physics/RigidBodyEx.lua rename to Assets/Engine/Scripts/Entities/Physics/RigidBodyEx.lua diff --git a/Engine/Scripts/Entities/Render/FogVolume.lua b/Assets/Engine/Scripts/Entities/Render/FogVolume.lua similarity index 100% rename from Engine/Scripts/Entities/Render/FogVolume.lua rename to Assets/Engine/Scripts/Entities/Render/FogVolume.lua diff --git a/Engine/Scripts/Entities/Render/GeomCache.lua b/Assets/Engine/Scripts/Entities/Render/GeomCache.lua similarity index 100% rename from Engine/Scripts/Entities/Render/GeomCache.lua rename to Assets/Engine/Scripts/Entities/Render/GeomCache.lua diff --git a/Engine/Scripts/Entities/Sound/AudioAreaAmbience.lua b/Assets/Engine/Scripts/Entities/Sound/AudioAreaAmbience.lua similarity index 100% rename from Engine/Scripts/Entities/Sound/AudioAreaAmbience.lua rename to Assets/Engine/Scripts/Entities/Sound/AudioAreaAmbience.lua diff --git a/Engine/Scripts/Entities/Sound/AudioAreaEntity.lua b/Assets/Engine/Scripts/Entities/Sound/AudioAreaEntity.lua similarity index 100% rename from Engine/Scripts/Entities/Sound/AudioAreaEntity.lua rename to Assets/Engine/Scripts/Entities/Sound/AudioAreaEntity.lua diff --git a/Engine/Scripts/Entities/Sound/AudioAreaRandom.lua b/Assets/Engine/Scripts/Entities/Sound/AudioAreaRandom.lua similarity index 100% rename from Engine/Scripts/Entities/Sound/AudioAreaRandom.lua rename to Assets/Engine/Scripts/Entities/Sound/AudioAreaRandom.lua diff --git a/Engine/Scripts/Entities/Sound/AudioTriggerSpot.lua b/Assets/Engine/Scripts/Entities/Sound/AudioTriggerSpot.lua similarity index 100% rename from Engine/Scripts/Entities/Sound/AudioTriggerSpot.lua rename to Assets/Engine/Scripts/Entities/Sound/AudioTriggerSpot.lua diff --git a/Engine/Scripts/Entities/Sound/Shared/AudioUtils.lua b/Assets/Engine/Scripts/Entities/Sound/Shared/AudioUtils.lua similarity index 100% rename from Engine/Scripts/Entities/Sound/Shared/AudioUtils.lua rename to Assets/Engine/Scripts/Entities/Sound/Shared/AudioUtils.lua diff --git a/Engine/Scripts/Entities/Triggers/AreaTrigger.lua b/Assets/Engine/Scripts/Entities/Triggers/AreaTrigger.lua similarity index 100% rename from Engine/Scripts/Entities/Triggers/AreaTrigger.lua rename to Assets/Engine/Scripts/Entities/Triggers/AreaTrigger.lua diff --git a/Engine/Scripts/Entities/Triggers/ProximityTrigger.lua b/Assets/Engine/Scripts/Entities/Triggers/ProximityTrigger.lua similarity index 100% rename from Engine/Scripts/Entities/Triggers/ProximityTrigger.lua rename to Assets/Engine/Scripts/Entities/Triggers/ProximityTrigger.lua diff --git a/Engine/Scripts/Entities/UI/UiCanvasRefEntity.lua b/Assets/Engine/Scripts/Entities/UI/UiCanvasRefEntity.lua similarity index 100% rename from Engine/Scripts/Entities/UI/UiCanvasRefEntity.lua rename to Assets/Engine/Scripts/Entities/UI/UiCanvasRefEntity.lua diff --git a/Engine/Scripts/Utils/Components/GameplayUtils.lua b/Assets/Engine/Scripts/Utils/Components/GameplayUtils.lua similarity index 100% rename from Engine/Scripts/Utils/Components/GameplayUtils.lua rename to Assets/Engine/Scripts/Utils/Components/GameplayUtils.lua diff --git a/Engine/Scripts/Utils/Components/InputUtils.lua b/Assets/Engine/Scripts/Utils/Components/InputUtils.lua similarity index 100% rename from Engine/Scripts/Utils/Components/InputUtils.lua rename to Assets/Engine/Scripts/Utils/Components/InputUtils.lua diff --git a/Engine/Scripts/Utils/Components/MultiHandlers.lua b/Assets/Engine/Scripts/Utils/Components/MultiHandlers.lua similarity index 100% rename from Engine/Scripts/Utils/Components/MultiHandlers.lua rename to Assets/Engine/Scripts/Utils/Components/MultiHandlers.lua diff --git a/Engine/Scripts/Utils/Containers.lua b/Assets/Engine/Scripts/Utils/Containers.lua similarity index 100% rename from Engine/Scripts/Utils/Containers.lua rename to Assets/Engine/Scripts/Utils/Containers.lua diff --git a/Engine/Scripts/Utils/EntityUtils.lua b/Assets/Engine/Scripts/Utils/EntityUtils.lua similarity index 100% rename from Engine/Scripts/Utils/EntityUtils.lua rename to Assets/Engine/Scripts/Utils/EntityUtils.lua diff --git a/Engine/Scripts/Utils/Math.lua b/Assets/Engine/Scripts/Utils/Math.lua similarity index 100% rename from Engine/Scripts/Utils/Math.lua rename to Assets/Engine/Scripts/Utils/Math.lua diff --git a/Engine/SeedAssetList.seed b/Assets/Engine/SeedAssetList.seed similarity index 100% rename from Engine/SeedAssetList.seed rename to Assets/Engine/SeedAssetList.seed diff --git a/Engine/Shaders/DistanceClouds.ext b/Assets/Engine/Shaders/DistanceClouds.ext similarity index 100% rename from Engine/Shaders/DistanceClouds.ext rename to Assets/Engine/Shaders/DistanceClouds.ext diff --git a/Engine/Shaders/Eye.ext b/Assets/Engine/Shaders/Eye.ext similarity index 100% rename from Engine/Shaders/Eye.ext rename to Assets/Engine/Shaders/Eye.ext diff --git a/Engine/Shaders/Fur.ext b/Assets/Engine/Shaders/Fur.ext similarity index 100% rename from Engine/Shaders/Fur.ext rename to Assets/Engine/Shaders/Fur.ext diff --git a/Engine/Shaders/GeometryBeam.ext b/Assets/Engine/Shaders/GeometryBeam.ext similarity index 100% rename from Engine/Shaders/GeometryBeam.ext rename to Assets/Engine/Shaders/GeometryBeam.ext diff --git a/Engine/Shaders/Glass.ext b/Assets/Engine/Shaders/Glass.ext similarity index 100% rename from Engine/Shaders/Glass.ext rename to Assets/Engine/Shaders/Glass.ext diff --git a/Engine/Shaders/HWScripts/CryFX/AuxGeom.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/AuxGeom.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/AuxGeom.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/AuxGeom.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/Clouds.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Clouds.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Clouds.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Clouds.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/Common.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/Common.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Common.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/Common.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/Common.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Common.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Common.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Common.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/CommonDebugPass.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/CommonDebugPass.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/CommonDebugPass.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/CommonDebugPass.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/CommonMotionBlurPass.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/CommonMotionBlurPass.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/CommonMotionBlurPass.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/CommonMotionBlurPass.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/CommonMotionBlurPassTess.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/CommonMotionBlurPassTess.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/CommonMotionBlurPassTess.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/CommonMotionBlurPassTess.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/CommonSVO.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/CommonSVO.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/CommonSVO.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/CommonSVO.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/CommonShadowGenPass.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/CommonShadowGenPass.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/CommonShadowGenPass.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/CommonShadowGenPass.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/CommonShadowGenPassTess.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/CommonShadowGenPassTess.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/CommonShadowGenPassTess.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/CommonShadowGenPassTess.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/CommonTessellation.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/CommonTessellation.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/CommonTessellation.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/CommonTessellation.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/CommonViewsPass.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/CommonViewsPass.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/CommonViewsPass.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/CommonViewsPass.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/CommonViewsPassTess.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/CommonViewsPassTess.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/CommonViewsPassTess.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/CommonViewsPassTess.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/CommonZPass.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/CommonZPass.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/CommonZPass.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/CommonZPass.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/CommonZPassTess.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/CommonZPassTess.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/CommonZPassTess.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/CommonZPassTess.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/CommonZPrePass.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/CommonZPrePass.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/CommonZPrePass.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/CommonZPrePass.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/DXTCompress.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/DXTCompress.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/DXTCompress.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/DXTCompress.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/Debug.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Debug.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Debug.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Debug.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/DebugLight.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/DebugLight.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/DebugLight.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/DebugLight.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/DeferredCaustics.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/DeferredCaustics.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/DeferredCaustics.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/DeferredCaustics.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/DeferredRain.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/DeferredRain.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/DeferredRain.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/DeferredRain.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/DeferredShading.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/DeferredShading.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/DeferredShading.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/DeferredShading.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/DeferredShadows.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/DeferredShadows.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/DeferredShadows.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/DeferredShadows.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/DeferredSnow.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/DeferredSnow.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/DeferredSnow.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/DeferredSnow.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/DepthOfField.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/DepthOfField.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/DepthOfField.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/DepthOfField.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/DistanceClouds.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/DistanceClouds.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/DistanceClouds.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/DistanceClouds.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/Eye.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Eye.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Eye.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Eye.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/FXConstantDefs.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/FXConstantDefs.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/FXConstantDefs.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/FXConstantDefs.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/FXSamplerDefs.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/FXSamplerDefs.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/FXSamplerDefs.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/FXSamplerDefs.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/FXStreamDefs.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/FXStreamDefs.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/FXStreamDefs.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/FXStreamDefs.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/FallBack.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/FallBack.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/FallBack.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/FallBack.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/FixedPipelineEmu.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/FixedPipelineEmu.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/FixedPipelineEmu.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/FixedPipelineEmu.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/FogVolume.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/FogVolume.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/FogVolume.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/FogVolume.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/Fur.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Fur.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Fur.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Fur.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/FurFinPass.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/FurFinPass.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/FurFinPass.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/FurFinPass.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/FurObliteratePass.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/FurObliteratePass.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/FurObliteratePass.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/FurObliteratePass.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/FurZPass.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/FurZPass.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/FurZPass.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/FurZPass.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/GPUParticle.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/GPUParticle.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/GPUParticle.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/GPUParticle.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/GPUParticleBegin.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/GPUParticleBegin.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/GPUParticleBegin.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/GPUParticleBegin.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/GPUParticleBitonicSort.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/GPUParticleBitonicSort.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/GPUParticleBitonicSort.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/GPUParticleBitonicSort.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/GPUParticleBitonicSortGlobal2048.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/GPUParticleBitonicSortGlobal2048.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/GPUParticleBitonicSortGlobal2048.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/GPUParticleBitonicSortGlobal2048.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/GPUParticleBitonicSortLocal.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/GPUParticleBitonicSortLocal.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/GPUParticleBitonicSortLocal.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/GPUParticleBitonicSortLocal.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/GPUParticleCurves.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/GPUParticleCurves.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/GPUParticleCurves.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/GPUParticleCurves.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/GPUParticleEmit.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/GPUParticleEmit.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/GPUParticleEmit.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/GPUParticleEmit.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/GPUParticleGatherSortDistance.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/GPUParticleGatherSortDistance.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/GPUParticleGatherSortDistance.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/GPUParticleGatherSortDistance.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/GPUParticleHelpers.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/GPUParticleHelpers.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/GPUParticleHelpers.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/GPUParticleHelpers.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/GPUParticleOddEvenSort.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/GPUParticleOddEvenSort.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/GPUParticleOddEvenSort.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/GPUParticleOddEvenSort.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/GPUParticleRenderNoGS.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/GPUParticleRenderNoGS.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/GPUParticleRenderNoGS.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/GPUParticleRenderNoGS.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/GPUParticleUpdate.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/GPUParticleUpdate.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/GPUParticleUpdate.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/GPUParticleUpdate.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/GeometryBeam.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/GeometryBeam.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/GeometryBeam.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/GeometryBeam.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/Glass.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Glass.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Glass.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Glass.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/HDRDolbyMetadataPass0.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/HDRDolbyMetadataPass0.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/HDRDolbyMetadataPass0.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/HDRDolbyMetadataPass0.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/HDRDolbyMetadataPass1.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/HDRDolbyMetadataPass1.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/HDRDolbyMetadataPass1.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/HDRDolbyMetadataPass1.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/HDRPostProcess.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/HDRPostProcess.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/HDRPostProcess.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/HDRPostProcess.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/HDRPostProcessDolby.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/HDRPostProcessDolby.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/HDRPostProcessDolby.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/HDRPostProcessDolby.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/Hair.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Hair.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Hair.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Hair.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/Helper.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Helper.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Helper.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Helper.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/Hud3D.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Hud3D.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Hud3D.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Hud3D.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/HumanSkin.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/HumanSkin.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/HumanSkin.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/HumanSkin.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/HumanSkinTess.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/HumanSkinTess.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/HumanSkinTess.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/HumanSkinTess.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/HumanSkinValidations.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/HumanSkinValidations.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/HumanSkinValidations.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/HumanSkinValidations.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/Illum.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Illum.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Illum.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Illum.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/IllumTess.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/IllumTess.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/IllumTess.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/IllumTess.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/IllumValidations.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/IllumValidations.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/IllumValidations.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/IllumValidations.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/LensOptics.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/LensOptics.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/LensOptics.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/LensOptics.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/Light.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Light.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Light.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Light.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/LightBeam.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/LightBeam.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/LightBeam.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/LightBeam.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/LightVolumes.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/LightVolumes.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/LightVolumes.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/LightVolumes.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/MeshBaker.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/MeshBaker.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/MeshBaker.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/MeshBaker.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/MeshBakerDilate.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/MeshBakerDilate.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/MeshBakerDilate.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/MeshBakerDilate.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/ModificatorTC.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/ModificatorTC.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/ModificatorTC.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/ModificatorTC.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/ModificatorVT.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/ModificatorVT.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/ModificatorVT.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/ModificatorVT.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/Monitor.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Monitor.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Monitor.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Monitor.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/MotionBlur.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/MotionBlur.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/MotionBlur.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/MotionBlur.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/MultiLayerAlphaBlend.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/MultiLayerAlphaBlend.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/MultiLayerAlphaBlend.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/MultiLayerAlphaBlend.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/NoDraw.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/NoDraw.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/NoDraw.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/NoDraw.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/OcclusionTest.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/OcclusionTest.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/OcclusionTest.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/OcclusionTest.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/ParticleImposter.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/ParticleImposter.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/ParticleImposter.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/ParticleImposter.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/ParticleVT.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/ParticleVT.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/ParticleVT.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/ParticleVT.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/Particles.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/Particles.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Particles.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/Particles.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/Particles.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Particles.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Particles.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Particles.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/ParticlesCustomPass.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/ParticlesCustomPass.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/ParticlesCustomPass.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/ParticlesCustomPass.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/ParticlesNoMat.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/ParticlesNoMat.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/ParticlesNoMat.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/ParticlesNoMat.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/ParticlesNoMatMirror.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/ParticlesNoMatMirror.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/ParticlesNoMatMirror.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/ParticlesNoMatMirror.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/ParticlesShadowPass.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/ParticlesShadowPass.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/ParticlesShadowPass.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/ParticlesShadowPass.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/PostAA.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/PostAA.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/PostAA.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/PostAA.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/PostEffects.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/PostEffects.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/PostEffects.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/PostEffects.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/PostEffectsGame.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/PostEffectsGame.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/PostEffectsGame.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/PostEffectsGame.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/PostEffectsLib.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/PostEffectsLib.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/PostEffectsLib.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/PostEffectsLib.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/ReferenceImage.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/ReferenceImage.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/ReferenceImage.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/ReferenceImage.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/ReferenceImageHDR.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/ReferenceImageHDR.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/ReferenceImageHDR.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/ReferenceImageHDR.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/Scopes.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Scopes.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Scopes.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Scopes.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/ShadowBlur.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/ShadowBlur.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/ShadowBlur.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/ShadowBlur.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/ShadowCommon.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/ShadowCommon.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/ShadowCommon.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/ShadowCommon.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/ShadowMaskGen.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/ShadowMaskGen.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/ShadowMaskGen.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/ShadowMaskGen.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/Sketch.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Sketch.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Sketch.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Sketch.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/SketchTerrain.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/SketchTerrain.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/SketchTerrain.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/SketchTerrain.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/Sky.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Sky.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Sky.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Sky.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/SkyHDR.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/SkyHDR.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/SkyHDR.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/SkyHDR.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/SoftOcclusionQuery.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/SoftOcclusionQuery.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/SoftOcclusionQuery.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/SoftOcclusionQuery.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/Stars.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Stars.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Stars.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Stars.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/StarterGame_GeometryBeamScaling.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/StarterGame_GeometryBeamScaling.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/StarterGame_GeometryBeamScaling.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/StarterGame_GeometryBeamScaling.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/Stereo.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Stereo.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Stereo.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Stereo.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/Sunshafts.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Sunshafts.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Sunshafts.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Sunshafts.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/TemplBeamProc.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/TemplBeamProc.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/TemplBeamProc.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/TemplBeamProc.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/Terrain.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Terrain.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Terrain.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Terrain.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/TerrainValidations.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/TerrainValidations.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/TerrainValidations.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/TerrainValidations.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/TiledShading.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/TiledShading.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/TiledShading.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/TiledShading.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/Total_Illumination.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Total_Illumination.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Total_Illumination.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Total_Illumination.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/UI.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/UI.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/UI.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/UI.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/Vegetation.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Vegetation.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Vegetation.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Vegetation.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/VegetationTess.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/VegetationTess.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/VegetationTess.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/VegetationTess.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/VegetationValidations.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/VegetationValidations.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/VegetationValidations.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/VegetationValidations.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/Video.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Video.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Video.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Video.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/VolumeLighting.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/VolumeLighting.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/VolumeLighting.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/VolumeLighting.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/VolumeObject.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/VolumeObject.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/VolumeObject.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/VolumeObject.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/VolumetricFog.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/VolumetricFog.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/VolumetricFog.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/VolumetricFog.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/Water.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Water.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Water.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Water.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/WaterCausticsPass.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/WaterCausticsPass.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/WaterCausticsPass.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/WaterCausticsPass.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/WaterFogVolume.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/WaterFogVolume.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/WaterFogVolume.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/WaterFogVolume.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/WaterOceanBottom.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/WaterOceanBottom.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/WaterOceanBottom.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/WaterOceanBottom.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/WaterReflectionsPass.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/WaterReflectionsPass.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/WaterReflectionsPass.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/WaterReflectionsPass.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/WaterVolume.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/WaterVolume.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/WaterVolume.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/WaterVolume.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/Waterfall.cfx b/Assets/Engine/Shaders/HWScripts/CryFX/Waterfall.cfx similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/Waterfall.cfx rename to Assets/Engine/Shaders/HWScripts/CryFX/Waterfall.cfx diff --git a/Engine/Shaders/HWScripts/CryFX/fragLib.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/fragLib.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/fragLib.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/fragLib.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/shadeLib.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/shadeLib.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/shadeLib.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/shadeLib.cfi diff --git a/Engine/Shaders/HWScripts/CryFX/vertexLib.cfi b/Assets/Engine/Shaders/HWScripts/CryFX/vertexLib.cfi similarity index 100% rename from Engine/Shaders/HWScripts/CryFX/vertexLib.cfi rename to Assets/Engine/Shaders/HWScripts/CryFX/vertexLib.cfi diff --git a/Engine/Shaders/Hair.ext b/Assets/Engine/Shaders/Hair.ext similarity index 100% rename from Engine/Shaders/Hair.ext rename to Assets/Engine/Shaders/Hair.ext diff --git a/Engine/Shaders/HumanSkin.ext b/Assets/Engine/Shaders/HumanSkin.ext similarity index 100% rename from Engine/Shaders/HumanSkin.ext rename to Assets/Engine/Shaders/HumanSkin.ext diff --git a/Engine/Shaders/Illum.ext b/Assets/Engine/Shaders/Illum.ext similarity index 100% rename from Engine/Shaders/Illum.ext rename to Assets/Engine/Shaders/Illum.ext diff --git a/Engine/Shaders/LensOptics.ext b/Assets/Engine/Shaders/LensOptics.ext similarity index 100% rename from Engine/Shaders/LensOptics.ext rename to Assets/Engine/Shaders/LensOptics.ext diff --git a/Engine/Shaders/LightBeam.ext b/Assets/Engine/Shaders/LightBeam.ext similarity index 100% rename from Engine/Shaders/LightBeam.ext rename to Assets/Engine/Shaders/LightBeam.ext diff --git a/Engine/Shaders/Monitor.ext b/Assets/Engine/Shaders/Monitor.ext similarity index 100% rename from Engine/Shaders/Monitor.ext rename to Assets/Engine/Shaders/Monitor.ext diff --git a/Engine/Shaders/ParticleImposter.ext b/Assets/Engine/Shaders/ParticleImposter.ext similarity index 100% rename from Engine/Shaders/ParticleImposter.ext rename to Assets/Engine/Shaders/ParticleImposter.ext diff --git a/Engine/Shaders/Particles.ext b/Assets/Engine/Shaders/Particles.ext similarity index 100% rename from Engine/Shaders/Particles.ext rename to Assets/Engine/Shaders/Particles.ext diff --git a/Engine/Shaders/RunTime.ext b/Assets/Engine/Shaders/RunTime.ext similarity index 100% rename from Engine/Shaders/RunTime.ext rename to Assets/Engine/Shaders/RunTime.ext diff --git a/Engine/Shaders/Scopes.ext b/Assets/Engine/Shaders/Scopes.ext similarity index 100% rename from Engine/Shaders/Scopes.ext rename to Assets/Engine/Shaders/Scopes.ext diff --git a/Engine/Shaders/ShaderProfiles.txt b/Assets/Engine/Shaders/ShaderProfiles.txt similarity index 100% rename from Engine/Shaders/ShaderProfiles.txt rename to Assets/Engine/Shaders/ShaderProfiles.txt diff --git a/Engine/Shaders/ShadowMaskGen.ext b/Assets/Engine/Shaders/ShadowMaskGen.ext similarity index 100% rename from Engine/Shaders/ShadowMaskGen.ext rename to Assets/Engine/Shaders/ShadowMaskGen.ext diff --git a/Engine/Shaders/SketchTerrain.ext b/Assets/Engine/Shaders/SketchTerrain.ext similarity index 100% rename from Engine/Shaders/SketchTerrain.ext rename to Assets/Engine/Shaders/SketchTerrain.ext diff --git a/Engine/Shaders/SkyHDR.ext b/Assets/Engine/Shaders/SkyHDR.ext similarity index 100% rename from Engine/Shaders/SkyHDR.ext rename to Assets/Engine/Shaders/SkyHDR.ext diff --git a/Engine/Shaders/StarterGame_GeometryBeamScaling.ext b/Assets/Engine/Shaders/StarterGame_GeometryBeamScaling.ext similarity index 100% rename from Engine/Shaders/StarterGame_GeometryBeamScaling.ext rename to Assets/Engine/Shaders/StarterGame_GeometryBeamScaling.ext diff --git a/Engine/Shaders/Statics.ext b/Assets/Engine/Shaders/Statics.ext similarity index 100% rename from Engine/Shaders/Statics.ext rename to Assets/Engine/Shaders/Statics.ext diff --git a/Engine/Shaders/TemplBeamProc.ext b/Assets/Engine/Shaders/TemplBeamProc.ext similarity index 100% rename from Engine/Shaders/TemplBeamProc.ext rename to Assets/Engine/Shaders/TemplBeamProc.ext diff --git a/Engine/Shaders/Terrain.ext b/Assets/Engine/Shaders/Terrain.ext similarity index 100% rename from Engine/Shaders/Terrain.ext rename to Assets/Engine/Shaders/Terrain.ext diff --git a/Engine/Shaders/Vegetation.ext b/Assets/Engine/Shaders/Vegetation.ext similarity index 100% rename from Engine/Shaders/Vegetation.ext rename to Assets/Engine/Shaders/Vegetation.ext diff --git a/Engine/Shaders/VolumeObject.ext b/Assets/Engine/Shaders/VolumeObject.ext similarity index 100% rename from Engine/Shaders/VolumeObject.ext rename to Assets/Engine/Shaders/VolumeObject.ext diff --git a/Engine/Shaders/Water.ext b/Assets/Engine/Shaders/Water.ext similarity index 100% rename from Engine/Shaders/Water.ext rename to Assets/Engine/Shaders/Water.ext diff --git a/Engine/Shaders/WaterVolume.ext b/Assets/Engine/Shaders/WaterVolume.ext similarity index 100% rename from Engine/Shaders/WaterVolume.ext rename to Assets/Engine/Shaders/WaterVolume.ext diff --git a/Engine/Shaders/Waterfall.ext b/Assets/Engine/Shaders/Waterfall.ext similarity index 100% rename from Engine/Shaders/Waterfall.ext rename to Assets/Engine/Shaders/Waterfall.ext diff --git a/Engine/exclude.filetag b/Assets/Engine/exclude.filetag similarity index 100% rename from Engine/exclude.filetag rename to Assets/Engine/exclude.filetag diff --git a/Engine/include.filetag b/Assets/Engine/include.filetag similarity index 100% rename from Engine/include.filetag rename to Assets/Engine/include.filetag diff --git a/Engine/materials/material_layers_default.mtl b/Assets/Engine/materials/material_layers_default.mtl similarity index 100% rename from Engine/materials/material_layers_default.mtl rename to Assets/Engine/materials/material_layers_default.mtl diff --git a/Engine/materials/material_terrain_default.mtl b/Assets/Engine/materials/material_terrain_default.mtl similarity index 100% rename from Engine/materials/material_terrain_default.mtl rename to Assets/Engine/materials/material_terrain_default.mtl diff --git a/Engine/textures/default_icon.png b/Assets/Engine/textures/default_icon.png similarity index 100% rename from Engine/textures/default_icon.png rename to Assets/Engine/textures/default_icon.png diff --git a/Engine/textures/default_icon.png.exportsettings b/Assets/Engine/textures/default_icon.png.exportsettings similarity index 100% rename from Engine/textures/default_icon.png.exportsettings rename to Assets/Engine/textures/default_icon.png.exportsettings diff --git a/Engine/textures/defaults/defaultnouvs.tif b/Assets/Engine/textures/defaults/defaultnouvs.tif similarity index 100% rename from Engine/textures/defaults/defaultnouvs.tif rename to Assets/Engine/textures/defaults/defaultnouvs.tif diff --git a/Engine/textures/defaults/grey.tif b/Assets/Engine/textures/defaults/grey.tif similarity index 100% rename from Engine/textures/defaults/grey.tif rename to Assets/Engine/textures/defaults/grey.tif diff --git a/Engine/textures/skys/night/half_moon.tif b/Assets/Engine/textures/skys/night/half_moon.tif similarity index 100% rename from Engine/textures/skys/night/half_moon.tif rename to Assets/Engine/textures/skys/night/half_moon.tif diff --git a/AutomatedTesting/EngineFinder.cmake b/AutomatedTesting/EngineFinder.cmake new file mode 100644 index 0000000000..1fdcef2b56 --- /dev/null +++ b/AutomatedTesting/EngineFinder.cmake @@ -0,0 +1,50 @@ +# +# All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or +# its licensors. +# +# For complete copyright and license terms please see the LICENSE at the root of this +# distribution (the "License"). All use of this software is governed by the License, +# or, if provided, by the license below or the license accompanying this file. Do not +# remove or modify any license notices. This file is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# +# This file is copied during engine registration. Edits to this file will be lost next +# time a registration happens. + +include_guard() + +# Read the engine name from the project_json file +file(READ ${CMAKE_CURRENT_LIST_DIR}/project.json project_json) +string(JSON LY_ENGINE_NAME_TO_USE ERROR_VARIABLE json_error GET ${project_json} engine) +if(json_error) + message(FATAL_ERROR "Unable to read key 'engine' from 'project.json', error: ${json_error}") +endif() + +# Read the list of paths from ~.o3de/o3de_manifest.json +file(TO_CMAKE_PATH "$ENV{USERPROFILE}" home_directory) # Windows +if((NOT home_directory) OR (NOT EXISTS ${home_directory})) + file(TO_CMAKE_PATH "$ENV{HOME}" home_directory)# Unix +endif() + +if (NOT home_directory) + message(FATAL_ERROR "Cannot find user home directory, the o3de manifest cannot be found") +endif() +# Set manifest path to path in the user home directory +set(manifest_path ${home_directory}/.o3de/o3de_manifest.json) + +if(EXISTS ${manifest_path}) + file(READ ${manifest_path} manifest_json) + string(JSON engines_count ERROR_VARIABLE json_error LENGTH ${manifest_json} engines) + if(json_error) + message(FATAL_ERROR "Unable to read key 'engines' from '${manifest_path}', error: ${json_error}") + endif() + + math(EXPR engines_count "${engines_count}-1") + foreach(engine_path_index RANGE ${engines_count}) + string(JSON engine_path ERROR_VARIABLE json_error GET ${manifest_json} engines ${engine_path_index}) + if(${json_error}) + message(FATAL_ERROR "Unable to read engines[${engine_path_index}] '${manifest_path}', error: ${json_error}") + endif() + list(APPEND CMAKE_MODULE_PATH "${engine_path}/cmake") + endforeach() +endif() diff --git a/AutomatedTesting/Gem/PythonTests/assetpipeline/asset_processor_tests/asset_processor_batch_dependency_tests.py b/AutomatedTesting/Gem/PythonTests/assetpipeline/asset_processor_tests/asset_processor_batch_dependency_tests.py index cfd088adc0..e329846554 100755 --- a/AutomatedTesting/Gem/PythonTests/assetpipeline/asset_processor_tests/asset_processor_batch_dependency_tests.py +++ b/AutomatedTesting/Gem/PythonTests/assetpipeline/asset_processor_tests/asset_processor_batch_dependency_tests.py @@ -71,9 +71,9 @@ class TestsAssetProcessorBatch_DependenycyTests(object): env = ap_setup_fixture BATCH_LOG_PATH = env["ap_batch_log_file"] asset_processor.create_temp_asset_root() - asset_processor.add_relative_source_asset(os.path.join("Engine", "engine_dependencies.xml")) - asset_processor.add_scan_folder("Engine") - asset_processor.add_relative_source_asset(os.path.join("Engine", "Libs", "MaterialEffects", "surfacetypes.xml")) + asset_processor.add_relative_source_asset(os.path.join("Assets", "Engine", "engine_dependencies.xml")) + asset_processor.add_scan_folder(os.path.join("Assets", "Engine")) + asset_processor.add_relative_source_asset(os.path.join("Assets", "Engine", "Libs", "MaterialEffects", "surfacetypes.xml")) # Precondition: Assets are all processed asset_processor.batch_process() @@ -103,7 +103,7 @@ class TestsAssetProcessorBatch_DependenycyTests(object): assert surfacetypes_missing_logline, "Surfacetypes.xml not seen in the batch log as missing." # Add the schema file which allows our xml parser to understand dependencies for our engine_dependencies file - asset_processor.add_relative_source_asset(os.path.join("Engine", "Schema", "enginedependency.xmlschema")) + asset_processor.add_relative_source_asset(os.path.join("Assets", "Engine", "Schema", "enginedependency.xmlschema")) asset_processor.batch_process() _, output = asset_processor.batch_process(capture_output=True, diff --git a/AutomatedTesting/Gem/PythonTests/assetpipeline/asset_processor_tests/asset_processor_gui_tests_2.py b/AutomatedTesting/Gem/PythonTests/assetpipeline/asset_processor_tests/asset_processor_gui_tests_2.py index 7c7b6b2452..b25ee081a1 100755 --- a/AutomatedTesting/Gem/PythonTests/assetpipeline/asset_processor_tests/asset_processor_gui_tests_2.py +++ b/AutomatedTesting/Gem/PythonTests/assetpipeline/asset_processor_tests/asset_processor_gui_tests_2.py @@ -205,10 +205,13 @@ class TestsAssetProcessorGUI_AllPlatforms(object): env = ap_setup_fixture # Copy test assets to new folder in dev folder # This new folder will be created outside the default project folder and will not be added as a scan folder - # by default, instead we'll modify the temporary AssetProcessorPlatformConfig.ini to add it test_assets_folder, cache_folder = asset_processor.prepare_test_environment(env["tests_dir"], "C4874115", relative_asset_root='', add_scan_folder=False) + # The AssetProcessor internal _cache_folder path is updated to point at the cache root in order + # to allow the comparison between the source asset path of "/C4874115" to match the cache assets + # in + asset_processor._cache_folder = os.path.dirname(cache_folder) assert os.path.exists(test_assets_folder), f"Test assets folder was not found {test_assets_folder}" # Run AP Batch @@ -226,7 +229,6 @@ class TestsAssetProcessorGUI_AllPlatforms(object): test_scan_folder_root_key = f"{ASSET_PROCESSOR_SETTINGS_ROOT_KEY}/ScanFolder C4874115" test_scan_folder_params.append(f'--regset="{test_scan_folder_root_key}/watch=@ROOT@/C4874115"') - test_scan_folder_params.append(f'--regset="{test_scan_folder_root_key}/output=C4874115"') test_scan_folder_params.append(f'--regset="{test_scan_folder_root_key}/recursive=1"') test_scan_folder_params.append(f'--regset="{test_scan_folder_root_key}/order=5000"') diff --git a/AutomatedTesting/Gem/PythonTests/assetpipeline/asset_processor_tests/assets/C4874115/C4874115_test_asset.txt b/AutomatedTesting/Gem/PythonTests/assetpipeline/asset_processor_tests/assets/C4874115/C4874115/C4874115_test_asset.txt similarity index 100% rename from AutomatedTesting/Gem/PythonTests/assetpipeline/asset_processor_tests/assets/C4874115/C4874115_test_asset.txt rename to AutomatedTesting/Gem/PythonTests/assetpipeline/asset_processor_tests/assets/C4874115/C4874115/C4874115_test_asset.txt diff --git a/Code/Framework/AzCore/AzCore/Script/ScriptSystemComponent.cpp b/Code/Framework/AzCore/AzCore/Script/ScriptSystemComponent.cpp index 0a727c7c53..f12da5c60e 100644 --- a/Code/Framework/AzCore/AzCore/Script/ScriptSystemComponent.cpp +++ b/Code/Framework/AzCore/AzCore/Script/ScriptSystemComponent.cpp @@ -853,7 +853,7 @@ const char* ScriptSystemComponent::GetGroup() const const char* AZ::ScriptSystemComponent::GetBrowserIcon() const { - return "Editor/Icons/Components/LuaScript.svg"; + return "Icons/Components/LuaScript.svg"; } AZ::Uuid AZ::ScriptSystemComponent::GetComponentTypeId() const diff --git a/Code/Framework/AzCore/AzCore/Settings/SettingsRegistryMergeUtils.cpp b/Code/Framework/AzCore/AzCore/Settings/SettingsRegistryMergeUtils.cpp index 27f6f222dd..34f1bdef89 100644 --- a/Code/Framework/AzCore/AzCore/Settings/SettingsRegistryMergeUtils.cpp +++ b/Code/Framework/AzCore/AzCore/Settings/SettingsRegistryMergeUtils.cpp @@ -654,7 +654,6 @@ namespace AZ::SettingsRegistryMergeUtils if (registry.Get(engineRootPath, FilePathKey_EngineRootFolder)) { AZ::IO::FixedMaxPath mergePath{ AZStd::move(engineRootPath) }; - mergePath /= "Engine"; mergePath /= SettingsRegistryInterface::RegistryFolder; registry.MergeSettingsFolder(mergePath.Native(), specializations, platform, "", scratchBuffer); } diff --git a/Code/Framework/AzFramework/AzFramework/Asset/AssetCatalog.cpp b/Code/Framework/AzFramework/AzFramework/Asset/AssetCatalog.cpp index e01b105d13..20fe13114e 100644 --- a/Code/Framework/AzFramework/AzFramework/Asset/AssetCatalog.cpp +++ b/Code/Framework/AzFramework/AzFramework/Asset/AssetCatalog.cpp @@ -809,7 +809,7 @@ namespace AzFramework #if defined(AZ_ENABLE_TRACING) if (message.m_assetType == AZ::Data::s_invalidAssetType) { - AZ_TracePrintf("AssetCatalog", "Registering asset \"%s\" via AssetSystem message, but type is not set.", relativePath.c_str()); + AZ_TracePrintf("AssetCatalog", "Registering asset \"%s\" via AssetSystem message, but type is not set.\n", relativePath.c_str()); } #endif diff --git a/Code/Framework/AzFramework/AzFramework/FileTag/FileTag.cpp b/Code/Framework/AzFramework/AzFramework/FileTag/FileTag.cpp index 6108d401aa..a91b5482b4 100644 --- a/Code/Framework/AzFramework/AzFramework/FileTag/FileTag.cpp +++ b/Code/Framework/AzFramework/AzFramework/FileTag/FileTag.cpp @@ -12,11 +12,13 @@ #include #include +#include #include #include #include #include #include +#include #include #include #include @@ -31,7 +33,7 @@ namespace AzFramework const char* ExcludeFileName = "exclude"; const char* IncludeFileName = "include"; const char* FileTags[] = { "ignore", "error", "productdependency", "editoronly", "shader" }; - const char EngineName[] = "Engine"; + constexpr AZ::IO::PathView EngineAssetSourceRelPath = "Assets/Engine"; void LowerCaseFileTags(AZStd::vector& fileTags) { @@ -107,7 +109,7 @@ namespace AzFramework } AZ::Outcome FileTagManager::AddTagsInternal(AZStd::string filePath, FileTagType fileTagType, AZStd::vector fileTags, AzFramework::FileTag::FilePatternType filePatternType) - { + { if (!NormalizeFileAndLowerCaseTags(filePath, filePatternType, fileTags)) { return AZ::Failure(AZStd::string::format("Unable to normalize file (%s). Unable to remove the file.\n", filePath.c_str())); @@ -243,11 +245,10 @@ namespace AzFramework AZStd::string FileTagQueryManager::GetDefaultFileTagFilePath(FileTagType fileTagType) { - AZStd::string destinationFilePath; - const char* engineRoot = nullptr; - AzFramework::ApplicationRequests::Bus::BroadcastResult(engineRoot, &AzFramework::ApplicationRequests::GetEngineRoot); - AzFramework::StringFunc::Path::ConstructFull(engineRoot, EngineName, fileTagType == FileTagType::Exclude ? ExcludeFileName : IncludeFileName, AzFramework::FileTag::FileTagAsset::Extension(), destinationFilePath, true); - return destinationFilePath; + auto destinationFilePath = AZ::IO::FixedMaxPath(AZ::Utils::GetEnginePath()) / EngineAssetSourceRelPath; + destinationFilePath /= fileTagType == FileTagType::Exclude ? ExcludeFileName : IncludeFileName; + destinationFilePath.ReplaceExtension(AzFramework::FileTag::FileTagAsset::Extension()); + return destinationFilePath.String(); } bool FileTagQueryManager::Load(const AZStd::string& filePath) diff --git a/Code/Framework/AzFramework/AzFramework/Network/NetBindingComponent.cpp b/Code/Framework/AzFramework/AzFramework/Network/NetBindingComponent.cpp index c28e020c52..90613daabe 100644 --- a/Code/Framework/AzFramework/AzFramework/Network/NetBindingComponent.cpp +++ b/Code/Framework/AzFramework/AzFramework/Network/NetBindingComponent.cpp @@ -44,8 +44,8 @@ namespace AzFramework "Network Binding", "The Network Binding component marks an entity as able to be replicated across the network") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Networking") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/NetBinding.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/NetBinding.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/NetBinding.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/NetBinding.png") ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-network-binding.html") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)); } diff --git a/Code/Framework/AzFramework/AzFramework/Spawnable/SpawnableAssetHandler.cpp b/Code/Framework/AzFramework/AzFramework/Spawnable/SpawnableAssetHandler.cpp index 735757db7d..b3ba1568bd 100644 --- a/Code/Framework/AzFramework/AzFramework/Spawnable/SpawnableAssetHandler.cpp +++ b/Code/Framework/AzFramework/AzFramework/Spawnable/SpawnableAssetHandler.cpp @@ -81,7 +81,7 @@ namespace AzFramework const char* SpawnableAssetHandler::GetBrowserIcon() const { - return "Editor/Icons/Components/Viewport/EntityInSlice.png"; + return "Icons/Components/Viewport/EntityInSlice.png"; } void SpawnableAssetHandler::GetAssetTypeExtensions(AZStd::vector& extensions) diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/StyleManager.cpp b/Code/Framework/AzQtComponents/AzQtComponents/Components/StyleManager.cpp index 713c486ac4..8bba64c2d9 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/StyleManager.cpp +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/StyleManager.cpp @@ -250,9 +250,9 @@ namespace AzQtComponents // STYLESHEETIMAGES:something.txt // UI:blah/blah.png // EDITOR:blah/something.txt - QDir::addSearchPath("STYLESHEETIMAGES", appPath.filePath("Editor/Styles/StyleSheetImages")); - QDir::addSearchPath("UI", appPath.filePath("Editor/UI")); - QDir::addSearchPath("EDITOR", appPath.filePath("Editor")); + QDir::addSearchPath("STYLESHEETIMAGES", appPath.filePath("Assets/Editor/Styles/StyleSheetImages")); + QDir::addSearchPath("UI", appPath.filePath("Assets/Editor/UI")); + QDir::addSearchPath("EDITOR", appPath.filePath("Assets/Editor")); } } diff --git a/Code/Framework/AzQtComponents/AzQtComponents/Components/resources.qrc b/Code/Framework/AzQtComponents/AzQtComponents/Components/resources.qrc index f9e601fb6d..1e8ddb43e0 100644 --- a/Code/Framework/AzQtComponents/AzQtComponents/Components/resources.qrc +++ b/Code/Framework/AzQtComponents/AzQtComponents/Components/resources.qrc @@ -388,8 +388,8 @@ img/line.png - ../../../../Sandbox/Editor/Style/EditorStylesheetVariables_Dark.json - ../../../../Sandbox/Editor/Style/NewEditorStylesheet.qss + ../../../../Sandbox/Editor/Style/EditorStylesheetVariables_Dark.json + ../../../../Sandbox/Editor/Style/NewEditorStylesheet.qss img/UI20/Cards/point_hand.png diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Asset/AssetUtils.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/Asset/AssetUtils.cpp index f02e87bb86..5cdd028bbb 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Asset/AssetUtils.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Asset/AssetUtils.cpp @@ -216,14 +216,9 @@ namespace AzToolsFramework::AssetUtils constexpr const char* AssetProcessorGamePlatformConfigFileName = "AssetProcessorGamePlatformConfig.ini"; constexpr const char* AssetProcessorGamePlatformConfigSetreg = "AssetProcessorGamePlatformConfig.setreg"; AZStd::vector configFiles; - AZ::IO::Path configRoot(engineRoot); - AZ::IO::Path rootConfigFile = configRoot / AssetProcessorPlatformConfigFileName; - configFiles.push_back(rootConfigFile); - - // Add a file entry for the Engine Root AssetProcessor setreg file - rootConfigFile = configRoot / AssetProcessorPlatformConfigSetreg; - configFiles.push_back(rootConfigFile); + // Add the AssetProcessorPlatformConfig setreg file at the engine root + configFiles.push_back(AZ::IO::Path(engineRoot) / AssetProcessorPlatformConfigSetreg); if (addPlatformConfigs) { diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/AssetBrowserComponent.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/AssetBrowserComponent.cpp index 1a55e162b9..8d3513cbcb 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/AssetBrowserComponent.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/AssetBrowserComponent.cpp @@ -200,67 +200,67 @@ namespace AzToolsFramework { if (AzFramework::StringFunc::Equal(extension.c_str(), ".abc")) { - return SourceFileDetails("Editor/Icons/AssetBrowser/ABC_16.svg"); + return SourceFileDetails("Icons/AssetBrowser/ABC_16.svg"); } if (AzFramework::StringFunc::Equal(extension.c_str(), ".bnk")) { - return SourceFileDetails("Editor/Icons/AssetBrowser/Audio_16.svg"); + return SourceFileDetails("Icons/AssetBrowser/Audio_16.svg"); } if (AzFramework::StringFunc::Equal(extension.c_str(), ".cgf")) { - return SourceFileDetails("Editor/Icons/AssetBrowser/LegacyMesh_16.svg"); + return SourceFileDetails("Icons/AssetBrowser/LegacyMesh_16.svg"); } if (AzFramework::StringFunc::Equal(extension.c_str(), ".font")) { - return SourceFileDetails("Editor/Icons/AssetBrowser/Font_16.svg"); + return SourceFileDetails("Icons/AssetBrowser/Font_16.svg"); } if (AzFramework::StringFunc::Equal(extension.c_str(), ".fontfamily")) { - return SourceFileDetails("Editor/Icons/AssetBrowser/Font_16.svg"); + return SourceFileDetails("Icons/AssetBrowser/Font_16.svg"); } if (AzFramework::StringFunc::Equal(extension.c_str(), ".i_caf")) { - return SourceFileDetails("Editor/Icons/AssetBrowser/LegacyAnimation_16.svg"); + return SourceFileDetails("Icons/AssetBrowser/LegacyAnimation_16.svg"); } if (AzFramework::StringFunc::Equal(extension.c_str(), ".inputbindings")) { - return SourceFileDetails("Editor/Icons/AssetBrowser/InputBindings_16.svg"); + return SourceFileDetails("Icons/AssetBrowser/InputBindings_16.svg"); } if (AzFramework::StringFunc::Equal(extension.c_str(), ".lua")) { - return SourceFileDetails("Editor/Icons/AssetBrowser/Lua_16.svg"); + return SourceFileDetails("Icons/AssetBrowser/Lua_16.svg"); } if (AzFramework::StringFunc::Equal(extension.c_str(), ".mtl")) { - return SourceFileDetails("Editor/Icons/AssetBrowser/Material_16.svg"); + return SourceFileDetails("Icons/AssetBrowser/Material_16.svg"); } if (AzFramework::StringFunc::Equal(extension.c_str(), AzToolsFramework::SliceUtilities::GetSliceFileExtension().c_str())) { - return SourceFileDetails("Editor/Icons/AssetBrowser/Slice_16.svg"); + return SourceFileDetails("Icons/AssetBrowser/Slice_16.svg"); } if (AzFramework::StringFunc::Equal(extension.c_str(), ".skin")) { - return SourceFileDetails("Editor/Icons/AssetBrowser/LegacySkin_16.svg"); + return SourceFileDetails("Icons/AssetBrowser/LegacySkin_16.svg"); } if (AzFramework::StringFunc::Equal(extension.c_str(), ".ttf")) { - return SourceFileDetails("Editor/Icons/AssetBrowser/Font_16.svg"); + return SourceFileDetails("Icons/AssetBrowser/Font_16.svg"); } if (AzFramework::StringFunc::Equal(extension.c_str(), ".xml")) { - return SourceFileDetails("Editor/Icons/AssetBrowser/XML_16.svg"); + return SourceFileDetails("Icons/AssetBrowser/XML_16.svg"); } @@ -272,7 +272,7 @@ namespace AzToolsFramework const char* sourceFormatExtension = sourceFormats[sourceImageFormatIndex]; if (AzFramework::StringFunc::Equal(extension.c_str(), sourceFormatExtension)) { - return SourceFileDetails("Editor/Icons/AssetBrowser/Image_16.svg"); + return SourceFileDetails("Icons/AssetBrowser/Image_16.svg"); } } } diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Entries/RootAssetBrowserEntry.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Entries/RootAssetBrowserEntry.cpp index ada961711a..bd5ba48d8d 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Entries/RootAssetBrowserEntry.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Entries/RootAssetBrowserEntry.cpp @@ -52,17 +52,16 @@ namespace AzToolsFramework return AssetEntryType::Root; } - void RootAssetBrowserEntry::Update(const char* devPath) + void RootAssetBrowserEntry::Update(const char* enginePath) { RemoveChildren(); EntryCache::GetInstance()->Clear(); - m_scanFolderOutputPrefixMap.clear(); - m_devPath = devPath; + m_enginePath = enginePath; // there is no "Gems" scan folder registered in db, create one manually auto gemFolder = aznew FolderAssetBrowserEntry(); - gemFolder->m_name = m_devPath + AZ_CORRECT_DATABASE_SEPARATOR + GEMS_FOLDER_NAME; + gemFolder->m_name = m_enginePath + AZ_CORRECT_DATABASE_SEPARATOR + GEMS_FOLDER_NAME; gemFolder->m_displayName = GEMS_FOLDER_NAME; gemFolder->m_isGemsFolder = true; AddChild(gemFolder); @@ -90,11 +89,6 @@ namespace AzToolsFramework scanFolder->m_displayName = QString::fromUtf8(scanFolderDatabaseEntry.m_displayName.c_str()); EntryCache::GetInstance()->m_scanFolderIdMap[scanFolderDatabaseEntry.m_scanFolderID] = scanFolder; } - - if (!scanFolderDatabaseEntry.m_outputPrefix.empty()) - { - m_scanFolderOutputPrefixMap[scanFolderDatabaseEntry.m_scanFolderID] = scanFolderDatabaseEntry.m_outputPrefix; - } } void RootAssetBrowserEntry::AddFile(const AssetDatabase::FileDatabaseEntry& fileDatabaseEntry) @@ -132,7 +126,7 @@ namespace AzToolsFramework return; } - const char* filePath = GetScanFolderOutputAdjustedPath(fileDatabaseEntry, scanFolder); + const char* filePath = fileDatabaseEntry.m_fileName.c_str(); AssetBrowserEntry* file; // file can be either folder or actual file @@ -441,33 +435,5 @@ namespace AzToolsFramework { return MAKE_TKEY(ThumbnailKey); } - - const char* RootAssetBrowserEntry::GetScanFolderOutputAdjustedPath(const AssetDatabase::FileDatabaseEntry& fileDatabaseEntry, const AssetBrowserEntry* scanFolder) - { - Q_UNUSED(scanFolder); - - const char* filePath = fileDatabaseEntry.m_fileName.c_str(); - - // adjust for output prefixes on scan folders (i.e. "editor") - auto itScanFolderOutputPrefix = m_scanFolderOutputPrefixMap.find(fileDatabaseEntry.m_scanFolderPK); - if (itScanFolderOutputPrefix != m_scanFolderOutputPrefixMap.end()) - { - const AZStd::string& outputPrefix = itScanFolderOutputPrefix->second; - - // Check if the input path starts with the output prefix. - // If it doesn't, something probably went seriously wrong, - // or someone is calling this function with an absolute path. - bool pathStartsWithPrefix = ((strncmp(filePath, outputPrefix.c_str(), outputPrefix.length()) == 0) && (fileDatabaseEntry.m_fileName.length() > (outputPrefix.length() + 1))); - AZ_Warning("Asset Browser", pathStartsWithPrefix, "Entry %s reported as under a ScanFolder (%s) with an 'output=%s', but the new entry does not begin with the output prefix! RootAssetBrowserEntry::GetScanFolderOutputAdjustedPath expects relative paths, not absolute; treating the input path as if it does not contain the ScanFolder output prefix.", filePath, scanFolder->m_name.c_str(), outputPrefix.c_str()); - - if (pathStartsWithPrefix) - { - // move the beginning ahead by the output prefix plus the separator - filePath += (outputPrefix.length() + 1); - } - } - - return filePath; - } } // namespace AssetBrowser } // namespace AzToolsFramework diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Entries/RootAssetBrowserEntry.h b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Entries/RootAssetBrowserEntry.h index 44fe454e2d..14c66cb7dd 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Entries/RootAssetBrowserEntry.h +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Entries/RootAssetBrowserEntry.h @@ -60,8 +60,8 @@ namespace AzToolsFramework AssetEntryType GetEntryType() const override; - //! Update root node to new dev location - void Update(const char* devPath); + //! Update root node to new engine location + void Update(const char* enginePath); void AddScanFolder(const AssetDatabase::ScanFolderDatabaseEntry& scanFolderDatabaseEntry); void AddFile(const AssetDatabase::FileDatabaseEntry& fileDatabaseEntry); @@ -82,15 +82,12 @@ namespace AzToolsFramework private: AZ_DISABLE_COPY_MOVE(RootAssetBrowserEntry); - AZStd::string m_devPath; - AZStd::unordered_map m_scanFolderOutputPrefixMap; + AZStd::string m_enginePath; //! Create folder entry child FolderAssetBrowserEntry* CreateFolder(const char* folderName, AssetBrowserEntry* parent); //! Recursively create folder structure leading to relative path from parent AssetBrowserEntry* CreateFolders(const char* relativePath, AssetBrowserEntry* parent); - //! Get the path for the fileDatabaseEntry, offset by the output prefix for the scan folder ancestor, if it's been specified and if it's appropriate - const char* GetScanFolderOutputAdjustedPath(const AssetDatabase::FileDatabaseEntry& fileDatabaseEntry, const AssetBrowserEntry* scanFolder); bool m_isInitialUpdate = false; }; diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/FolderThumbnail.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/FolderThumbnail.cpp index d31c0cb84e..78681f3b4b 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/FolderThumbnail.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/FolderThumbnail.cpp @@ -50,8 +50,8 @@ namespace AzToolsFramework ////////////////////////////////////////////////////////////////////////// // FolderThumbnail ////////////////////////////////////////////////////////////////////////// - static constexpr const char* FolderIconPath = "Editor/Icons/AssetBrowser/Folder_16.svg"; - static constexpr const char* GemIconPath = "Editor/Icons/AssetBrowser/GemFolder_16.svg"; + static constexpr const char* FolderIconPath = "Icons/AssetBrowser/Folder_16.svg"; + static constexpr const char* GemIconPath = "Icons/AssetBrowser/GemFolder_16.svg"; FolderThumbnail::FolderThumbnail(SharedThumbnailKey key) : Thumbnail(key) diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/ProductThumbnail.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/ProductThumbnail.cpp index 8bf9382450..236c66ef2e 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/ProductThumbnail.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/ProductThumbnail.cpp @@ -55,7 +55,7 @@ namespace AzToolsFramework ////////////////////////////////////////////////////////////////////////// // ProductThumbnail ////////////////////////////////////////////////////////////////////////// - static const char* DEFAULT_PRODUCT_ICON_PATH = "Editor/Icons/AssetBrowser/DefaultProduct_16.svg"; + static const char* DEFAULT_PRODUCT_ICON_PATH = "Icons/AssetBrowser/DefaultProduct_16.svg"; ProductThumbnail::ProductThumbnail(Thumbnailer::SharedThumbnailKey key) : Thumbnail(key) diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/SourceThumbnail.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/SourceThumbnail.cpp index db399bb482..57a6734d77 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/SourceThumbnail.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetBrowser/Thumbnails/SourceThumbnail.cpp @@ -55,7 +55,7 @@ namespace AzToolsFramework ////////////////////////////////////////////////////////////////////////// // SourceThumbnail ////////////////////////////////////////////////////////////////////////// - static constexpr const char* DefaultFileIconPath = "Editor/Icons/AssetBrowser/Default_16.svg"; + static constexpr const char* DefaultFileIconPath = "Icons/AssetBrowser/Default_16.svg"; QMutex SourceThumbnail::m_mutex; SourceThumbnail::SourceThumbnail(SharedThumbnailKey key) diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetDatabase/AssetDatabaseConnection.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetDatabase/AssetDatabaseConnection.cpp index 5ac6d6a817..31fcb60d17 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetDatabase/AssetDatabaseConnection.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetDatabase/AssetDatabaseConnection.cpp @@ -943,10 +943,8 @@ namespace AzToolsFramework const char* scanFolder, const char* displayName, const char* portableKey, - const char* outputPrefix, int isRoot) : m_scanFolderID(scanFolderID) - , m_outputPrefix(outputPrefix) , m_isRoot(isRoot) { if (scanFolder) @@ -967,10 +965,8 @@ namespace AzToolsFramework const char* scanFolder, const char* displayName, const char* portableKey, - const char* outputPrefix, int isRoot) - : m_outputPrefix(outputPrefix) - , m_isRoot(isRoot) + : m_isRoot(isRoot) { if (scanFolder) { @@ -993,7 +989,6 @@ namespace AzToolsFramework , m_scanFolder(other.m_scanFolder) , m_displayName(other.m_displayName) , m_portableKey(other.m_portableKey) - , m_outputPrefix(other.m_outputPrefix) , m_isRoot(other.m_isRoot) { } @@ -1011,7 +1006,6 @@ namespace AzToolsFramework m_scanFolderID = other.m_scanFolderID; m_displayName = AZStd::move(other.m_displayName); m_portableKey = AZStd::move(other.m_portableKey); - m_outputPrefix = AZStd::move(other.m_outputPrefix); m_isRoot = other.m_isRoot; } return *this; @@ -1023,7 +1017,6 @@ namespace AzToolsFramework m_scanFolderID = other.m_scanFolderID; m_displayName = other.m_displayName; m_portableKey = other.m_portableKey; - m_outputPrefix = other.m_outputPrefix; m_isRoot = other.m_isRoot; return *this; } @@ -1050,7 +1043,6 @@ namespace AzToolsFramework MakeColumn("ScanFolder", m_scanFolder), MakeColumn("DisplayName", m_displayName), MakeColumn("PortableKey", m_portableKey), - MakeColumn("OutputPrefix", m_outputPrefix), MakeColumn("IsRoot", m_isRoot) ); } diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetDatabase/AssetDatabaseConnection.h b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetDatabase/AssetDatabaseConnection.h index 423cbe595f..6fc7146107 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/AssetDatabase/AssetDatabaseConnection.h +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/AssetDatabase/AssetDatabaseConnection.h @@ -68,6 +68,7 @@ namespace AzToolsFramework AddedLastScanTimeField = 28, AddedScanTimeSecondsSinceEpochField = 29, ChangedSortFunctionFromQSortToStdStableSort = 30, + RemoveOutputPrefixFromScanFolders, //Add all new versions before this DatabaseVersionCount, LatestVersion = DatabaseVersionCount - 1 @@ -99,12 +100,10 @@ namespace AzToolsFramework const char* scanFolder, const char* displayName, const char* portableKey, - const char* outputPrefix, int isRoot = 0); ScanFolderDatabaseEntry(const char* scanFolder, const char* displayName, const char* portableKey, - const char* outputPrefix, int isRoot = 0); ScanFolderDatabaseEntry(const ScanFolderDatabaseEntry& other); ScanFolderDatabaseEntry(ScanFolderDatabaseEntry&& other); @@ -120,7 +119,6 @@ namespace AzToolsFramework AZStd::string m_scanFolder; // the actual local computer path to that scan folder. AZStd::string m_displayName; // a display name, blank means it should not show up in UIs AZStd::string m_portableKey; // a key that uniquely identifies a scan folder so that we can recognize the same one in other databases/computer - AZStd::string m_outputPrefix; int m_isRoot = 0; }; diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/LoadingThumbnail.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/LoadingThumbnail.cpp index 2db93a92f3..fb9d156b20 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/LoadingThumbnail.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/LoadingThumbnail.cpp @@ -23,7 +23,7 @@ namespace AzToolsFramework ////////////////////////////////////////////////////////////////////////// // LoadingThumbnail ////////////////////////////////////////////////////////////////////////// - static const char* LoadingIconPath = "Editor/Icons/AssetBrowser/in_progress.gif"; + static const char* LoadingIconPath = "Icons/AssetBrowser/in_progress.gif"; LoadingThumbnail::LoadingThumbnail() : Thumbnail(MAKE_TKEY(ThumbnailKey)) diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/MissingThumbnail.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/MissingThumbnail.cpp index 2bdec58392..270a5b113f 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/MissingThumbnail.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/MissingThumbnail.cpp @@ -16,7 +16,7 @@ namespace AzToolsFramework { namespace Thumbnailer { - static const char* MISSING_ICON_PATH = "Editor/Icons/AssetBrowser/Default_16.svg"; + static const char* MISSING_ICON_PATH = "Icons/AssetBrowser/Default_16.svg"; MissingThumbnail::MissingThumbnail() : Thumbnail(MAKE_TKEY(ThumbnailKey)) diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/SourceControlThumbnail.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/SourceControlThumbnail.cpp index ce6e04e105..864484bf61 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/SourceControlThumbnail.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Thumbnails/SourceControlThumbnail.cpp @@ -64,8 +64,8 @@ namespace AzToolsFramework ////////////////////////////////////////////////////////////////////////// // SourceControlThumbnail ////////////////////////////////////////////////////////////////////////// - static const char* WRITABLE_ICON_PATH = "Editor/Icons/AssetBrowser/Writable_16.svg"; - static const char* NONWRITABLE_ICON_PATH = "Editor/Icons/AssetBrowser/NonWritable_16.svg"; + static const char* WRITABLE_ICON_PATH = "Icons/AssetBrowser/Writable_16.svg"; + static const char* NONWRITABLE_ICON_PATH = "Icons/AssetBrowser/NonWritable_16.svg"; bool SourceControlThumbnail::m_readyForUpdate = true; diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/ToolsComponents/EditorLayerComponent.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/ToolsComponents/EditorLayerComponent.cpp index 6365334502..60f31fa004 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/ToolsComponents/EditorLayerComponent.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/ToolsComponents/EditorLayerComponent.cpp @@ -101,8 +101,8 @@ namespace AzToolsFramework { editContext->Class("Layer", "The layer component allows entities to be saved to different files on disk.") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Layers.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Layers.svg") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Layers.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Layers.svg") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Layer", 0xe4db211a)) ->Attribute(AZ::Edit::Attributes::AddableByUser, false) ->Attribute(AZ::Edit::Attributes::RemoveableByUser, false) diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/ToolsComponents/ScriptEditorComponent.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/ToolsComponents/ScriptEditorComponent.cpp index 0e96f77e76..6970d747c4 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/ToolsComponents/ScriptEditorComponent.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/ToolsComponents/ScriptEditorComponent.cpp @@ -1025,9 +1025,9 @@ namespace AzToolsFramework ->Attribute(AZ::Edit::Attributes::NameLabelOverride, &ScriptEditorComponent::m_customName) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::Category, "Scripting") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/LuaScript.svg") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/LuaScript.svg") ->Attribute(AZ::Edit::Attributes::PrimaryAssetType, AZ::AzTypeInfo::Uuid()) - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Script.png") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Script.png") ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-lua-script.html") ->DataElement("AssetRef", &ScriptEditorComponent::m_scriptAsset, "Script", "Which script to use") ->Attribute(AZ::Edit::Attributes::ChangeNotify, &ScriptEditorComponent::ScriptHasChanged) diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/ToolsComponents/TransformComponent.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/ToolsComponents/TransformComponent.cpp index 7ce11e5957..dcced5b705 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/ToolsComponents/TransformComponent.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/ToolsComponents/TransformComponent.cpp @@ -1224,8 +1224,8 @@ namespace AzToolsFramework { ptrEdit->Class("Transform", "Controls the placement of the entity in the world in 3d")-> ClassElement(AZ::Edit::ClassElements::EditorData, "")-> - Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Transform.svg")-> - Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Transform.png")-> + Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Transform.svg")-> + Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Transform.png")-> Attribute(AZ::Edit::Attributes::AutoExpand, true)-> DataElement(AZ::Edit::UIHandlers::Default, &TransformComponent::m_parentEntityId, "Parent entity", "")-> Attribute(AZ::Edit::Attributes::ChangeValidate, &TransformComponent::ValidatePotentialParent)-> diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/UI/PropertyEditor/PropertyAssetCtrl.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/UI/PropertyEditor/PropertyAssetCtrl.cpp index 1fd2680f85..d69eb5559f 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/UI/PropertyEditor/PropertyAssetCtrl.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/UI/PropertyEditor/PropertyAssetCtrl.cpp @@ -544,7 +544,7 @@ namespace AzToolsFramework m_errorButton->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); m_errorButton->setFixedSize(QSize(16, 16)); m_errorButton->setMouseTracking(true); - m_errorButton->setIcon(QIcon("Editor/Icons/PropertyEditor/error_icon.png")); + m_errorButton->setIcon(QIcon("Icons/PropertyEditor/error_icon.png")); m_errorButton->setToolTip("Show Errors"); // Insert the error button after the asset label diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/UI/SearchWidget/SearchCriteriaWidget.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/UI/SearchWidget/SearchCriteriaWidget.cpp index 7d9cea4e68..3e6217281b 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/UI/SearchWidget/SearchCriteriaWidget.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/UI/SearchWidget/SearchCriteriaWidget.cpp @@ -70,7 +70,7 @@ namespace AzToolsFramework m_tagLabel->setMinimumSize(24, 22); m_tagLabel->setAttribute(Qt::WA_TransparentForMouseEvents, true); - QIcon closeIcon("Editor/Icons/animation/close.png"); + QIcon closeIcon("Icons/animation/close.png"); QPushButton* button = new QPushButton(this); button->setStyleSheet(button->styleSheet() + "border: 0px;"); @@ -233,14 +233,14 @@ namespace AzToolsFramework QPushButton* loadButton = new QPushButton(this); loadButton->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); loadButton->setFixedSize(QSize(24, 24)); - loadButton->setIcon(QIcon("Editor/UI/Icons/toolbar/libraryLoad.png")); + loadButton->setIcon(QIcon("UI/Icons/toolbar/libraryLoad.png")); loadButton->setToolTip(tr("Load a saved filter")); loadButton->setProperty("iconButton", "true"); m_saveButton = new QPushButton(this); m_saveButton->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); m_saveButton->setFixedSize(QSize(24, 24)); - m_saveButton->setIcon(QIcon("Editor/UI/Icons/toolbar/librarySave.png")); + m_saveButton->setIcon(QIcon("UI/Icons/toolbar/librarySave.png")); m_saveButton->setToolTip(tr("Save the current filter")); m_saveButton->setEnabled(false); m_saveButton->setProperty("iconButton", "true"); @@ -248,7 +248,7 @@ namespace AzToolsFramework m_toggleAllFiltersButton = new QPushButton(this); m_toggleAllFiltersButton->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); m_toggleAllFiltersButton->setFixedSize(QSize(24, 24)); - m_toggleAllFiltersButton->setIcon(QIcon("Editor/Icons/animation/filter_16.png")); + m_toggleAllFiltersButton->setIcon(QIcon("Icons/animation/filter_16.png")); m_toggleAllFiltersButton->setVisible(false); m_toggleAllFiltersButton->setToolTip(tr("Toggle all filters on/off")); m_toggleAllFiltersButton->setProperty("iconButton", "true"); @@ -267,7 +267,7 @@ namespace AzToolsFramework m_clearAllButton = new QPushButton(this); m_clearAllButton->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); m_clearAllButton->setFixedSize(QSize(24, 24)); - m_clearAllButton->setIcon(QIcon("Editor/Icons/animation/close.png")); + m_clearAllButton->setIcon(QIcon("Icons/animation/close.png")); m_clearAllButton->setVisible(false); m_clearAllButton->setToolTip(tr("Clear all filters")); m_clearAllButton->setProperty("iconButton", "true"); diff --git a/Code/Framework/AzToolsFramework/Tests/Entity/EditorEntitySearchComponentTests.cpp b/Code/Framework/AzToolsFramework/Tests/Entity/EditorEntitySearchComponentTests.cpp index 15a76c1dbb..1f17bd5e95 100644 --- a/Code/Framework/AzToolsFramework/Tests/Entity/EditorEntitySearchComponentTests.cpp +++ b/Code/Framework/AzToolsFramework/Tests/Entity/EditorEntitySearchComponentTests.cpp @@ -49,8 +49,8 @@ namespace AzToolsFramework ->Attribute(AZ::Edit::Attributes::AddableByUser, true) ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game")) ->Attribute(AZ::Edit::Attributes::Category, "Entity Search Test Components") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Tag.png") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Tag.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Tag.png") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Tag.png") ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://www.amazongames.com/") ->DataElement(AZ::Edit::UIHandlers::Default, &EntitySearch_TestComponent1::m_boolValue, "Bool", "") @@ -108,8 +108,8 @@ namespace AzToolsFramework ->Attribute(AZ::Edit::Attributes::AddableByUser, true) ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game")) ->Attribute(AZ::Edit::Attributes::Category, "Entity Search Test Components") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Tag.png") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Tag.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Tag.png") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Tag.png") ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://www.amazongames.com/") ->DataElement(AZ::Edit::UIHandlers::Default, &EntitySearch_TestComponent2::m_floatValue, "Float", "") diff --git a/Code/Framework/AzToolsFramework/Tests/EntityInspectorTests.cpp b/Code/Framework/AzToolsFramework/Tests/EntityInspectorTests.cpp index 0c38960647..94df2770d1 100644 --- a/Code/Framework/AzToolsFramework/Tests/EntityInspectorTests.cpp +++ b/Code/Framework/AzToolsFramework/Tests/EntityInspectorTests.cpp @@ -125,8 +125,8 @@ namespace UnitTest ->Attribute(AZ::Edit::Attributes::AddableByUser, true) ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game")) ->Attribute(AZ::Edit::Attributes::Category, "Inspector Test Components") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Tag.png") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Tag.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Tag.png") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Tag.png") ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://www.amazongames.com/") ->DataElement(AZ::Edit::UIHandlers::Default, &Inspector_TestComponent2::m_data, "Data", "The component's Data"); @@ -194,8 +194,8 @@ namespace UnitTest ->Attribute(AZ::Edit::Attributes::AddableByUser, true) ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("System")) ->Attribute(AZ::Edit::Attributes::Category, "Inspector Test Components") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Tag.png") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Tag.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Tag.png") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Tag.png") ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://www.amazongames.com/") ->DataElement(AZ::Edit::UIHandlers::Default, &Inspector_TestComponent3::m_data, "Data", "The component's Data"); diff --git a/Code/LauncherUnified/Launcher.cpp b/Code/LauncherUnified/Launcher.cpp index 93b5079929..033169ac6d 100644 --- a/Code/LauncherUnified/Launcher.cpp +++ b/Code/LauncherUnified/Launcher.cpp @@ -449,18 +449,14 @@ namespace O3DELauncher // Non-host platforms cannot use the project path that is #defined within the launcher. // In this case the the result of AZ::Utils::GetDefaultAppRoot is used instead +#if !AZ_TRAIT_OS_IS_HOST_OS_PLATFORM AZStd::string_view projectPath; -#if AZ_TRAIT_OS_IS_HOST_OS_PLATFORM - // Insert the project_path option to the front of the command line arguments - projectPath = GetProjectPath(); -#else // Make sure the defaultAppRootPath variable is in scope long enough until the projectPath string_view is used below AZStd::optional defaultAppRootPath = AZ::Utils::GetDefaultAppRootPath(); if (defaultAppRootPath.has_value()) { projectPath = *defaultAppRootPath; } -#endif if (!projectPath.empty()) { const auto projectPathKey = FixedValueString(AZ::SettingsRegistryMergeUtils::BootstrapSettingsRootKey) @@ -471,15 +467,14 @@ namespace O3DELauncher // For non-host platforms set the engine root to be the project root // Since the directories available during execution are limited on those platforms -#if !AZ_TRAIT_OS_IS_HOST_OS_PLATFORM AZStd::string_view enginePath = projectPath; const auto enginePathKey = FixedValueString(AZ::SettingsRegistryMergeUtils::BootstrapSettingsRootKey) + "/engine_path"; enginePathOptionOverride = FixedValueString ::format(R"(--regset="%s=%.*s")", enginePathKey.c_str(), aznumeric_cast(enginePath.size()), enginePath.data()); argContainer.emplace_back(enginePathOptionOverride.data()); -#endif } +#endif AzGameFramework::GameApplication gameApplication(aznumeric_cast(argContainer.size()), argContainer.data()); // The settings registry has been created by the AZ::ComponentApplication constructor at this point diff --git a/Code/LauncherUnified/LauncherProject.cpp b/Code/LauncherUnified/LauncherProject.cpp index e7832cc99f..6fc1934d29 100644 --- a/Code/LauncherUnified/LauncherProject.cpp +++ b/Code/LauncherUnified/LauncherProject.cpp @@ -36,15 +36,4 @@ namespace O3DELauncher #endif return { LY_PROJECT_NAME }; } - - AZStd::string_view GetProjectPath() - { - // The Project CMake path optional and not required - // It is used as fall back project root path -#if defined LY_PROJECT_CMAKE_PATH - return { LY_PROJECT_CMAKE_PATH }; -#else - return {}; -#endif - } } diff --git a/Code/LauncherUnified/launcher_generator.cmake b/Code/LauncherUnified/launcher_generator.cmake index b73d2c1fff..ca17a58eee 100644 --- a/Code/LauncherUnified/launcher_generator.cmake +++ b/Code/LauncherUnified/launcher_generator.cmake @@ -130,9 +130,6 @@ foreach(project_name project_path IN ZIP_LISTS LY_PROJECTS_TARGET_NAME LY_PROJEC PRIVATE # Adds the name of the project/game LY_PROJECT_NAME="${project_name}" - # Adds the project path supplied to CMake during configuration - # This is used as a fallback to launch the AssetProcessor - LY_PROJECT_CMAKE_PATH="${project_path}" # Adds the ${project_name}_GameLauncher target as a define so for the Settings Registry to use # when loading .setreg file specializations # This is needed so that only gems for the project game launcher are loaded @@ -174,9 +171,6 @@ foreach(project_name project_path IN ZIP_LISTS LY_PROJECTS_TARGET_NAME LY_PROJEC PRIVATE # Adds the name of the project/game LY_PROJECT_NAME="${project_name}" - # Adds the project path supplied to CMake during configuration - # This is used as a fallback to launch the AssetProcessor - LY_PROJECT_CMAKE_PATH="${project_path}" # Adds the ${project_name}_ServerLauncher target as a define so for the Settings Registry to use # when loading .setreg file specializations # This is needed so that only gems for the project server launcher are loaded diff --git a/Code/Sandbox/Editor/Alembic/AlembicCompileDialog.cpp b/Code/Sandbox/Editor/Alembic/AlembicCompileDialog.cpp index 14f3301626..b0df05190b 100644 --- a/Code/Sandbox/Editor/Alembic/AlembicCompileDialog.cpp +++ b/Code/Sandbox/Editor/Alembic/AlembicCompileDialog.cpp @@ -19,6 +19,8 @@ #include // AzCore +#include + #include // Editor @@ -70,12 +72,13 @@ void CAlembicCompileDialog::OnInitDialog() SDirectoryEnumeratorHelper dirHelper; - dirHelper.ScanDirectoryRecursive(gEnv->pCryPak, "@engroot@/", "Editor/Presets/GeomCache", filePattern, presetFiles); + auto engineAssetSourceRoot = AZ::IO::FixedMaxPath(AZ::Utils::GetEnginePath()) / "Assets"; + dirHelper.ScanDirectoryRecursive(gEnv->pCryPak, engineAssetSourceRoot.c_str(), "Editor/Presets/GeomCache", filePattern, presetFiles); for (auto iter = presetFiles.begin(); iter != presetFiles.end(); ++iter) { const auto& file = *iter; - const AZStd::string filePath = "@engroot@/" + file; + const AZ::IO::FixedMaxPath filePath = engineAssetSourceRoot / file; m_presets.push_back(LoadConfig(Path::GetFileName(file.c_str()), XmlHelpers::LoadXmlFromFile(filePath.c_str()))); m_ui->m_presetComboBox->addItem(m_presets.back().m_name); } diff --git a/Code/Sandbox/Editor/CryEdit.cpp b/Code/Sandbox/Editor/CryEdit.cpp index b3eaaddc42..3f28717072 100644 --- a/Code/Sandbox/Editor/CryEdit.cpp +++ b/Code/Sandbox/Editor/CryEdit.cpp @@ -1154,9 +1154,9 @@ BOOL CCryEditApp::CheckIfAlreadyRunning() m_mutexApplication = new QSharedMemory(O3DEApplicationName); if (!m_mutexApplication->create(16)) { - // Don't prompt the user in non-interactive export mode. Instead, default to allowing multiple instances to - // run simultaneously, so that multiple level exports can be run in parallel on the same machine. - // NOTE: If you choose to do this, be sure to export *different* levels, since nothing prevents multiple runs + // Don't prompt the user in non-interactive export mode. Instead, default to allowing multiple instances to + // run simultaneously, so that multiple level exports can be run in parallel on the same machine. + // NOTE: If you choose to do this, be sure to export *different* levels, since nothing prevents multiple runs // from trying to write to the same level at the same time. // If we're running interactively, let's ask and make sure the user actually intended to do this. if (!m_bExportMode && QMessageBox::question(AzToolsFramework::GetActiveWindow(), QObject::tr("Too many apps"), QObject::tr("There is already an Open 3D Engine application running\nDo you want to start another one?")) != QMessageBox::Yes) @@ -1717,7 +1717,7 @@ BOOL CCryEditApp::InitInstance() AzQtComponents::StyleManager::addSearchPaths( QStringLiteral("style"), engineRoot.filePath(QStringLiteral("Code/Sandbox/Editor/Style")), - QStringLiteral(":/Editor/Style"), + QStringLiteral(":/Assets/Editor/Style"), engineRootPath); AzQtComponents::StyleManager::setStyleSheet(mainWindow, QStringLiteral("style:Editor.qss")); diff --git a/Code/Sandbox/Editor/CryEditDoc.cpp b/Code/Sandbox/Editor/CryEditDoc.cpp index 916317b6bb..8819c8b382 100644 --- a/Code/Sandbox/Editor/CryEditDoc.cpp +++ b/Code/Sandbox/Editor/CryEditDoc.cpp @@ -83,7 +83,7 @@ static const char* kHoldFolder = "$tmp_hold"; // conform to the ignored file typ static const char* kSaveBackupFolder = "_savebackup"; static const char* kResizeTempFolder = "$tmp_resize"; // conform to the ignored file types $tmp[0-9]*_ regex -static const char* kBackupOrTempFolders[] = +static const char* kBackupOrTempFolders[] = { kAutoBackupFolder, kHoldFolder, @@ -1164,7 +1164,7 @@ bool CCryEditDoc::OnSaveDocument(const QString& lpszPathName) { DoSaveDocument(lpszPathName, context); saveSuccess = AfterSaveDocument(lpszPathName, context); - } + } } return saveSuccess; @@ -1436,7 +1436,7 @@ bool CCryEditDoc::SaveLevel(const QString& filename) // Save AZ entities to the editor level. bool contentsAllSaved = false; // abort level save if anything within it fails - + auto tempFilenameStrData = tempSaveFile.toStdString(); auto filenameStrData = fullPathName.toStdString(); @@ -1458,7 +1458,7 @@ bool CCryEditDoc::SaveLevel(const QString& filename) } } - + AZStd::vector editorEntities; AzToolsFramework::EditorEntityContextRequestBus::Broadcast( &AzToolsFramework::EditorEntityContextRequestBus::Events::GetLooseEditorEntities, @@ -1815,7 +1815,7 @@ bool CCryEditDoc::LoadLevel(TDocMultiArchive& arrXmlAr, const QString& absoluteC AzFramework::ApplicationRequests::Bus::BroadcastResult(isPrefabEnabled, &AzFramework::ApplicationRequests::IsPrefabSystemEnabled); auto pIPak = GetIEditor()->GetSystem()->GetIPak(); - + QString folderPath = QFileInfo(absoluteCryFilePath).absolutePath(); OnStartLevelResourceList(); @@ -2391,7 +2391,8 @@ void CCryEditDoc::InitEmptyLevel(int /*resolution*/, int /*unitSize*/, bool /*bU GetIEditor()->GetGameEngine()->SetLevelCreated(false); // Default time of day. - XmlNodeRef root = GetISystem()->LoadXmlFromFile("@engroot@/Editor/default_time_of_day.xml"); + auto defaultTimeOfDayPath = AZ::IO::FixedMaxPath(AZ::Utils::GetEnginePath()) / "Assets" / "Editor" / "default_time_of_day.xml"; + XmlNodeRef root = GetISystem()->LoadXmlFromFile(defaultTimeOfDayPath.c_str()); if (root) { ITimeOfDay* pTimeOfDay = gEnv->p3DEngine ? gEnv->p3DEngine->GetTimeOfDay() : nullptr; @@ -2454,7 +2455,7 @@ void CCryEditDoc::CreateDefaultLevelAssets(int resolution, int unitSize) AZ::Transform worldTransform = AZ::Transform::CreateIdentity(); worldTransform = AZ::Transform::CreateTranslation(AZ::Vector3(halfTerrainSize, halfTerrainSize, m_envProbeHeight / 2)); - + AzToolsFramework::SliceEditorEntityOwnershipServiceNotificationBus::Handler::BusConnect(); GetIEditor()->SuspendUndo(); AzToolsFramework::SliceEditorEntityOwnershipServiceRequestBus::Broadcast( @@ -2613,7 +2614,7 @@ void CCryEditDoc::OnSliceInstantiated(const AZ::Data::AssetId& sliceAssetId, AZ: sliceAddress.SetReference(nullptr); SetModifiedFlag(true); SetModifiedModules(eModifiedEntities); - + AzToolsFramework::SliceEditorEntityOwnershipServiceNotificationBus::Handler::BusDisconnect(); //save after level default slice fully instantiated diff --git a/Code/Sandbox/Editor/Dialogs/PythonScriptsDialog.cpp b/Code/Sandbox/Editor/Dialogs/PythonScriptsDialog.cpp index c642671aba..7b1398b58f 100644 --- a/Code/Sandbox/Editor/Dialogs/PythonScriptsDialog.cpp +++ b/Code/Sandbox/Editor/Dialogs/PythonScriptsDialog.cpp @@ -71,24 +71,8 @@ CPythonScriptsDialog::CPythonScriptsDialog(QWidget* parent) AzQtComponents::LineEdit::applySearchStyle(ui->searchField); QStringList scriptFolders; - - const auto editorEnvStr = gSettings.strEditorEnv.toLocal8Bit(); - AZStd::string editorScriptsPath = AZStd::string::format("@engroot@/%s", editorEnvStr.constData()); - XmlNodeRef envNode = XmlHelpers::LoadXmlFromFile(editorScriptsPath.c_str()); - if (envNode) - { - QString scriptPath; - int childrenCount = envNode->getChildCount(); - for (int idx = 0; idx < childrenCount; ++idx) - { - XmlNodeRef child = envNode->getChild(idx); - if (child->haveAttr("scriptPath")) - { - scriptPath = child->getAttr("scriptPath"); - scriptFolders.push_back(scriptPath); - } - } - } + auto engineScriptPath = AZ::IO::FixedMaxPath(AZ::Utils::GetEnginePath()) / "Assets" / "Editor" / "Scripts"; + scriptFolders.push_back(engineScriptPath.c_str()); AZ::IO::FixedMaxPathString projectPath = AZ::Utils::GetProjectPath(); ScanFolderForScripts(QString("%1/Editor/Scripts").arg(projectPath.c_str()), scriptFolders); diff --git a/Code/Sandbox/Editor/EditorPanelUtils.cpp b/Code/Sandbox/Editor/EditorPanelUtils.cpp index 06c7056a47..72d67ffc09 100644 --- a/Code/Sandbox/Editor/EditorPanelUtils.cpp +++ b/Code/Sandbox/Editor/EditorPanelUtils.cpp @@ -16,6 +16,8 @@ #include "EditorPanelUtils.h" +#include + // Qt #include #include @@ -147,7 +149,8 @@ public: virtual void HotKey_Export() override { - QString filepath = QFileDialog::getSaveFileName(nullptr, "Select shortcut configuration to load", "Editor/Plugins/ParticleEditorPlugin/settings", "HotKey Config Files (*.hkxml)"); + auto settingDir = AZ::IO::FixedMaxPath(AZ::Utils::GetEnginePath()) / "Editor" / "Plugins" / "ParticleEditorPlugin" / "settings"; + QString filepath = QFileDialog::getSaveFileName(nullptr, "Select shortcut configuration to load", settingDir.c_str(), "HotKey Config Files (*.hkxml)"); QFile file(filepath); if (!file.open(QIODevice::WriteOnly)) { diff --git a/Code/Sandbox/Editor/IconManager.cpp b/Code/Sandbox/Editor/IconManager.cpp index 98afb464d9..09c2d41035 100644 --- a/Code/Sandbox/Editor/IconManager.cpp +++ b/Code/Sandbox/Editor/IconManager.cpp @@ -27,27 +27,27 @@ #include "Util/ImageUtil.h" -#define HELPER_MATERIAL "Editor/Objects/Helper" +#define HELPER_MATERIAL "Objects/Helper" namespace { // Object names in this array must correspond to EObject enumeration. const char* g_ObjectNames[eStatObject_COUNT] = { - "Editor/Objects/Arrow.cgf", - "Editor/Objects/Axis.cgf", - "Editor/Objects/Sphere.cgf", - "Editor/Objects/Anchor.cgf", - "Editor/Objects/entrypoint.cgf", - "Editor/Objects/hidepoint.cgf", - "Editor/Objects/hidepoint_sec.cgf", - "Editor/Objects/reinforcement_point.cgf", + "Objects/Arrow.cgf", + "Objects/Axis.cgf", + "Objects/Sphere.cgf", + "Objects/Anchor.cgf", + "Objects/entrypoint.cgf", + "Objects/hidepoint.cgf", + "Objects/hidepoint_sec.cgf", + "Objects/reinforcement_point.cgf", }; const char* g_IconNames[eIcon_COUNT] = { - "Editor/Icons/ScaleWarning.png", - "Editor/Icons/RotationWarning.png", + "Icons/ScaleWarning.png", + "Icons/RotationWarning.png", }; }; diff --git a/Code/Sandbox/Editor/Include/IResourceSelectorHost.h b/Code/Sandbox/Editor/Include/IResourceSelectorHost.h index 95e1190c0a..f9245f97a4 100644 --- a/Code/Sandbox/Editor/Include/IResourceSelectorHost.h +++ b/Code/Sandbox/Editor/Include/IResourceSelectorHost.h @@ -26,7 +26,7 @@ // ... // return previousValue; // } -// REGISTER_RESOURCE_SELECTOR("Sound", SoundFileSelector, "Editor/icons/sound_16x16.png") +// REGISTER_RESOURCE_SELECTOR("Sound", SoundFileSelector, "Icons/sound_16x16.png") // // To expose it to serialization: // diff --git a/Code/Sandbox/Editor/LensFlareEditor/LensFlareManager.cpp b/Code/Sandbox/Editor/LensFlareEditor/LensFlareManager.cpp index e18beeb6a4..c28832898f 100644 --- a/Code/Sandbox/Editor/LensFlareEditor/LensFlareManager.cpp +++ b/Code/Sandbox/Editor/LensFlareEditor/LensFlareManager.cpp @@ -228,7 +228,7 @@ AzToolsFramework::AssetBrowser::SourceFileDetails CLensFlareManager::GetSourceFi { if (IsLensFlareLibraryXML(fullSourceFileName)) { - return AzToolsFramework::AssetBrowser::SourceFileDetails("Editor/Icons/AssetBrowser/LensFlare_16.png"); + return AzToolsFramework::AssetBrowser::SourceFileDetails("Icons/AssetBrowser/LensFlare_16.png"); } return AzToolsFramework::AssetBrowser::SourceFileDetails(); } diff --git a/Code/Sandbox/Editor/MatEditPreviewDlg.cpp b/Code/Sandbox/Editor/MatEditPreviewDlg.cpp index bfabb271c2..4bac9b5e76 100644 --- a/Code/Sandbox/Editor/MatEditPreviewDlg.cpp +++ b/Code/Sandbox/Editor/MatEditPreviewDlg.cpp @@ -96,25 +96,25 @@ void CMatEditPreviewDlg::SetupMenuBar() ////////////////////////////////////////////////////////////////////////// void CMatEditPreviewDlg::OnPreviewSphere() { - m_previewCtrl->LoadModelFile("Editor/Objects/MtlSphere.cgf"); + m_previewCtrl->LoadModelFile("Objects/MtlSphere.cgf"); } ////////////////////////////////////////////////////////////////////////// void CMatEditPreviewDlg::OnPreviewBox() { - m_previewCtrl->LoadModelFile("Editor/Objects/MtlBox.cgf"); + m_previewCtrl->LoadModelFile("Objects/MtlBox.cgf"); } ////////////////////////////////////////////////////////////////////////// void CMatEditPreviewDlg::OnPreviewTeapot() { - m_previewCtrl->LoadModelFile("Editor/Objects/MtlTeapot.cgf"); + m_previewCtrl->LoadModelFile("Objects/MtlTeapot.cgf"); } ////////////////////////////////////////////////////////////////////////// void CMatEditPreviewDlg::OnPreviewPlane() { - m_previewCtrl->LoadModelFile("Editor/Objects/MtlPlane.cgf"); + m_previewCtrl->LoadModelFile("Objects/MtlPlane.cgf"); } ////////////////////////////////////////////////////////////////////////// diff --git a/Code/Sandbox/Editor/Material/MaterialImageListCtrl.cpp b/Code/Sandbox/Editor/Material/MaterialImageListCtrl.cpp index 364c6f7dd6..6ebc85c1bc 100644 --- a/Code/Sandbox/Editor/Material/MaterialImageListCtrl.cpp +++ b/Code/Sandbox/Editor/Material/MaterialImageListCtrl.cpp @@ -25,26 +25,26 @@ #include "MaterialBrowser.h" #include "Util/Image.h" -#define ME_BG_TEXTURE "Editor/Materials/Stripes.dds" +#define ME_BG_TEXTURE "Materials/Stripes.dds" -#define MATERIAL_EDITOR_SPHERE_MODEL_FILE "Editor/Objects/MtlSphere.cgf" +#define MATERIAL_EDITOR_SPHERE_MODEL_FILE "Objects/MtlSphere.cgf" #define MATERIAL_EDITOR_SPHERE_CAMERA_RADIUS 1.6f #define MATERIAL_EDITOR_SPHERE_CAMERA_FROM_DIRECTION Vec3(0.1f, -1.0f, -0.1f) -#define MATERIAL_EDITOR_BOX_MODEL_FILE "Editor/Objects/MtlBox.cgf" +#define MATERIAL_EDITOR_BOX_MODEL_FILE "Objects/MtlBox.cgf" #define MATERIAL_EDITOR_BOX_CAMERA_RADIUS 2.0f #define MATERIAL_EDITOR_BOX_CAMERA_FROM_DIRECTION Vec3(0.75f, -0.75f, -0.5f) -#define MATERIAL_EDITOR_TEAPOT_MODEL_FILE "Editor/Objects/MtlTeapot.cgf" +#define MATERIAL_EDITOR_TEAPOT_MODEL_FILE "Objects/MtlTeapot.cgf" #define MATERIAL_EDITOR_TEAPOT_CAMERA_RADIUS 1.6f #define MATERIAL_EDITOR_TEAPOT_CAMERA_FROM_DIRECTION Vec3(0.1f, -0.75f, -0.25f) -#define MATERIAL_EDITOR_PLANE_MODEL_FILE "Editor/Objects/MtlPlane.cgf" +#define MATERIAL_EDITOR_PLANE_MODEL_FILE "Objects/MtlPlane.cgf" #define MATERIAL_EDITOR_PLANE_CAMERA_RADIUS 1.6f #define MATERIAL_EDITOR_PLANE_CAMERA_FROM_DIRECTION Vec3(-0.5f, 0.5f, -0.5f) -#define MATERIAL_EDITOR_SWATCH_MODEL_FILE "Editor/Objects/MtlSwatch.cgf" +#define MATERIAL_EDITOR_SWATCH_MODEL_FILE "Objects/MtlSwatch.cgf" #define MATERIAL_EDITOR_SWATCH_CAMERA_RADIUS 1.0f #define MATERIAL_EDITOR_SWATCH_CAMERA_FROM_DIRECTION Vec3(0.0f, 0.0f, -1.0f) diff --git a/Code/Sandbox/Editor/PythonEditorFuncs.cpp b/Code/Sandbox/Editor/PythonEditorFuncs.cpp index 8f735706fd..29cb8eb478 100644 --- a/Code/Sandbox/Editor/PythonEditorFuncs.cpp +++ b/Code/Sandbox/Editor/PythonEditorFuncs.cpp @@ -298,7 +298,7 @@ namespace AZ::IO::FixedMaxPathString engineRoot = AZ::Utils::GetEnginePath(); QDir engineDir = !engineRoot.empty() ? QDir(QString(engineRoot.c_str())) : QDir::current(); - QString scriptFolder = engineDir.absoluteFilePath("Editor/Scripts/"); + QString scriptFolder = engineDir.absoluteFilePath("Assets/Editor/Scripts/"); Path::ConvertBackSlashToSlash(scriptFolder); path = scriptFolder + pFile; @@ -524,7 +524,7 @@ namespace // for example: Hello return AZStd::make_any(stringValue.toUtf8().data()); } - else // then it looks like an integer + else // then it looks like an integer { // for example: 456 return AZStd::make_any(stringValue.toInt()); diff --git a/Code/Sandbox/Editor/Settings.cpp b/Code/Sandbox/Editor/Settings.cpp index 038af33129..135d60c573 100644 --- a/Code/Sandbox/Editor/Settings.cpp +++ b/Code/Sandbox/Editor/Settings.cpp @@ -196,7 +196,6 @@ SEditorSettings::SEditorSettings() enableSceneInspector = false; strStandardTempDirectory = "Temp"; - strEditorEnv = "Editor/Editor.env"; // Init source safe params. enableSourceControl = true; @@ -532,7 +531,6 @@ void SEditorSettings::Save() SaveValue("Settings", "editorConfigSpec", editorConfigSpec); SaveValue("Settings", "TemporaryDirectory", strStandardTempDirectory); - SaveValue("Settings", "EditorEnv", strEditorEnv); SaveValue("Settings", "ConsoleBackgroundColorThemeV2", (int)consoleBackgroundColorTheme); @@ -747,7 +745,6 @@ void SEditorSettings::Load() LoadValue("Settings", "TemporaryDirectory", strStandardTempDirectory); - LoadValue("Settings", "EditorEnv", strEditorEnv); int consoleBackgroundColorThemeInt = (int)consoleBackgroundColorTheme; LoadValue("Settings", "ConsoleBackgroundColorThemeV2", consoleBackgroundColorThemeInt); @@ -760,7 +757,7 @@ void SEditorSettings::Load() LoadValue("Settings", "ShowTimeInConsole", bShowTimeInConsole); LoadValue("Settings", "EnableSceneInspector", enableSceneInspector); - + ////////////////////////////////////////////////////////////////////////// // Viewport Settings. ////////////////////////////////////////////////////////////////////////// diff --git a/Code/Sandbox/Editor/Settings.h b/Code/Sandbox/Editor/Settings.h index 512c6e3942..4fee9d27f0 100644 --- a/Code/Sandbox/Editor/Settings.h +++ b/Code/Sandbox/Editor/Settings.h @@ -419,7 +419,6 @@ AZ_POP_DISABLE_DLL_EXPORT_BASECLASS_WARNING // This directory is related to the editor root. QString strStandardTempDirectory; - QString strEditorEnv; SGUI_Settings gui; diff --git a/Code/Sandbox/Editor/SettingsManager.cpp b/Code/Sandbox/Editor/SettingsManager.cpp index 6e1b835fbf..2ec84507d9 100644 --- a/Code/Sandbox/Editor/SettingsManager.cpp +++ b/Code/Sandbox/Editor/SettingsManager.cpp @@ -25,7 +25,7 @@ #include "QtViewPaneManager.h" -#define TOOLBOX_FILE "Editor/ToolBox.xml" +#define TOOLBOX_FILE "ToolBox.xml" #define TOOLBOX_NODE "ToolBox" CSettingsManager::CSettingsManager(EditorSettingsManagerType managerType) diff --git a/Code/Sandbox/Editor/SettingsManager.h b/Code/Sandbox/Editor/SettingsManager.h index 9160e96cca..d496ae7714 100644 --- a/Code/Sandbox/Editor/SettingsManager.h +++ b/Code/Sandbox/Editor/SettingsManager.h @@ -19,8 +19,8 @@ class QByteArray; -#define EDITOR_LAYOUT_FILE_PATH "@engroot@/Editor/EditorLayout.xml" -#define EDITOR_SETTINGS_FILE_PATH "@engroot@/Editor/EditorSettings.xml" +#define EDITOR_LAYOUT_FILE_PATH "@user@/Editor/EditorLayout.xml" +#define EDITOR_SETTINGS_FILE_PATH "@user@/Editor/EditorSettings.xml" #define EDITOR_LAYOUT_ROOT_NODE "EditorLayout" #define EDITOR_SETTINGS_ROOT_NODE "EditorSettings" #define EDITOR_SETTINGS_CONTENT_NODE "EditorSettingsContent" @@ -30,7 +30,7 @@ class QByteArray; #define CVARS_NODE "CVars" #define CVAR_NODE "CVar" -#define EDITOR_EVENT_LOG_FILE_PATH "@engroot@/Editor/EditorEventLog.xml" +#define EDITOR_EVENT_LOG_FILE_PATH "@user@/Editor/EditorEventLog.xml" #define EDITOR_EVENT_LOG_ROOT_NODE "EventRecorder" #define EVENT_LOG_EVENT_NAME "eventName" #define EDITOR_EVENT_LOG_ATTRIB_NAME "value" diff --git a/Code/Sandbox/Editor/ShaderEnum.cpp b/Code/Sandbox/Editor/ShaderEnum.cpp index ebae2ceba2..65518303ce 100644 --- a/Code/Sandbox/Editor/ShaderEnum.cpp +++ b/Code/Sandbox/Editor/ShaderEnum.cpp @@ -71,7 +71,7 @@ int CShaderEnum::EnumShaders() m_shaders.push_back(sd); } - XmlNodeRef root = GetISystem()->GetXmlUtils()->LoadXmlFromFile("Editor/Materials/ShaderList.xml"); + XmlNodeRef root = GetISystem()->GetXmlUtils()->LoadXmlFromFile("Materials/ShaderList.xml"); if (root) { for (int i = 0; i < root->getChildCount(); ++i) diff --git a/Code/Sandbox/Editor/Style/CloudCanvas.qss b/Code/Sandbox/Editor/Style/CloudCanvas.qss deleted file mode 100644 index 730c494fdf..0000000000 --- a/Code/Sandbox/Editor/Style/CloudCanvas.qss +++ /dev/null @@ -1,488 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ - -#ResourceManagement QLabel -{ - /* - This sets the indent Q_PROPERTY on QLabel to 0. The default value is -1, - which triggers some computation based on the font size. But that only - happens under some cicumstances, such as when using a stylesheet to set - margins or padding on the QLabel. Adding such styling suddenly causes - the indent to be applied, causing the left alignment of the text to break. - */ - qproperty-indent: 0 -} - -#ResourceManagement #TreeTitle -{ - font-size: 12px; - font-weight: bold; -} - -#ResourceManagement #ButtonBar { - margin-top: 6px; -} - -#ResourceManagement #ButtonBar QPushButton { - padding: 6px 9px 6px 9px; - margin-right: 6px; -} - -#ResourceManagement #Message, #ResourceManagement *[class='Message'] { - font-size: 12px; - margin-top: 6; -} - -#ResourceManagement #Title { - font-size: 14px; - font-weight: bold; -} - -#ResourceManagement #Refreshing { - color: #F0C32D; -} - -#ResourceManagement #LinkButton, #ResourceManagement *[class='Link'] { - border: none; - color: #00A1C9; - margin-top: 6px; - font-weight: bold; -} - -#ResourceManagement QHeaderView::section { - color: #999999; - font-weight: bold; - border: none; - padding-top: 0px; - padding-bottom: 3px; - padding-right: 3px; - padding-left: 3px; -} - -#ResourceManagement #Table { - qproperty-showGrid: false; - border: none; -} - -#ResourceManagement #Table::item { - padding-right: 12px; - padding-top: 3px; - padding-bottom: 3px; -} - -#ResourceManagement #TextContentHelp -{ - margin: 0px; - padding: 12px; - border-style: outset; - border-width: 1px; - border-color: #303030; -} - -#ResourceManagement #TextContentEdit -{ -} - -#ResourceManagement #TextContentFooter -{ - padding: 6px 12px 6px 12px; - border-style: outset; - border-width: 1px; - border-color: #303030; -} - -#ResourceManagement #TextContentFooter QLabel -{ - min-width: 48px; - max-width: 48px; - margin-right: 12px; - color: #999999; -} - -#ResourceManagement #TextContentFooter QPushButton -{ - padding: 6px 9px 6px 9px; - margin-left: 6px; -} - - -#ResourceManagement #Action { - padding: 12px; - background-color: #404040; -} - -#ResourceManagement #Action #ButtonBar { - background-color: #404040; -} - -#ResourceManagement #Action #Heading { - background-color: #404040; -} - -#ResourceManagement #Heading #RefreshButton { - margin-left: 12px; - padding: 3px; -} - -#ResourceManagement #Action #Heading #Title { - border: 0px solid #404040; -} - -#ResourceManagement #Action #Heading #Message { - border: 0px solid #404040; -} - -#ResourceManagement #Action #LearnMore { - background-color: #404040; -} - -#ResourceManagement #Action #LearnMore #Title { - font-size: 12px; - margin-top: 24px; - font-weight:bold; -} - -#ResourceManagement #Action #LearnMore #LinkButton { - background-color: #404040; -} - -#ResourceManagement #Action #Title, #ResourceManagement #Action #Message { - background-color: #404040; -} - -#ResourceManagement #Top { - padding: 12px; - border-style: outset; - border-width: 1px; - border-color: #303030; -} - -#ResourceManagement #Bottom { - background-color: #404040; - padding: 12px; -} - -#ResourceManagement #Bottom #Title { - background-color: #404040; - font-size: 12px; - font-weight: bold; -} - -#ResourceManagement #Bottom #Message { - background-color: #404040; - margin-bottom: 6px; -} - -#ResourceManagement #Bottom #Table { - background-color: #404040; - qproperty-alternatingRowColors: true; -} - -#ResourceManagement #Bottom #Table QHeaderView { - background-color: #404040; -} - -#ResourceManagement #Bottom #Table QHeaderView::section { - background-color: #404040; -} - -#ResourceManagement #Bottom #Table::item { - background-color: #393a3c; -} - -#ResourceManagement #Bottom #Table::item:alternate { - background-color: #303030; -} - -#ResourceManagement #Bottom #Resources { - background-color: #404040; -} - -#ResourceManagement #Bottom #Refreshing { - background-color: #404040; -} - -#ResourceManagement #Stack #Heading #Message -{ - margin-top: 0; -} - -#ResourceManagement #Stack #Status #Title -{ - font-size: 12px; - font-weight: bold; - margin-top: 6px; - margin-bottom: 6px; -} - -#ResourceManagement #StackEvents #TitleBar { - color: #CCCCCC; - background-color: #393a3c; - border-style: outset; - border-width: 1px; - border-color: #303030; -} - -#ResourceManagement #StackEvents #TitleBar * { - font-size:12px; -} - -#ResourceManagement #StackEvents #TitleBar #Title { - font-weight:bold; - margin-right: 12px; -} - -#ResourceManagement #StackEvents #TitleBar #InProgress #Text { - color: #F0C32D; -} - -#ResourceManagement #StackEvents #TitleBar #Succeeded { - color: #43d96a; -} - -#ResourceManagement #StackEvents #TitleBar #Failed { - color: #f44642; -} - -#ResourceManagement #StackEvents #Content { - border-style: inset; - border-width: 1px; - border-color: #303030; - padding: 12px; -} - -#ResourceManagement #StackEvents #Table { - qproperty-alternatingRowColors: true; - qproperty-showGrid: false; -} - -#ResourceManagement #StackEvents QTableView::item { - background-color: #303030; -} - -#ResourceManagement #StackEvents QTableView::item:focus { - selection-color: #FFFFFF; - selection-background-color: rgba(255, 153, 0, 128); -} - -#ResourceManagement #StackEvents QTableView::item:alternate { - background-color: #393a3c; -} - -#ResourceManagement #CreateDeployment #LearnMore -{ - margin-bottom: 12px; -} - -#ResourceManagement #CreateDeployment #WarningMessage -{ - margin-top: 12px; - margin-bottom: 12px; -} - -#ResourceManagement #LoadingError, #ResourceManagement #LoadingError #Title, #ResourceManagement #LoadingError #Message, #ResourceManagement #LoadingError #ErrorText -{ - background: #404040; -} - -#ResourceManagement #LoadingError #ErrorText -{ - padding: 12px; - color: #f44642; -} - -#ResourceManagement #Loading, #ResourceManagement #Loading #Title, #ResourceManagement #Loading #Message -{ - background: #404040; -} - -#ResourceManagement #Loading, #ResourceManagement #LoadingError -{ - padding: 12px; -} - -#ResourceManagement #MainToolbar -{ - padding: 6px; - border-style: inset; - border-width: 1px; - border-color: #303030; -} - -#ResourceManagement #MainToolbar QPushButton -{ - border: none; - padding: 0px; -} - -#ResourceManagement #MainToolbar #AddNewButton -{ - margin-left: 12px; - margin-right: 12px; -} - -#ResourceManagement #ResourceImporter #RegionBox:disabled -{ - color: #555555; -} - -#ResourceManagement #ResourceImporter #ListTable -{ - qproperty-alternatingRowColors: true; - qproperty-showGrid: false; - border: none; -} - -#ResourceManagement #ResourceImporter #ListTable::item -{ - padding-right: 12px; - padding-top: 3px; - padding-bottom: 3px; - background-color: #333436; -} - -#ResourceManagement #ResourceImporter #ListTable::item:alternate -{ - background-color: #303030; -} - -#ResourceManagement #ResourceImporter #SelectionTable -{ - qproperty-showGrid: false; - border: none; - gridline-color: #393a3c; -} - -#ResourceManagement #ResourceImporter #SelectionTable::item -{ - padding: 1px 1px 1px 1px; - -} - -#ResourceManagement #ResourceImporter #LoadingLabel -{ - color : #F0C32D; -} - -#ResourceManagement #MainToolbar #SaveButton, -#ResourceManagement #MainToolbar #DeleteButton, -#ResourceManagement #MainToolbar #SourceControlButton, -#ResourceManagement #MainToolbar #AddNewButton -{ - qproperty-flat: true; -} - -#ResourceManagement #MainToolbar #CurrentProfile -{ - margin-right: 12px; -} - -#ResourceManagement #MainToolbar #CurrentDeployment -{ - margin-right: 12px; - margin-left: 12px; -} - -#ResourceManagement #UpdateStack #Refreshing -{ - margin-top: 12px; - margin-left: 12px; -} - -#ResourceManagement #UpdateStack #Message -{ - margin-bottom: 6px; -} - -#ResourceManagement #UpdateStack #Table { - qproperty-alternatingRowColors: true; - qproperty-showGrid: false; -} - -#ResourceManagement #UpdateStack #Table::item { - background-color: #303030; -} - -#ResourceManagement #UpdateStack #Table::item:alternate { - background-color: #393a3c; -} - -#ResourceManagement #UpdateStack #Status { - color: #F0C32D; -} - -#ProfileSelector #DeleteProfile { - width: 38px; - height: 11px; - border: none; -} - -#ProfileSelector #EditSelectedProfile { - color: #00A1C9; -} - -#InitializeCloudCanvasProject #Profiles QRadioButton { - margin-left: 5px; -} - -#InitializeCloudCanvasProject #ProfileEditButtons { -} - -#InitializeCloudCanvasProject #ProfileEditButtons QPushButton { -} - -#InitializeCloudCanvasProject #ContentFrame { - x-margin: 6px; - x-padding: 6px; - border: 1px solid rgb(34, 35, 38); - x-background-color: purple; -} - -#LoginDialog -{ - background-color: #F8F8F8; -} - -#LoginDialog Amazon--LoginWelcomeTitle -{ - color: #444444; - background-color: #F8F8F8; - font-size: 21px; - qproperty-alignment: AlignCenter; - font-family: "Open Sans Semibold"; -} - -#LoginDialog Amazon--LoginWelcomeText -{ - color: #444444; - background-color: #F8F8F8; - font-size: 13px; - qproperty-alignment: AlignLeft; -} - -#LoginDialog Amazon--LoginFooterText -{ - color: #999999; - background-color: #F8F8F8; - font-size: 13px; - qproperty-alignment: AlignCenter; -} - -#LoginDialog Amazon--LoginWebViewFrame -{ - border: 2px solid #EEEEEE; -} - -#LoginDialog Amazon--LoginWebView -{ - background-color: #F8F8F8; -} diff --git a/Code/Sandbox/Editor/Style/resources.qrc b/Code/Sandbox/Editor/Style/resources.qrc index 54c2c4754a..aa32f29555 100644 --- a/Code/Sandbox/Editor/Style/resources.qrc +++ b/Code/Sandbox/Editor/Style/resources.qrc @@ -1,10 +1,9 @@ - Editor.qss - EditorPreferencesDialog.qss - CloudCanvas.qss - LayoutConfigDialog.qss - GraphicsSettingsDialog.qss - LensFlareEditor.qss + Editor.qss + EditorPreferencesDialog.qss + LayoutConfigDialog.qss + GraphicsSettingsDialog.qss + LensFlareEditor.qss diff --git a/Code/Sandbox/Editor/TimeOfDayDialog.cpp b/Code/Sandbox/Editor/TimeOfDayDialog.cpp index 9c3b77f17d..8fe368b8fb 100644 --- a/Code/Sandbox/Editor/TimeOfDayDialog.cpp +++ b/Code/Sandbox/Editor/TimeOfDayDialog.cpp @@ -1088,7 +1088,7 @@ void CTimeOfDayDialog::OnResetToDefaultValues() ITimeOfDay* pTimeOfDay = gEnv->p3DEngine->GetTimeOfDay(); // Load the default time of day settings and use those to reset the time of day. - XmlNodeRef root = GetISystem()->LoadXmlFromFile("Editor/default_time_of_day.xml"); + XmlNodeRef root = GetISystem()->LoadXmlFromFile("default_time_of_day.xml"); if (root) { pTimeOfDay->Serialize(root, true); diff --git a/Code/Sandbox/Editor/ToolBox.cpp b/Code/Sandbox/Editor/ToolBox.cpp index 46c01ce864..2711797168 100644 --- a/Code/Sandbox/Editor/ToolBox.cpp +++ b/Code/Sandbox/Editor/ToolBox.cpp @@ -335,21 +335,9 @@ void CToolBoxManager::Load(ActionManager* actionManager) if (actionManager) { - QByteArray array = gSettings.strEditorEnv.toUtf8(); - AZStd::string actualPath = AZStd::string::format("@engroot@/%s", array.constData()); - XmlNodeRef envNode = XmlHelpers::LoadXmlFromFile(actualPath.c_str()); - if (envNode) - { - int childrenCount = envNode->getChildCount(); - for (int idx = 0; idx < childrenCount; ++idx) - { - XmlNodeRef child = envNode->getChild(idx); - if (child->haveAttr("scriptPath") && child->haveAttr("shelvesPath")) - { - LoadShelves(child->getAttr("scriptPath"), child->getAttr("shelvesPath"), actionManager); - } - } - } + auto engineSourceAssetPath = AZ::IO::FixedMaxPath(AZ::Utils::GetEnginePath()) / "Assets"; + LoadShelves((engineSourceAssetPath / "Editor" / "Scripts").c_str(), + (engineSourceAssetPath / "Editor" / "Scripts" / "Shelves").c_str(), actionManager); } } diff --git a/Code/Sandbox/Plugins/ComponentEntityEditorPlugin/SandboxIntegration.h b/Code/Sandbox/Plugins/ComponentEntityEditorPlugin/SandboxIntegration.h index ea4d2fe32b..1bcffa8f2c 100644 --- a/Code/Sandbox/Plugins/ComponentEntityEditorPlugin/SandboxIntegration.h +++ b/Code/Sandbox/Plugins/ComponentEntityEditorPlugin/SandboxIntegration.h @@ -376,9 +376,9 @@ private: // Tracks new entities that have not yet been saved. AZStd::unordered_set m_unsavedEntities; - const AZStd::string m_defaultComponentIconLocation = "Editor/Icons/Components/Component_Placeholder.svg"; - const AZStd::string m_defaultComponentViewportIconLocation = "Editor/Icons/Components/Viewport/Component_Placeholder.png"; - const AZStd::string m_defaultEntityIconLocation = "Editor/Icons/Components/Viewport/Transform.png"; + const AZStd::string m_defaultComponentIconLocation = "Icons/Components/Component_Placeholder.svg"; + const AZStd::string m_defaultComponentViewportIconLocation = "Icons/Components/Viewport/Component_Placeholder.png"; + const AZStd::string m_defaultEntityIconLocation = "Icons/Components/Viewport/Transform.png"; bool m_debugDisplayBusImplementationActive = false; diff --git a/Code/Sandbox/Plugins/ComponentEntityEditorPlugin/UI/ComponentPalette/CategoriesList.cpp b/Code/Sandbox/Plugins/ComponentEntityEditorPlugin/UI/ComponentPalette/CategoriesList.cpp index 5f3c49426d..5e71d31752 100644 --- a/Code/Sandbox/Plugins/ComponentEntityEditorPlugin/UI/ComponentPalette/CategoriesList.cpp +++ b/Code/Sandbox/Plugins/ComponentEntityEditorPlugin/UI/ComponentPalette/CategoriesList.cpp @@ -33,8 +33,8 @@ void ComponentCategoryList::Init() headers << tr("Categories"); setHeaderLabels(headers); - const QString parentCategoryIconPath = QString("Editor/Icons/PropertyEditor/Browse_on.png"); - const QString categoryIconPath = QString("Editor/Icons/PropertyEditor/Browse.png"); + const QString parentCategoryIconPath = QString("Icons/PropertyEditor/Browse_on.png"); + const QString categoryIconPath = QString("Icons/PropertyEditor/Browse.png"); QTreeWidgetItem* allCategory = new QTreeWidgetItem(this); allCategory->setText(0, "All"); diff --git a/Code/Sandbox/Plugins/EditorAssetImporter/AssetBrowserContextProvider.cpp b/Code/Sandbox/Plugins/EditorAssetImporter/AssetBrowserContextProvider.cpp index 0e94ff80cf..14a3d6fa1e 100644 --- a/Code/Sandbox/Plugins/EditorAssetImporter/AssetBrowserContextProvider.cpp +++ b/Code/Sandbox/Plugins/EditorAssetImporter/AssetBrowserContextProvider.cpp @@ -94,7 +94,7 @@ namespace AZ { if (AzFramework::StringFunc::Equal(extensionString.c_str(), potentialExtension.c_str())) { - return AzToolsFramework::AssetBrowser::SourceFileDetails("Editor/Icons/AssetBrowser/FBX_16.png"); + return AzToolsFramework::AssetBrowser::SourceFileDetails("Icons/AssetBrowser/FBX_16.png"); } } } diff --git a/Code/Sandbox/Plugins/EditorAssetImporter/AssetImporter.qrc b/Code/Sandbox/Plugins/EditorAssetImporter/AssetImporter.qrc index 5140ed81ab..35b7557a9b 100644 --- a/Code/Sandbox/Plugins/EditorAssetImporter/AssetImporter.qrc +++ b/Code/Sandbox/Plugins/EditorAssetImporter/AssetImporter.qrc @@ -1,17 +1,17 @@ - ../../../../Editor/Icons/PropertyEditor/Browse.png - ../../../../Editor/Icons/PropertyEditor/Browse_on.png - ../../../../Editor/Icons/PropertyEditor/remove.png - ../../../../Editor/Icons/PropertyEditor/remove.png - ../../../../Editor/Icons/PropertyEditor/error_icon.png - ../../../../Editor/Icons/PropertyEditor/reset_icon.png - ../../../../Editor/Icons/AssetImporter/mesh.png - ../../../../Editor/Icons/AssetImporter/mesh_on.png - ../../../../Editor/Icons/AssetImporter/mesh_on.png - ../../../../Editor/Icons/AssetImporter/group_icon.png - ../../../../Editor/Icons/checkmark_checked.png - ../../../../Editor/Icons/checkmark_checked_hover.png - ../../../../Editor/Icons/checkmark_unchecked_hover.png + ../../../../Assets/Editor/Icons/PropertyEditor/Browse.png + ../../../../Assets/Editor/Icons/PropertyEditor/Browse_on.png + ../../../../Assets/Editor/Icons/PropertyEditor/remove.png + ../../../../Assets/Editor/Icons/PropertyEditor/remove.png + ../../../../Assets/Editor/Icons/PropertyEditor/error_icon.png + ../../../../Assets/Editor/Icons/PropertyEditor/reset_icon.png + ../../../../Assets/Editor/Icons/AssetImporter/mesh.png + ../../../../Assets/Editor/Icons/AssetImporter/mesh_on.png + ../../../../Assets/Editor/Icons/AssetImporter/mesh_on.png + ../../../../Assets/Editor/Icons/AssetImporter/group_icon.png + ../../../../Assets/Editor/Icons/checkmark_checked.png + ../../../../Assets/Editor/Icons/checkmark_checked_hover.png + ../../../../Assets/Editor/Icons/checkmark_unchecked_hover.png diff --git a/Code/Sandbox/Plugins/EditorCommon/DockTitleBarWidget.cpp b/Code/Sandbox/Plugins/EditorCommon/DockTitleBarWidget.cpp index 183674505a..e7de4904d1 100644 --- a/Code/Sandbox/Plugins/EditorCommon/DockTitleBarWidget.cpp +++ b/Code/Sandbox/Plugins/EditorCommon/DockTitleBarWidget.cpp @@ -175,7 +175,7 @@ CDockTitleBarWidget::CDockTitleBarWidget(QDockWidget* dockWidget) m_layout->addLayout(m_buttonLayout, 0); m_floatButton = new CDockWidgetTitleButton(dockWidget); - m_floatButton->setIcon(QIcon("Editor/Icons/float.png")); + m_floatButton->setIcon(QIcon("Icons/float.png")); m_floatButton->setVisible(opt.floatable); m_floatButton->setToolTip("Toggle Floating"); connect(m_floatButton, SIGNAL(clicked()), SLOT(OnFloatButtonPressed())); @@ -185,7 +185,7 @@ CDockTitleBarWidget::CDockTitleBarWidget(QDockWidget* dockWidget) // close.png is a standard icon that looks similar to one in Fusion theme but // uses alpha so it can be used on dark theme as well. // style()->standardIcon(QStyle::SP_TitleBarCloseButton, &opt, dockWidget) - QIcon closeIcon("Editor/Icons/close.png"); + QIcon closeIcon("Icons/close.png"); m_closeButton->setIcon(closeIcon); m_closeButton->setVisible(opt.closable); m_closeButton->setToolTip("Close"); diff --git a/Code/Sandbox/Plugins/EditorCommon/QPropertyTree/PropertyRowLocalFrame.cpp b/Code/Sandbox/Plugins/EditorCommon/QPropertyTree/PropertyRowLocalFrame.cpp index f04a38dbdb..6d318aecde 100644 --- a/Code/Sandbox/Plugins/EditorCommon/QPropertyTree/PropertyRowLocalFrame.cpp +++ b/Code/Sandbox/Plugins/EditorCommon/QPropertyTree/PropertyRowLocalFrame.cpp @@ -80,7 +80,7 @@ void PropertyRowLocalFrameBase::reset(QPropertyTree* tree) void PropertyRowLocalFrameBase::redraw(const PropertyDrawContext& context) { - static QIcon gizmo("Editor/Icons/animation/gizmo_location.png"); + static QIcon gizmo("Icons/animation/gizmo_location.png"); gizmo.paint(context.painter, context.widgetRect.adjusted(1, 1, 1, 1), Qt::AlignRight); } diff --git a/Code/Sandbox/Plugins/EditorCommon/QPropertyTree/PropertyRowResourceSelector.cpp b/Code/Sandbox/Plugins/EditorCommon/QPropertyTree/PropertyRowResourceSelector.cpp index 76295ec1f0..942691df04 100644 --- a/Code/Sandbox/Plugins/EditorCommon/QPropertyTree/PropertyRowResourceSelector.cpp +++ b/Code/Sandbox/Plugins/EditorCommon/QPropertyTree/PropertyRowResourceSelector.cpp @@ -292,7 +292,7 @@ const QIcon& PropertyRowResourceSelector::buttonIcon(const QPropertyTree* tree, } case BUTTON_CREATE: { - static QIcon addIcon("Editor/Icons/animation/add.png"); + static QIcon addIcon("Icons/animation/add.png"); ; return addIcon; } diff --git a/Code/Tools/AssetBundler/tests/AssetProcessorPlatformConfig.ini b/Code/Tools/AssetBundler/tests/AssetProcessorPlatformConfig.ini deleted file mode 100644 index 1acb3b90e6..0000000000 --- a/Code/Tools/AssetBundler/tests/AssetProcessorPlatformConfig.ini +++ /dev/null @@ -1,9 +0,0 @@ -[Platforms] -;pc=enabled -es3=enabled -;ios=enabled -;osx_gl=enabled -;provo=enabled -;server=enabled - - diff --git a/Code/Tools/AssetBundler/tests/AssetProcessorPlatformConfig.setreg b/Code/Tools/AssetBundler/tests/AssetProcessorPlatformConfig.setreg new file mode 100644 index 0000000000..81fcdbcf12 --- /dev/null +++ b/Code/Tools/AssetBundler/tests/AssetProcessorPlatformConfig.setreg @@ -0,0 +1,11 @@ +{ + "Amazon": { + "AssetProcessor": { + "Settings": { + "Platforms": { + "es3": "enabled" + } + } + } + } +} diff --git a/Code/Tools/AssetBundler/tests/DummyProject/AssetProcessorGamePlatformConfig.ini b/Code/Tools/AssetBundler/tests/DummyProject/AssetProcessorGamePlatformConfig.ini deleted file mode 100644 index 702a486603..0000000000 --- a/Code/Tools/AssetBundler/tests/DummyProject/AssetProcessorGamePlatformConfig.ini +++ /dev/null @@ -1,7 +0,0 @@ -[Platforms] -;pc=enabled -;es3=enabled -ios=enabled -;osx_gl=enabled -;provo=enabled -;server=enabled diff --git a/Code/Tools/AssetBundler/tests/DummyProject/AssetProcessorGamePlatformConfig.setreg b/Code/Tools/AssetBundler/tests/DummyProject/AssetProcessorGamePlatformConfig.setreg new file mode 100644 index 0000000000..490d4a8571 --- /dev/null +++ b/Code/Tools/AssetBundler/tests/DummyProject/AssetProcessorGamePlatformConfig.setreg @@ -0,0 +1,11 @@ +{ + "Amazon": { + "AssetProcessor": { + "Settings": { + "Platforms": { + "ios": "enabled" + } + } + } + } +} diff --git a/Code/Tools/AssetBundler/tests/Gems/GemA/AssetProcessorGemConfig.ini b/Code/Tools/AssetBundler/tests/Gems/GemA/AssetProcessorGemConfig.ini deleted file mode 100644 index 125b5dc32a..0000000000 --- a/Code/Tools/AssetBundler/tests/Gems/GemA/AssetProcessorGemConfig.ini +++ /dev/null @@ -1,9 +0,0 @@ -[Platforms] -;pc=enabled -;es3=enabled -;ios=enabled -;osx_gl=enabled -provo=enabled -;server=enabled - - diff --git a/Code/Tools/AssetBundler/tests/Gems/GemA/AssetProcessorGemConfig.setreg b/Code/Tools/AssetBundler/tests/Gems/GemA/AssetProcessorGemConfig.setreg new file mode 100644 index 0000000000..6616f886b1 --- /dev/null +++ b/Code/Tools/AssetBundler/tests/Gems/GemA/AssetProcessorGemConfig.setreg @@ -0,0 +1,11 @@ +{ + "Amazon": { + "AssetProcessor": { + "Settings": { + "Platforms": { + "provo": "enabled" + } + } + } + } +} diff --git a/Code/Tools/AssetProcessor/CMakeLists.txt b/Code/Tools/AssetProcessor/CMakeLists.txt index 9eea81b415..dd59481636 100644 --- a/Code/Tools/AssetProcessor/CMakeLists.txt +++ b/Code/Tools/AssetProcessor/CMakeLists.txt @@ -178,7 +178,7 @@ if(PAL_TRAIT_BUILD_TESTS_SUPPORTED) TARGETS AssetProcessor.Tests FILES - ${CMAKE_CURRENT_SOURCE_DIR}/testdata/config_broken_badplatform/AssetProcessorPlatformConfig.ini + ${CMAKE_CURRENT_SOURCE_DIR}/testdata/config_broken_badplatform/AssetProcessorPlatformConfig.setreg OUTPUT_SUBDIRECTORY testdata/config_broken_badplatform ) @@ -186,7 +186,7 @@ if(PAL_TRAIT_BUILD_TESTS_SUPPORTED) TARGETS AssetProcessor.Tests FILES - ${CMAKE_CURRENT_SOURCE_DIR}/testdata/config_broken_noscans/AssetProcessorPlatformConfig.ini + ${CMAKE_CURRENT_SOURCE_DIR}/testdata/config_broken_noscans/AssetProcessorPlatformConfig.setreg OUTPUT_SUBDIRECTORY testdata/config_broken_noscans ) @@ -194,7 +194,7 @@ if(PAL_TRAIT_BUILD_TESTS_SUPPORTED) TARGETS AssetProcessor.Tests FILES - ${CMAKE_CURRENT_SOURCE_DIR}/testdata/config_broken_recognizers/AssetProcessorPlatformConfig.ini + ${CMAKE_CURRENT_SOURCE_DIR}/testdata/config_broken_recognizers/AssetProcessorPlatformConfig.setreg OUTPUT_SUBDIRECTORY testdata/config_broken_recognizers ) @@ -202,7 +202,7 @@ if(PAL_TRAIT_BUILD_TESTS_SUPPORTED) TARGETS AssetProcessor.Tests FILES - ${CMAKE_CURRENT_SOURCE_DIR}/testdata/config_broken_noplatform/AssetProcessorPlatformConfig.ini + ${CMAKE_CURRENT_SOURCE_DIR}/testdata/config_broken_noplatform/AssetProcessorPlatformConfig.setreg OUTPUT_SUBDIRECTORY testdata/config_broken_noplatform ) @@ -210,7 +210,7 @@ if(PAL_TRAIT_BUILD_TESTS_SUPPORTED) TARGETS AssetProcessor.Tests FILES - ${CMAKE_CURRENT_SOURCE_DIR}/testdata/config_regular/AssetProcessorPlatformConfig.ini + ${CMAKE_CURRENT_SOURCE_DIR}/testdata/config_regular/AssetProcessorPlatformConfig.setreg OUTPUT_SUBDIRECTORY testdata/config_regular ) @@ -218,7 +218,7 @@ if(PAL_TRAIT_BUILD_TESTS_SUPPORTED) TARGETS AssetProcessor.Tests FILES - ${CMAKE_CURRENT_SOURCE_DIR}/testdata/config_regular_platform_scanfolder/AssetProcessorPlatformConfig.ini + ${CMAKE_CURRENT_SOURCE_DIR}/testdata/config_regular_platform_scanfolder/AssetProcessorPlatformConfig.setreg OUTPUT_SUBDIRECTORY testdata/config_regular_platform_scanfolder ) @@ -226,7 +226,7 @@ if(PAL_TRAIT_BUILD_TESTS_SUPPORTED) TARGETS AssetProcessor.Tests FILES - ${CMAKE_CURRENT_SOURCE_DIR}/testdata/EmptyDummyProject/AssetProcessorGamePlatformConfig.ini + ${CMAKE_CURRENT_SOURCE_DIR}/testdata/EmptyDummyProject/AssetProcessorGamePlatformConfig.setreg OUTPUT_SUBDIRECTORY testdata/EmptyDummyProject ) @@ -234,7 +234,7 @@ if(PAL_TRAIT_BUILD_TESTS_SUPPORTED) TARGETS AssetProcessor.Tests FILES - ${CMAKE_CURRENT_SOURCE_DIR}/testdata/DummyProject/AssetProcessorGamePlatformConfig.ini + ${CMAKE_CURRENT_SOURCE_DIR}/testdata/DummyProject/AssetProcessorGamePlatformConfig.setreg OUTPUT_SUBDIRECTORY testdata/DummyProject ) diff --git a/Code/Tools/AssetProcessor/assetprocessor_test_files.cmake b/Code/Tools/AssetProcessor/assetprocessor_test_files.cmake index 257f044ffd..cff5f4ef39 100644 --- a/Code/Tools/AssetProcessor/assetprocessor_test_files.cmake +++ b/Code/Tools/AssetProcessor/assetprocessor_test_files.cmake @@ -10,14 +10,14 @@ # set(FILES - testdata/config_broken_badplatform/AssetProcessorPlatformConfig.ini - testdata/config_broken_noplatform/AssetProcessorPlatformConfig.ini - testdata/config_broken_noscans/AssetProcessorPlatformConfig.ini - testdata/config_broken_recognizers/AssetProcessorPlatformConfig.ini - testdata/config_regular/AssetProcessorPlatformConfig.ini - testdata/config_regular_platform_scanfolder/AssetProcessorPlatformConfig.ini - testdata/EmptyDummyProject/AssetProcessorGamePlatformConfig.ini - testdata/DummyProject/AssetProcessorGamePlatformConfig.ini + testdata/config_broken_badplatform/AssetProcessorPlatformConfig.setreg + testdata/config_broken_noplatform/AssetProcessorPlatformConfig.setreg + testdata/config_broken_noscans/AssetProcessorPlatformConfig.setreg + testdata/config_broken_recognizers/AssetProcessorPlatformConfig.setreg + testdata/config_regular/AssetProcessorPlatformConfig.setreg + testdata/config_regular_platform_scanfolder/AssetProcessorPlatformConfig.setreg + testdata/EmptyDummyProject/AssetProcessorGamePlatformConfig.setreg + testdata/DummyProject/AssetProcessorGamePlatformConfig.setreg native/tests/AssetProcessorTest.h native/tests/AssetProcessorTest.cpp native/tests/BaseAssetProcessorTest.h diff --git a/Code/Tools/AssetProcessor/native/AssetDatabase/AssetDatabase.cpp b/Code/Tools/AssetProcessor/native/AssetDatabase/AssetDatabase.cpp index fa6adcf0fe..5430f0807e 100644 --- a/Code/Tools/AssetProcessor/native/AssetDatabase/AssetDatabase.cpp +++ b/Code/Tools/AssetProcessor/native/AssetDatabase/AssetDatabase.cpp @@ -45,7 +45,6 @@ namespace AssetProcessor " ScanFolder TEXT NOT NULL collate nocase, " " DisplayName TEXT NOT NULL collate nocase, " " PortableKey TEXT NOT NULL collate nocase, " - " OutputPrefix TEXT NOT NULL collate nocase, " " IsRoot INTEGER NOT NULL);"; static const char* CREATE_SOURCES_TABLE = "AssetProcessor::CreateSourceTable"; @@ -254,14 +253,13 @@ namespace AssetProcessor static const char* INSERT_SCANFOLDER = "AssetProcessor::InsertScanFolder"; static const char* INSERT_SCANFOLDER_STATEMENT = - "INSERT INTO ScanFolders (ScanFolder, DisplayName, PortableKey, OutputPrefix, IsRoot) " - "VALUES (:scanfolder, :displayname, :portablekey, :outputprefix, :isroot);"; + "INSERT INTO ScanFolders (ScanFolder, DisplayName, PortableKey, IsRoot) " + "VALUES (:scanfolder, :displayname, :portablekey, :isroot);"; static const auto s_InsertScanfolderQuery = MakeSqlQuery(INSERT_SCANFOLDER, INSERT_SCANFOLDER_STATEMENT, LOG_NAME, SqlParam(":scanfolder"), SqlParam(":displayname"), SqlParam(":portablekey"), - SqlParam(":outputprefix"), SqlParam(":isroot")); static const char* UPDATE_SCANFOLDER = "AssetProcessor::UpdateScanFolder"; @@ -270,7 +268,6 @@ namespace AssetProcessor "ScanFolder = :scanfolder, " "DisplayName = :displayname, " "PortableKey = :portablekey, " - "OutputPrefix = :outputprefix, " "IsRoot = :isroot " "WHERE " "ScanFolderID = :scanfolderid;"; @@ -279,7 +276,6 @@ namespace AssetProcessor SqlParam(":scanfolder"), SqlParam(":displayname"), SqlParam(":portablekey"), - SqlParam(":outputprefix"), SqlParam(":isroot"), SqlParam(":scanfolderid")); @@ -1051,6 +1047,10 @@ namespace AssetProcessor } } + // Nothing to do for version `AssetDatabase::DatabaseVersion::RemoveOutputPrefixFromScanFolders` + // sqlite doesn't not support altering a table to remove a column + // This is fine as the extra OutputPrefix column will not be queried + if (foundVersion == CurrentDatabaseVersion()) { dropAllTables = false; @@ -1433,7 +1433,7 @@ namespace AssetProcessor //its not in the database, add it // it is a single statement, do not wrap it in a transaction, this wastes a lot of time. - if (!s_InsertScanfolderQuery.BindAndStep(*m_databaseConnection, entry.m_scanFolder.c_str(), entry.m_displayName.c_str(), entry.m_portableKey.c_str(), entry.m_outputPrefix.c_str(), entry.m_isRoot)) + if (!s_InsertScanfolderQuery.BindAndStep(*m_databaseConnection, entry.m_scanFolder.c_str(), entry.m_displayName.c_str(), entry.m_portableKey.c_str(), entry.m_isRoot)) { return false; } @@ -1457,7 +1457,7 @@ namespace AssetProcessor return false; } - return s_UpdateScanfolderQuery.BindAndStep(*m_databaseConnection, entry.m_scanFolder.c_str(), entry.m_displayName.c_str(), entry.m_portableKey.c_str(), entry.m_outputPrefix.c_str(), entry.m_isRoot, entry.m_scanFolderID); + return s_UpdateScanfolderQuery.BindAndStep(*m_databaseConnection, entry.m_scanFolder.c_str(), entry.m_displayName.c_str(), entry.m_portableKey.c_str(), entry.m_isRoot, entry.m_scanFolderID); } } diff --git a/Code/Tools/AssetProcessor/native/AssetManager/AssetCatalog.cpp b/Code/Tools/AssetProcessor/native/AssetManager/AssetCatalog.cpp index 0991ef72de..196f6b0543 100644 --- a/Code/Tools/AssetProcessor/native/AssetManager/AssetCatalog.cpp +++ b/Code/Tools/AssetProcessor/native/AssetManager/AssetCatalog.cpp @@ -951,17 +951,7 @@ namespace AssetProcessor // the subId part of the assetId will always be set to zero. assetInfo.m_assetId = AZ::Data::AssetId(entry.m_sourceGuid, 0); - // the Scan Folder may have an output prefix, so we must remove it from the relpath. - // this involves deleting the output prefix and the first slash ('editor/') which is why - // we remove the length of outputPrefix and one extra character. - if (!scanEntry.m_outputPrefix.empty()) - { - assetInfo.m_relativePath = entry.m_sourceName.substr(static_cast(scanEntry.m_outputPrefix.size()) + 1); - } - else - { - assetInfo.m_relativePath = entry.m_sourceName; - } + assetInfo.m_relativePath = entry.m_sourceName; AZStd::string absolutePath; AzFramework::StringFunc::Path::Join(scanEntry.m_scanFolder.c_str(), assetInfo.m_relativePath.c_str(), absolutePath); assetInfo.m_sizeBytes = AZ::IO::SystemFile::Length(absolutePath.c_str()); @@ -1375,17 +1365,7 @@ namespace AssetProcessor AzToolsFramework::AssetDatabase::ScanFolderDatabaseEntry scanEntry; if (m_db->GetScanFolderByScanFolderID(entry.m_scanFolderPK, scanEntry)) { - // the Scan Folder may have an output prefix, so we must remove it from the relpath. - // this involves deleting the output prefix and the first slash ('editor/') which is why - // we remove the length of outputPrefix and one extra character. - if (!scanEntry.m_outputPrefix.empty()) - { - relativePath = entry.m_sourceName.substr(static_cast(scanEntry.m_outputPrefix.size()) + 1); - } - else - { - relativePath = entry.m_sourceName; - } + relativePath = entry.m_sourceName; watchFolder = scanEntry.m_scanFolder; @@ -1530,28 +1510,7 @@ namespace AssetProcessor watchFolder = sourceInfo.m_watchFolder.toStdString().c_str(); AZStd::string sourceNameStr(sourceInfo.m_sourceName.toStdString().c_str()); - - // the Scan Folder may have an output prefix, so we must remove it from the relpath. - // this involves deleting the output prefix and the first slash ('editor/') which is why - // we remove the length of outputPrefix and one extra character. - const AssetProcessor::ScanFolderInfo* info = m_platformConfig->GetScanFolderByPath(watchFolder.c_str()); - if ((info)&&(!info->GetOutputPrefix().isEmpty())) - { - const int prefixLength = static_cast(info->GetOutputPrefix().length()) + 1; - AZ_Assert(sourceNameStr.length() > prefixLength, "Source name [%s] was invalid compared to the output prefix.", sourceNameStr.c_str() != nullptr ? sourceNameStr.c_str() : ""); - if (sourceNameStr.length() > prefixLength) - { - assetInfo.m_relativePath = sourceNameStr.substr(prefixLength); - } - else - { - assetInfo.m_relativePath.swap(sourceNameStr); - } - } - else - { - assetInfo.m_relativePath.swap(sourceNameStr); - } + assetInfo.m_relativePath.swap(sourceNameStr); assetInfo.m_assetId = foundSource->first; @@ -1598,15 +1557,7 @@ namespace AssetProcessor return false; } QString databasePath = QString::fromUtf8(sourceDatabaseName); - if (!scanFolderInfo->GetOutputPrefix().isEmpty() && databasePath.startsWith(scanFolderInfo->GetOutputPrefix(), Qt::CaseInsensitive)) - { - QString relativePath = databasePath.right(databasePath.length() - scanFolderInfo->GetOutputPrefix().length() - 1); // also eat the slash, hence -1 - assetInfo.m_relativePath = relativePath.toUtf8().data(); - } - else - { - assetInfo.m_relativePath = sourceDatabaseName; - } + assetInfo.m_relativePath = sourceDatabaseName; AZStd::string absolutePath; AzFramework::StringFunc::Path::Join(watchFolder, assetInfo.m_relativePath.c_str(), absolutePath); diff --git a/Code/Tools/AssetProcessor/native/AssetManager/PathDependencyManager.cpp b/Code/Tools/AssetProcessor/native/AssetManager/PathDependencyManager.cpp index 78c49b1940..de8bde9b05 100644 --- a/Code/Tools/AssetProcessor/native/AssetManager/PathDependencyManager.cpp +++ b/Code/Tools/AssetProcessor/native/AssetManager/PathDependencyManager.cpp @@ -65,7 +65,7 @@ namespace AssetProcessor if (!AzFramework::StringFunc::Path::IsRelative(path.c_str())) { - if (m_platformConfig->ConvertToRelativePath(QString::fromUtf8(path.c_str()), relativePath, scanFolder, true)) + if (m_platformConfig->ConvertToRelativePath(QString::fromUtf8(path.c_str()), relativePath, scanFolder)) { auto* scanFolderInfo = m_platformConfig->GetScanFolderByPath(scanFolder); diff --git a/Code/Tools/AssetProcessor/native/AssetManager/SourceFileRelocator.cpp b/Code/Tools/AssetProcessor/native/AssetManager/SourceFileRelocator.cpp index f565309bce..a242c6377c 100644 --- a/Code/Tools/AssetProcessor/native/AssetManager/SourceFileRelocator.cpp +++ b/Code/Tools/AssetProcessor/native/AssetManager/SourceFileRelocator.cpp @@ -156,7 +156,7 @@ Please note that only those seed files will get updated that are active for your else { QString relativePathQString; - if (!PlatformConfiguration::ConvertToRelativePath(normalizedSource.c_str(), scanFolderInfo, relativePathQString, false)) + if (!PlatformConfiguration::ConvertToRelativePath(normalizedSource.c_str(), scanFolderInfo, relativePathQString)) { return AZ::Failure(AZStd::string::format("Failed to convert path to relative path. %s\n", normalizedSource.c_str())); } @@ -167,16 +167,6 @@ Please note that only those seed files will get updated that are active for your return AZ::Success(); } - AZStd::string SourceFileRelocator::RemoveDatabasePrefix(const ScanFolderInfo* scanFolder, AZStd::string sourceName) - { - if (!scanFolder->GetOutputPrefix().isEmpty()) - { - return sourceName.substr(scanFolder->GetOutputPrefix().size() + 1); //+1 to remove the slash after the prefix - } - - return sourceName; - } - QHash SourceFileRelocator::GetSources(QStringList pathMatches, const ScanFolderInfo* scanFolderInfo, SourceFileRelocationContainer& sources) const { @@ -188,7 +178,7 @@ Please note that only those seed files will get updated that are active for your PlatformConfiguration::ConvertToRelativePath(file, scanFolderInfo, databaseSourceName); m_stateData->QuerySourceBySourceNameScanFolderID(databaseSourceName.toUtf8().constData(), scanFolderInfo->ScanFolderID(), [this, &sources, &scanFolderInfo, &sourceIndexMap, &databaseSourceName](const AzToolsFramework::AssetDatabase::SourceDatabaseEntry& entry) { - sources.emplace_back(entry, GetProductMapForSource(entry.m_sourceID), RemoveDatabasePrefix(scanFolderInfo, entry.m_sourceName), scanFolderInfo); + sources.emplace_back(entry, GetProductMapForSource(entry.m_sourceID), entry.m_sourceName, scanFolderInfo); sourceIndexMap[databaseSourceName] = aznumeric_cast (sources.size() - 1); return true; }); @@ -357,12 +347,6 @@ Please note that only those seed files will get updated that are active for your QString relativeFileName(normalizedSource.c_str()); - //if relative path starts with the output prefix than remove it first - if (!scanFolderInfo->GetOutputPrefix().isEmpty() && relativeFileName.startsWith(scanFolderInfo->GetOutputPrefix(), Qt::CaseInsensitive)) - { - relativeFileName = relativeFileName.right(relativeFileName.length() - (scanFolderInfo->GetOutputPrefix().length() + 1)); // adding 1 for slash - } - QDir rooted(scanFolderInfo->ScanPath()); QString absolutePath = rooted.absoluteFilePath(relativeFileName); @@ -620,7 +604,7 @@ Please note that only those seed files will get updated that are active for your { QString relativePath; QString scanFolderName; - m_platformConfig->ConvertToRelativePath(newDestinationPath.c_str(), relativePath, scanFolderName, false); + m_platformConfig->ConvertToRelativePath(newDestinationPath.c_str(), relativePath, scanFolderName); relocationInfo.m_newAbsolutePath = newDestinationPath; relocationInfo.m_newRelativePath = relativePath.toUtf8().constData(); diff --git a/Code/Tools/AssetProcessor/native/AssetManager/SourceFileRelocator.h b/Code/Tools/AssetProcessor/native/AssetManager/SourceFileRelocator.h index 1fcda59b71..35c0216d4a 100644 --- a/Code/Tools/AssetProcessor/native/AssetManager/SourceFileRelocator.h +++ b/Code/Tools/AssetProcessor/native/AssetManager/SourceFileRelocator.h @@ -96,7 +96,7 @@ namespace AssetProcessor SourceFileRelocationInfo(const AZStd::string& filePath, const ScanFolderInfo* scanFolder) { QString relFilePath; - PlatformConfiguration::ConvertToRelativePath(filePath.c_str(), scanFolder, relFilePath, true); + PlatformConfiguration::ConvertToRelativePath(filePath.c_str(), scanFolder, relFilePath); m_oldRelativePath = relFilePath.toUtf8().data(); AzFramework::StringFunc::Path::ConstructFull(scanFolder->ScanPath().toUtf8().constData(), m_oldRelativePath.c_str(), m_oldAbsolutePath, false); m_oldAbsolutePath = AssetUtilities::NormalizeFilePath(m_oldAbsolutePath.c_str()).toUtf8().constData(); @@ -191,7 +191,6 @@ namespace AssetProcessor SourceFileRelocator(AZStd::shared_ptr stateData, PlatformConfiguration* platformConfiguration); ~SourceFileRelocator(); - static AZStd::string RemoveDatabasePrefix(const ScanFolderInfo* scanFolder, AZStd::string sourceName); static void MakePathRelative(const AZStd::string& parentPath, const AZStd::string& childPath, AZStd::string& parentRelative, AZStd::string& childRelative); static AZ::Outcome HandleWildcard(AZStd::string_view absFile, AZStd::string_view absSearch, AZStd::string destination); diff --git a/Code/Tools/AssetProcessor/native/AssetManager/assetProcessorManager.cpp b/Code/Tools/AssetProcessor/native/AssetManager/assetProcessorManager.cpp index d403b97359..47f79d9709 100644 --- a/Code/Tools/AssetProcessor/native/AssetManager/assetProcessorManager.cpp +++ b/Code/Tools/AssetProcessor/native/AssetManager/assetProcessorManager.cpp @@ -142,11 +142,6 @@ namespace AssetProcessor QString databaseSourceName = QString::fromUtf8(entry.m_sourceName.c_str()); QString scanFolderPath = QString::fromUtf8(entry.m_scanFolder.c_str()); QString relativeToScanFolderPath = databaseSourceName; - if (!entry.m_outputPrefix.empty()) - { - relativeToScanFolderPath = relativeToScanFolderPath.remove(0, static_cast(entry.m_outputPrefix.size()) + 1); - } - QString finalAbsolute = (QString("%1/%2").arg(scanFolderPath).arg(relativeToScanFolderPath)); m_sourceFilesInDatabase[finalAbsolute] = { scanFolderPath, relativeToScanFolderPath, databaseSourceName, entry.m_analysisFingerprint.c_str() }; @@ -173,12 +168,6 @@ namespace AssetProcessor if (scanFolderInfo.ScanFolderID() == entry.m_scanFolderPK) { scanFolderPath = scanFolderInfo.ScanPath(); - - if (!scanFolderInfo.GetOutputPrefix().isEmpty()) - { - relativeToScanFolderPath = relativeToScanFolderPath.remove(0, static_cast(scanFolderInfo.GetOutputPrefix().size()) + 1); - } - break; } } @@ -470,12 +459,12 @@ namespace AssetProcessor return; } - // note that m_SourceFilesInDatabase is a map from (full absolute path) --> (database name for file, which includes outputprefix) + // note that m_SourceFilesInDatabase is a map from (full absolute path) --> (database name for file) for (auto iter = m_sourceFilesInDatabase.begin(); iter != m_sourceFilesInDatabase.end(); iter++) { // CheckDeletedSourceFile actually expects the database name as the second value // iter.key is the full path normalized. iter.value is the database path. - // we need the relative path too, which involves removing the scan folder outputprefix it present: + // we need the relative path too: CheckDeletedSourceFile( iter.key(), iter.value().m_sourceRelativeToWatchFolder, iter.value().m_sourceDatabaseName, AZStd::chrono::system_clock::now()); @@ -1633,27 +1622,7 @@ namespace AssetProcessor AzToolsFramework::AssetDatabase::ScanFolderDatabaseEntry scanfolder; if (m_stateData->GetScanFolderByScanFolderID(source.m_scanFolderPK, scanfolder)) { - // there's one more thing to account for here, and thats the fact that the sourceName may have an outputPrefix appended on to it - // so for example, the scan folder might be c:/ly/dev/Gems/Clouds/Assets - // but the outputPrefix might be Clouds/Assets, meaning "put it in that folder in the cache instead of just at the root" - // When we have an outputprefix, we prepend it to SourceName so that its a unique source - // so for example, the sourceName might be Clouds/Assets/blah.tif - // if you were to blindly concatenate them you'd end up with c:/ly/dev/Gems/Clouds/Assets/Clouds/Assets/blah.tif - // ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - // The watch folder is here - // ^^^^^^^^^^^^^^ - // Prefix prepended - // ^^^^^^^^ - // actual name - // so remove the output prefix from sourcename if present before doing any source ops on it. - - AZStd::string sourceName(source.m_sourceName); - - if (!scanfolder.m_outputPrefix.empty()) - { - sourceName = sourceName.substr(scanfolder.m_outputPrefix.size() + 1); - } - AZStd::string fullSourcePath = AZStd::string::format("%s/%s", scanfolder.m_scanFolder.c_str(), sourceName.c_str()); + AZStd::string fullSourcePath = AZStd::string::format("%s/%s", scanfolder.m_scanFolder.c_str(), source.m_sourceName.c_str()); AssessFileInternal(fullSourcePath.c_str(), false); } @@ -2001,18 +1970,7 @@ namespace AssetProcessor //remove the jobs associated with these products m_stateData->RemoveJob(oldJobInfo.m_jobID); - // note that JobRemoved is supposed to emit a jobinfo that is not output-prefixed - if (!scanFolder->GetOutputPrefix().isEmpty()) - { - JobInfo newJobInfo(oldJobInfo); - QString sourcePathWithPrefix = QString::fromUtf8(oldJobInfo.m_sourceFile.c_str()); - newJobInfo.m_sourceFile = (sourcePathWithPrefix.right(sourcePathWithPrefix.length() - (scanFolder->GetOutputPrefix().length() + 1))).toUtf8().constData(); - Q_EMIT JobRemoved(newJobInfo); - } - else - { - Q_EMIT JobRemoved(oldJobInfo); - } + Q_EMIT JobRemoved(oldJobInfo); } } @@ -2239,7 +2197,7 @@ namespace AssetProcessor } AzToolsFramework::AssetDatabase::SourceDatabaseEntryContainer sources; - QString sourceName = scanFolderInfo->GetOutputPrefix().isEmpty() ? relativePath : QDir::cleanPath(scanFolderInfo->GetOutputPrefix() + QDir::separator() + relativePath); + QString sourceName = relativePath; m_stateData->GetSourcesLikeSourceName(sourceName, AzToolsFramework::AssetDatabase::AssetDatabaseConnection::StartsWith, sources); AZ_TracePrintf(AssetProcessor::DebugChannel, "CheckDeletedSourceFolder: %i matching files.\n", sources.size()); @@ -2250,11 +2208,6 @@ namespace AssetProcessor // reconstruct full path: QString actualRelativePath = source.m_sourceName.c_str(); - if (!scanFolderInfo->GetOutputPrefix().isEmpty()) - { - actualRelativePath = actualRelativePath.right(actualRelativePath.length() - (scanFolderInfo->GetOutputPrefix().length() + 1)); // adding one for separator - } - QString finalPath = scanFolder.absoluteFilePath(actualRelativePath); if (!QFile::exists(finalPath)) @@ -2513,11 +2466,6 @@ namespace AssetProcessor const ScanFolderInfo* scanFolderInfo = m_platformConfig->GetScanFolderForFile(normalizedPath); relativePathToFile = databasePathToFile; - // remove output prefix if present to generate relative path - if ((scanFolderInfo)&&(!scanFolderInfo->GetOutputPrefix().isEmpty())) - { - relativePathToFile = relativePathToFile.remove(0, static_cast(scanFolderInfo->GetOutputPrefix().length()) + 1); - } if (normalizedPath.length() >= AP_MAX_PATH_LEN) { @@ -2537,7 +2485,7 @@ namespace AssetProcessor job.m_jobEntry = JobEntry( QString::fromUtf8(jobInfo.m_watchFolder.c_str()), relativePathToFile, - databasePathToFile, // with outputprefix + databasePathToFile, jobInfo.m_builderGuid, *platformFromInfo, jobInfo.m_jobKey.c_str(), 0, GenerateNewJobRunKey(), @@ -2646,7 +2594,7 @@ namespace AssetProcessor // to call the expensive function to discover correct case. QString pathRelativeToScanFolder; QString scanFolderPath; - m_platformConfig->ConvertToRelativePath(overrider, pathRelativeToScanFolder, scanFolderPath, false /*include output prefix*/); + m_platformConfig->ConvertToRelativePath(overrider, pathRelativeToScanFolder, scanFolderPath); AssetUtilities::UpdateToCorrectCase(scanFolderPath, pathRelativeToScanFolder); overrider = QDir(scanFolderPath).absoluteFilePath(pathRelativeToScanFolder); } @@ -3367,10 +3315,6 @@ namespace AssetProcessor newSourceInfo.m_watchFolder = scanFolder->ScanPath(); newSourceInfo.m_sourceDatabaseName = databasePathToFile; newSourceInfo.m_sourceRelativeToWatchFolder = databasePathToFile; - if (!scanFolder->GetOutputPrefix().isEmpty()) - { - newSourceInfo.m_sourceRelativeToWatchFolder = newSourceInfo.m_sourceRelativeToWatchFolder.remove(0, static_cast(scanFolder->GetOutputPrefix().length()) + 1); - } { // this scope exists only to narrow the range of m_sourceUUIDToSourceNameMapMutex @@ -3644,12 +3588,6 @@ namespace AssetProcessor continue; } - //if relative path starts with the output prefix then remove it first - if (!scanFolderInfo->GetOutputPrefix().isEmpty() && knownPathBeforeWildcard.startsWith(scanFolderInfo->GetOutputPrefix(), Qt::CaseInsensitive)) - { - knownPathBeforeWildcard = knownPathBeforeWildcard.right(knownPathBeforeWildcard.length() - (scanFolderInfo->GetOutputPrefix().length() + 1)); // adding 1 for slash - } - QDir rooted(scanFolderInfo->ScanPath()); QString absolutePath = rooted.absoluteFilePath(knownPathBeforeWildcard); @@ -3950,7 +3888,6 @@ namespace AssetProcessor scanFolderFromConfigFile.ScanPath().toUtf8().constData(), scanFolderFromConfigFile.GetDisplayName().toUtf8().constData(), scanFolderFromConfigFile.GetPortableKey().toUtf8().constData(), - scanFolderFromConfigFile.GetOutputPrefix().toUtf8().constData(), scanFolderFromConfigFile.IsRoot()); //remove this scan path from the scan folders so what is left can deleted m_scanFoldersInDatabase.erase(found); @@ -3962,7 +3899,6 @@ namespace AssetProcessor scanFolderFromConfigFile.ScanPath().toUtf8().constData(), scanFolderFromConfigFile.GetDisplayName().toUtf8().constData(), scanFolderFromConfigFile.GetPortableKey().toUtf8().constData(), - scanFolderFromConfigFile.GetOutputPrefix().toUtf8().constData(), scanFolderFromConfigFile.IsRoot()); } @@ -4006,11 +3942,7 @@ namespace AssetProcessor result.m_sourceDatabaseName = QString::fromUtf8(sourceDatabaseEntry.m_sourceName.c_str()); result.m_watchFolder = QString::fromUtf8(scanFolder.m_scanFolder.c_str()); result.m_sourceRelativeToWatchFolder = result.m_sourceDatabaseName; - if (!scanFolder.m_outputPrefix.empty()) - { - result.m_sourceRelativeToWatchFolder = result.m_sourceRelativeToWatchFolder.remove(0, static_cast(scanFolder.m_outputPrefix.size()) + 1); - } - + { // this scope exists to restrict the duration of the below lock. AZStd::lock_guard lock(m_sourceUUIDToSourceInfoMapMutex); @@ -4088,16 +4020,7 @@ namespace AssetProcessor { sourceDatabaseEntry.m_scanFolderPK = scanFolder->ScanFolderID(); - if (!scanFolder->GetOutputPrefix().isEmpty()) - { - // replace the "output prefix" part of the file name with the one from the ini file to sort out case sensitivity problems. - QString withoutOutputPrefix = relativeSourceFilePath.remove(0, scanFolder->GetOutputPrefix().length() + 1); - sourceDatabaseEntry.m_sourceName = AZStd::string::format("%s/%s", scanFolder->GetOutputPrefix().toUtf8().constData(), withoutOutputPrefix.toUtf8().data()); - } - else - { - sourceDatabaseEntry.m_sourceName = relativeSourceFilePath.toUtf8().constData(); - } + sourceDatabaseEntry.m_sourceName = relativeSourceFilePath.toUtf8().constData(); sourceDatabaseEntry.m_sourceGuid = AssetUtilities::CreateSafeSourceUUIDFromName(sourceDatabaseEntry.m_sourceName.c_str()); @@ -4709,7 +4632,7 @@ namespace AssetProcessor QString databasePath; QString scanFolderPath; - m_platformConfig->ConvertToRelativePath(metaDataFileName, databasePath, scanFolderPath, true); + m_platformConfig->ConvertToRelativePath(metaDataFileName, databasePath, scanFolderPath); outFilesToFingerprint.insert(AZStd::make_pair(metaDataFileName.toUtf8().constData(), databasePath.toUtf8().constData())); } } diff --git a/Code/Tools/AssetProcessor/native/AssetManager/assetProcessorManager.h b/Code/Tools/AssetProcessor/native/AssetManager/assetProcessorManager.h index 4c203567e9..88f74c886b 100644 --- a/Code/Tools/AssetProcessor/native/AssetManager/assetProcessorManager.h +++ b/Code/Tools/AssetProcessor/native/AssetManager/assetProcessorManager.h @@ -163,7 +163,7 @@ namespace AssetProcessor //! Internal structure that will hold all the necessary source info struct SourceFileInfo { - QString m_databasePath; // clarification: this is the database path (ie, includes outputprefix) + QString m_databasePath; // clarification: this is the database path QString m_pathRelativeToScanFolder; AZ::Uuid m_uuid; const ScanFolderInfo* m_scanFolder{ nullptr }; @@ -222,7 +222,7 @@ namespace AssetProcessor //! Emit whenever a new asset is found or an existing asset is updated void AssetMessage(AzFramework::AssetSystem::AssetNotificationMessage message); - // InputAssetProcessed - uses absolute asset path of input file - no outputprefix + // InputAssetProcessed - uses absolute asset path of input file void InputAssetProcessed(QString fullAssetPath, QString platform); void RequestInputAssetStatus(QString inputAssetPath, QString platform, QString jobDescription); diff --git a/Code/Tools/AssetProcessor/native/AssetManager/assetScanFolderInfo.h b/Code/Tools/AssetProcessor/native/AssetManager/assetScanFolderInfo.h index 13c1a8671a..5767822451 100644 --- a/Code/Tools/AssetProcessor/native/AssetManager/assetScanFolderInfo.h +++ b/Code/Tools/AssetProcessor/native/AssetManager/assetScanFolderInfo.h @@ -28,7 +28,6 @@ namespace AssetProcessor QString path, QString displayName, QString portableKey, - QString prefix, bool isRoot, bool recurseSubFolders, AZStd::vector platforms = AZStd::vector{}, @@ -38,7 +37,6 @@ namespace AssetProcessor : m_scanPath(path) , m_displayName(displayName) , m_portableKey (portableKey) - , m_outputPrefix(prefix) , m_isRoot(isRoot) , m_recurseSubFolders(recurseSubFolders) , m_order(order) @@ -62,11 +60,6 @@ namespace AssetProcessor return m_displayName; } - QString GetOutputPrefix() const - { - return m_outputPrefix; - } - bool IsRoot() const { return m_isRoot; @@ -110,7 +103,6 @@ namespace AssetProcessor private: QString m_scanPath; // the local path to scan ("C:\\whatever") QString m_displayName; // the display name to show in GUIs that show it. - QString m_outputPrefix; // the output prefix to target results into (eg, put things in a certain subfolder of @assets@ rather than the relative to assets itself) QString m_portableKey; // a key that remains the same even if the asset database is moved from computer to computer. bool m_isRoot = false; // is it 'the' root folder? bool m_recurseSubFolders = true; diff --git a/Code/Tools/AssetProcessor/native/AssetManager/assetScannerWorker.cpp b/Code/Tools/AssetProcessor/native/AssetManager/assetScannerWorker.cpp index a54e9b3c38..c869e40236 100644 --- a/Code/Tools/AssetProcessor/native/AssetManager/assetScannerWorker.cpp +++ b/Code/Tools/AssetProcessor/native/AssetManager/assetScannerWorker.cpp @@ -126,7 +126,7 @@ void AssetScannerWorker::ScanForSourceFiles(const ScanFolderInfo& scanFolderInfo { //Entry is a directory m_folderList.insert(AZStd::move(assetFileInfo)); - ScanFolderInfo tempScanFolderInfo(absPath, "", "", "", false, true); + ScanFolderInfo tempScanFolderInfo(absPath, "", "", false, true); ScanForSourceFiles(tempScanFolderInfo, rootScanFolder); } else diff --git a/Code/Tools/AssetProcessor/native/resourcecompiler/RCCommon.h b/Code/Tools/AssetProcessor/native/resourcecompiler/RCCommon.h index 4143019627..c3dd994ef5 100644 --- a/Code/Tools/AssetProcessor/native/resourcecompiler/RCCommon.h +++ b/Code/Tools/AssetProcessor/native/resourcecompiler/RCCommon.h @@ -41,7 +41,7 @@ namespace AssetProcessor public: QueueElementID() = default; - ///! note that inputAssetName is a database name (so includes outputprefix), not a relative path. + ///! note that inputAssetName is a database name, not a relative path. QueueElementID(QString inputAssetName, QString platform, QString jobDescriptor); diff --git a/Code/Tools/AssetProcessor/native/resourcecompiler/rcjoblistmodel.h b/Code/Tools/AssetProcessor/native/resourcecompiler/rcjoblistmodel.h index e364a503b9..9701f4cd9a 100644 --- a/Code/Tools/AssetProcessor/native/resourcecompiler/rcjoblistmodel.h +++ b/Code/Tools/AssetProcessor/native/resourcecompiler/rcjoblistmodel.h @@ -96,7 +96,7 @@ namespace AssetProcessor RCJob* getItem(int index) const; int GetIndexOfProcessingJob(const QueueElementID& elementId); - ///! EraseJobs expects the database name of the source file. (So with outputprefix) + ///! EraseJobs expects the database name of the source file. void EraseJobs(QString sourceFileDatabaseName, AZStd::vector& pendingJobs); private: diff --git a/Code/Tools/AssetProcessor/native/tests/AssetCatalog/AssetCatalogUnitTests.cpp b/Code/Tools/AssetProcessor/native/tests/AssetCatalog/AssetCatalogUnitTests.cpp index 281d5a24fa..e92e9afba5 100644 --- a/Code/Tools/AssetProcessor/native/tests/AssetCatalog/AssetCatalogUnitTests.cpp +++ b/Code/Tools/AssetProcessor/native/tests/AssetCatalog/AssetCatalogUnitTests.cpp @@ -217,7 +217,6 @@ namespace AssetProcessor scanFolderInfo.ScanPath().toStdString().c_str(), scanFolderInfo.GetDisplayName().toStdString().c_str(), scanFolderInfo.GetPortableKey().toStdString().c_str(), - scanFolderInfo.GetOutputPrefix().toStdString().c_str(), scanFolderInfo.IsRoot()); dbConn->SetScanFolder(newScanFolder); } @@ -230,12 +229,12 @@ namespace AssetProcessor config.EnablePlatform({ "fandango" ,{ "console", "renderer" } }, false); AZStd::vector platforms; config.PopulatePlatformsForScanFolder(platforms); - // PATH DisplayName PortKey outputfolder root recurse platforms order - AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder4"), "subfolder4", "subfolder4", "", false, false, platforms, -6), config, dbConn); // subfolder 4 overrides subfolder3 - AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder3"), "subfolder3", "subfolder3", "", false, false, platforms, -5), config, dbConn); // subfolder 3 overrides subfolder2 - AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder2"), "subfolder2", "subfolder2", "", false, true, platforms, -2), config, dbConn); // subfolder 2 overrides subfolder1 - AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder1"), "subfolder1", "subfolder1", "", false, true, platforms, -1), config, dbConn); // subfolder1 overrides root - AddScanFolder(ScanFolderInfo(tempPath.absolutePath(), "temp", "tempfolder", "", true, false, platforms, 0), config, dbConn); // add the root + // PATH DisplayName PortKey root recurse platforms order + AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder4"), "subfolder4", "subfolder4", false, false, platforms, -6), config, dbConn); // subfolder 4 overrides subfolder3 + AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder3"), "subfolder3", "subfolder3", false, false, platforms, -5), config, dbConn); // subfolder 3 overrides subfolder2 + AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder2"), "subfolder2", "subfolder2", false, true, platforms, -2), config, dbConn); // subfolder 2 overrides subfolder1 + AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder1"), "subfolder1", "subfolder1", false, true, platforms, -1), config, dbConn); // subfolder1 overrides root + AddScanFolder(ScanFolderInfo(tempPath.absolutePath(), "temp", "tempfolder", true, false, platforms, 0), config, dbConn); // add the root config.AddMetaDataType("exportsettings", QString()); diff --git a/Code/Tools/AssetProcessor/native/tests/AssetProcessorMessagesTests.cpp b/Code/Tools/AssetProcessor/native/tests/AssetProcessorMessagesTests.cpp index 1b3bac2897..c33943f9a7 100644 --- a/Code/Tools/AssetProcessor/native/tests/AssetProcessorMessagesTests.cpp +++ b/Code/Tools/AssetProcessor/native/tests/AssetProcessorMessagesTests.cpp @@ -317,7 +317,7 @@ namespace AssetProcessorMessagesTests using namespace AzToolsFramework::AssetDatabase; // Setup the database with all needed info - ScanFolderDatabaseEntry scanfolder1("scanfolder1", "scanfolder1", "scanfolder1", ""); + ScanFolderDatabaseEntry scanfolder1("scanfolder1", "scanfolder1", "scanfolder1"); ASSERT_TRUE(m_dbConn.SetScanFolder(scanfolder1)); SourceDatabaseEntry source1(scanfolder1.m_scanFolderID, "source1.png", AZ::Uuid::CreateRandom(), "Fingerprint"); diff --git a/Code/Tools/AssetProcessor/native/tests/FileProcessor/FileProcessorTests.cpp b/Code/Tools/AssetProcessor/native/tests/FileProcessor/FileProcessorTests.cpp index cb5dd8e532..141a5a9b67 100644 --- a/Code/Tools/AssetProcessor/native/tests/FileProcessor/FileProcessorTests.cpp +++ b/Code/Tools/AssetProcessor/native/tests/FileProcessor/FileProcessorTests.cpp @@ -46,10 +46,10 @@ namespace UnitTests m_data->m_fileProcessor = AZStd::make_unique(m_data->m_config.get()); - m_data->m_scanFolder = { m_data->m_temporarySourceDir.absolutePath().toUtf8().constData(), "dev", "rootportkey", "" }; + m_data->m_scanFolder = { m_data->m_temporarySourceDir.absolutePath().toUtf8().constData(), "dev", "rootportkey" }; ASSERT_TRUE(m_data->m_connection.SetScanFolder(m_data->m_scanFolder)); - m_data->m_config->AddScanFolder(ScanFolderInfo(m_data->m_temporarySourceDir.absolutePath(), "dev", "rootportkey", "", false, true, m_data->m_config->GetEnabledPlatforms(), 0, m_data->m_scanFolder.m_scanFolderID)); + m_data->m_config->AddScanFolder(ScanFolderInfo(m_data->m_temporarySourceDir.absolutePath(), "dev", "rootportkey", false, true, m_data->m_config->GetEnabledPlatforms(), 0, m_data->m_scanFolder.m_scanFolderID)); for (int index = 0; index < 10; ++index) { diff --git a/Code/Tools/AssetProcessor/native/tests/SourceFileRelocatorTests.cpp b/Code/Tools/AssetProcessor/native/tests/SourceFileRelocatorTests.cpp index 852d68cba2..2731aa6c5a 100644 --- a/Code/Tools/AssetProcessor/native/tests/SourceFileRelocatorTests.cpp +++ b/Code/Tools/AssetProcessor/native/tests/SourceFileRelocatorTests.cpp @@ -84,8 +84,8 @@ namespace UnitTests AZStd::vector platforms; m_data->m_platformConfig.PopulatePlatformsForScanFolder(platforms); - m_data->m_scanFolder1 = { tempPath.absoluteFilePath("dev").toUtf8().constData(), "dev", "devKey", ""}; - m_data->m_scanFolder2 = { tempPath.absoluteFilePath("folder").toUtf8().constData(), "folder", "folderKey", "prefix" }; + m_data->m_scanFolder1 = { tempPath.absoluteFilePath("dev").toUtf8().constData(), "dev", "devKey"}; + m_data->m_scanFolder2 = { tempPath.absoluteFilePath("folder").toUtf8().constData(), "folder", "folderKey"}; ASSERT_TRUE(m_data->m_connection->SetScanFolder(m_data->m_scanFolder1)); ASSERT_TRUE(m_data->m_connection->SetScanFolder(m_data->m_scanFolder2)); @@ -93,21 +93,19 @@ namespace UnitTests ScanFolderInfo scanFolder1(m_data->m_scanFolder1.m_scanFolder.c_str(), m_data->m_scanFolder1.m_displayName.c_str(), m_data->m_scanFolder1.m_portableKey.c_str(), - m_data->m_scanFolder1.m_outputPrefix.c_str(), false, true, platforms, 0, m_data->m_scanFolder1.m_scanFolderID); m_data->m_platformConfig.AddScanFolder(scanFolder1); ScanFolderInfo scanFolder2(m_data->m_scanFolder2.m_scanFolder.c_str(), m_data->m_scanFolder2.m_displayName.c_str(), m_data->m_scanFolder2.m_portableKey.c_str(), - m_data->m_scanFolder2.m_outputPrefix.c_str(), false, true, platforms, 0, m_data->m_scanFolder2.m_scanFolderID); m_data->m_platformConfig.AddScanFolder(scanFolder2); SourceDatabaseEntry sourceFile1 = { m_data->m_scanFolder1.m_scanFolderID, "subfolder1/somefile.tif", AZ::Uuid::CreateRandom(), "AnalysisFingerprint" }; SourceDatabaseEntry sourceFile2 = { m_data->m_scanFolder1.m_scanFolderID, "subfolder1/otherfile.tif", AZ::Uuid::CreateRandom(), "AnalysisFingerprint" }; - SourceDatabaseEntry sourceFile3 = { m_data->m_scanFolder2.m_scanFolderID, "prefix/otherfile.tif", AZ::Uuid::CreateRandom(), "AnalysisFingerprint" }; - SourceDatabaseEntry sourceFile4 = { m_data->m_scanFolder2.m_scanFolderID, "prefix/a/b/c/d/otherfile.tif", AZ::Uuid::CreateRandom(), "AnalysisFingerprint" }; + SourceDatabaseEntry sourceFile3 = { m_data->m_scanFolder2.m_scanFolderID, "otherfile.tif", AZ::Uuid::CreateRandom(), "AnalysisFingerprint" }; + SourceDatabaseEntry sourceFile4 = { m_data->m_scanFolder2.m_scanFolderID, "a/b/c/d/otherfile.tif", AZ::Uuid::CreateRandom(), "AnalysisFingerprint" }; SourceDatabaseEntry sourceFile5 = { m_data->m_scanFolder1.m_scanFolderID, "duplicate/file1.tif", AZ::Uuid::CreateRandom(), "AnalysisFingerprint" }; SourceDatabaseEntry sourceFile6 = { m_data->m_scanFolder2.m_scanFolderID, "duplicate/file1.tif", AZ::Uuid::CreateRandom(), "AnalysisFingerprint" }; SourceDatabaseEntry sourceFile7 = { m_data->m_scanFolder1.m_scanFolderID, "subfolder2/file.tif", AZ::Uuid::CreateRandom(), "AnalysisFingerprint" }; @@ -128,7 +126,7 @@ namespace UnitTests ASSERT_TRUE(m_data->m_connection->SetSource(sourceFile11)); SourceFileDependencyEntry dependency1 = { AZ::Uuid::CreateRandom(), "subfolder1/somefile.tif", "subfolder1/otherfile.tif", SourceFileDependencyEntry::TypeOfDependency::DEP_SourceToSource, false }; - SourceFileDependencyEntry dependency2 = { AZ::Uuid::CreateRandom(), "subfolder1/otherfile.tif", "prefix/otherfile.tif", SourceFileDependencyEntry::TypeOfDependency::DEP_JobToJob, false }; + SourceFileDependencyEntry dependency2 = { AZ::Uuid::CreateRandom(), "subfolder1/otherfile.tif", "otherfile.tif", SourceFileDependencyEntry::TypeOfDependency::DEP_JobToJob, false }; ASSERT_TRUE(m_data->m_connection->SetSourceFileDependency(dependency1)); ASSERT_TRUE(m_data->m_connection->SetSourceFileDependency(dependency2)); @@ -252,7 +250,7 @@ namespace UnitTests const ScanFolderInfo* info; auto result = m_data->m_reporter->GetSourcesByPath(source, relocationContainer, info, excludeMetaDataFiles); - ASSERT_EQ(result.IsSuccess(), expectSuccess) << result.GetError().c_str(); + ASSERT_EQ(result.IsSuccess(), expectSuccess) << (!result.IsSuccess() ? result.GetError().c_str() : ""); if (expectSuccess) { @@ -423,13 +421,13 @@ namespace UnitTests TEST_F(SourceFileRelocatorTest, GetSources_PrefixedFile_Succeeds) { - TestGetSourcesByPath("otherfile.tif", { "prefix/otherfile.tif" }); + TestGetSourcesByPath("otherfile.tif", { "otherfile.tif" }); } TEST_F(SourceFileRelocatorTest, GetSources_PrefixedAbsFile_Succeeds) { QDir tempDir(m_tempDir.path()); - TestGetSourcesByPath( tempDir.absoluteFilePath("folder/otherfile.tif").toUtf8().constData(), { "prefix/otherfile.tif" }); + TestGetSourcesByPath(tempDir.absoluteFilePath("folder/otherfile.tif").toUtf8().constData(), { "otherfile.tif" }); } TEST_F(SourceFileRelocatorTest, GetSources_Folder_Fails) @@ -664,7 +662,7 @@ namespace UnitTests ASSERT_TRUE(m_data->m_reporter->GetSourcesByPath(tempPath.absoluteFilePath(AZStd::string("folder/o*").c_str()).toUtf8().constData(), entryContainer, info)); ASSERT_EQ(entryContainer.size(), 1); - ASSERT_STREQ(entryContainer[0].m_sourceEntry.m_sourceName.c_str(), "prefix/otherfile.tif"); + ASSERT_STREQ(entryContainer[0].m_sourceEntry.m_sourceName.c_str(), "otherfile.tif"); m_data->m_reporter->PopulateDependencies(entryContainer); @@ -803,7 +801,7 @@ namespace UnitTests FileUpdateTasks updateTasks; ASSERT_TRUE(m_data->m_reporter->GetSourcesByPath(tempPath.absoluteFilePath("folder/*").toUtf8().constData(), entryContainer, info)); - ASSERT_EQ(entryContainer.size(), 2); + ASSERT_EQ(entryContainer.size(), 3); m_data->m_reporter->ComputeDestination(entryContainer, info, "*", "someOtherPlace/*", destInfo); m_data->m_reporter->PopulateDependencies(entryContainer); diff --git a/Code/Tools/AssetProcessor/native/tests/assetdatabase/AssetDatabaseTest.cpp b/Code/Tools/AssetProcessor/native/tests/assetdatabase/AssetDatabaseTest.cpp index 12b202e804..8c3fdb3fbe 100644 --- a/Code/Tools/AssetProcessor/native/tests/assetdatabase/AssetDatabaseTest.cpp +++ b/Code/Tools/AssetProcessor/native/tests/assetdatabase/AssetDatabaseTest.cpp @@ -81,7 +81,7 @@ namespace UnitTests // Product: "someproduct4.dds" subid: 4 void CreateCoverageTestData() { - m_data->m_scanFolder = { "c:/O3DE/dev", "dev", "rootportkey", "" }; + m_data->m_scanFolder = { "c:/O3DE/dev", "dev", "rootportkey" }; ASSERT_TRUE(m_data->m_connection.SetScanFolder(m_data->m_scanFolder)); m_data->m_sourceFile1 = { m_data->m_scanFolder.m_scanFolderID, "somefile.tif", AZ::Uuid::CreateRandom(), "AnalysisFingerprint1"}; @@ -239,7 +239,7 @@ namespace UnitTests // we'll create all of those first (except product) before starting the product test. //add a scanfolder. None of this has to exist in real disk, this is a db test only. - ScanFolderDatabaseEntry scanFolder {"c:/O3DE/dev", "dev", "rootportkey", ""}; + ScanFolderDatabaseEntry scanFolder{ "c:/O3DE/dev", "dev", "rootportkey" }; EXPECT_TRUE(m_data->m_connection.SetScanFolder(scanFolder)); ASSERT_NE(scanFolder.m_scanFolderID, AzToolsFramework::AssetDatabase::InvalidEntryId); @@ -278,7 +278,7 @@ namespace UnitTests // to add a product legitimately you have to have a full chain of primary keys, chain is: // ScanFolder --> Source --> job --> product. // we'll create all of those first (except product) before starting the product test. - ScanFolderDatabaseEntry scanFolder{ "c:/O3DE/dev", "dev", "rootportkey", "" }; + ScanFolderDatabaseEntry scanFolder{ "c:/O3DE/dev", "dev", "rootportkey" }; ASSERT_TRUE(m_data->m_connection.SetScanFolder(scanFolder)); SourceDatabaseEntry sourceEntry{ scanFolder.m_scanFolderID, "somefile.tif", AZ::Uuid::CreateRandom(), "fingerprint1" }; @@ -323,7 +323,7 @@ namespace UnitTests // this is actually a very common case (same job id, same subID) TEST_F(AssetDatabaseTest, SetProduct_SpecificPK_Succeeds_SameSubID_SameJobID) { - ScanFolderDatabaseEntry scanFolder{ "c:/O3DE/dev", "dev", "rootportkey", "" }; + ScanFolderDatabaseEntry scanFolder{ "c:/O3DE/dev", "dev", "rootportkey"}; ASSERT_TRUE(m_data->m_connection.SetScanFolder(scanFolder)); SourceDatabaseEntry sourceEntry{ scanFolder.m_scanFolderID, "somefile.tif", AZ::Uuid::CreateRandom(), "fingerprint1" }; ASSERT_TRUE(m_data->m_connection.SetSource(sourceEntry)); diff --git a/Code/Tools/AssetProcessor/native/tests/assetmanager/AssetProcessorManagerTest.cpp b/Code/Tools/AssetProcessor/native/tests/assetmanager/AssetProcessorManagerTest.cpp index d8afda1b2c..07d1e48229 100644 --- a/Code/Tools/AssetProcessor/native/tests/assetmanager/AssetProcessorManagerTest.cpp +++ b/Code/Tools/AssetProcessor/native/tests/assetmanager/AssetProcessorManagerTest.cpp @@ -63,13 +63,6 @@ public: friend class GTEST_TEST_CLASS_NAME_(AssetProcessorManagerTest, UpdateSourceFileDependenciesDatabase_WildcardMissingFiles_ByName_UpdatesWhenTheyAppear); friend class GTEST_TEST_CLASS_NAME_(AssetProcessorManagerTest, JobDependencyOrderOnce_MultipleJobs_EmitOK); - friend class GTEST_TEST_CLASS_NAME_(AssetProcessorManagerTest, UpdateSourceFileDependenciesDatabase_WithOutputPrefix_BasicTest); - friend class GTEST_TEST_CLASS_NAME_(AssetProcessorManagerTest, UpdateSourceFileDependenciesDatabase_WithOutputPrefix_UpdateTest); - friend class GTEST_TEST_CLASS_NAME_(AssetProcessorManagerTest, UpdateSourceFileDependenciesDatabase_WithOutputPrefix_MissingFiles_ByUuid); - friend class GTEST_TEST_CLASS_NAME_(AssetProcessorManagerTest, UpdateSourceFileDependenciesDatabase_WithOutputPrefix_MissingFiles_ByName); - friend class GTEST_TEST_CLASS_NAME_(AssetProcessorManagerTest, UpdateSourceFileDependenciesDatabase_WithOutputPrefix_MissingFiles_ByUuid_UpdatesWhenTheyAppear); - friend class GTEST_TEST_CLASS_NAME_(AssetProcessorManagerTest, UpdateSourceFileDependenciesDatabase_WithOutputPrefix_MissingFiles_ByName_UpdatesWhenTheyAppear); - friend class GTEST_TEST_CLASS_NAME_(AssetProcessorManagerTest, SourceFileProcessFailure_ClearsFingerprint); friend class GTEST_TEST_CLASS_NAME_(AbsolutePathProductDependencyTest, UnresolvedProductPathDependency_AssetProcessedTwice_DoesNotDuplicateDependency); @@ -243,15 +236,10 @@ void AssetProcessorManagerTest::SetUp() m_config->EnablePlatform({ "pc", { "host", "renderer", "desktop" } }, true); - m_config->AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder1"), "subfolder1", "subfolder1", "", false, true, m_config->GetEnabledPlatforms() )); - - // add a scan folder that has an output prefix: - m_config->AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder2"), "subfolder2", "subfolder2", "redirected", false, true, m_config->GetEnabledPlatforms())); - - //adding another scan folder with an output prefix - m_config->AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder3"), "subfolder3", "subfolder3", "dummy", false, true, m_config->GetEnabledPlatforms())); - - m_config->AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder4"), "subfolder4", "subfolder4", "", false, true, m_config->GetEnabledPlatforms())); + m_config->AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder1"), "subfolder1", "subfolder1", false, true, m_config->GetEnabledPlatforms(), 1)); + m_config->AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder2/redirected"), "subfolder2", "subfolder2", false, true, m_config->GetEnabledPlatforms())); + m_config->AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder3"), "subfolder3", "subfolder3", false, true, m_config->GetEnabledPlatforms(), 1)); + m_config->AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder4"), "subfolder4", "subfolder4", false, true, m_config->GetEnabledPlatforms(), 1)); m_config->AddMetaDataType("assetinfo", ""); AssetRecognizer rec; AssetPlatformSpec specpc; @@ -459,72 +447,6 @@ TEST_F(AssetProcessorManagerTest, DeleteFolder_SignalsDeleteOfContainedFiles) EXPECT_EQ(1, count); } -TEST_F(AssetProcessorManagerTest, UnitTestForOutPutPrefix) -{ - using namespace AssetProcessor; - QDir tempPath(m_tempDir.path()); - - UnitTestUtils::CreateDummyFile(tempPath.absoluteFilePath("subfolder2/test.txt")); - UnitTestUtils::CreateDummyFile(tempPath.absoluteFilePath("subfolder3/test.txt")); - - int count = 0; - auto connection = QObject::connect(m_assetProcessorManager.get(), &AssetProcessorManager::AssetToProcess, [&count](JobDetails jobDetails) - { - if (jobDetails.m_jobEntry.m_databaseSourceName.compare("redirected/test.txt", Qt::CaseInsensitive) == 0 || - jobDetails.m_jobEntry.m_databaseSourceName.compare("dummy/test.txt", Qt::CaseInsensitive) == 0 ) - { - count++; - } - }); - - - m_isIdling = false; - // tell the APM about the files: - QMetaObject::invokeMethod(m_assetProcessorManager.get(), "AssessModifiedFile", Qt::QueuedConnection, Q_ARG(QString, tempPath.absoluteFilePath("subfolder2/test.txt"))); - QMetaObject::invokeMethod(m_assetProcessorManager.get(), "AssessModifiedFile", Qt::QueuedConnection, Q_ARG(QString, tempPath.absoluteFilePath("subfolder3/test.txt"))); - ASSERT_TRUE(BlockUntilIdle(5000)); - - EXPECT_EQ(2, count); - - EXPECT_TRUE(QFile::remove(tempPath.absoluteFilePath("subfolder2/test.txt"))); - EXPECT_TRUE(QFile::remove(tempPath.absoluteFilePath("subfolder3/test.txt"))); - -} - -TEST_F(AssetProcessorManagerTest, UnitTestForOutPutPrefixWithMultipleNotification) -{ - using namespace AssetProcessor; - QDir tempPath(m_tempDir.path()); - - UnitTestUtils::CreateDummyFile(tempPath.absoluteFilePath("subfolder2/test.txt")); - UnitTestUtils::CreateDummyFile(tempPath.absoluteFilePath("subfolder3/test.txt")); - - int count = 0; - auto connection = QObject::connect(m_assetProcessorManager.get(), &AssetProcessorManager::AssetToProcess, [&count](JobDetails jobDetails) - { - if (jobDetails.m_jobEntry.m_databaseSourceName.compare("redirected/test.txt", Qt::CaseInsensitive) == 0 || - jobDetails.m_jobEntry.m_databaseSourceName.compare("dummy/test.txt", Qt::CaseInsensitive) == 0) - { - count++; - } - }); - - - m_isIdling = false; - // we are putting multiple entries in the pipeline here and testing that we still receive only unique notifications for processing those assets - QMetaObject::invokeMethod(m_assetProcessorManager.get(), "AssessModifiedFile", Qt::QueuedConnection, Q_ARG(QString, tempPath.absoluteFilePath("subfolder2/test.txt"))); - QMetaObject::invokeMethod(m_assetProcessorManager.get(), "AssessModifiedFile", Qt::QueuedConnection, Q_ARG(QString, tempPath.absoluteFilePath("subfolder2/test.txt"))); - QMetaObject::invokeMethod(m_assetProcessorManager.get(), "AssessModifiedFile", Qt::QueuedConnection, Q_ARG(QString, tempPath.absoluteFilePath("subfolder2/test.txt"))); - QMetaObject::invokeMethod(m_assetProcessorManager.get(), "AssessModifiedFile", Qt::QueuedConnection, Q_ARG(QString, tempPath.absoluteFilePath("subfolder3/test.txt"))); - QMetaObject::invokeMethod(m_assetProcessorManager.get(), "AssessModifiedFile", Qt::QueuedConnection, Q_ARG(QString, tempPath.absoluteFilePath("subfolder3/test.txt"))); - QMetaObject::invokeMethod(m_assetProcessorManager.get(), "AssessModifiedFile", Qt::QueuedConnection, Q_ARG(QString, tempPath.absoluteFilePath("subfolder3/test.txt"))); - ASSERT_TRUE(BlockUntilIdle(5000)); - - EXPECT_EQ(2, count); - EXPECT_TRUE(QFile::remove(tempPath.absoluteFilePath("subfolder2/test.txt"))); - EXPECT_TRUE(QFile::remove(tempPath.absoluteFilePath("subfolder3/test.txt"))); -} - TEST_F(AssetProcessorManagerTest, UnitTestForGettingJobInfoBySourceUUIDFailure) { using namespace AzToolsFramework::AssetSystem; @@ -1191,7 +1113,7 @@ TEST_F(AssetProcessorManagerTest, BuilderSDK_API_CreateJobs_HasValidParameters_W { QDir tempPath(m_tempDir.path()); // here we push a file change through APM and make sure that "CreateJobs" has correct parameters, with no output redirection - QString absPath(tempPath.absoluteFilePath("subfolder2/test_text.txt")); + QString absPath(tempPath.absoluteFilePath("subfolder2/redirected/test_text.txt")); UnitTestUtils::CreateDummyFile(absPath); m_mockApplicationManager->ResetMockBuilderCreateJobCalls(); @@ -1212,7 +1134,7 @@ TEST_F(AssetProcessorManagerTest, BuilderSDK_API_CreateJobs_HasValidParameters_W // subfolder2 has its output redirected in the cache // this test makes sure that the CreateJobs API is completely unaffected by that and none of the internal database stuff // is reflected by the API. - EXPECT_STREQ(req.m_watchFolder.c_str(), tempPath.absoluteFilePath("subfolder2").toUtf8().constData()); + EXPECT_STREQ(req.m_watchFolder.c_str(), tempPath.absoluteFilePath("subfolder2/redirected").toUtf8().constData()); EXPECT_STREQ(req.m_sourceFile.c_str(), "test_text.txt"); // only the name should be there, no output prefix. EXPECT_NE(req.m_sourceFileUUID, AZ::Uuid::CreateNull()); @@ -2354,7 +2276,7 @@ TEST_F(PathDependencyTest, AbsoluteDependencies_Deferred_ResolveCorrectly) // When an absolute path matches a scan folder, the portion of the path matching that scan folder // is replaced with the scan folder's ID. AZStd::string absPathDep1WithScanfolder(AZStd::string::format("$4$%s", relativePathDep1.c_str())); - QString absPathDep2(tempPath.absoluteFilePath("subfolder2/dep2.txt")); + QString absPathDep2(tempPath.absoluteFilePath("subfolder2/redirected/dep2.txt")); QString absPathDep3(tempPath.absoluteFilePath("subfolder1/dep3.txt")); // -------- Make main test asset, with dependencies on products that don't exist yet ----- @@ -2375,7 +2297,7 @@ TEST_F(PathDependencyTest, AbsoluteDependencies_Deferred_ResolveCorrectly) // Different scanfolder, same relative file name. This should *not* trigger the dependency. We can't test with another asset in the proper scanfolder because AssetIds are based on relative file name, // which means both assets have the same AssetId and there would be no way to tell which one matched ASSERT_TRUE(ProcessAsset(dep1, { {".asset1"}, {".asset2"} }, {}, "subfolder1/")); - ASSERT_TRUE(ProcessAsset(dep2, { {".asset1"}, {".asset2"} }, {}, "subfolder2/")); // subfolder2 has a prefix of "redirected" + ASSERT_TRUE(ProcessAsset(dep2, { {".asset1"}, {".asset2"} }, {}, "subfolder2/redirected/")); ASSERT_TRUE(ProcessAsset(dep3, { {".asset1"}, {".asset2"} }, {}, "subfolder1/")); // test a normal dependency with no prefix // ---------- Verify that the dependency was recorded, and did not keep the path after resolution ---------- @@ -2550,14 +2472,14 @@ TEST_F(PathDependencyTest, AssetProcessed_Impl_DeferredPathResolution_CorrectlyM // -------- Make main test asset, with dependencies on products that don't exist yet ----- TestAsset primaryFile("test_text"); - ASSERT_TRUE(ProcessAsset(primaryFile, { { ".asset" }, {} }, { {"test.asset1", ProductPathDependencyType::ProductFile}, {"redirected/test.asset2", ProductPathDependencyType::ProductFile} })); + ASSERT_TRUE(ProcessAsset(primaryFile, { { ".asset" }, {} }, { {"test.asset1", ProductPathDependencyType::ProductFile}, {"test.asset2", ProductPathDependencyType::ProductFile} })); // create dependees TestAsset dep1("test"); TestAsset dep2("test"); ASSERT_TRUE(ProcessAsset(dep1, { {".asset1"}, {".asset2"} }, {}, "subfolder1/")); - ASSERT_TRUE(ProcessAsset(dep2, { {".asset1"}, {".asset2"} }, {}, "subfolder2/")); // subfolder2 has a prefix of "redirected" + ASSERT_TRUE(ProcessAsset(dep2, { {".asset1"}, {".asset2"} }, {}, "subfolder2/redirected/")); // ---------- Verify that the dependency was recorded, and did not keep the path after resolution ---------- AzToolsFramework::AssetDatabase::ProductDependencyDatabaseEntryContainer dependencyContainer; @@ -2575,14 +2497,14 @@ TEST_F(PathDependencyTest, SourceFileDependencyWithPrefix_Deferred_ResolvesCorre // -------- Make main test asset, with dependencies on products that don't exist yet ----- TestAsset primaryFile("test_text"); - ASSERT_TRUE(ProcessAsset(primaryFile, { { ".asset" }, {} }, { {"redirected/test.txt", ProductPathDependencyType::SourceFile} })); + ASSERT_TRUE(ProcessAsset(primaryFile, { { ".asset" }, {} }, { {"test.txt", ProductPathDependencyType::SourceFile} })); // create dependees TestAsset dep1("test"); TestAsset dep2("test"); ASSERT_TRUE(ProcessAsset(dep1, { {".asset1"}, {".asset2"} }, {}, "subfolder1/")); - ASSERT_TRUE(ProcessAsset(dep2, { {".asset1"}, {".asset2"} }, {}, "subfolder2/")); // subfolder2 has a prefix of "redirected" + ASSERT_TRUE(ProcessAsset(dep2, { {".asset1"}, {".asset2"} }, {}, "subfolder2/redirected/")); // ---------- Verify that the dependency was recorded, and did not keep the path after resolution ---------- AzToolsFramework::AssetDatabase::ProductDependencyDatabaseEntryContainer dependencyContainer; @@ -2606,12 +2528,12 @@ TEST_F(PathDependencyTest, SourceFileDependencyWithPrefix_Existing_ResolvesCorre TestAsset dep2("test"); ASSERT_TRUE(ProcessAsset(dep1, { {".asset1"}, {".asset2"} }, {}, "subfolder1/")); - ASSERT_TRUE(ProcessAsset(dep2, { {".asset1"}, {".asset2"} }, {}, "subfolder2/")); // subfolder2 has a prefix of "redirected" + ASSERT_TRUE(ProcessAsset(dep2, { {".asset1"}, {".asset2"} }, {}, "subfolder2/redirected/")); // -------- Make main test asset, with dependencies on products we just created ----- TestAsset primaryFile("test_text"); - ASSERT_TRUE(ProcessAsset(primaryFile, { { ".asset" }, {} }, { {"redirected/test.txt", ProductPathDependencyType::SourceFile} })); + ASSERT_TRUE(ProcessAsset(primaryFile, { { ".asset" }, {} }, { {"test.txt", ProductPathDependencyType::SourceFile} })); // ---------- Verify that the dependency was recorded, and did not keep the path after resolution ---------- AzToolsFramework::AssetDatabase::ProductDependencyDatabaseEntryContainer dependencyContainer; @@ -2633,13 +2555,9 @@ void MultiplatformPathDependencyTest::SetUp() m_config->EnablePlatform({ "provo",{ "console" } }, true); QDir tempPath(m_tempDir.path()); - m_config->AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder1"), "subfolder1", "subfolder1", "", false, true, m_config->GetEnabledPlatforms() )); - - // add a scan folder that has an output prefix: - m_config->AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder2"), "subfolder2", "subfolder2", "redirected", false, true, m_config->GetEnabledPlatforms())); - - //adding another scan folder with an output prefix - m_config->AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder3"), "subfolder3", "subfolder3", "dummy", false, true, m_config->GetEnabledPlatforms())); + m_config->AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder1"), "subfolder1", "subfolder1", false, true, m_config->GetEnabledPlatforms() )); + m_config->AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder2"), "subfolder2", "subfolder2", false, true, m_config->GetEnabledPlatforms())); + m_config->AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder3"), "subfolder3", "subfolder3", false, true, m_config->GetEnabledPlatforms())); m_assetProcessorManager = nullptr; // we need to destroy the previous instance before creating a new one m_assetProcessorManager = AZStd::make_unique(m_config.get()); @@ -3741,577 +3659,6 @@ TEST_F(AssetProcessorManagerTest, JobDependencyOrderOnce_MultipleJobs_EmitOK) EXPECT_EQ(jobDetails[1].m_jobDependencyList[0].m_jobDependency.m_sourceFile.m_sourceFileDependencyPath, secondRelSourceFile); // there should only be one job dependency } - - - -// ------------------------------------------------------------------------------------------------------------ -// The same suite of tests as above, but using a folder with an output prefix instead -// ------------------------------------------------------------------------------------------------------------ - -TEST_F(AssetProcessorManagerTest, UpdateSourceFileDependenciesDatabase_WithOutputPrefix_BasicTest) -{ - // make sure that if we publish some dependencies, they appear: - AZ::Uuid dummyBuilderUUID = AZ::Uuid::CreateRandom(); - QDir tempPath(m_tempDir.path()); - QString inputDatabasePath = "redirected/outputprefixtest.txt"; - UnitTestUtils::CreateDummyFile(tempPath.absoluteFilePath("subfolder2/outputprefixtest.txt")); - QString absPath(tempPath.absoluteFilePath("subfolder2/outputprefixtest.txt")); - QString watchFolderPath = tempPath.absoluteFilePath("subfolder2"); - const ScanFolderInfo* scanFolder = m_config->GetScanFolderByPath(watchFolderPath); - ASSERT_NE(scanFolder, nullptr); - ASSERT_STREQ(scanFolder->GetOutputPrefix().toUtf8().constData(), "redirected"); - - // the above file (assetProcessorManagerTest.txt) will depend on these four files - QString dependsOnFile1_Source = tempPath.absoluteFilePath("subfolder2/a.txt"); - QString dependsOnFile2_Source = tempPath.absoluteFilePath("subfolder2/b.txt"); - QString dependsOnFile1_Job = tempPath.absoluteFilePath("subfolder2/c.txt"); - QString dependsOnFile2_Job = tempPath.absoluteFilePath("subfolder2/d.txt"); - ASSERT_TRUE(UnitTestUtils::CreateDummyFile(dependsOnFile1_Source, QString("tempdata\n"))); - ASSERT_TRUE(UnitTestUtils::CreateDummyFile(dependsOnFile2_Source, QString("tempdata\n"))); - ASSERT_TRUE(UnitTestUtils::CreateDummyFile(dependsOnFile1_Job, QString("tempdata\n"))); - ASSERT_TRUE(UnitTestUtils::CreateDummyFile(dependsOnFile2_Job, QString("tempdata\n"))); - - // construct the dummy job to feed to the database updater function: - AssetProcessorManager::JobToProcessEntry job; - job.m_sourceFileInfo.m_databasePath = inputDatabasePath; - job.m_sourceFileInfo.m_pathRelativeToScanFolder = "outputprefixtest.txt"; - job.m_sourceFileInfo.m_scanFolder = scanFolder; - job.m_sourceFileInfo.m_uuid = AssetUtilities::CreateSafeSourceUUIDFromName(job.m_sourceFileInfo.m_databasePath.toUtf8().data()); - - // note that we have to "prime" the map with the UUIDs to the source info for this to work: - AZ::Uuid uuidOfB = AssetUtilities::CreateSafeSourceUUIDFromName("redirected/b.txt"); - AZ::Uuid uuidOfD = AssetUtilities::CreateSafeSourceUUIDFromName("redirected/d.txt"); - m_assetProcessorManager->m_sourceUUIDToSourceInfoMap[uuidOfB] = { watchFolderPath, "b.txt", "redirected/b.txt" }; - m_assetProcessorManager->m_sourceUUIDToSourceInfoMap[uuidOfD] = { watchFolderPath, "d.txt", "redirected/d.txt" }; - - // each file we will take a different approach to publishing: rel path, and UUID: - job.m_sourceFileDependencies.push_back(AZStd::make_pair(dummyBuilderUUID, { "a.txt", AZ::Uuid::CreateNull() })); - job.m_sourceFileDependencies.push_back(AZStd::make_pair(dummyBuilderUUID, { "", uuidOfB })); - - // it is currently assumed that the only fields that we care about in JobDetails is the builder busId and the job dependencies themselves: - JobDetails newDetails; - newDetails.m_assetBuilderDesc.m_busId = dummyBuilderUUID; - - AssetBuilderSDK::SourceFileDependency dep1 = { "c.txt", AZ::Uuid::CreateNull() }; - AssetBuilderSDK::JobDependency jobDep1("pc build", "pc", AssetBuilderSDK::JobDependencyType::Order, dep1); - newDetails.m_jobDependencyList.push_back(JobDependencyInternal(jobDep1)); - - AssetBuilderSDK::SourceFileDependency dep2 = { "",uuidOfD }; - AssetBuilderSDK::JobDependency jobDep2("pc build", "pc", AssetBuilderSDK::JobDependencyType::Order, dep2); - newDetails.m_jobDependencyList.push_back(JobDependencyInternal(jobDep2)); - - job.m_jobsToAnalyze.push_back(newDetails); - - // this is the one line that this unit test is really testing: - m_assetProcessorManager.get()->UpdateSourceFileDependenciesDatabase(job); - - // the rest of this test now performs a series of queries to verify the database was correctly set. - // this indirectly verifies the QueryAbsolutePathDependenciesRecursive function also but it has its own dedicated tests, above. - AssetProcessor::SourceFilesForFingerprintingContainer deps; - m_assetProcessorManager.get()->QueryAbsolutePathDependenciesRecursive(inputDatabasePath, deps, AzToolsFramework::AssetDatabase::SourceFileDependencyEntry::DEP_SourceToSource, false); - // the above function includes the actual source, as an absolute path. - EXPECT_EQ(deps.size(), 3); - EXPECT_NE(deps.find(absPath.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile1_Source.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile2_Source.toUtf8().constData()), deps.end()); - - deps.clear(); - m_assetProcessorManager.get()->QueryAbsolutePathDependenciesRecursive(inputDatabasePath, deps, AzToolsFramework::AssetDatabase::SourceFileDependencyEntry::DEP_JobToJob, false); - // the above function includes the actual source, as an absolute path. - EXPECT_EQ(deps.size(), 3); - EXPECT_NE(deps.find(absPath.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile1_Job.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile2_Job.toUtf8().constData()), deps.end()); - - deps.clear(); - m_assetProcessorManager.get()->QueryAbsolutePathDependenciesRecursive(inputDatabasePath, deps, AzToolsFramework::AssetDatabase::SourceFileDependencyEntry::DEP_Any, false); - // the above function includes the actual source, as an absolute path. - EXPECT_EQ(deps.size(), 5); - EXPECT_NE(deps.find(absPath.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile1_Source.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile2_Source.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile1_Job.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile2_Job.toUtf8().constData()), deps.end()); - - // make sure the corresponding values in the map are also correct (ie, database path only) - EXPECT_STREQ(deps[absPath.toUtf8().constData()].c_str(), "redirected/outputprefixtest.txt"); - EXPECT_STREQ(deps[dependsOnFile1_Source.toUtf8().constData()].c_str(), "redirected/a.txt"); - EXPECT_STREQ(deps[dependsOnFile2_Source.toUtf8().constData()].c_str(), "redirected/b.txt"); - EXPECT_STREQ(deps[dependsOnFile1_Job.toUtf8().constData()].c_str(), "redirected/c.txt"); - EXPECT_STREQ(deps[dependsOnFile2_Job.toUtf8().constData()].c_str(), "redirected/d.txt"); -} - -TEST_F(AssetProcessorManagerTest, UpdateSourceFileDependenciesDatabase_WithOutputPrefix_UpdateTest) -{ - // make sure that if we remove dependencies that are published, they disappear. - // so the first part of this test is to put some data in there, the same as before: - - AZ::Uuid dummyBuilderUUID = AZ::Uuid::CreateRandom(); - QDir tempPath(m_tempDir.path()); - QString absPath(tempPath.absoluteFilePath("subfolder2/outputprefixtest.txt")); - UnitTestUtils::CreateDummyFile(absPath); - QString inputDatabasePath = "redirected/outputprefixtest.txt"; - QString watchFolderPath = tempPath.absoluteFilePath("subfolder2"); - const ScanFolderInfo* scanFolder = m_config->GetScanFolderByPath(watchFolderPath); - ASSERT_NE(scanFolder, nullptr); - - // the above file (assetProcessorManagerTest.txt) will depend on these four files: - QString dependsOnFile1_Source = tempPath.absoluteFilePath("subfolder2/a.txt"); - QString dependsOnFile2_Source = tempPath.absoluteFilePath("subfolder2/b.txt"); - QString dependsOnFile1_Job = tempPath.absoluteFilePath("subfolder2/c.txt"); - QString dependsOnFile2_Job = tempPath.absoluteFilePath("subfolder2/d.txt"); - ASSERT_TRUE(UnitTestUtils::CreateDummyFile(dependsOnFile1_Source, QString("tempdata\n"))); - ASSERT_TRUE(UnitTestUtils::CreateDummyFile(dependsOnFile2_Source, QString("tempdata\n"))); - ASSERT_TRUE(UnitTestUtils::CreateDummyFile(dependsOnFile1_Job, QString("tempdata\n"))); - ASSERT_TRUE(UnitTestUtils::CreateDummyFile(dependsOnFile2_Job, QString("tempdata\n"))); - - // construct the dummy job to feed to the database updater function: - AssetProcessorManager::JobToProcessEntry job; - job.m_sourceFileInfo.m_databasePath = inputDatabasePath; - job.m_sourceFileInfo.m_pathRelativeToScanFolder = "outputprefixtest.txt"; - job.m_sourceFileInfo.m_scanFolder = scanFolder; - job.m_sourceFileInfo.m_uuid = AssetUtilities::CreateSafeSourceUUIDFromName(job.m_sourceFileInfo.m_databasePath.toUtf8().data()); - - // note that we have to "prime" the map with the UUIDs to the source info for this to work: - AZ::Uuid uuidOfB = AssetUtilities::CreateSafeSourceUUIDFromName("redirected/b.txt"); - AZ::Uuid uuidOfD = AssetUtilities::CreateSafeSourceUUIDFromName("redirected/d.txt"); - m_assetProcessorManager->m_sourceUUIDToSourceInfoMap[uuidOfB] = { watchFolderPath, "b.txt", "redirected/b.txt" }; - m_assetProcessorManager->m_sourceUUIDToSourceInfoMap[uuidOfD] = { watchFolderPath, "d.txt", "redirected/d.txt" }; - - // each file we will take a different approach to publishing: rel path, and UUID: - job.m_sourceFileDependencies.push_back(AZStd::make_pair(dummyBuilderUUID, { "a.txt", AZ::Uuid::CreateNull() })); - job.m_sourceFileDependencies.push_back(AZStd::make_pair(dummyBuilderUUID, { "", uuidOfB })); - - // it is currently assumed that the only fields that we care about in JobDetails is the builder busId and the job dependencies themselves: - JobDetails newDetails; - newDetails.m_assetBuilderDesc.m_busId = dummyBuilderUUID; - - AssetBuilderSDK::SourceFileDependency dep1 = { "c.txt", AZ::Uuid::CreateNull() }; - AssetBuilderSDK::JobDependency jobDep1("pc build", "pc", AssetBuilderSDK::JobDependencyType::Order, dep1); - newDetails.m_jobDependencyList.push_back(JobDependencyInternal(jobDep1)); - - AssetBuilderSDK::SourceFileDependency dep2 = { "",uuidOfD }; - AssetBuilderSDK::JobDependency jobDep2("pc build", "pc", AssetBuilderSDK::JobDependencyType::Order, dep2); - newDetails.m_jobDependencyList.push_back(JobDependencyInternal(jobDep2)); - job.m_jobsToAnalyze.push_back(newDetails); - - m_assetProcessorManager.get()->UpdateSourceFileDependenciesDatabase(job); - - // in this test, though, we delete some after pushing them in there, and update it again: - job.m_sourceFileDependencies.pop_back(); // erase the 'b' dependency. - job.m_jobsToAnalyze[0].m_jobDependencyList.pop_back(); // erase the 'd' dependency, which is by guid. - m_assetProcessorManager.get()->UpdateSourceFileDependenciesDatabase(job); - - // now make sure that the same queries omit b and d: - AssetProcessor::SourceFilesForFingerprintingContainer deps; - m_assetProcessorManager.get()->QueryAbsolutePathDependenciesRecursive(inputDatabasePath, deps, AzToolsFramework::AssetDatabase::SourceFileDependencyEntry::DEP_SourceToSource, false); - // the above function includes the actual source, as an absolute path. - EXPECT_EQ(deps.size(), 2); - EXPECT_NE(deps.find(absPath.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile1_Source.toUtf8().constData()), deps.end()); - - deps.clear(); - m_assetProcessorManager.get()->QueryAbsolutePathDependenciesRecursive(inputDatabasePath, deps, AzToolsFramework::AssetDatabase::SourceFileDependencyEntry::DEP_JobToJob, false); - // the above function includes the actual source, as an absolute path. - EXPECT_EQ(deps.size(), 2); - EXPECT_NE(deps.find(absPath.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile1_Job.toUtf8().constData()), deps.end()); - - deps.clear(); - m_assetProcessorManager.get()->QueryAbsolutePathDependenciesRecursive(inputDatabasePath, deps, AzToolsFramework::AssetDatabase::SourceFileDependencyEntry::DEP_Any, false); - // the above function includes the actual source, as an absolute path. - EXPECT_EQ(deps.size(), 3); - EXPECT_NE(deps.find(absPath.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile1_Source.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile1_Job.toUtf8().constData()), deps.end()); -} - -TEST_F(AssetProcessorManagerTest, UpdateSourceFileDependenciesDatabase_WithOutputPrefix_MissingFiles_ByUuid) -{ - // make sure that if we publish some dependencies, they do not appear if missing. - AZ::Uuid dummyBuilderUUID = AZ::Uuid::CreateRandom(); - QDir tempPath(m_tempDir.path()); - QString absPath(tempPath.absoluteFilePath("subfolder2/outputprefixtest.txt")); - UnitTestUtils::CreateDummyFile(absPath); - QString inputDatabasePath = "redirected/outputprefixtest.txt"; - QString watchFolderPath = tempPath.absoluteFilePath("subfolder2"); - const ScanFolderInfo* scanFolder = m_config->GetScanFolderByPath(watchFolderPath); - ASSERT_NE(scanFolder, nullptr); - - // the above file (assetProcessorManagerTest.txt) will depend on these four files: - QString dependsOnFile1_Source = tempPath.absoluteFilePath("subfolder2/a.txt"); - QString dependsOnFile2_Source = tempPath.absoluteFilePath("subfolder2/b.txt"); - QString dependsOnFile1_Job = tempPath.absoluteFilePath("subfolder2/c.txt"); - QString dependsOnFile2_Job = tempPath.absoluteFilePath("subfolder2/d.txt"); - - // in this case, we are only creating file b, and d (which are input by UUID) - // and we will be missing a and c, which are input by name. - ASSERT_TRUE(UnitTestUtils::CreateDummyFile(dependsOnFile2_Source, QString("tempdata\n"))); - ASSERT_TRUE(UnitTestUtils::CreateDummyFile(dependsOnFile2_Job, QString("tempdata\n"))); - - // construct the dummy job to feed to the database updater function: - AssetProcessorManager::JobToProcessEntry job; - job.m_sourceFileInfo.m_databasePath = inputDatabasePath; - job.m_sourceFileInfo.m_pathRelativeToScanFolder = "outputprefixtest.txt"; - job.m_sourceFileInfo.m_scanFolder = scanFolder; - job.m_sourceFileInfo.m_uuid = AssetUtilities::CreateSafeSourceUUIDFromName(job.m_sourceFileInfo.m_databasePath.toUtf8().data()); - - // note that we have to "prime" the map with the UUIDs to the source info for this to work: - AZ::Uuid uuidOfB = AssetUtilities::CreateSafeSourceUUIDFromName("redirected/b.txt"); - AZ::Uuid uuidOfD = AssetUtilities::CreateSafeSourceUUIDFromName("redirected/d.txt"); - m_assetProcessorManager->m_sourceUUIDToSourceInfoMap[uuidOfB] = { watchFolderPath, "b.txt", "redirected/b.txt" }; - m_assetProcessorManager->m_sourceUUIDToSourceInfoMap[uuidOfD] = { watchFolderPath, "d.txt", "redirected/d.txt" }; - - // each file we will take a different approach to publishing: rel path, and UUID: - job.m_sourceFileDependencies.push_back(AZStd::make_pair(dummyBuilderUUID, { "a.txt", AZ::Uuid::CreateNull() })); - job.m_sourceFileDependencies.push_back(AZStd::make_pair(dummyBuilderUUID, { "", uuidOfB })); - - // it is currently assumed that the only fields that we care about in JobDetails is the builder busId and the job dependencies themselves: - JobDetails newDetails; - newDetails.m_assetBuilderDesc.m_busId = dummyBuilderUUID; - - AssetBuilderSDK::SourceFileDependency dep1 = { "c.txt", AZ::Uuid::CreateNull() }; - AssetBuilderSDK::JobDependency jobDep1("pc build", "pc", AssetBuilderSDK::JobDependencyType::Order, dep1); - newDetails.m_jobDependencyList.push_back(JobDependencyInternal(jobDep1)); - - AssetBuilderSDK::SourceFileDependency dep2 = { "",uuidOfD }; - AssetBuilderSDK::JobDependency jobDep2("pc build", "pc", AssetBuilderSDK::JobDependencyType::Order, dep2); - newDetails.m_jobDependencyList.push_back(JobDependencyInternal(jobDep2)); - - job.m_jobsToAnalyze.push_back(newDetails); - - // this is the one line that this unit test is really testing: - m_assetProcessorManager.get()->UpdateSourceFileDependenciesDatabase(job); - - // the rest of this test now performs a series of queries to verify the database was correctly set. - // this indirectly verifies the QueryAbsolutePathDependenciesRecursive function also but it has its own dedicated tests, above. - AssetProcessor::SourceFilesForFingerprintingContainer deps; - m_assetProcessorManager.get()->QueryAbsolutePathDependenciesRecursive(inputDatabasePath, deps, AzToolsFramework::AssetDatabase::SourceFileDependencyEntry::DEP_SourceToSource, false); - - EXPECT_EQ(deps.size(), 2); - EXPECT_NE(deps.find(absPath.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile2_Source.toUtf8().constData()), deps.end()); // b - - deps.clear(); - m_assetProcessorManager.get()->QueryAbsolutePathDependenciesRecursive(inputDatabasePath, deps, AzToolsFramework::AssetDatabase::SourceFileDependencyEntry::DEP_JobToJob, false); - // the above function includes the actual source, as an absolute path. - EXPECT_EQ(deps.size(), 2); - EXPECT_NE(deps.find(absPath.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile2_Job.toUtf8().constData()), deps.end()); // d - - deps.clear(); - m_assetProcessorManager.get()->QueryAbsolutePathDependenciesRecursive(inputDatabasePath, deps, AzToolsFramework::AssetDatabase::SourceFileDependencyEntry::DEP_Any, false); - // the above function includes the actual source, as an absolute path. - EXPECT_EQ(deps.size(), 3); - EXPECT_NE(deps.find(absPath.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile2_Source.toUtf8().constData()), deps.end()); // b - EXPECT_NE(deps.find(dependsOnFile2_Job.toUtf8().constData()), deps.end()); // d -} - -TEST_F(AssetProcessorManagerTest, UpdateSourceFileDependenciesDatabase_WithOutputPrefix_MissingFiles_ByName) -{ - AZ::Uuid dummyBuilderUUID = AZ::Uuid::CreateRandom(); - QDir tempPath(m_tempDir.path()); - QString absPath(tempPath.absoluteFilePath("subfolder2/outputprefixtest.txt")); - UnitTestUtils::CreateDummyFile(absPath); - QString inputDatabasePath = "redirected/outputprefixtest.txt"; - QString watchFolderPath = tempPath.absoluteFilePath("subfolder2"); - const ScanFolderInfo* scanFolder = m_config->GetScanFolderByPath(watchFolderPath); - ASSERT_NE(scanFolder, nullptr); - - // the above file (assetProcessorManagerTest.txt) will depend on these four files: - QString dependsOnFile1_Source = tempPath.absoluteFilePath("subfolder2/a.txt"); - QString dependsOnFile2_Source = tempPath.absoluteFilePath("subfolder2/b.txt"); - QString dependsOnFile1_Job = tempPath.absoluteFilePath("subfolder2/c.txt"); - QString dependsOnFile2_Job = tempPath.absoluteFilePath("subfolder2/d.txt"); - - // in this case, we are only creating file a, and c, which are input by name - // and we we will be making b and d missing, which are input by UUID. - ASSERT_TRUE(UnitTestUtils::CreateDummyFile(dependsOnFile1_Source, QString("tempdata\n"))); - ASSERT_TRUE(UnitTestUtils::CreateDummyFile(dependsOnFile1_Job, QString("tempdata\n"))); - - // construct the dummy job to feed to the database updater function: - AssetProcessorManager::JobToProcessEntry job; - job.m_sourceFileInfo.m_databasePath = inputDatabasePath; - job.m_sourceFileInfo.m_pathRelativeToScanFolder = "outputprefixtest.txt"; - job.m_sourceFileInfo.m_scanFolder = scanFolder; - job.m_sourceFileInfo.m_uuid = AssetUtilities::CreateSafeSourceUUIDFromName(job.m_sourceFileInfo.m_databasePath.toUtf8().data()); - - // note that we have to "prime" the map with the UUIDs to the source info for this to work: - AZ::Uuid uuidOfB = AssetUtilities::CreateSafeSourceUUIDFromName("redirected/b.txt"); - AZ::Uuid uuidOfD = AssetUtilities::CreateSafeSourceUUIDFromName("redirected/d.txt"); - - // each file we will take a different approach to publishing: rel path, and UUID: - job.m_sourceFileDependencies.push_back(AZStd::make_pair(dummyBuilderUUID, { "a.txt", AZ::Uuid::CreateNull() })); - job.m_sourceFileDependencies.push_back(AZStd::make_pair(dummyBuilderUUID, { "", uuidOfB })); - - // it is currently assumed that the only fields that we care about in JobDetails is the builder busId and the job dependencies themselves: - JobDetails newDetails; - newDetails.m_assetBuilderDesc.m_busId = dummyBuilderUUID; - - AssetBuilderSDK::SourceFileDependency dep1 = { "c.txt", AZ::Uuid::CreateNull() }; - AssetBuilderSDK::JobDependency jobDep1("pc build", "pc", AssetBuilderSDK::JobDependencyType::Order, dep1); - newDetails.m_jobDependencyList.push_back(JobDependencyInternal(jobDep1)); - - AssetBuilderSDK::SourceFileDependency dep2 = { "",uuidOfD }; - AssetBuilderSDK::JobDependency jobDep2("pc build", "pc", AssetBuilderSDK::JobDependencyType::Order, dep2); - newDetails.m_jobDependencyList.push_back(JobDependencyInternal(jobDep2)); - - job.m_jobsToAnalyze.push_back(newDetails); - - // this is the one line that this unit test is really testing: - m_assetProcessorManager.get()->UpdateSourceFileDependenciesDatabase(job); - - // the rest of this test now performs a series of queries to verify the database was correctly set. - // this indirectly verifies the QueryAbsolutePathDependenciesRecursive function also but it has its own dedicated tests, above. - AssetProcessor::SourceFilesForFingerprintingContainer deps; - m_assetProcessorManager.get()->QueryAbsolutePathDependenciesRecursive(inputDatabasePath, deps, AzToolsFramework::AssetDatabase::SourceFileDependencyEntry::DEP_SourceToSource, false); - - // we should find all of the deps, but none of the placeholder - EXPECT_EQ(deps.size(), 2); - EXPECT_NE(deps.find(absPath.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile1_Source.toUtf8().constData()), deps.end()); // a - - deps.clear(); - m_assetProcessorManager.get()->QueryAbsolutePathDependenciesRecursive(inputDatabasePath, deps, AzToolsFramework::AssetDatabase::SourceFileDependencyEntry::DEP_JobToJob, false); - EXPECT_EQ(deps.size(), 2); - EXPECT_NE(deps.find(absPath.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile1_Job.toUtf8().constData()), deps.end()); // c - - deps.clear(); - m_assetProcessorManager.get()->QueryAbsolutePathDependenciesRecursive(inputDatabasePath, deps, AzToolsFramework::AssetDatabase::SourceFileDependencyEntry::DEP_Any, false); - EXPECT_EQ(deps.size(), 3); - EXPECT_NE(deps.find(absPath.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile1_Source.toUtf8().constData()), deps.end()); // a - EXPECT_NE(deps.find(dependsOnFile1_Job.toUtf8().constData()), deps.end()); // c -} - - -TEST_F(AssetProcessorManagerTest, UpdateSourceFileDependenciesDatabase_WithOutputPrefix_MissingFiles_ByUuid_UpdatesWhenTheyAppear) -{ - // this test makes sure that when files DO appear that were previously placeholders, the database is updated - // so the strategy here is to have files b, and d missing, which are declared as dependencies by UUID. - // then, we make them re-appear later, and check that the database has updated them appropriately. - - AZ::Uuid dummyBuilderUUID = AZ::Uuid::CreateRandom(); - QDir tempPath(m_tempDir.path()); - QString absPath(tempPath.absoluteFilePath("subfolder2/outputprefixtest.txt")); - UnitTestUtils::CreateDummyFile(absPath); - QString inputDatabasePath = "redirected/outputprefixtest.txt"; - QString watchFolderPath = tempPath.absoluteFilePath("subfolder2"); - const ScanFolderInfo* scanFolder = m_config->GetScanFolderByPath(watchFolderPath); - ASSERT_NE(scanFolder, nullptr); - - // the above file (assetProcessorManagerTest.txt) will depend on these four files: - QString dependsOnFile1_Source = tempPath.absoluteFilePath("subfolder2/a.txt"); - QString dependsOnFile2_Source = tempPath.absoluteFilePath("subfolder2/b.txt"); - QString dependsOnFile1_Job = tempPath.absoluteFilePath("subfolder2/c.txt"); - QString dependsOnFile2_Job = tempPath.absoluteFilePath("subfolder2/d.txt"); - - // in this case, we are only creating file b, and d, which are addressed by UUID. - ASSERT_TRUE(UnitTestUtils::CreateDummyFile(dependsOnFile1_Source, QString("tempdata\n"))); - ASSERT_TRUE(UnitTestUtils::CreateDummyFile(dependsOnFile1_Job, QString("tempdata\n"))); - - // construct the dummy job to feed to the database updater function: - AssetProcessorManager::JobToProcessEntry job; - job.m_sourceFileInfo.m_databasePath = inputDatabasePath; - job.m_sourceFileInfo.m_pathRelativeToScanFolder = "outputprefixtest.txt"; - job.m_sourceFileInfo.m_scanFolder = scanFolder; - job.m_sourceFileInfo.m_uuid = AssetUtilities::CreateSafeSourceUUIDFromName(job.m_sourceFileInfo.m_databasePath.toUtf8().data()); - - AZ::Uuid uuidOfD = AssetUtilities::CreateSafeSourceUUIDFromName("redirected/d.txt"); - AZ::Uuid uuidOfB = AssetUtilities::CreateSafeSourceUUIDFromName("redirected/b.txt"); - - // each file we will take a different approach to publishing: rel path, and UUID: - job.m_sourceFileDependencies.push_back(AZStd::make_pair(dummyBuilderUUID, { "a.txt", AZ::Uuid::CreateNull() })); - job.m_sourceFileDependencies.push_back(AZStd::make_pair(dummyBuilderUUID, { "", uuidOfB })); - - // it is currently assumed that the only fields that we care about in JobDetails is the builder busId and the job dependencies themselves: - JobDetails newDetails; - newDetails.m_assetBuilderDesc.m_busId = dummyBuilderUUID; - - AssetBuilderSDK::SourceFileDependency dep1 = { "c.txt", AZ::Uuid::CreateNull() }; - AssetBuilderSDK::JobDependency jobDep1("pc build", "pc", AssetBuilderSDK::JobDependencyType::Order, dep1); - newDetails.m_jobDependencyList.push_back(JobDependencyInternal(jobDep1)); - - AssetBuilderSDK::SourceFileDependency dep2 = { "",uuidOfD }; - AssetBuilderSDK::JobDependency jobDep2("pc build", "pc", AssetBuilderSDK::JobDependencyType::Order, dep2); - newDetails.m_jobDependencyList.push_back(JobDependencyInternal(jobDep2)); - - job.m_jobsToAnalyze.push_back(newDetails); - - m_assetProcessorManager.get()->UpdateSourceFileDependenciesDatabase(job); - // so at this point, the database should be in the same state as after the UpdateSourceFileDependenciesDatabase_MissingFiles_ByUuid test - // which was already verified, by that test. - - // now that the database has placeholders, we expect them to resolve themselves when we provide the actual files: - ASSERT_TRUE(UnitTestUtils::CreateDummyFile(dependsOnFile2_Source, QString("tempdata\n"))); - // now that B exists, we pretend a job came in to process B. (it doesn't require dependencies to be declared) - // note that we have to "prime" the map with the UUIDs to the source info for this to work: - m_assetProcessorManager->m_sourceUUIDToSourceInfoMap[uuidOfB] = { watchFolderPath, "b.txt", "redirected/b.txt" }; - - AssetProcessorManager::JobToProcessEntry job2; - job2.m_sourceFileInfo.m_databasePath = "redirected/b.txt"; - job2.m_sourceFileInfo.m_pathRelativeToScanFolder = "b.txt"; - job2.m_sourceFileInfo.m_scanFolder = scanFolder; - job2.m_sourceFileInfo.m_uuid = uuidOfB; - - m_assetProcessorManager.get()->UpdateSourceFileDependenciesDatabase(job2); - - // b should no longer be a placeholder, so both A and B should be present as their actual path. - AssetProcessor::SourceFilesForFingerprintingContainer deps; - m_assetProcessorManager.get()->QueryAbsolutePathDependenciesRecursive(inputDatabasePath, deps, AzToolsFramework::AssetDatabase::SourceFileDependencyEntry::DEP_SourceToSource, false); - EXPECT_EQ(deps.size(), 3); - EXPECT_NE(deps.find(absPath.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile1_Source.toUtf8().constData()), deps.end()); // a - EXPECT_NE(deps.find(dependsOnFile2_Source.toUtf8().constData()), deps.end()); // b - - // but d should still be a placeholder, since we have not declared it yet. - deps.clear(); - m_assetProcessorManager.get()->QueryAbsolutePathDependenciesRecursive(inputDatabasePath, deps, AzToolsFramework::AssetDatabase::SourceFileDependencyEntry::DEP_JobToJob, false); - EXPECT_EQ(deps.size(), 2); - EXPECT_NE(deps.find(absPath.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile1_Job.toUtf8().constData()), deps.end()); // c - - // in addition, we expect to have the original file that depends on B appear in the analysis queue, since something it depends on appeared: - QString normalizedSourcePath = AssetUtilities::NormalizeFilePath(absPath); - EXPECT_TRUE(m_assetProcessorManager->m_alreadyActiveFiles.contains(normalizedSourcePath)); - - // now make d exist too and pretend a job came in to process it: - ASSERT_TRUE(UnitTestUtils::CreateDummyFile(dependsOnFile2_Job, QString("tempdata\n"))); // create file D - AssetProcessorManager::JobToProcessEntry job3; - job3.m_sourceFileInfo.m_databasePath = "redirected/d.txt"; - job3.m_sourceFileInfo.m_pathRelativeToScanFolder = "d.txt"; - job3.m_sourceFileInfo.m_scanFolder = scanFolder; - job3.m_sourceFileInfo.m_uuid = uuidOfD; - m_assetProcessorManager->m_sourceUUIDToSourceInfoMap[uuidOfD] = { watchFolderPath, "d.txt", "redirected/d.txt" }; - - m_assetProcessorManager.get()->UpdateSourceFileDependenciesDatabase(job3); - - // all files should now be present: - deps.clear(); - m_assetProcessorManager.get()->QueryAbsolutePathDependenciesRecursive(inputDatabasePath, deps, AzToolsFramework::AssetDatabase::SourceFileDependencyEntry::DEP_Any, false); - EXPECT_EQ(deps.size(), 5); - EXPECT_NE(deps.find(absPath.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile1_Source.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile2_Source.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile1_Job.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile2_Job.toUtf8().constData()), deps.end()); -} - - -TEST_F(AssetProcessorManagerTest, UpdateSourceFileDependenciesDatabase_WithOutputPrefix_MissingFiles_ByName_UpdatesWhenTheyAppear) -{ - // this test makes sure that when files DO appear that were previously placeholders, the database is updated - // so the strategy here is to have files a, and c missing, which are declared as dependencies by name. - // then, we make them re-appear later, and check that the database has updated them appropriately. - - AZ::Uuid dummyBuilderUUID = AZ::Uuid::CreateRandom(); - QDir tempPath(m_tempDir.path()); - QString absPath(tempPath.absoluteFilePath("subfolder2/outputprefixtest.txt")); - UnitTestUtils::CreateDummyFile(absPath); - QString inputDatabasePath = "redirected/outputprefixtest.txt"; - QString watchFolderPath = tempPath.absoluteFilePath("subfolder2"); - const ScanFolderInfo* scanFolder = m_config->GetScanFolderByPath(watchFolderPath); - ASSERT_NE(scanFolder, nullptr); - - // the above file (assetProcessorManagerTest.txt) will depend on these four files: - QString dependsOnFile1_Source = tempPath.absoluteFilePath("subfolder2/a.txt"); - QString dependsOnFile2_Source = tempPath.absoluteFilePath("subfolder2/b.txt"); - QString dependsOnFile1_Job = tempPath.absoluteFilePath("subfolder2/c.txt"); - QString dependsOnFile2_Job = tempPath.absoluteFilePath("subfolder2/d.txt"); - - // in this case, we are only creating file b, and d, which are addressed by UUID. - ASSERT_TRUE(UnitTestUtils::CreateDummyFile(dependsOnFile2_Source, QString("tempdata\n"))); - ASSERT_TRUE(UnitTestUtils::CreateDummyFile(dependsOnFile2_Job, QString("tempdata\n"))); - - // construct the dummy job to feed to the database updater function: - AssetProcessorManager::JobToProcessEntry job; - job.m_sourceFileInfo.m_databasePath = inputDatabasePath; - job.m_sourceFileInfo.m_pathRelativeToScanFolder = "outputprefixtest.txt"; - job.m_sourceFileInfo.m_scanFolder = scanFolder; - job.m_sourceFileInfo.m_uuid = AssetUtilities::CreateSafeSourceUUIDFromName(job.m_sourceFileInfo.m_databasePath.toUtf8().data()); - - // note that we have to "prime" the map with the UUIDs to the source info for this to work: - AZ::Uuid uuidOfB = AssetUtilities::CreateSafeSourceUUIDFromName("redirected/b.txt"); - AZ::Uuid uuidOfD = AssetUtilities::CreateSafeSourceUUIDFromName("redirected/d.txt"); - m_assetProcessorManager->m_sourceUUIDToSourceInfoMap[uuidOfB] = { watchFolderPath, "b.txt", "redirected/b.txt" }; - m_assetProcessorManager->m_sourceUUIDToSourceInfoMap[uuidOfD] = { watchFolderPath, "d.txt", "redirected/d.txt" }; - - // each file we will take a different approach to publishing: rel path, and UUID: - job.m_sourceFileDependencies.push_back(AZStd::make_pair(dummyBuilderUUID, { "a.txt", AZ::Uuid::CreateNull() })); - job.m_sourceFileDependencies.push_back(AZStd::make_pair(dummyBuilderUUID, { "", uuidOfB })); - - // it is currently assumed that the only fields that we care about in JobDetails is the builder busId and the job dependencies themselves: - JobDetails newDetails; - newDetails.m_assetBuilderDesc.m_busId = dummyBuilderUUID; - - AssetBuilderSDK::SourceFileDependency dep1 = { "c.txt", AZ::Uuid::CreateNull() }; - AssetBuilderSDK::JobDependency jobDep1("pc build", "pc", AssetBuilderSDK::JobDependencyType::Order, dep1); - newDetails.m_jobDependencyList.push_back(JobDependencyInternal(jobDep1)); - - AssetBuilderSDK::SourceFileDependency dep2 = { "",uuidOfD }; - AssetBuilderSDK::JobDependency jobDep2("pc build", "pc", AssetBuilderSDK::JobDependencyType::Order, dep2); - newDetails.m_jobDependencyList.push_back(JobDependencyInternal(jobDep2)); - - job.m_jobsToAnalyze.push_back(newDetails); - - m_assetProcessorManager.get()->UpdateSourceFileDependenciesDatabase(job); - // so at this point, the database should be in the same state as after the UpdateSourceFileDependenciesDatabase_MissingFiles_ByUuid test - // which was already verified, by that test. - - // now that the database has placeholders, we expect them to resolve themselves when we provide the actual files: - ASSERT_TRUE(UnitTestUtils::CreateDummyFile(dependsOnFile1_Source, QString("tempdata\n"))); - // now that A exists, we pretend a job came in to process a. (it doesn't require dependencies to be declared) - AZ::Uuid uuidOfA = AssetUtilities::CreateSafeSourceUUIDFromName("redirected/a.txt"); - AssetProcessorManager::JobToProcessEntry job2; - job2.m_sourceFileInfo.m_databasePath = "redirected/a.txt"; - job2.m_sourceFileInfo.m_pathRelativeToScanFolder = "a.txt"; - job2.m_sourceFileInfo.m_scanFolder = scanFolder; - job2.m_sourceFileInfo.m_uuid = uuidOfA; - m_assetProcessorManager.get()->UpdateSourceFileDependenciesDatabase(job2); - - // a should no longer be a placeholder - AssetProcessor::SourceFilesForFingerprintingContainer deps; - m_assetProcessorManager.get()->QueryAbsolutePathDependenciesRecursive(inputDatabasePath, deps, AzToolsFramework::AssetDatabase::SourceFileDependencyEntry::DEP_SourceToSource, false); - EXPECT_EQ(deps.size(), 3); - EXPECT_NE(deps.find(absPath.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile1_Source.toUtf8().constData()), deps.end()); // a - EXPECT_NE(deps.find(dependsOnFile2_Source.toUtf8().constData()), deps.end()); // b - deps.clear(); - - // c should still be a placeholder and thus should not appear in the results. - m_assetProcessorManager.get()->QueryAbsolutePathDependenciesRecursive(inputDatabasePath, deps, AzToolsFramework::AssetDatabase::SourceFileDependencyEntry::DEP_JobToJob, false); - EXPECT_EQ(deps.size(), 2); - EXPECT_NE(deps.find(absPath.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile2_Job.toUtf8().constData()), deps.end()); // d - - // in addition, we expect to have the original file that depends on A appear in the analysis queue, since something it depends on appeared: - QString normalizedSourcePath = AssetUtilities::NormalizeFilePath(absPath); - EXPECT_TRUE(m_assetProcessorManager->m_alreadyActiveFiles.contains(normalizedSourcePath)); - - // now make c exist too and pretend a job came in to process it: - ASSERT_TRUE(UnitTestUtils::CreateDummyFile(dependsOnFile1_Job, QString("tempdata\n"))); - AZ::Uuid uuidOfC = AssetUtilities::CreateSafeSourceUUIDFromName("redirected/c.txt"); - AssetProcessorManager::JobToProcessEntry job3; - job3.m_sourceFileInfo.m_databasePath = "redirected/c.txt"; - job3.m_sourceFileInfo.m_pathRelativeToScanFolder = "c.txt"; - job3.m_sourceFileInfo.m_scanFolder = scanFolder; - job3.m_sourceFileInfo.m_uuid = uuidOfC; - - m_assetProcessorManager.get()->UpdateSourceFileDependenciesDatabase(job3); - - // all files should now be present: - deps.clear(); - m_assetProcessorManager.get()->QueryAbsolutePathDependenciesRecursive(inputDatabasePath, deps, AzToolsFramework::AssetDatabase::SourceFileDependencyEntry::DEP_Any, false); - EXPECT_EQ(deps.size(), 5); - EXPECT_NE(deps.find(absPath.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile1_Source.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile2_Source.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile1_Job.toUtf8().constData()), deps.end()); - EXPECT_NE(deps.find(dependsOnFile2_Job.toUtf8().constData()), deps.end()); -} - TEST_F(AssetProcessorManagerTest, SourceFile_With_NonASCII_Characters_Fail_Job_OK) { // This test ensures that asset processor manager detects a source file that has non-ASCII characters diff --git a/Code/Tools/AssetProcessor/native/tests/assetscanner/AssetScannerTests.cpp b/Code/Tools/AssetProcessor/native/tests/assetscanner/AssetScannerTests.cpp index f1e125e0d8..1ad868421b 100644 --- a/Code/Tools/AssetProcessor/native/tests/assetscanner/AssetScannerTests.cpp +++ b/Code/Tools/AssetProcessor/native/tests/assetscanner/AssetScannerTests.cpp @@ -74,10 +74,10 @@ namespace AssetProcessor m_platformConfig.reset(new AssetProcessor::PlatformConfiguration()); AZStd::vector platforms; m_platformConfig.get()->PopulatePlatformsForScanFolder(platforms); - // PATH DisplayName PortKey outputfolder root recurse platforms - m_platformConfig.get()->AddScanFolder(ScanFolderInfo(tempPath.absolutePath(), "", "ap1", "", true, false, platforms)); - m_platformConfig.get()->AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder1"), "", "ap2", "", false, true, platforms)); - m_platformConfig.get()->AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder2"), "", "ap3", "", false, true, platforms)); + // PATH DisplayName PortKey root recurse platforms + m_platformConfig.get()->AddScanFolder(ScanFolderInfo(tempPath.absolutePath(), "", "ap1", true, false, platforms)); + m_platformConfig.get()->AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder1"), "", "ap2", false, true, platforms)); + m_platformConfig.get()->AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder2"), "", "ap3", false, true, platforms)); m_assetScanner.reset(new AssetScanner_Test(m_platformConfig.get())); diff --git a/Code/Tools/AssetProcessor/native/tests/platformconfiguration/platformconfigurationtests.cpp b/Code/Tools/AssetProcessor/native/tests/platformconfiguration/platformconfigurationtests.cpp index 076a1c2448..31e4996b1e 100644 --- a/Code/Tools/AssetProcessor/native/tests/platformconfiguration/platformconfigurationtests.cpp +++ b/Code/Tools/AssetProcessor/native/tests/platformconfiguration/platformconfigurationtests.cpp @@ -170,7 +170,7 @@ TEST_F(PlatformConfigurationUnitTests, TestReadScanFolderRoot_FromSettingsRegist EXPECT_TRUE(settingsRegistry->Get(scanOrder, AZ::SettingsRegistryInterface::FixedValueString(AssetProcessor::AssetProcessorSettingsKey) + "/ScanFolder SettingsRegistryTest/order")); - // These test values come from the /Engine/Registry/AssetProcessorPlatformConfig.setreg file + // These test values come from the /Registry/AssetProcessorPlatformConfig.setreg file EXPECT_STREQ("_TestPath", watchPath.c_str()); EXPECT_FALSE(recurseScanFolder); EXPECT_EQ(20000, scanOrder); @@ -200,7 +200,7 @@ public: m_config.reset(); PlatformConfigurationUnitTests::TearDown(); } - + AZStd::vector m_platforms; AZStd::unique_ptr m_config; AZStd::unique_ptr m_tempEngineRoot = nullptr; // this actually creates the folder in its constructor, so hold off until setup.. @@ -213,8 +213,8 @@ TEST_F(PlatformConfigurationUnitTests_OnePCHostFixture, GetScanFolderForFile_Roo using namespace AzToolsFramework::AssetSystem; using namespace AssetProcessor; - m_config->AddScanFolder(ScanFolderInfo(m_tempPath.filePath("scanfolder1"), "ScanFolder1", "sf1", "", true, false, m_platforms), true); // a root folder that has watched subfolders, not recursive - m_config->AddScanFolder(ScanFolderInfo(m_tempPath.filePath("scanfolder1/Editor"), "Editor", "sf2", "", false, true, m_platforms), true); // a child folder that exists within that scan folder. + m_config->AddScanFolder(ScanFolderInfo(m_tempPath.filePath("scanfolder1"), "ScanFolder1", "sf1", true, false, m_platforms), true); // a root folder that has watched subfolders, not recursive + m_config->AddScanFolder(ScanFolderInfo(m_tempPath.filePath("scanfolder1/Editor"), "Editor", "sf2", false, true, m_platforms), true); // a child folder that exists within that scan folder. const ScanFolderInfo* info = m_config->GetScanFolderForFile(m_tempPath.filePath("scanfolder1/something.txt")); @@ -229,8 +229,8 @@ TEST_F(PlatformConfigurationUnitTests_OnePCHostFixture, GetScanFolderForFile_Sub using namespace AzToolsFramework::AssetSystem; using namespace AssetProcessor; - m_config->AddScanFolder(ScanFolderInfo(m_tempPath.filePath("scanfolder1"), "ScanFolder1", "sf1", "", true, false, m_platforms), true); // a root folder that has watched subfolders, not recursive - m_config->AddScanFolder(ScanFolderInfo(m_tempPath.filePath("scanfolder1/Editor"), "Editor ScanFolder", "sf2", "", false, true, m_platforms), true); // a child folder that exists within that scan folder. + m_config->AddScanFolder(ScanFolderInfo(m_tempPath.filePath("scanfolder1"), "ScanFolder1", "sf1", true, false, m_platforms), true); // a root folder that has watched subfolders, not recursive + m_config->AddScanFolder(ScanFolderInfo(m_tempPath.filePath("scanfolder1/Editor"), "Editor ScanFolder", "sf2", false, true, m_platforms), true); // a child folder that exists within that scan folder. const ScanFolderInfo* info = m_config->GetScanFolderForFile(m_tempPath.filePath("scanfolder1/Editor/something.txt")); @@ -254,8 +254,8 @@ TEST_F(PlatformConfigurationUnitTests_OnePCHostFixture, GetOverridingFile_Exists QString differentCaseDummyFileName = m_tempPath.absoluteFilePath("scanfolder2/testcase.txt"); UnitTestUtils::CreateDummyFile(caseSensitiveDummyFileName, QString("testcase1\n")); UnitTestUtils::CreateDummyFile(differentCaseDummyFileName, QString("testcase2\n")); - m_config->AddScanFolder(ScanFolderInfo(scanfolder1Path, "ScanFolder1", "sf1", "", false, true, m_platforms), true); - m_config->AddScanFolder(ScanFolderInfo(scanfolder2Path, "ScanFolder2", "sf2", "", false, true, m_platforms), true); + m_config->AddScanFolder(ScanFolderInfo(scanfolder1Path, "ScanFolder1", "sf1", false, true, m_platforms), true); + m_config->AddScanFolder(ScanFolderInfo(scanfolder2Path, "ScanFolder2", "sf2", false, true, m_platforms), true); // Perform the test by asking it whether anyone overrides "testcase" (lowercase) in scanfolder 2. QString overrider = m_config->GetOverridingFile("testcase.txt", scanfolder2Path); @@ -278,9 +278,9 @@ TEST_F(PlatformConfigurationUnitTests_OnePCHostFixture, GetOverridingFile_Exists QString differentCaseDummyFileName = m_tempPath.absoluteFilePath("scanfolder2/testcase.txt"); UnitTestUtils::CreateDummyFile(caseSensitiveDummyFileName, QString("testcase1\n")); UnitTestUtils::CreateDummyFile(differentCaseDummyFileName, QString("testcase2\n")); - m_config->AddScanFolder(ScanFolderInfo(scanfolder1Path, "ScanFolder1", "sf1", "", false, true, m_platforms), true); - m_config->AddScanFolder(ScanFolderInfo(scanfolder2Path, "ScanFolder2", "sf2", "", false, true, m_platforms), true); - + m_config->AddScanFolder(ScanFolderInfo(scanfolder1Path, "ScanFolder1", "sf1", false, true, m_platforms), true); + m_config->AddScanFolder(ScanFolderInfo(scanfolder2Path, "ScanFolder2", "sf2", false, true, m_platforms), true); + // Perform the test by asking it whether the existing real winning file is being overridden by anyone. QString overrider = m_config->GetOverridingFile("TestCase.tXt", scanfolder1Path); @@ -297,8 +297,8 @@ TEST_F(PlatformConfigurationUnitTests_OnePCHostFixture, GetOverridingFile_DoesNo QString scanfolder1Path = m_tempPath.filePath("scanfolder1"); QString scanfolder2Path = m_tempPath.filePath("scanfolder2"); - m_config->AddScanFolder(ScanFolderInfo(scanfolder1Path, "ScanFolder1", "sf1", "", false, true, m_platforms), true); - m_config->AddScanFolder(ScanFolderInfo(scanfolder2Path, "ScanFolder2", "sf2", "", false, true, m_platforms), true); + m_config->AddScanFolder(ScanFolderInfo(scanfolder1Path, "ScanFolder1", "sf1", false, true, m_platforms), true); + m_config->AddScanFolder(ScanFolderInfo(scanfolder2Path, "ScanFolder2", "sf2", false, true, m_platforms), true); // Perform the test by asking it whether anyone overrides "testcase" (lowercase) in scanfolder 2. QString overrider = m_config->GetOverridingFile("doesntExist.txt", scanfolder2Path); @@ -314,8 +314,8 @@ TEST_F(PlatformConfigurationUnitTests_OnePCHostFixture, FindFirstMatchingFile_Do // create two scan folders, since its order dependent, the ScanFolder1 is the "winner" in tie breakers. QString scanfolder1Path = m_tempPath.filePath("scanfolder1"); QString scanfolder2Path = m_tempPath.filePath("scanfolder2"); - m_config->AddScanFolder(ScanFolderInfo(scanfolder1Path, "ScanFolder1", "sf1", "", false, true, m_platforms), true); - m_config->AddScanFolder(ScanFolderInfo(scanfolder2Path, "ScanFolder2", "sf2", "", false, true, m_platforms), true); + m_config->AddScanFolder(ScanFolderInfo(scanfolder1Path, "ScanFolder1", "sf1", false, true, m_platforms), true); + m_config->AddScanFolder(ScanFolderInfo(scanfolder2Path, "ScanFolder2", "sf2", false, true, m_platforms), true); // Perform the test by asking it whether anyone overrides "testcase" (lowercase) in scanfolder 2. QString foundFile = m_config->FindFirstMatchingFile("doesntExist.txt"); @@ -325,7 +325,7 @@ TEST_F(PlatformConfigurationUnitTests_OnePCHostFixture, FindFirstMatchingFile_Do // note that we do not guarantee that FindFirstMatchingFile always returns the correct case, as it is a super hot path // function, and the only time case could be incorrect is in the situation where a file with different case overrides -// an underlying file, ie, +// an underlying file, ie, // Engine/EngineAssets/Textures/StartScreen.tif // MyGame/EngineAssets/textures/startscreen.tif <-- would override the above because game has higher / more important priority. @@ -335,8 +335,8 @@ TEST_F(PlatformConfigurationUnitTests_OnePCHostFixture, GetScanFolderForFile_Sub using namespace AzToolsFramework::AssetSystem; using namespace AssetProcessor; - m_config->AddScanFolder(ScanFolderInfo(m_tempPath.filePath("scanfolder1"), "ScanFolder1", "sf1", "", true, false, m_platforms), true); // a root folder that has watched subfolders, not recursive - m_config->AddScanFolder(ScanFolderInfo(m_tempPath.filePath("scanfolder1/Editor"), "Editor ScanFolder", "sf2", "", false, true, m_platforms), true); // a child folder that exists within that scan folder. + m_config->AddScanFolder(ScanFolderInfo(m_tempPath.filePath("scanfolder1"), "ScanFolder1", "sf1", true, false, m_platforms), true); // a root folder that has watched subfolders, not recursive + m_config->AddScanFolder(ScanFolderInfo(m_tempPath.filePath("scanfolder1/Editor"), "Editor ScanFolder", "sf2", false, true, m_platforms), true); // a child folder that exists within that scan folder. const ScanFolderInfo* info = m_config->GetScanFolderForFile(m_tempPath.filePath("scanfolder1/Editor")); ASSERT_TRUE(info); @@ -363,20 +363,17 @@ TEST_F(PlatformConfigurationUnitTests, TestFailReadConfigFile_RegularScanfolder) ASSERT_EQ(config.GetScanFolderCount(), 3); // the two, and then the one that has the same data as prior but different identifier. QString scanName = AssetUtilities::ComputeProjectPath() + " Scan Folder"; ASSERT_EQ(config.GetScanFolderAt(0).GetDisplayName(), scanName); - ASSERT_EQ(config.GetScanFolderAt(0).GetOutputPrefix(), QString()); ASSERT_EQ(config.GetScanFolderAt(0).RecurseSubFolders(), true); ASSERT_EQ(config.GetScanFolderAt(0).GetOrder(), 0); ASSERT_EQ(config.GetScanFolderAt(0).GetPortableKey(), QString("Game")); ASSERT_EQ(config.GetScanFolderAt(1).GetDisplayName(), QString("FeatureTests")); - ASSERT_EQ(config.GetScanFolderAt(1).GetOutputPrefix(), QString("featuretestsoutputfolder")); // to prove its not related to display name ASSERT_EQ(config.GetScanFolderAt(1).RecurseSubFolders(), false); ASSERT_EQ(config.GetScanFolderAt(1).GetOrder(), 5000); // this proves that the featuretests name is used instead of the output prefix ASSERT_EQ(config.GetScanFolderAt(1).GetPortableKey(), QString("FeatureTests")); ASSERT_EQ(config.GetScanFolderAt(2).GetDisplayName(), QString("FeatureTests2")); - ASSERT_EQ(config.GetScanFolderAt(2).GetOutputPrefix(), QString("featuretestsoutputfolder")); // to prove its not related to display name ASSERT_EQ(config.GetScanFolderAt(2).RecurseSubFolders(), false); ASSERT_EQ(config.GetScanFolderAt(2).GetOrder(), 6000); // this proves that the featuretests name is used instead of the output prefix @@ -613,7 +610,6 @@ TEST_F(PlatformConfigurationUnitTests, Test_GemHandling) ASSERT_EQ(2, config.GetScanFolderCount()); EXPECT_FALSE(config.GetScanFolderAt(0).IsRoot()); - EXPECT_TRUE(config.GetScanFolderAt(0).GetOutputPrefix().isEmpty()); EXPECT_TRUE(config.GetScanFolderAt(0).RecurseSubFolders()); // the first one is a game gem, so its order should be above 1 but below 100. EXPECT_GE(config.GetScanFolderAt(0).GetOrder(), 100); @@ -623,7 +619,6 @@ TEST_F(PlatformConfigurationUnitTests, Test_GemHandling) expectedScanFolder = tempPath.absoluteFilePath("Gems/LmbrCentral/v2/Assets"); EXPECT_FALSE(config.GetScanFolderAt(1).IsRoot() ); - EXPECT_TRUE(config.GetScanFolderAt(1).GetOutputPrefix().isEmpty()); EXPECT_TRUE(config.GetScanFolderAt(1).RecurseSubFolders()); EXPECT_GT(config.GetScanFolderAt(1).GetOrder(), config.GetScanFolderAt(0).GetOrder()); EXPECT_EQ(0, config.GetScanFolderAt(1).ScanPath().compare(expectedScanFolder, Qt::CaseInsensitive)); diff --git a/Code/Tools/AssetProcessor/native/tests/resourcecompiler/RCControllerTest.cpp b/Code/Tools/AssetProcessor/native/tests/resourcecompiler/RCControllerTest.cpp index ac78db6c3d..b08fbc28d5 100644 --- a/Code/Tools/AssetProcessor/native/tests/resourcecompiler/RCControllerTest.cpp +++ b/Code/Tools/AssetProcessor/native/tests/resourcecompiler/RCControllerTest.cpp @@ -247,54 +247,3 @@ TEST_F(RCcontrollerTest_Simple, SameJobIsCompletedMultipleTimes_CompletesWithout ASSERT_EQ(m_errorAbsorber->m_numAssertsAbsorbed, 4); // Expected that there are 4 errors related to the files not existing on disk. Error message: GenerateFingerprint was called but no input files were requested for fingerprinting. ASSERT_EQ(m_errorAbsorber->m_numErrorsAbsorbed, 0); } - -// makes sure to expose parts of RCJob to the unit test -class TestRCJob : public AssetProcessor::RCJob -{ - friend class GTEST_TEST_CLASS_NAME_(RCcontrollerTest, BuilderSDK_API_ProcessJob_HasValidParameters_WithOutputFolder); -public: - explicit TestRCJob(QObject* parent = 0) : AssetProcessor::RCJob(parent) {}; -}; - -TEST_F(RCcontrollerTest, BuilderSDK_API_ProcessJob_HasValidParameters_WithOutputFolder) -{ - // this test makes sure that the BuilderSDK API is not exposed to any database internals. - - AZ::Uuid sourceUUID = AZ::Uuid::CreateRandom(); - AZ::Uuid builderGuid = AZ::Uuid::CreateRandom(); - - AssetBuilderSDK::ProcessJobRequest req; - { - // note that this scope is intentional. job.Init(jobDetails) below is actually a by-ref operation that destroys JobDetails in the process. - AssetProcessor::JobDetails jobDetails; - - // the crux of this test: the database source name differs from the relative path to watch folder: - jobDetails.m_jobEntry.m_pathRelativeToWatchFolder = "SomeThing.tif"; // case sensitive - - // Note that while this is an OS-SPECIFIC path, this unit test does not actually invoke the file system at all - // and only operates on in-memory structures, so it should work on every platform. - jobDetails.m_jobEntry.m_watchFolderPath = "c:/test/a/B/c"; // just to make sure case is preserved - jobDetails.m_jobEntry.m_databaseSourceName = "somepath/SomeThing.tif"; // case sensitive but outputprefixes are generally lowcase - - jobDetails.m_jobEntry.m_sourceFileUUID = sourceUUID; - jobDetails.m_jobEntry.m_platformInfo = { "ios",{ "mobile", "renderer" } }; - jobDetails.m_jobEntry.m_jobRunKey = 1; - jobDetails.m_jobEntry.m_jobKey = "tiff"; - jobDetails.m_jobEntry.m_builderGuid = builderGuid; - - TestRCJob job; - job.Init(jobDetails); - job.PopulateProcessJobRequest(req); - } - - EXPECT_STREQ(req.m_sourceFile.c_str(), "SomeThing.tif"); - EXPECT_STREQ(req.m_watchFolder.c_str(), "c:/test/a/B/c"); - - // the crux of the test, tested: make sure that it does not contain 'somepath' in there just becuase its part of the Database Source Name. - EXPECT_STREQ(req.m_fullPath.c_str(), "c:/test/a/B/c/SomeThing.tif"); - EXPECT_EQ(req.m_builderGuid, builderGuid); - EXPECT_TRUE(req.m_platformInfo.HasTag("renderer")); - EXPECT_TRUE(req.m_platformInfo.HasTag("mobile")); - EXPECT_STREQ(req.m_platformInfo.m_identifier.c_str(), "ios"); - EXPECT_EQ(req.m_sourceFileUUID, sourceUUID); -} diff --git a/Code/Tools/AssetProcessor/native/ui/SourceAssetTreeItemData.cpp b/Code/Tools/AssetProcessor/native/ui/SourceAssetTreeItemData.cpp index 2cf0aa8ffc..f8c58b7866 100644 --- a/Code/Tools/AssetProcessor/native/ui/SourceAssetTreeItemData.cpp +++ b/Code/Tools/AssetProcessor/native/ui/SourceAssetTreeItemData.cpp @@ -54,13 +54,6 @@ namespace AssetProcessor QDir scanFolder(file->m_scanFolderInfo.m_scanFolder.c_str()); QString sourceName = file->m_sourceInfo.m_sourceName.c_str(); - // If a scan folder has a prefix, then source files in those scan folders will have that - // prefix prepended in the asset database. Strip that prefix off for building the actual absolute path to the file. - if (!file->m_scanFolderInfo.m_outputPrefix.empty()) - { - QRegExp prefixRemovalRegex(QString("^%1/").arg(file->m_scanFolderInfo.m_outputPrefix.c_str())); - sourceName.remove(prefixRemovalRegex); - } return scanFolder.filePath(sourceName); } diff --git a/Code/Tools/AssetProcessor/native/ui/SourceAssetTreeModel.cpp b/Code/Tools/AssetProcessor/native/ui/SourceAssetTreeModel.cpp index 4d7711acad..dda0a58837 100644 --- a/Code/Tools/AssetProcessor/native/ui/SourceAssetTreeModel.cpp +++ b/Code/Tools/AssetProcessor/native/ui/SourceAssetTreeModel.cpp @@ -14,6 +14,7 @@ #include "SourceAssetTreeItemData.h" #include +#include #include @@ -62,19 +63,8 @@ namespace AssetProcessor } - AZStd::string fullPath = source.m_sourceName; + auto fullPath = AZ::IO::Path(scanFolder.m_scanFolder) / source.m_sourceName; - // The source assets should look like they do on disk. - // If the scan folder has an output prefix, strip it from the source file's path in the database, before - // the scan folder path is prepended to the source file. - if (!scanFolder.m_outputPrefix.empty()) - { - AZStd::string prefixPath = scanFolder.m_outputPrefix; - AzFramework::StringFunc::Append(prefixPath, AZ_CORRECT_DATABASE_SEPARATOR); - AzFramework::StringFunc::Replace(fullPath, prefixPath.c_str(), "", false, true); - } - - AzFramework::StringFunc::AssetDatabasePath::Join(scanFolder.m_scanFolder.c_str(), fullPath.c_str(), fullPath, true, false); // It's common for Open 3D Engine game projects and scan folders to be in a subfolder // of the engine install. To improve readability of the source files, strip out @@ -85,7 +75,7 @@ namespace AssetProcessor } if (m_assetRootSet) { - AzFramework::StringFunc::Replace(fullPath, m_assetRoot.absolutePath().toUtf8(), ""); + AzFramework::StringFunc::Replace(fullPath.Native(), m_assetRoot.absolutePath().toUtf8(), ""); } diff --git a/Code/Tools/AssetProcessor/native/unittests/AssetProcessingStateDataUnitTests.cpp b/Code/Tools/AssetProcessor/native/unittests/AssetProcessingStateDataUnitTests.cpp index 1ece24210a..da4ddd6761 100644 --- a/Code/Tools/AssetProcessor/native/unittests/AssetProcessingStateDataUnitTests.cpp +++ b/Code/Tools/AssetProcessor/native/unittests/AssetProcessingStateDataUnitTests.cpp @@ -148,7 +148,7 @@ void AssetProcessingStateDataUnitTest::DataTest(AssetProcessor::AssetDatabaseCon scanFolders.clear(); //add a scanfolder - scanFolder = ScanFolderDatabaseEntry("c:/O3DE/dev", "dev", "rootportkey", ""); + scanFolder = ScanFolderDatabaseEntry("c:/O3DE/dev", "dev", "rootportkey"); UNIT_TEST_EXPECT_TRUE(stateData->SetScanFolder(scanFolder)); if (scanFolder.m_scanFolderID == AzToolsFramework::AssetDatabase::InvalidEntryId) { @@ -158,7 +158,7 @@ void AssetProcessingStateDataUnitTest::DataTest(AssetProcessor::AssetDatabaseCon //add the same folder again, should not add another because it already exists, so we should get the same id // not only that, but the path should update. - ScanFolderDatabaseEntry dupeScanFolder = ScanFolderDatabaseEntry("c:/O3DE/dev2", "dev", "rootportkey", ""); + ScanFolderDatabaseEntry dupeScanFolder("c:/O3DE/dev2", "dev", "rootportkey"); dupeScanFolder.m_scanFolderID = AzToolsFramework::AssetDatabase::InvalidEntryId; UNIT_TEST_EXPECT_TRUE(stateData->SetScanFolder(dupeScanFolder)); if (!(dupeScanFolder == scanFolder)) @@ -200,7 +200,7 @@ void AssetProcessingStateDataUnitTest::DataTest(AssetProcessor::AssetDatabaseCon } //add another folder - ScanFolderDatabaseEntry gameScanFolderEntry("c:/O3DE/game", "game", "gameportkey", ""); + ScanFolderDatabaseEntry gameScanFolderEntry("c:/O3DE/game", "game", "gameportkey"); UNIT_TEST_EXPECT_TRUE(stateData->SetScanFolder(gameScanFolderEntry)); if (gameScanFolderEntry.m_scanFolderID == AzToolsFramework::AssetDatabase::InvalidEntryId || gameScanFolderEntry.m_scanFolderID == scanFolder.m_scanFolderID) @@ -230,7 +230,7 @@ void AssetProcessingStateDataUnitTest::DataTest(AssetProcessor::AssetDatabaseCon UNIT_TEST_EXPECT_TRUE(ScanFoldersContainScanFolderID(scanFolders, scanFolder.m_scanFolderID)); //add another folder again - gameScanFolderEntry = ScanFolderDatabaseEntry("c:/O3DE/game", "game", "gameportkey2", ""); + gameScanFolderEntry = ScanFolderDatabaseEntry("c:/O3DE/game", "game", "gameportkey2"); UNIT_TEST_EXPECT_TRUE(stateData->SetScanFolder(gameScanFolderEntry)); if (gameScanFolderEntry.m_scanFolderID == AzToolsFramework::AssetDatabase::InvalidEntryId || gameScanFolderEntry.m_scanFolderID == scanFolder.m_scanFolderID) @@ -258,7 +258,7 @@ void AssetProcessingStateDataUnitTest::DataTest(AssetProcessor::AssetDatabaseCon /////////////////////////////////////////////////////////// //setup for sources tests //for the rest of the test lets add the original scan folder - scanFolder = ScanFolderDatabaseEntry("c:/O3DE/dev", "dev", "devkey2", ""); + scanFolder = ScanFolderDatabaseEntry("c:/O3DE/dev", "dev", "devkey2"); UNIT_TEST_EXPECT_TRUE(stateData->SetScanFolder(scanFolder)); /////////////////////////////////////////////////////////// @@ -370,7 +370,7 @@ void AssetProcessingStateDataUnitTest::DataTest(AssetProcessor::AssetDatabaseCon UNIT_TEST_EXPECT_TRUE(SourcesContainSourceGuid(sources, source.m_sourceGuid)); //add the same source again, but change the scan folder. This should NOT add a new source - even if we don't know what the sourceID is: - ScanFolderDatabaseEntry scanfolder2 = ScanFolderDatabaseEntry("c:/O3DE/dev2", "dev2", "devkey3", ""); + ScanFolderDatabaseEntry scanfolder2 = ScanFolderDatabaseEntry("c:/O3DE/dev2", "dev2", "devkey3"); UNIT_TEST_EXPECT_TRUE(stateData->SetScanFolder(scanfolder2)); SourceDatabaseEntry dupeSource2(source); @@ -554,7 +554,7 @@ void AssetProcessingStateDataUnitTest::DataTest(AssetProcessor::AssetDatabaseCon //////////////////////////////////////////////////////////////// //Setup for jobs tests by having a scan folder and some sources //Add a scan folder - scanFolder = ScanFolderDatabaseEntry("c:/O3DE/dev", "dev", "devkey3", ""); + scanFolder = ScanFolderDatabaseEntry("c:/O3DE/dev", "dev", "devkey3"); UNIT_TEST_EXPECT_TRUE(stateData->SetScanFolder(scanFolder)); //Add some sources diff --git a/Code/Tools/AssetProcessor/native/unittests/AssetProcessorManagerUnitTests.cpp b/Code/Tools/AssetProcessor/native/unittests/AssetProcessorManagerUnitTests.cpp index a336997068..5940caadb7 100644 --- a/Code/Tools/AssetProcessor/native/unittests/AssetProcessorManagerUnitTests.cpp +++ b/Code/Tools/AssetProcessor/native/unittests/AssetProcessorManagerUnitTests.cpp @@ -46,7 +46,6 @@ namespace AssetProcessor friend class AssetProcessorManagerUnitTests; friend class AssetProcessorManagerUnitTests_JobKeys; friend class AssetProcessorManagerUnitTests_JobDependencies_Fingerprint; - friend class AssetProcessorManagerUnitTests_CheckOutputFolders; #endif // AZ_TRAIT_DISABLE_FAILED_ASSET_PROCESSOR_TESTS public: @@ -64,7 +63,6 @@ namespace AssetProcessor REGISTER_UNIT_TEST(AssetProcessorManagerUnitTests) REGISTER_UNIT_TEST(AssetProcessorManagerUnitTests_JobKeys) REGISTER_UNIT_TEST(AssetProcessorManagerUnitTests_JobDependencies_Fingerprint) - REGISTER_UNIT_TEST(AssetProcessorManagerUnitTests_CheckOutputFolders) #endif // AZ_TRAIT_DISABLE_FAILED_ASSET_PROCESSOR_TESTS @@ -247,11 +245,11 @@ namespace AssetProcessor AZStd::vector platforms; config.PopulatePlatformsForScanFolder(platforms); // PATH DisplayName PortKey outputfolder root recurse platforms order - config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder4"), "subfolder4", "subfolder4", "", false, false, platforms, -6)); // subfolder 4 overrides subfolder3 - config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder3"), "subfolder3", "subfolder3", "", false, false, platforms,-5)); // subfolder 3 overrides subfolder2 - config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder2"), "subfolder2", "subfolder2", "", false, true, platforms, -2)); // subfolder 2 overrides subfolder1 - config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder1"), "subfolder1", "subfolder1", "", false, true, platforms, -1)); // subfolder1 overrides root - config.AddScanFolder(ScanFolderInfo(tempPath.absolutePath(), "temp", "tempfolder", "", true, false, platforms, 0)); // add the root + config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder4"), "subfolder4", "subfolder4", false, false, platforms, -6)); // subfolder 4 overrides subfolder3 + config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder3"), "subfolder3", "subfolder3", false, false, platforms,-5)); // subfolder 3 overrides subfolder2 + config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder2"), "subfolder2", "subfolder2", false, true, platforms, -2)); // subfolder 2 overrides subfolder1 + config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder1"), "subfolder1", "subfolder1", false, true, platforms, -1)); // subfolder1 overrides root + config.AddScanFolder(ScanFolderInfo(tempPath.absolutePath(), "temp", "tempfolder", true, false, platforms, 0)); // add the root config.AddMetaDataType("exportsettings", QString()); @@ -2325,8 +2323,8 @@ namespace AssetProcessor AZStd::vector platforms; config.PopulatePlatformsForScanFolder(platforms); // PATH DisplayName PortKey outputfolder root recurse order - config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder1"), "subfolder1", "subfolder1", "", false, true, platforms,-1)); // subfolder1 overrides root - config.AddScanFolder(ScanFolderInfo(tempPath.absolutePath(), "temp", "tempfolder", "", true, false, platforms, 0)); // add the root + config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder1"), "subfolder1", "subfolder1", false, true, platforms,-1)); // subfolder1 overrides root + config.AddScanFolder(ScanFolderInfo(tempPath.absolutePath(), "temp", "tempfolder", true, false, platforms, 0)); // add the root AssetProcessorManager_Test apm(&config); @@ -2534,11 +2532,11 @@ namespace AssetProcessor AZStd::vector platforms; config.PopulatePlatformsForScanFolder(platforms); // PATH DisplayName PortKey outputfolder root recurse platforms order - config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder4"), "subfolder4", "subfolder4", "", false, false, platforms, -6)); // subfolder 4 overrides subfolder3 - config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder3"), "subfolder3", "subfolder3", "", false, false, platforms, -5)); // subfolder 3 overrides subfolder2 - config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder2"), "subfolder2", "subfolder2", "", false, true, platforms, -2)); // subfolder 2 overrides subfolder1 - config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder1"), "subfolder1", "subfolder1", "", false, true, platforms, -1)); // subfolder1 overrides root - config.AddScanFolder(ScanFolderInfo(tempPath.absolutePath(), "temp", "tempfolder", "", true, false, platforms, 0)); // add the root + config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder4"), "subfolder4", "subfolder4", false, false, platforms, -6)); // subfolder 4 overrides subfolder3 + config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder3"), "subfolder3", "subfolder3", false, false, platforms, -5)); // subfolder 3 overrides subfolder2 + config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder2"), "subfolder2", "subfolder2", false, true, platforms, -2)); // subfolder 2 overrides subfolder1 + config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder1"), "subfolder1", "subfolder1", false, true, platforms, -1)); // subfolder1 overrides root + config.AddScanFolder(ScanFolderInfo(tempPath.absolutePath(), "temp", "tempfolder", true, false, platforms, 0)); // add the root { // create this, which will write those scan folders into the db as-is @@ -2584,13 +2582,13 @@ namespace AssetProcessor config2.PopulatePlatformsForScanFolder(platforms2); // PATH DisplayName PortKey outputfolder root recurse platforms order // case 1: same absolute path, but the same portable key - should use same ID as before. - config2.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder4"), "subfolder4", "subfolder4", "", false, false, platforms2, -6)); // subfolder 4 overrides subfolder3 + config2.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder4"), "subfolder4", "subfolder4", false, false, platforms2, -6)); // subfolder 4 overrides subfolder3 // case 2: A new absolute path, but same portable key - should use same id as before - config2.AddScanFolder(ScanFolderInfo(tempPath.filePath("newfolder3"), "subfolder3", "subfolder3", "", false, false, platforms2, -5)); // subfolder 3 overrides subfolder2 + config2.AddScanFolder(ScanFolderInfo(tempPath.filePath("newfolder3"), "subfolder3", "subfolder3", false, false, platforms2, -5)); // subfolder 3 overrides subfolder2 // case 3: same absolute path, new portable key - should use a new ID - config2.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder1"), "subfolder3", "newfolder3", "", false, false, platforms2, -5)); // subfolder 3 overrides subfolder2 + config2.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder1"), "subfolder3", "newfolder3", false, false, platforms2, -5)); // subfolder 3 overrides subfolder2 // case 4: subfolder2 is missing - it should be gone. @@ -2775,8 +2773,8 @@ namespace AssetProcessor AZStd::vector platforms; config.PopulatePlatformsForScanFolder(platforms); // PATH DisplayName PortKey outputfolder root recurse order - config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder1"), "subfolder1", "subfolder1", "", false, true, platforms, -1)); // subfolder1 overrides root - config.AddScanFolder(ScanFolderInfo(tempPath.absolutePath(), "temp", "tempfolder", "", true, false, platforms, 0)); // add the root + config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder1"), "subfolder1", "subfolder1", false, true, platforms, -1)); // subfolder1 overrides root + config.AddScanFolder(ScanFolderInfo(tempPath.absolutePath(), "temp", "tempfolder", true, false, platforms, 0)); // add the root AssetProcessorManager_Test apm(&config); @@ -3083,255 +3081,6 @@ namespace AssetProcessor Q_EMIT UnitTestPassed(); } - void AssetProcessorManagerUnitTests_CheckOutputFolders::StartTest() - { - MockAssetBuilderInfoHandler mockAssetBuilderInfoHandler; - - QDir oldRoot; - AssetUtilities::ComputeAssetRoot(oldRoot); - AssetUtilities::ResetAssetRoot(); - - // the canonicalization of the path here is to get around the fact that on some platforms - // the "temporary" folder location could be junctioned into some other folder and getting "QDir::current()" - // and other similar functions may actually return a different string but still be referring to the same folder - QTemporaryDir dir; - QDir tempPath(dir.path()); - QString canonicalTempDirPath = AssetUtilities::NormalizeDirectoryPath(tempPath.canonicalPath()); - UnitTestUtils::ScopedDir changeDir(canonicalTempDirPath); - tempPath = QDir(canonicalTempDirPath); - - QString gameName = AssetUtilities::ComputeProjectName(AssetProcessorManagerTestGameProject); - - // update the engine root - AssetUtilities::ResetAssetRoot(); - QDir newRoot; - AssetUtilities::ComputeAssetRoot(newRoot, &tempPath); - - UNIT_TEST_EXPECT_FALSE(gameName.isEmpty()); - - PlatformConfiguration config; - config.EnablePlatform({ "pc",{ "desktop", "renderer" } }, true); - AZStd::vector platforms; - config.PopulatePlatformsForScanFolder(platforms); - // PATH DisplayName PortKey outputfolder root recurse platforms order - - // note: the crux of this test is that we ar redirecting output into the cache at a different location instead of default. - // so our scan folder has a "redirected" folder. - config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder1"), "subfolder1", "subfolder1", "redirected", false, true, platforms, -1)); - - AssetProcessorManager_Test apm(&config); - - QDir cacheRoot; - UNIT_TEST_EXPECT_TRUE(AssetUtilities::ComputeProjectCacheRoot(cacheRoot)); - - QList processResults; - QList > changedInputResults; - QList< AzFramework::AssetSystem::AssetNotificationMessage > assetMessages; - - bool idling = false; - - connect(&apm, &AssetProcessorManager::AssetToProcess, - this, [&processResults](JobDetails details) - { - processResults.push_back(AZStd::move(details)); - }); - - connect(&apm, &AssetProcessorManager::AssetMessage, - this, [&assetMessages](AzFramework::AssetSystem::AssetNotificationMessage message) - { - assetMessages.push_back( message); - }); - - connect(&apm, &AssetProcessorManager::InputAssetProcessed, - this, [&changedInputResults](QString relativePath, QString platform) - { - changedInputResults.push_back(QPair(relativePath, platform)); - }); - - connect(&apm, &AssetProcessorManager::AssetProcessorManagerIdleState, - this, [&idling](bool state) - { - idling = state; - } - ); - - QString sourceFile = tempPath.absoluteFilePath("subfolder1/basefile.foo"); - CreateDummyFile(sourceFile); - - mockAssetBuilderInfoHandler.m_numberOfJobsToCreate = 1; //Create two jobs for this file - - QMetaObject::invokeMethod(&apm, "AssessModifiedFile", Qt::QueuedConnection, Q_ARG(QString, sourceFile)); - - UNIT_TEST_EXPECT_TRUE(BlockUntil(idling, 5000)); - - // block until no more events trickle in: - QCoreApplication::processEvents(QEventLoop::AllEvents); - - UNIT_TEST_EXPECT_TRUE(processResults.size() == 1); - UNIT_TEST_EXPECT_TRUE((processResults[0].m_jobEntry.m_platformInfo.m_identifier == "pc")); - UNIT_TEST_EXPECT_TRUE(processResults[0].m_jobEntry.m_databaseSourceName == "redirected/basefile.foo"); - UNIT_TEST_EXPECT_TRUE(processResults[0].m_jobEntry.m_pathRelativeToWatchFolder == "basefile.foo"); - UNIT_TEST_EXPECT_TRUE(processResults[0].m_jobEntry.m_watchFolderPath == tempPath.filePath("subfolder1")); - - QStringList pcouts; - pcouts.push_back(cacheRoot.filePath(QString("pc/redirected/basefile.arc1"))); - - // Create the product files for the first job - UNIT_TEST_EXPECT_TRUE(CreateDummyFile(pcouts[0], "product1")); - - // Invoke Asset Processed for pc platform for the first job - AssetBuilderSDK::ProcessJobResponse response; - response.m_resultCode = AssetBuilderSDK::ProcessJobResult_Success; - response.m_outputProducts.push_back(AssetBuilderSDK::JobProduct(pcouts[0].toUtf8().constData())); - - QMetaObject::invokeMethod(&apm, "AssetProcessed", Qt::QueuedConnection, Q_ARG(JobEntry, processResults[0].m_jobEntry), Q_ARG(AssetBuilderSDK::ProcessJobResponse, response)); - - // let events bubble through: - UNIT_TEST_EXPECT_TRUE(BlockUntil(idling, 5000)); - - UNIT_TEST_EXPECT_TRUE(assetMessages.size() == 1); - UNIT_TEST_EXPECT_TRUE(changedInputResults.size() == 1); - UNIT_TEST_EXPECT_TRUE(assetMessages[0].m_platform == "pc"); - UNIT_TEST_EXPECT_TRUE(assetMessages[0].m_data == "redirected/basefile.arc1"); - UNIT_TEST_EXPECT_TRUE(assetMessages[0].m_type == AzFramework::AssetSystem::AssetNotificationMessage::AssetChanged); - - UNIT_TEST_EXPECT_TRUE(AssetUtilities::NormalizeFilePath(changedInputResults[0].first) == AssetUtilities::NormalizeFilePath(sourceFile)); - - // ------------- TEST 1: Modified source file - - processResults.clear(); - pcouts.clear(); - assetMessages.clear(); - changedInputResults.clear(); - - // now, the test is set up. we can now start poking that file and make sure we emit the appropriate messages. - // first, lets modify the file and make sure we get the build request. - -#if defined(AZ_PLATFORM_WINDOWS) - QThread::msleep(30); // give at least some milliseconds so that the files never share the same timestamp exactly -#else - // on some file systems such as HFS (commonly used on Apple devices, the file time resolution is only a second. - // We are forcing a wait here of at least a second to make sure that the file modtime - // actually changes. - QThread::msleep(1001); -#endif // defined (AZ_PLATFORM_WINDOWS) - - UNIT_TEST_EXPECT_TRUE(CreateDummyFile(sourceFile, "new data!")); - - QMetaObject::invokeMethod(&apm, "AssessModifiedFile", Qt::QueuedConnection, Q_ARG(QString, sourceFile)); - - UNIT_TEST_EXPECT_TRUE(BlockUntil(idling, 5000)); - - // block until no more events trickle in: - QCoreApplication::processEvents(QEventLoop::AllEvents); - - UNIT_TEST_EXPECT_TRUE(processResults.size() == 1); - UNIT_TEST_EXPECT_TRUE((processResults[0].m_jobEntry.m_platformInfo.m_identifier == "pc")); - UNIT_TEST_EXPECT_TRUE(processResults[0].m_jobEntry.m_pathRelativeToWatchFolder == "basefile.foo"); - UNIT_TEST_EXPECT_TRUE(processResults[0].m_jobEntry.m_databaseSourceName == "redirected/basefile.foo"); - UNIT_TEST_EXPECT_TRUE(processResults[0].m_jobEntry.m_watchFolderPath == tempPath.absoluteFilePath("subfolder1")); - - pcouts.push_back(cacheRoot.filePath(QString("pc/redirected/basefile.arc1"))); - - // Create the product files for the first job - UNIT_TEST_EXPECT_TRUE(CreateDummyFile(pcouts[0], "product1")); - - // Invoke Asset Processed for pc platform for the first job - response.m_outputProducts.clear(); - response.m_resultCode = AssetBuilderSDK::ProcessJobResult_Success; - response.m_outputProducts.push_back(AssetBuilderSDK::JobProduct(pcouts[0].toUtf8().constData())); - - QMetaObject::invokeMethod(&apm, "AssetProcessed", Qt::QueuedConnection, Q_ARG(JobEntry, processResults[0].m_jobEntry), Q_ARG(AssetBuilderSDK::ProcessJobResponse, response)); - - // let events bubble through: - UNIT_TEST_EXPECT_TRUE(BlockUntil(idling, 5000)); - - UNIT_TEST_EXPECT_TRUE(assetMessages.size() == 1); - UNIT_TEST_EXPECT_TRUE(changedInputResults.size() == 1); - UNIT_TEST_EXPECT_TRUE(assetMessages[0].m_platform == "pc"); - UNIT_TEST_EXPECT_TRUE(assetMessages[0].m_data == "redirected/basefile.arc1"); - UNIT_TEST_EXPECT_TRUE(assetMessages[0].m_type == AzFramework::AssetSystem::AssetNotificationMessage::AssetChanged); - - UNIT_TEST_EXPECT_TRUE(AssetUtilities::NormalizeFilePath(changedInputResults[0].first) == AssetUtilities::NormalizeFilePath(sourceFile)); - - // ------------- TEST 2: Deleted product - - processResults.clear(); - pcouts.clear(); - assetMessages.clear(); - changedInputResults.clear(); - - QString deletedProductPath = cacheRoot.filePath(QString("pc/redirected/basefile.arc1")); - - QFile::remove(deletedProductPath); - - QMetaObject::invokeMethod(&apm, "AssessDeletedFile", Qt::QueuedConnection, Q_ARG(QString, deletedProductPath)); - - UNIT_TEST_EXPECT_TRUE(BlockUntil(idling, 5000)); - - // block until no more events trickle in: - QCoreApplication::processEvents(QEventLoop::AllEvents); - - UNIT_TEST_EXPECT_TRUE(assetMessages.size() == 0); // asset removed is delayed until actual processing occurs. - - UNIT_TEST_EXPECT_TRUE(processResults.size() == 1); - UNIT_TEST_EXPECT_TRUE((processResults[0].m_jobEntry.m_platformInfo.m_identifier == "pc")); - UNIT_TEST_EXPECT_TRUE(processResults[0].m_jobEntry.m_pathRelativeToWatchFolder == "basefile.foo"); - UNIT_TEST_EXPECT_TRUE(processResults[0].m_jobEntry.m_databaseSourceName == "redirected/basefile.foo"); - UNIT_TEST_EXPECT_TRUE(processResults[0].m_jobEntry.m_watchFolderPath == tempPath.absoluteFilePath("subfolder1")); - - pcouts.push_back(cacheRoot.filePath(QString("pc/redirected/basefile.arc1"))); - - // Create the product files for the first job - UNIT_TEST_EXPECT_TRUE(CreateDummyFile(pcouts[0], "product1")); - - // Invoke Asset Processed for pc platform for the first job - response.m_outputProducts.clear(); - response.m_resultCode = AssetBuilderSDK::ProcessJobResult_Success; - response.m_outputProducts.push_back(AssetBuilderSDK::JobProduct(pcouts[0].toUtf8().constData())); - - changedInputResults.clear(); - assetMessages.clear(); - - QMetaObject::invokeMethod(&apm, "AssetProcessed", Qt::QueuedConnection, Q_ARG(JobEntry, processResults[0].m_jobEntry), Q_ARG(AssetBuilderSDK::ProcessJobResponse, response)); - - // let events bubble through: - UNIT_TEST_EXPECT_TRUE(BlockUntil(idling, 5000)); - - UNIT_TEST_EXPECT_TRUE(assetMessages.size() == 1); - UNIT_TEST_EXPECT_TRUE(changedInputResults.size() == 1); - UNIT_TEST_EXPECT_TRUE(assetMessages[0].m_platform == "pc"); - UNIT_TEST_EXPECT_TRUE(assetMessages[0].m_data == "redirected/basefile.arc1"); - UNIT_TEST_EXPECT_TRUE(assetMessages[0].m_type == AzFramework::AssetSystem::AssetNotificationMessage::AssetChanged); - - UNIT_TEST_EXPECT_TRUE(AssetUtilities::NormalizeFilePath(changedInputResults[0].first) == AssetUtilities::NormalizeFilePath(sourceFile)); - - // ------------- TEST 3: Deleted source - the products should end up deleted! - - processResults.clear(); - pcouts.clear(); - assetMessages.clear(); - changedInputResults.clear(); - - QString deletedSourcePath = sourceFile; - QFile::remove(deletedSourcePath); - QMetaObject::invokeMethod(&apm, "AssessDeletedFile", Qt::QueuedConnection, Q_ARG(QString, deletedSourcePath)); - - UNIT_TEST_EXPECT_TRUE(BlockUntil(idling, 5000)); - - // block until no more events trickle in: - QCoreApplication::processEvents(QEventLoop::AllEvents); - - UNIT_TEST_EXPECT_TRUE(assetMessages.size() == 1); - UNIT_TEST_EXPECT_TRUE(assetMessages[0].m_platform == "pc"); - UNIT_TEST_EXPECT_TRUE(assetMessages[0].m_data == "redirected/basefile.arc1"); - UNIT_TEST_EXPECT_TRUE(assetMessages[0].m_type == AzFramework::AssetSystem::AssetNotificationMessage::AssetRemoved); - - // also ensure file is actually gone! - UNIT_TEST_EXPECT_TRUE(!QFile::exists(deletedProductPath)); - - Q_EMIT UnitTestPassed(); - } void AssetProcessorManagerUnitTests_JobDependencies_Fingerprint::GetMatchingBuildersInfo(const AZStd::string& assetPath, AssetProcessor::BuilderInfoList& builderInfoList) { AZ_UNUSED(assetPath); diff --git a/Code/Tools/AssetProcessor/native/unittests/AssetProcessorManagerUnitTests.h b/Code/Tools/AssetProcessor/native/unittests/AssetProcessorManagerUnitTests.h index 295e2331bd..1608c133a3 100644 --- a/Code/Tools/AssetProcessor/native/unittests/AssetProcessorManagerUnitTests.h +++ b/Code/Tools/AssetProcessor/native/unittests/AssetProcessorManagerUnitTests.h @@ -45,14 +45,6 @@ Q_SIGNALS: virtual void StartTest() override; }; -class AssetProcessorManagerUnitTests_CheckOutputFolders - : public UnitTestRun - { - Q_OBJECT - public: - virtual void StartTest() override; - - }; class AssetProcessorManagerUnitTests_JobDependencies_Fingerprint : public UnitTestRun , public AssetProcessor::AssetBuilderInfoBus::Handler diff --git a/Code/Tools/AssetProcessor/native/unittests/AssetScannerUnitTests.cpp b/Code/Tools/AssetProcessor/native/unittests/AssetScannerUnitTests.cpp index d4bf49773e..d42be02d06 100644 --- a/Code/Tools/AssetProcessor/native/unittests/AssetScannerUnitTests.cpp +++ b/Code/Tools/AssetProcessor/native/unittests/AssetScannerUnitTests.cpp @@ -65,10 +65,10 @@ void AssetScannerUnitTest::StartTest() AZStd::vector platforms; config.PopulatePlatformsForScanFolder(platforms); // PATH DisplayName PortKey outputfolder root recurse platforms - config.AddScanFolder(ScanFolderInfo(tempPath.absolutePath(), "temp", "ap1", "", true, false, platforms)); // note: "Recurse" set to false. - config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder1"), "", "ap2", "", false, true, platforms)); - config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder2"), "", "ap3", "", false, true, platforms)); - config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder3"), "", "ap4", "", false, false, platforms)); // note: "Recurse" set to false. + config.AddScanFolder(ScanFolderInfo(tempPath.absolutePath(), "temp", "ap1", true, false, platforms)); // note: "Recurse" set to false. + config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder1"), "", "ap2", false, true, platforms)); + config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder2"), "", "ap3", false, true, platforms)); + config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder3"), "", "ap4", false, false, platforms)); // note: "Recurse" set to false. AssetScanner scanner(&config); QList filesFound; diff --git a/Code/Tools/AssetProcessor/native/unittests/PlatformConfigurationUnitTests.cpp b/Code/Tools/AssetProcessor/native/unittests/PlatformConfigurationUnitTests.cpp index 5a697c103f..e09a6366a1 100644 --- a/Code/Tools/AssetProcessor/native/unittests/PlatformConfigurationUnitTests.cpp +++ b/Code/Tools/AssetProcessor/native/unittests/PlatformConfigurationUnitTests.cpp @@ -69,20 +69,20 @@ void PlatformConfigurationTests::StartTest() AZStd::vector platforms; config.PopulatePlatformsForScanFolder(platforms); - // PATH DisplayName PortKey outputfolder root recurse platforms, isunittesting - config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder3"), "", "sf3", "", false, false, platforms), true); // subfolder 3 overrides subfolder2 - config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder2"), "", "sf4", "", false, true, platforms), true); // subfolder 2 overrides subfolder1 - config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder1"), "", "sf1", "subfolder1", false, true, platforms), true); // subfolder1 overrides root - config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder4"), "", "sf4", "", false, true, platforms), true); // subfolder4 overrides subfolder5 - config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder5"), "", "sf5", "b/c", false, true, platforms), true); // subfolder5 overrides subfolder6 - config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder6"), "", "sf6", "b/c", false, true, platforms), true); // subfolder6 overrides subfolder7 - config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder7"), "", "sf7", "", false, true, platforms), true); // subfolder7 overrides subfolder8 - config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder8/x"), "", "sf8", "", false, true, platforms), true); // subfolder8 overrides root - config.AddScanFolder(ScanFolderInfo(tempPath.absolutePath(), "temp", "temp", "", true, false, platforms), true); // add the root + // PATH DisplayName PortKey root recurse platforms, isunittesting + config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder3"), "", "sf3", false, false, platforms), true); // subfolder 3 overrides subfolder2 + config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder2"), "", "sf4", false, true, platforms), true); // subfolder 2 overrides subfolder1 + config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder1"), "", "sf1", false, true, platforms), true); // subfolder1 overrides root + config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder4"), "", "sf4", false, true, platforms), true); // subfolder4 overrides subfolder5 + config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder5"), "", "sf5", false, true, platforms), true); // subfolder5 overrides subfolder6 + config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder6"), "", "sf6", false, true, platforms), true); // subfolder6 overrides subfolder7 + config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder7"), "", "sf7", false, true, platforms), true); // subfolder7 overrides subfolder8 + config.AddScanFolder(ScanFolderInfo(tempPath.filePath("subfolder8/x"), "", "sf8", false, true, platforms), true); // subfolder8 overrides root + config.AddScanFolder(ScanFolderInfo(tempPath.absolutePath(), "temp", "temp", true, false, platforms), true); // add the root // these are checked for later. - config.AddScanFolder(ScanFolderInfo(tempPath.filePath("GameName"), "gn", "", "", false, true, platforms), true); - config.AddScanFolder(ScanFolderInfo(tempPath.filePath("GameNameButWithExtra"), "gnbwe", "", "WithExtra", false, true, platforms), true); + config.AddScanFolder(ScanFolderInfo(tempPath.filePath("GameName"), "gn", "", false, true, platforms), true); + config.AddScanFolder(ScanFolderInfo(tempPath.filePath("GameNameButWithExtra"), "gnbwe", "", false, true, platforms), true); @@ -151,7 +151,7 @@ void PlatformConfigurationTests::StartTest() UNIT_TEST_EXPECT_TRUE(config.GetOverridingFile("rootfile3.txt", tempPath.absolutePath()) == tempPath.absoluteFilePath("subfolder3/rootfile3.txt")); UNIT_TEST_EXPECT_TRUE(config.GetOverridingFile("subfolder1/whatever.txt", tempPath.filePath("subfolder1")) == QString()); UNIT_TEST_EXPECT_TRUE(AssetUtilities::NormalizeFilePath(config.GetOverridingFile("subfolder1/override.txt", tempPath.filePath("subfolder1"))) == AssetUtilities::NormalizeFilePath(tempPath.absoluteFilePath("subfolder2/subfolder1/override.txt"))); - UNIT_TEST_EXPECT_TRUE(AssetUtilities::NormalizeFilePath(config.GetOverridingFile("b/c/a/testfile.txt", tempPath.filePath("subfolder6"))) == AssetUtilities::NormalizeFilePath(tempPath.absoluteFilePath("subfolder5/a/testfile.txt"))); + UNIT_TEST_EXPECT_TRUE(AssetUtilities::NormalizeFilePath(config.GetOverridingFile("a/testfile.txt", tempPath.filePath("subfolder6"))) == AssetUtilities::NormalizeFilePath(tempPath.absoluteFilePath("subfolder4/a/testfile.txt"))); UNIT_TEST_EXPECT_TRUE(AssetUtilities::NormalizeFilePath(config.GetOverridingFile("a/testfile.txt", tempPath.filePath("subfolder7"))) == AssetUtilities::NormalizeFilePath(tempPath.absoluteFilePath("subfolder4/a/testfile.txt"))); UNIT_TEST_EXPECT_TRUE(AssetUtilities::NormalizeFilePath(config.GetOverridingFile("a/testfile.txt", tempPath.filePath("subfolder8/x"))) == AssetUtilities::NormalizeFilePath(tempPath.absoluteFilePath("subfolder4/a/testfile.txt"))); @@ -183,7 +183,6 @@ void PlatformConfigurationTests::StartTest() // different regex rule should not interfere UNIT_TEST_EXPECT_TRUE(config.FindFirstMatchingFile("test/test.format") == tempPath.filePath("subfolder1/test/test.format")); - UNIT_TEST_EXPECT_TRUE(config.FindFirstMatchingFile("b/c/a/testfile.txt") == tempPath.filePath("subfolder5/a/testfile.txt")); UNIT_TEST_EXPECT_TRUE(config.FindFirstMatchingFile("a/testfile.txt") == tempPath.filePath("subfolder4/a/testfile.txt")); // ---------------------------- GetScanFolderForFile ----------------- @@ -198,15 +197,6 @@ void PlatformConfigurationTests::StartTest() UNIT_TEST_EXPECT_TRUE(config.GetScanFolderForFile(tempPath.filePath("rootfile2.txt"))); UNIT_TEST_EXPECT_TRUE(config.GetScanFolderForFile(tempPath.filePath("rootfile2.txt"))->ScanPath() == tempPath.absolutePath()); - // test of output prefix lookup - UNIT_TEST_EXPECT_TRUE(config.GetScanFolderForFile(tempPath.filePath("subfolder1/whatever.txt"))->GetOutputPrefix() == "subfolder1"); - - // make sure that it does not mistake the GameName folder and the GameNameWithExtra folder for each other. - - UNIT_TEST_EXPECT_TRUE(config.GetScanFolderForFile(tempPath.filePath("GameNameButWithExtra/somefile.meo"))->GetOutputPrefix() == "WithExtra"); - UNIT_TEST_EXPECT_TRUE(config.GetScanFolderForFile(tempPath.filePath("GameName/otherfile.meo"))->GetOutputPrefix() == ""); - - // -------------------------- ConvertToRelativePath ------------------------------ QString fileName; @@ -238,9 +228,9 @@ void PlatformConfigurationTests::StartTest() UNIT_TEST_EXPECT_TRUE(fileName == "aaa/bbb/ccc/ddd/basefile.txt"); UNIT_TEST_EXPECT_TRUE(scanFolderPath == tempPath.filePath("subfolder2")); - // verify that output relative paths include output prefix + // verify that output relative paths UNIT_TEST_EXPECT_TRUE(config.ConvertToRelativePath(tempPath.absoluteFilePath("subfolder1/whatever.txt"), fileName, scanFolderPath)); - UNIT_TEST_EXPECT_TRUE(fileName == "subfolder1/whatever.txt"); + UNIT_TEST_EXPECT_TRUE(fileName == "whatever.txt"); UNIT_TEST_EXPECT_TRUE(scanFolderPath == tempPath.filePath("subfolder1")); } diff --git a/Code/Tools/AssetProcessor/native/unittests/RCcontrollerUnitTests.cpp b/Code/Tools/AssetProcessor/native/unittests/RCcontrollerUnitTests.cpp index 8d423a68cd..0e771f7fd1 100644 --- a/Code/Tools/AssetProcessor/native/unittests/RCcontrollerUnitTests.cpp +++ b/Code/Tools/AssetProcessor/native/unittests/RCcontrollerUnitTests.cpp @@ -520,7 +520,7 @@ void RCcontrollerUnitTests::RunRCControllerTests() AZ::Uuid uuidOfSource = AZ::Uuid("{D013122E-CF2C-4534-A87D-F82570FBC2CD}"); MockRCJob rcJob; - ScanFolderInfo scanFolderInfo("samplepath", "sampledisplayname", "samplekey", "", false, false); + ScanFolderInfo scanFolderInfo("samplepath", "sampledisplayname", "samplekey", false, false); AssetProcessor::JobDetails jobDetailsToInitWith; jobDetailsToInitWith.m_jobEntry.m_watchFolderPath = tempPath.absoluteFilePath("subfolder4"); jobDetailsToInitWith.m_jobEntry.m_databaseSourceName = jobDetailsToInitWith.m_jobEntry.m_pathRelativeToWatchFolder = "needsLock.tiff"; diff --git a/Code/Tools/AssetProcessor/native/utilities/ApplicationManager.cpp b/Code/Tools/AssetProcessor/native/utilities/ApplicationManager.cpp index 2c3d0739c6..c85801a074 100644 --- a/Code/Tools/AssetProcessor/native/utilities/ApplicationManager.cpp +++ b/Code/Tools/AssetProcessor/native/utilities/ApplicationManager.cpp @@ -470,7 +470,7 @@ void ApplicationManager::PopulateApplicationDependencies() QDir assetRoot; AssetUtilities::ComputeAssetRoot(assetRoot); - QString globalConfigPath = assetRoot.filePath("AssetProcessorPlatformConfig.setreg"); + QString globalConfigPath = assetRoot.filePath("Registry/AssetProcessorPlatformConfig.setreg"); m_filesOfInterest.push_back(globalConfigPath); QString gamePlatformConfigPath = QDir(AssetUtilities::ComputeProjectPath()).filePath("AssetProcessorGamePlatformConfig.setreg"); diff --git a/Code/Tools/AssetProcessor/native/utilities/PlatformConfiguration.cpp b/Code/Tools/AssetProcessor/native/utilities/PlatformConfiguration.cpp index 615e465b21..7db5804b14 100644 --- a/Code/Tools/AssetProcessor/native/utilities/PlatformConfiguration.cpp +++ b/Code/Tools/AssetProcessor/native/utilities/PlatformConfiguration.cpp @@ -216,10 +216,6 @@ namespace AssetProcessor { scanFolderEntry.m_watchPath = value; } - else if (valueName == "output") - { - scanFolderEntry.m_outputPrefix = value; - } else if (valueName == "display" && !value.empty()) { scanFolderEntry.m_scanFolderDisplayName = value; @@ -784,7 +780,6 @@ namespace AssetProcessor scanFolder, AZStd::string::format("ScanFolderParam %zu", idx).c_str(), AZStd::string::format("SF%zu", idx).c_str(), - "", false, true, platforms, @@ -1079,10 +1074,6 @@ namespace AssetProcessor AZStd::vector platforms; PopulatePlatformsForScanFolder(platforms, includeIdentifiers, excludeIdentifiers); - - // Normalize the OutputPrefix to use PosixPathSeparators - scanFolderEntry.m_outputPrefix = AZ::IO::PathView(scanFolderEntry.m_outputPrefix, AZ::IO::PosixPathSeparator).LexicallyNormal().String(); - const bool isEngineRoot = scanFolderEntry.m_watchPath == engineRoot; // If the scan folder happens to be the engine root, it is not recursive scanFolderEntry.m_isRecursive = scanFolderEntry.m_isRecursive && !isEngineRoot; @@ -1093,7 +1084,6 @@ namespace AssetProcessor QString::fromUtf8(scanFolderEntry.m_watchPath.c_str(), aznumeric_cast(scanFolderEntry.m_watchPath.Native().size())), QString::fromUtf8(scanFolderEntry.m_scanFolderDisplayName.c_str(), aznumeric_cast(scanFolderEntry.m_scanFolderDisplayName.size())), QString::fromUtf8(scanFolderEntry.m_scanFolderIdentifier.c_str(), aznumeric_cast(scanFolderEntry.m_scanFolderIdentifier.size())), - QString::fromUtf8(scanFolderEntry.m_outputPrefix.c_str(), aznumeric_cast(scanFolderEntry.m_outputPrefix.size())), isEngineRoot, scanFolderEntry.m_isRecursive, platforms, @@ -1318,7 +1308,7 @@ namespace AssetProcessor } } - bool PlatformConfiguration::ConvertToRelativePath(QString fullFileName, QString& databaseSourceName, QString& scanFolderName, bool includeOutputPrefix) const + bool PlatformConfiguration::ConvertToRelativePath(QString fullFileName, QString& databaseSourceName, QString& scanFolderName) const { const ScanFolderInfo* info = GetScanFolderForFile(fullFileName); @@ -1327,13 +1317,13 @@ namespace AssetProcessor scanFolderName = info->ScanPath(); scanFolderName.replace(AZ_WRONG_DATABASE_SEPARATOR, AZ_CORRECT_DATABASE_SEPARATOR); - return ConvertToRelativePath(fullFileName, info, databaseSourceName, includeOutputPrefix); + return ConvertToRelativePath(fullFileName, info, databaseSourceName); } // did not find it. return false; } - bool PlatformConfiguration::ConvertToRelativePath(const QString& fullFileName, const ScanFolderInfo* scanFolderInfo, QString& databaseSourceName, bool includeOutputPrefix) + bool PlatformConfiguration::ConvertToRelativePath(const QString& fullFileName, const ScanFolderInfo* scanFolderInfo, QString& databaseSourceName) { if(!scanFolderInfo) { @@ -1346,20 +1336,7 @@ namespace AssetProcessor relPath = fullFileName.right(fullFileName.length() - scanFolderInfo->ScanPath().length() - 1); // also eat the slash, hence -1 } - if ((scanFolderInfo->GetOutputPrefix().isEmpty()) || (!includeOutputPrefix)) - { - databaseSourceName = relPath; - } - else - { - databaseSourceName = scanFolderInfo->GetOutputPrefix(); - - if (!relPath.isEmpty()) - { - databaseSourceName += '/'; - databaseSourceName += relPath; - } - } + databaseSourceName = relPath; databaseSourceName.replace(AZ_WRONG_DATABASE_SEPARATOR, AZ_CORRECT_DATABASE_SEPARATOR); @@ -1380,11 +1357,6 @@ namespace AssetProcessor return QString(); } QString tempRelativeName(relativeName); - //if relative path starts with the output prefix than remove it first - if (!scanFolderInfo.GetOutputPrefix().isEmpty() && tempRelativeName.startsWith(scanFolderInfo.GetOutputPrefix(), Qt::CaseInsensitive)) - { - tempRelativeName = tempRelativeName.right(tempRelativeName.length() - scanFolderInfo.GetOutputPrefix().length() - 1); // also eat the slash, hence -1 - } if ((!scanFolderInfo.RecurseSubFolders()) && (tempRelativeName.contains('/'))) { @@ -1418,11 +1390,6 @@ namespace AssetProcessor QString tempRelativeName(relativeName); - //if relative path starts with the output prefix than remove it first - if (!scanFolderInfo.GetOutputPrefix().isEmpty() && tempRelativeName.startsWith(scanFolderInfo.GetOutputPrefix(), Qt::CaseInsensitive)) - { - tempRelativeName = tempRelativeName.right(tempRelativeName.length() - scanFolderInfo.GetOutputPrefix().length() - 1); // also eat the slash, hence -1 - } if ((!scanFolderInfo.RecurseSubFolders()) && (tempRelativeName.contains('/'))) { // the name is a deeper relative path, but we don't recurse this scan folder, so it can't win @@ -1566,7 +1533,6 @@ namespace AssetProcessor // Watched folder: (absolute path to the gem /Assets/ folder) MUST BE CORRECT CASE // Display name: "Gems/GemName/Assets" // uppercase, for human eyes // portable Key: "gemassets-(UUID Of Gem)" - // Output Prefix: "" // empty string - this means put it in @assets@ as per default // Is Root: False // Recursive: True QString gemFolder = gemDir.absoluteFilePath(AzFramework::GemInfo::GetGemAssetFolder()); @@ -1576,7 +1542,6 @@ namespace AssetProcessor QString assetBrowserDisplayName = AzFramework::GemInfo::GetGemAssetFolder(); // Gems always use assets folder as their displayname... QString portableKey = QString("gemassets-%1").arg(gemNameAsUuid); - QString outputPrefix; // empty intentionally here bool isRoot = false; bool isRecursive = true; gemOrder++; @@ -1586,7 +1551,6 @@ namespace AssetProcessor gemFolder, assetBrowserDisplayName, portableKey, - outputPrefix, isRoot, isRecursive, platforms, diff --git a/Code/Tools/AssetProcessor/native/utilities/PlatformConfiguration.h b/Code/Tools/AssetProcessor/native/utilities/PlatformConfiguration.h index f10493ea42..bae8e4b716 100644 --- a/Code/Tools/AssetProcessor/native/utilities/PlatformConfiguration.h +++ b/Code/Tools/AssetProcessor/native/utilities/PlatformConfiguration.h @@ -128,7 +128,6 @@ namespace AssetProcessor AZ::IO::Path m_watchPath{ AZ::IO::PosixPathSeparator }; AZStd::vector m_includeIdentifiers; AZStd::vector m_excludeIdentifiers; - AZStd::string m_outputPrefix; int m_scanOrder{}; bool m_isRecursive{}; }; @@ -290,10 +289,9 @@ namespace AssetProcessor //! ----> [textures/texture1.tga] found under [c:/dev/mygame] //! c:/dev/engine/models/box01.mdl //! ----> [models/box01.mdl] found under[c:/dev/engine] - //! note that this does return a database source path by default, which includes the output prefix of the scan folder if present - //! You can override this by setting includeOutputPrefix = false; - bool ConvertToRelativePath(QString fullFileName, QString& databaseSourceName, QString& scanFolderName, bool includeOutputPrefix = true) const; - static bool ConvertToRelativePath(const QString& fullFileName, const ScanFolderInfo* scanFolderInfo, QString& databaseSourceName, bool includeOutputPrefix = true); + //! note that this does return a database source path by default + bool ConvertToRelativePath(QString fullFileName, QString& databaseSourceName, QString& scanFolderName) const; + static bool ConvertToRelativePath(const QString& fullFileName, const ScanFolderInfo* scanFolderInfo, QString& databaseSourceName); //! given a full file name (assumed already fed through the normalization funciton), return the first matching scan folder const AssetProcessor::ScanFolderInfo* GetScanFolderForFile(const QString& fullFileName) const; diff --git a/Code/Tools/AssetProcessor/native/utilities/assetUtils.cpp b/Code/Tools/AssetProcessor/native/utilities/assetUtils.cpp index b615e8854a..86e00bfd41 100644 --- a/Code/Tools/AssetProcessor/native/utilities/assetUtils.cpp +++ b/Code/Tools/AssetProcessor/native/utilities/assetUtils.cpp @@ -562,8 +562,8 @@ namespace AssetUtilities } else { - AZ_Warning(AssetProcessor::ConsoleChannel, false, "Invalid server address, please check the AssetProcessorPlatformConfig.setreg file \ -to ensure that the address is correct. Asset Processor won't be running in server mode."); + AZ_Warning(AssetProcessor::ConsoleChannel, false, "Invalid server address, please check the AssetProcessorPlatformConfig.setreg file" + " to ensure that the address is correct. Asset Processor won't be running in server mode."); } break; @@ -804,7 +804,7 @@ to ensure that the address is correct. Asset Processor won't be running in serve { QThread::msleep(AssetUtilsInternal::g_RetryWaitInterval); } - + } while (!timer.hasExpired(waitTimeinSeconds * 1000)); AZ_TracePrintf(AssetProcessor::ConsoleChannel, "Failed to create output directory: %s after %d retries.\n", dir.absolutePath().toUtf8().data(), retries); @@ -1075,7 +1075,7 @@ to ensure that the address is correct. Asset Processor won't be running in serve { // it is assumed that m_fingerprintFilesList contains the original file and all dependencies, and is in a stable order without duplicates // CRC32 is not an effective hash for this purpose, so we will build a string and then use SHA1 on it. - + // to avoid resizing and copying repeatedly we will keep track of the largest reserved capacity ever needed for this function, and reserve that much data static size_t s_largestFingerprintCapacitySoFar = 1; AZStd::string fingerprintString; @@ -1207,7 +1207,7 @@ to ensure that the address is correct. Asset Processor won't be running in serve // the navigation system can still be writing to this file when hashing begins, causing the EoF marker to change. AZ::IO::SizeType remainingToRead = AZStd::min(readStream.GetLength() - readStream.GetCurPos(), aznumeric_cast(AZ_ARRAY_SIZE(buffer))); bytesRead = readStream.Read(remainingToRead, buffer); - + if(bytesReadOut) { *bytesReadOut += bytesRead; @@ -1234,7 +1234,7 @@ to ensure that the address is correct. Asset Processor won't be running in serve } std::uint64_t AdjustTimestamp(QDateTime timestamp) - { + { timestamp = timestamp.toUTC(); auto timeMilliseconds = timestamp.toMSecsSinceEpoch(); @@ -1250,7 +1250,7 @@ to ensure that the address is correct. Asset Processor won't be running in serve { bool fileFound = false; AssetProcessor::FileStateInfo fileStateInfo; - + auto* fileStateInterface = AZ::Interface::Get(); if (fileStateInterface) { @@ -1277,7 +1277,7 @@ to ensure that the address is correct. Asset Processor won't be running in serve { fileIdentifier = AdjustTimestamp(lastModifiedTime); } - + // its possible that the dependency has moved to a different file with the same modtime/hash // so we add the size of it too. // its also possible that it moved to a different file with the same modtime/hash AND size, @@ -1324,7 +1324,7 @@ to ensure that the address is correct. Asset Processor won't be running in serve } QDir tempRoot; - + if (!CreateTempRootFolder(startFolder, tempRoot)) { result.clear(); diff --git a/Code/Tools/AssetProcessor/testdata/DummyProject/AssetProcessorGamePlatformConfig.ini b/Code/Tools/AssetProcessor/testdata/DummyProject/AssetProcessorGamePlatformConfig.ini deleted file mode 100644 index 0416ea7f85..0000000000 --- a/Code/Tools/AssetProcessor/testdata/DummyProject/AssetProcessorGamePlatformConfig.ini +++ /dev/null @@ -1,19 +0,0 @@ -; this is an override config that should "add" the provo platform -; and "remove" the server platform. - -[Platform provo] -tags=console, renderer - -[Platforms] -server=disabled -provo=enabled - -; this ONLY overrides the "provo" value -; becuase this is being loaded on top of the defaults, this should LEAVE the others -; as they are. -[RC i_caf] -provo=copy - -; this will remove "mov" from the default configuration -[RC mov] -ignore=true diff --git a/Code/Tools/AssetProcessor/testdata/DummyProject/AssetProcessorGamePlatformConfig.setreg b/Code/Tools/AssetProcessor/testdata/DummyProject/AssetProcessorGamePlatformConfig.setreg new file mode 100644 index 0000000000..c9556f0494 --- /dev/null +++ b/Code/Tools/AssetProcessor/testdata/DummyProject/AssetProcessorGamePlatformConfig.setreg @@ -0,0 +1,21 @@ +{ + "Amazon": { + "AssetProcessor": { + "Settings": { + "Platform provo": { + "tags": "console, renderer" + }, + "Platforms": { + "server": "disabled", + "provo": "enabled" + }, + "RC i_caf": { + "provo": "copy" + }, + "RC mov": { + "ignore": true + } + } + } + } +} diff --git a/Code/Tools/AssetProcessor/testdata/EmptyDummyProject/AssetProcessorGamePlatformConfig.ini b/Code/Tools/AssetProcessor/testdata/EmptyDummyProject/AssetProcessorGamePlatformConfig.ini deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/Code/Tools/AssetProcessor/testdata/EmptyDummyProject/AssetProcessorGamePlatformConfig.setreg b/Code/Tools/AssetProcessor/testdata/EmptyDummyProject/AssetProcessorGamePlatformConfig.setreg new file mode 100644 index 0000000000..17d9887fe8 --- /dev/null +++ b/Code/Tools/AssetProcessor/testdata/EmptyDummyProject/AssetProcessorGamePlatformConfig.setreg @@ -0,0 +1,7 @@ +{ + "Amazon": { + "AssetProcessor": { + "Settings": {} + } + } +} diff --git a/Code/Tools/AssetProcessor/testdata/config_broken_badplatform/AssetProcessorPlatformConfig.ini b/Code/Tools/AssetProcessor/testdata/config_broken_badplatform/AssetProcessorPlatformConfig.ini deleted file mode 100644 index 874625bf1b..0000000000 --- a/Code/Tools/AssetProcessor/testdata/config_broken_badplatform/AssetProcessorPlatformConfig.ini +++ /dev/null @@ -1,22 +0,0 @@ -; Used by unit tests. This is a broken configuration file. - -[Platform pc] -tags=tools,renderer - -[Platform osx_gl] -tags=tools,renderer - -[Platforms] -es3=enabled ; note - bad platform - its not one of the above ones! - -; without a scan folder, it is an invalid file. -[ScanFolder Game] -watch=@PROJECTROOT@ -recursive=1 -order=0 - -; without at least one recognizer, its not an invalid file. (this is not what this unit test is checking) -[RC i_caf] -glob=*.i_caf -params=copy -priority=5 diff --git a/Code/Tools/AssetProcessor/testdata/config_broken_badplatform/AssetProcessorPlatformConfig.setreg b/Code/Tools/AssetProcessor/testdata/config_broken_badplatform/AssetProcessorPlatformConfig.setreg new file mode 100644 index 0000000000..468ab68f5d --- /dev/null +++ b/Code/Tools/AssetProcessor/testdata/config_broken_badplatform/AssetProcessorPlatformConfig.setreg @@ -0,0 +1,27 @@ +{ + "Amazon": { + "AssetProcessor": { + "Settings": { + "Platform pc": { + "tags": "tools,renderer" + }, + "Platform osx_gl": { + "tags": "tools,renderer" + }, + "Platforms": { + "es3": "enabled" + }, + "ScanFolder Game": { + "watch": "@PROJECTROOT@", + "recursive": 1, + "order": 0 + }, + "RC i_caf": { + "glob": "*.i_caf", + "params": "copy", + "priority": 5 + } + } + } + } +} diff --git a/Code/Tools/AssetProcessor/testdata/config_broken_noplatform/AssetProcessorPlatformConfig.ini b/Code/Tools/AssetProcessor/testdata/config_broken_noplatform/AssetProcessorPlatformConfig.ini deleted file mode 100644 index 5b776865a6..0000000000 --- a/Code/Tools/AssetProcessor/testdata/config_broken_noplatform/AssetProcessorPlatformConfig.ini +++ /dev/null @@ -1,13 +0,0 @@ -; Used by unit tests. This is a broken configuration file. - -; without a scan folder, it is an invalid file. -[ScanFolder Game] -watch=@PROJECTROOT@ -recursive=1 -order=0 - -; without at least one recognizer, its an invalid file. -[RC i_caf] -glob=*.i_caf -params=copy -priority=5 diff --git a/Code/Tools/AssetProcessor/testdata/config_broken_noplatform/AssetProcessorPlatformConfig.setreg b/Code/Tools/AssetProcessor/testdata/config_broken_noplatform/AssetProcessorPlatformConfig.setreg new file mode 100644 index 0000000000..581cef06e9 --- /dev/null +++ b/Code/Tools/AssetProcessor/testdata/config_broken_noplatform/AssetProcessorPlatformConfig.setreg @@ -0,0 +1,18 @@ +{ + "Amazon": { + "AssetProcessor": { + "Settings": { + "ScanFolder Game": { + "watch": "@PROJECTROOT@", + "recursive": 1, + "order": 0 + }, + "RC i_caf": { + "glob": "*.i_caf", + "params": "copy", + "priority": 5 + } + } + } + } +} diff --git a/Code/Tools/AssetProcessor/testdata/config_broken_noscans/AssetProcessorPlatformConfig.ini b/Code/Tools/AssetProcessor/testdata/config_broken_noscans/AssetProcessorPlatformConfig.ini deleted file mode 100644 index 21f722adcd..0000000000 --- a/Code/Tools/AssetProcessor/testdata/config_broken_noscans/AssetProcessorPlatformConfig.ini +++ /dev/null @@ -1,15 +0,0 @@ -; Used by unit tests. This is a broken configuration file. - -[Platform pc] -tags=tools,renderer - -[Platform osx_gl] -tags=tools,renderer - -; without a scan folder, it is an invalid file. - -; without at least one recognizer, its not an invalid file. (this is not what this unit test is checking) -[RC i_caf] -glob=*.i_caf -params=copy -priority=5 diff --git a/Code/Tools/AssetProcessor/testdata/config_broken_noscans/AssetProcessorPlatformConfig.setreg b/Code/Tools/AssetProcessor/testdata/config_broken_noscans/AssetProcessorPlatformConfig.setreg new file mode 100644 index 0000000000..507fe4afb1 --- /dev/null +++ b/Code/Tools/AssetProcessor/testdata/config_broken_noscans/AssetProcessorPlatformConfig.setreg @@ -0,0 +1,19 @@ +{ + "Amazon": { + "AssetProcessor": { + "Settings": { + "Platform pc": { + "tags": "tools,renderer" + }, + "Platform osx_gl": { + "tags": "tools,renderer" + }, + "RC i_caf": { + "glob": "*.i_caf", + "params": "copy", + "priority": 5 + } + } + } + } +} diff --git a/Code/Tools/AssetProcessor/testdata/config_broken_recognizers/AssetProcessorPlatformConfig.ini b/Code/Tools/AssetProcessor/testdata/config_broken_recognizers/AssetProcessorPlatformConfig.ini deleted file mode 100644 index 14d95cff5f..0000000000 --- a/Code/Tools/AssetProcessor/testdata/config_broken_recognizers/AssetProcessorPlatformConfig.ini +++ /dev/null @@ -1,16 +0,0 @@ -; Used by unit tests. This is a broken configuration file. - -[Platform pc] -tags=tools,renderer - -[Platform osx_gl] -tags=tools,renderer - -; without a scan folder, it is an invalid file. -[ScanFolder Game] -watch=@PROJECTROOT@ -recursive=1 -order=0 - -; without at least one recognizer, its an invalid file. - diff --git a/Code/Tools/AssetProcessor/testdata/config_broken_recognizers/AssetProcessorPlatformConfig.setreg b/Code/Tools/AssetProcessor/testdata/config_broken_recognizers/AssetProcessorPlatformConfig.setreg new file mode 100644 index 0000000000..0e687062b2 --- /dev/null +++ b/Code/Tools/AssetProcessor/testdata/config_broken_recognizers/AssetProcessorPlatformConfig.setreg @@ -0,0 +1,19 @@ +{ + "Amazon": { + "AssetProcessor": { + "Settings": { + "Platform pc": { + "tags": "tools,renderer" + }, + "Platform osx_gl": { + "tags": "tools,renderer" + }, + "ScanFolder Game": { + "watch": "@PROJECTROOT@", + "recursive": 1, + "order": 0 + } + } + } + } +} diff --git a/Code/Tools/AssetProcessor/testdata/config_regular/AssetProcessorPlatformConfig.ini b/Code/Tools/AssetProcessor/testdata/config_regular/AssetProcessorPlatformConfig.ini deleted file mode 100644 index 77750779cb..0000000000 --- a/Code/Tools/AssetProcessor/testdata/config_regular/AssetProcessorPlatformConfig.ini +++ /dev/null @@ -1,109 +0,0 @@ -; this is a regular config file that ought to load successfully. - -[Platform pc] -tags=tools,renderer - -[Platform es3] -tags=android,mobile,renderer - -[Platform osx_gl] -tags=tools,renderer - -[Platform server] -tags=server - -; for the purposes of this test, we enable only server and es3, but we make sure the CURRENT_PLATFORM is auto enabled. - -[Platforms] -;pc=enabled -es3=enabled -;ios=enabled -;osx_gl=enabled -;provo=enabled -server=enabled - -; ---- The number of worker jobs, 0 means use the number of Logical Cores -[Jobs] -minJobs=1 -maxJobs=0 - -[MetaDataTypes] -exportsettings= -animsettings=i_caf -Animations/SkeletonList.xml=i_caf -cbc=abc -fbx.assetinfo=fbx - -[ScanFolder Game] -watch=@PROJECTROOT@ -; use a special display name here to make sure macros work -display=@PROJECTROOT@ Scan Folder -recursive=1 -order=0 - -; this test makes sure that those macros make sense and are present as well as that order is preserved. -; it also makes sure that the friendly name ("FeatureTests") is used, if no display is present and does not lose its case. -[ScanFolder FeatureTests] -watch=@PROJECTROOT@FeatureTests -output=featuretestsoutputfolder -recursive=0 -order=5000 - -; this test makes sure that the scan folders system uses the portable key of the scan Folder to find duplicates. -; (which is constructed from its name in the square brackets) -; instead of other attributes such as the watch folder, or output prefix. -[ScanFolder FeatureTests2] -watch=@PROJECTROOT@FeatureTests -output=featuretestsoutputfolder -recursive=0 -order=6000 - -[Exclude HoldFiles] -pattern=.*\\/Levels\\/.*_hold\\/.* - -[Exclude TempFiles] -pattern=.*\\/\\$tmp[0-9]*_.* - -[RC i_caf] -glob=*.i_caf -params=defaultparams -; server should not appear -server=skip -; es3 should have this overridden -es3=mobile -; host should have defaultparams -; make sure priority is used. -priority=5 -checkServer=true - -[RC caf] -glob=*.caf -params=copy -; all platforms with 'renderer' tag should have these params applied. (so host platform and es3 but not server) -renderer=rendererparams - -[RC mov] -glob=*.mov -params=copy -; this one proves that platforms override more broader tags (es3 has both the es3 platform and the renderer tag) -es3=platformspecificoverride -; hosts should use this -renderer=rendererparams - -; this tests to make sure that even if "params" is missing, it is assumed to be default operation -; this is because if you wanted to skip a platform, we have a specific verb for that ('skip') and simply omitting the defaults means -; that you just want the default behavior. only the platforms indicated have a role -[RC rend] -glob=*.rend -renderer=rendererparams - -; this tests to make sure that even if you have no params at all, it is assumed to be default operation -[RC alldefault] -glob=*.alldefault - -; this tests to make sure if you set default to skip you can still specify one platform to compile on -[RC skipallbutone] -glob=*.files -params=skip -server=copy - diff --git a/Code/Tools/AssetProcessor/testdata/config_regular/AssetProcessorPlatformConfig.setreg b/Code/Tools/AssetProcessor/testdata/config_regular/AssetProcessorPlatformConfig.setreg new file mode 100644 index 0000000000..1c5c487a46 --- /dev/null +++ b/Code/Tools/AssetProcessor/testdata/config_regular/AssetProcessorPlatformConfig.setreg @@ -0,0 +1,89 @@ +{ + "Amazon": { + "AssetProcessor": { + "Settings": { + "Platform pc": { + "tags": "tools,renderer" + }, + "Platform es3": { + "tags": "android,mobile,renderer" + }, + "Platform osx_gl": { + "tags": "tools,renderer" + }, + "Platform server": { + "tags": "server" + }, + "Platforms": { + "es3": "enabled", + "server": "enabled" + }, + "Jobs": { + "minJobs": 1, + "maxJobs": 0 + }, + "MetaDataTypes": { + "animsettings": "i_caf", + "Animations/SkeletonList.xml": "i_caf", + "cbc": "abc", + "fbx.assetinfo": "fbx" + }, + "ScanFolder Game": { + "watch": "@PROJECTROOT@", + "display": "@PROJECTROOT@ Scan Folder", + "recursive": 1, + "order": 0 + }, + "ScanFolder FeatureTests": { + "watch": "@PROJECTROOT@FeatureTests", + "output": "featuretestsoutputfolder", + "recursive": 0, + "order": 5000 + }, + "ScanFolder FeatureTests2": { + "watch": "@PROJECTROOT@FeatureTests", + "output": "featuretestsoutputfolder", + "recursive": 0, + "order": 6000 + }, + "Exclude HoldFiles": { + "pattern": ".*\\\\/Levels\\\\/.*_hold\\\\/.*" + }, + "Exclude TempFiles": { + "pattern": ".*\\\\/\\\\$tmp[0-9]*_.*" + }, + "RC i_caf": { + "glob": "*.i_caf", + "params": "defaultparams", + "server": "skip", + "es3": "mobile", + "priority": 5, + "checkServer": true + }, + "RC caf": { + "glob": "*.caf", + "params": "copy", + "renderer": "rendererparams" + }, + "RC mov": { + "glob": "*.mov", + "params": "copy", + "es3": "platformspecificoverride", + "renderer": "rendererparams" + }, + "RC rend": { + "glob": "*.rend", + "renderer": "rendererparams" + }, + "RC alldefault": { + "glob": "*.alldefault" + }, + "RC skipallbutone": { + "glob": "*.files", + "params": "skip", + "server": "copy" + } + } + } + } +} diff --git a/Code/Tools/AssetProcessor/testdata/config_regular_platform_scanfolder/AssetProcessorPlatformConfig.ini b/Code/Tools/AssetProcessor/testdata/config_regular_platform_scanfolder/AssetProcessorPlatformConfig.ini deleted file mode 100644 index c210c23d0d..0000000000 --- a/Code/Tools/AssetProcessor/testdata/config_regular_platform_scanfolder/AssetProcessorPlatformConfig.ini +++ /dev/null @@ -1,129 +0,0 @@ -; this is a regular config file that ought to load successfully. - -[Platform pc] -tags=tools,renderer - -[Platform es3] -tags=android,mobile,renderer - -[Platform ios] -tags=mobile,renderer - -[Platform osx_gl] -tags=tools,renderer - -[Platform server] -tags=server - -; we define an test platform in order to make sure that it does NOT show up anywhere -[Platform test] -tags=console,renderer - -; for the purposes of this test, we enable only server and es3, but we make sure the CURRENT_PLATFORM is auto enabled. - -[Platforms] -;pc=enabled -es3=enabled -ios=enabled -;osx_gl=enabled -;test=enabled -server=enabled - -; ---- The number of worker jobs, 0 means use the number of Logical Cores -[Jobs] -minJobs=1 -maxJobs=0 - -[MetaDataTypes] -exportsettings= -animsettings=i_caf -Animations/SkeletonList.xml=i_caf -cbc=abc -fbx.assetinfo=fbx - -[ScanFolder Game] -watch=@PROJECTROOT@ -display=gameoutput -recursive=1 -order=0 - -[ScanFolder Editor] -watch=@ENGINEROOT@/Editor -display=editoroutput -recursive=1 -order=30000 -include=tools,renderer -exclude=ios - -[ScanFolder Folder1] -watch=@ENGINEROOT@/Folder1 -display=folder1output -recursive=1 -order=50000 -include=es3 - -[ScanFolder Folder2] -watch=@ENGINEROOT@/Folder2 -display=folder2output -recursive=1 -order=60000 -exclude=es3 - -[ScanFolder Folder3] -watch=@ENGINEROOT@/Folder3 -display=folder3output -recursive=1 -order=70000 -include=test - - - -[Exclude HoldFiles] -pattern=.*\\/Levels\\/.*_hold\\/.* - -[Exclude TempFiles] -pattern=.*\\/\\$tmp[0-9]*_.* - -[RC i_caf] -glob=*.i_caf -params=defaultparams -; server should not appear -server=skip -; es3 should have this overridden -es3=mobile -test=copy -; host should have defaultparams -; make sure priority is used. -priority=5 - -[RC caf] -glob=*.caf -params=copy -; all platforms with 'renderer' tag should have these params applied. (so host platform and es3 but not server) -renderer=rendererparams - -[RC mov] -glob=*.mov -params=copy -; this one proves that platforms override more broader tags (es3 has both the es3 platform and the renderer tag) -es3=platformspecificoverride -; hosts should use this -renderer=rendererparams - -; this tests to make sure that even if "params" is missing, it is assumed to be default operation -; this is because if you wanted to skip a platform, we have a specific verb for that ('skip') and simply omitting the defaults means -; that you just want the default behavior. only the platforms indicated have a role -[RC rend] -glob=*.rend -renderer=rendererparams - -; this tests to make sure that even if you have no params at all, it is assumed to be default operation -[RC alldefault] -glob=*.alldefault - -; this tests to make sure if you set default to skip you can still specify one platform to compile on -[RC skipallbutone] -glob=*.files -params=skip -server=copy - diff --git a/Code/Tools/AssetProcessor/testdata/config_regular_platform_scanfolder/AssetProcessorPlatformConfig.setreg b/Code/Tools/AssetProcessor/testdata/config_regular_platform_scanfolder/AssetProcessorPlatformConfig.setreg new file mode 100644 index 0000000000..e1c2d6e8cc --- /dev/null +++ b/Code/Tools/AssetProcessor/testdata/config_regular_platform_scanfolder/AssetProcessorPlatformConfig.setreg @@ -0,0 +1,113 @@ +{ + "Amazon": { + "AssetProcessor": { + "Settings": { + "Platform pc": { + "tags": "tools,renderer" + }, + "Platform es3": { + "tags": "android,mobile,renderer" + }, + "Platform ios": { + "tags": "mobile,renderer" + }, + "Platform osx_gl": { + "tags": "tools,renderer" + }, + "Platform server": { + "tags": "server" + }, + "Platform test": { + "tags": "console,renderer" + }, + "Platforms": { + "es3": "enabled", + "ios": "enabled", + "server": "enabled" + }, + "Jobs": { + "minJobs": 1, + "maxJobs": 0 + }, + "MetaDataTypes": { + "animsettings": "i_caf", + "Animations/SkeletonList.xml": "i_caf", + "cbc": "abc", + "fbx.assetinfo": "fbx" + }, + "ScanFolder Game": { + "watch": "@PROJECTROOT@", + "display": "gameoutput", + "recursive": 1, + "order": 0 + }, + "ScanFolder Editor": { + "watch": "@ENGINEROOT@/Editor", + "display": "editoroutput", + "recursive": 1, + "order": 30000, + "include": "tools,renderer", + "exclude": "ios" + }, + "ScanFolder Folder1": { + "watch": "@ENGINEROOT@/Folder1", + "display": "folder1output", + "recursive": 1, + "order": 50000, + "include": "es3" + }, + "ScanFolder Folder2": { + "watch": "@ENGINEROOT@/Folder2", + "display": "folder2output", + "recursive": 1, + "order": 60000, + "exclude": "es3" + }, + "ScanFolder Folder3": { + "watch": "@ENGINEROOT@/Folder3", + "display": "folder3output", + "recursive": 1, + "order": 70000, + "include": "test" + }, + "Exclude HoldFiles": { + "pattern": ".*\\\\/Levels\\\\/.*_hold\\\\/.*" + }, + "Exclude TempFiles": { + "pattern": ".*\\\\/\\\\$tmp[0-9]*_.*" + }, + "RC i_caf": { + "glob": "*.i_caf", + "params": "defaultparams", + "server": "skip", + "es3": "mobile", + "test": "copy", + "priority": 5 + }, + "RC caf": { + "glob": "*.caf", + "params": "copy", + "renderer": "rendererparams" + }, + "RC mov": { + "glob": "*.mov", + "params": "copy", + "es3": "platformspecificoverride", + "renderer": "rendererparams" + }, + "RC rend": { + "glob": "*.rend", + "renderer": "rendererparams" + }, + "RC alldefault": { + "glob": "*.alldefault" + }, + "RC skipallbutone": { + "glob": "*.files", + "params": "skip", + "server": "copy" + } + } + } + } +} \ No newline at end of file diff --git a/Code/Tools/SceneAPI/SceneUI/SceneUI.qrc b/Code/Tools/SceneAPI/SceneUI/SceneUI.qrc index 9b4ad04628..023f881ad7 100644 --- a/Code/Tools/SceneAPI/SceneUI/SceneUI.qrc +++ b/Code/Tools/SceneAPI/SceneUI/SceneUI.qrc @@ -1,21 +1,21 @@ - ../../../../Editor/Icons/AssetImporter/mesh_on.png - ../../../../Editor/Icons/AssetImporter/animation_on.png - ../../../../Editor/Icons/AssetImporter/skeleton_on.png + ../../../../Assets/Editor/Icons/AssetImporter/mesh_on.png + ../../../../Assets/Editor/Icons/AssetImporter/animation_on.png + ../../../../Assets/Editor/Icons/AssetImporter/skeleton_on.png - ../../../../Editor/Icons/AssetImporter/tree.png - ../../../../Editor/Icons/AssetImporter/mesh.png - ../../../../Editor/Icons/AssetImporter/animation.png - ../../../../Editor/Icons/AssetImporter/skeleton.png - ../../../../Editor/Icons/AssetImporter/skin.png + ../../../../Assets/Editor/Icons/AssetImporter/tree.png + ../../../../Assets/Editor/Icons/AssetImporter/mesh.png + ../../../../Assets/Editor/Icons/AssetImporter/animation.png + ../../../../Assets/Editor/Icons/AssetImporter/skeleton.png + ../../../../Assets/Editor/Icons/AssetImporter/skin.png - ../../../../Editor/Styles/StyleSheetImages/info_icon.png - ../../../../Editor/Styles/StyleSheetImages/error_icon.png - ../../../../Editor/Icons/Assets/Lua.png - ../../../../Editor/Icons/PropertyEditor/group_closed.png - ../../../../Editor/Icons/PropertyEditor/group_open.png + ../../../../Assets/Editor/Styles/StyleSheetImages/info_icon.png + ../../../../Assets/Editor/Styles/StyleSheetImages/error_icon.png + ../../../../Assets/Editor/Icons/Assets/Lua.png + ../../../../Assets/Editor/Icons/PropertyEditor/group_closed.png + ../../../../Assets/Editor/Icons/PropertyEditor/group_open.png diff --git a/Editor/Editor.env b/Editor/Editor.env deleted file mode 100644 index 1596bbd595..0000000000 --- a/Editor/Editor.env +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/Editor/cryassetdb_mysql.sql b/Editor/cryassetdb_mysql.sql deleted file mode 100644 index 475b9c48ed..0000000000 --- a/Editor/cryassetdb_mysql.sql +++ /dev/null @@ -1,47 +0,0 @@ -CREATE DATABASE IF NOT EXISTS `CryAssetDB`; - -USE `CryAssetDB`; - -CREATE TABLE `categories` ( - `category_id` int(10) NOT NULL auto_increment, - `category` varchar(255) UNIQUE NOT NULL, - `order_id` int(10) NOT NULL, - PRIMARY KEY (`category_id`) -); - -CREATE TABLE IF NOT EXISTS `tags` ( - `id` int(10) unsigned NOT NULL auto_increment, - `tag` varchar(64) NOT NULL, - `category_id` int(10) default NULL, - PRIMARY KEY (`id`), - KEY `FK_tags_to_category_id` (`category_id`), - UNIQUE KEY `tag` (`tag`), - CONSTRAINT `FK_tags_to_category_id` FOREIGN KEY (`category_id`) REFERENCES `categories` (`category_id`) ON DELETE CASCADE ON UPDATE CASCADE -); - -CREATE TABLE IF NOT EXISTS `projects` ( - `id` int(10) unsigned NOT NULL auto_increment, - `name` varchar(32) NOT NULL COMMENT 'Convenient project name for easy filtering', - PRIMARY KEY (`id`), - UNIQUE KEY `name` (`name`) -); - -CREATE TABLE IF NOT EXISTS `asset_inventory` ( - `id` bigint(20) unsigned NOT NULL auto_increment, - `project_id` int(10) unsigned NOT NULL, - `relpath` varchar(255) NOT NULL COMMENT 'relpath to the asset', - `description` varchar(255) default NULL, - PRIMARY KEY (`id`), - KEY `FK_asset_inventory_to_project_id` (`project_id`), - CONSTRAINT `FK_asset_inventory_to_project_id` FOREIGN KEY (`project_id`) REFERENCES `projects` (`id`) ON DELETE CASCADE ON UPDATE CASCADE -); - -CREATE TABLE IF NOT EXISTS `asset_tags` ( - `asset_id` bigint(20) unsigned NOT NULL, - `tag_id` int(10) unsigned NOT NULL, - PRIMARY KEY (`asset_id`,`tag_id`), - KEY `FK_asset_tags_to_asset_id` (`asset_id`), - KEY `FK_asset_tags_to_tag_id` (`tag_id`), - CONSTRAINT `FK_asset_tags_to_asset_id` FOREIGN KEY (`asset_id`) REFERENCES `asset_inventory` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, - CONSTRAINT `FK_asset_tags_to_tag_id` FOREIGN KEY (`tag_id`) REFERENCES `tags` (`id`) ON DELETE CASCADE ON UPDATE CASCADE -) diff --git a/Editor/cryassetdb_sqlite.sql b/Editor/cryassetdb_sqlite.sql deleted file mode 100644 index 7d517999f4..0000000000 --- a/Editor/cryassetdb_sqlite.sql +++ /dev/null @@ -1,35 +0,0 @@ -CREATE TABLE `categories` ( - `category_id` INTEGER PRIMARY KEY, - `category` varchar(255) UNIQUE NOT NULL, - `order_id` int(10) NOT NULL, - PRIMARY KEY (`category_id`) -); - -CREATE TABLE IF NOT EXISTS `tags` ( - `id` INTEGER PRIMARY KEY, - `tag` varchar(64) NOT NULL, - `category_id` INTEGER NOT NULL, - FOREIGN KEY (`category_id`) REFERENCES `categories` (`category_id`) ON DELETE CASCADE ON UPDATE CASCADE -); - -CREATE TABLE IF NOT EXISTS `projects` ( - `id` INTEGER PRIMARY KEY, - `name` varchar(32) UNIQUE NOT NULL -); - - -CREATE TABLE IF NOT EXISTS `asset_inventory` ( - `id` INTEGER PRIMARY KEY, - `project_id` INTEGER NOT NULL, - `relpath` varchar(255) NOT NULL, - `description` varchar(255), - FOREIGN KEY (`project_id`) REFERENCES `projects` (`id`) ON DELETE CASCADE ON UPDATE CASCADE -); - -CREATE TABLE IF NOT EXISTS `asset_tags` ( - `asset_id` INTEGER NOT NULL, - `tag_id` INTEGER NOT NULL, - PRIMARY KEY (`asset_id`,`tag_id`), - FOREIGN KEY (`asset_id`) REFERENCES `asset_inventory` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, - FOREIGN KEY (`tag_id`) REFERENCES `tags` (`id`) ON DELETE CASCADE ON UPDATE CASCADE -); diff --git a/Engine/EngineAssets/Textures/rotrandom.dds b/Engine/EngineAssets/Textures/rotrandom.dds deleted file mode 100644 index bc1be0f4aa..0000000000 --- a/Engine/EngineAssets/Textures/rotrandom.dds +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:19b28d4c7f7ce3aca08d902a56338f956e008892f2693e01d6341a29656f5706 -size 21972 diff --git a/Engine/Libs/FlowNodes/FlownodeBlacklist.xml b/Engine/Libs/FlowNodes/FlownodeBlacklist.xml deleted file mode 100644 index 36c95af5cb..0000000000 --- a/Engine/Libs/FlowNodes/FlownodeBlacklist.xml +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/Engine/Libs/FlowNodes/Substitutions.xml b/Engine/Libs/FlowNodes/Substitutions.xml deleted file mode 100644 index 8ff1f7e4e4..0000000000 --- a/Engine/Libs/FlowNodes/Substitutions.xml +++ /dev/null @@ -1,636 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Gems/Atom/Asset/ImageProcessingAtom/Code/Source/ImageBuilderComponent.cpp b/Gems/Atom/Asset/ImageProcessingAtom/Code/Source/ImageBuilderComponent.cpp index 5d5fd21b44..ccba00f15f 100644 --- a/Gems/Atom/Asset/ImageProcessingAtom/Code/Source/ImageBuilderComponent.cpp +++ b/Gems/Atom/Asset/ImageProcessingAtom/Code/Source/ImageBuilderComponent.cpp @@ -188,26 +188,6 @@ namespace ImageProcessingAtom // the request will contain the CreateJobResponse you constructed earlier, including any keys and values you placed into the hash table void ImageBuilderWorker::ProcessJob(const AssetBuilderSDK::ProcessJobRequest& request, AssetBuilderSDK::ProcessJobResponse& response) { - // Exclude the "Engine/EngineAssets/Textures/rotrandom.dds" which is not a legit dds file but required by Cry3dEngine. - // [GFX TODO] Remove this block of code when removing Cry3dEngine and its engine assets entirely. - AZStd::string assetFileName; - AzFramework::StringFunc::Path::GetFullFileName(request.m_sourceFile.data(), assetFileName); - if (azstricmp(assetFileName.data(), "rotrandom.dds") == 0) - { - AZStd::string assetPath = request.m_fullPath; - AzFramework::ApplicationRequests::Bus::Broadcast(&AzFramework::ApplicationRequests::MakePathRootRelative, assetPath); - // The MakePathRootRelative only normalize but not convert the path to lower case, we need to call NormalizePath to convert it to lower case - AzFramework::ApplicationRequests::Bus::Broadcast(&AzFramework::ApplicationRequests::NormalizePath, assetPath); - AZStd::string excludePath = "Engine/EngineAssets/Textures/rotrandom.dds"; - AzFramework::ApplicationRequests::Bus::Broadcast(&AzFramework::ApplicationRequests::NormalizePath, excludePath); - - if (assetPath == excludePath) - { - response.m_resultCode = AssetBuilderSDK::ProcessJobResult_Success; - return; - } - } - // Before we begin, let's make sure we are not meant to abort. AssetBuilderSDK::JobCancelListener jobCancelListener(request.m_jobId); diff --git a/Gems/Atom/Asset/Shader/Code/Source/Editor/CommonFiles/Preprocessor.cpp b/Gems/Atom/Asset/Shader/Code/Source/Editor/CommonFiles/Preprocessor.cpp index 80449a3eb7..84a95b2c54 100644 --- a/Gems/Atom/Asset/Shader/Code/Source/Editor/CommonFiles/Preprocessor.cpp +++ b/Gems/Atom/Asset/Shader/Code/Source/Editor/CommonFiles/Preprocessor.cpp @@ -25,6 +25,7 @@ #include #include #include +#include #include #include @@ -299,6 +300,9 @@ namespace AZ // we transfer to a set, to order the folders, uniquify them, and ensure deterministic build behavior AZStd::set scanFoldersSet; + // Add the project path to list of include paths + AZ::IO::FixedMaxPathString projectPath = AZ::Utils::GetProjectPath(); + scanFoldersSet.emplace(projectPath.c_str(), projectPath.size()); // but while we transfer to the set, we're going to keep only folders where +/ShaderLib exists for (AZStd::string folder : scanFoldersVector) { @@ -310,14 +314,12 @@ namespace AZ } // the folders constructed this fashion constitute the base of automatic include search paths // get the engine root: - AZStd::string engineRoot; - AzFramework::ApplicationRequests::Bus::BroadcastResult(engineRoot, &AzFramework::ApplicationRequests::GetEngineRoot); - AzFramework::StringFunc::Path::Normalize(engineRoot); + AZ::IO::FixedMaxPath engineRoot = AZ::Utils::GetEnginePath(); // add optional additional options for (AZStd::string& path : options.m_projectIncludePaths) { - AzFramework::StringFunc::Path::Join(engineRoot.c_str(), path.c_str(), path); + path = (engineRoot / path).String(); DeleteFromSet(path, scanFoldersSet); // no need to add a path two times. } // back-insert the default paths (after the config-read paths we just read) diff --git a/Gems/AtomLyIntegration/AtomBridge/Code/Source/Editor/AssetCollectionAsyncLoaderTestComponent.cpp b/Gems/AtomLyIntegration/AtomBridge/Code/Source/Editor/AssetCollectionAsyncLoaderTestComponent.cpp index c8382210d3..0f73828186 100644 --- a/Gems/AtomLyIntegration/AtomBridge/Code/Source/Editor/AssetCollectionAsyncLoaderTestComponent.cpp +++ b/Gems/AtomLyIntegration/AtomBridge/Code/Source/Editor/AssetCollectionAsyncLoaderTestComponent.cpp @@ -48,8 +48,8 @@ namespace AZ "AssetCollectionAsyncLoaderTest", "The AssetCollectionAsyncLoaderTest component allows you to test the API provided by AssetCollectionAsyncLoader") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Test") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Comment.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Comment.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Comment.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Comment.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZStd::vector({ AZ_CRC("Level", 0x9aeacc13), AZ_CRC("Game", 0x232b318c), AZ_CRC("Layer", 0xe4db211a) })) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->DataElement(AZ::Edit::UIHandlers::LineEdit, &AssetCollectionAsyncLoaderTestComponent::m_pathToAssetListJson, "", "Path To Asset List") diff --git a/Gems/AtomLyIntegration/AtomBridge/Code/Source/FlyCameraInputComponent.cpp b/Gems/AtomLyIntegration/AtomBridge/Code/Source/FlyCameraInputComponent.cpp index 41f74a9670..54e3a6ce59 100644 --- a/Gems/AtomLyIntegration/AtomBridge/Code/Source/FlyCameraInputComponent.cpp +++ b/Gems/AtomLyIntegration/AtomBridge/Code/Source/FlyCameraInputComponent.cpp @@ -99,8 +99,8 @@ void FlyCameraInputComponent::Reflect(AZ::ReflectContext* reflection) editContext->Class("Fly Camera Input", "The Fly Camera Input allows you to control the camera") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute("Category", "Gameplay") - ->Attribute("Icon", "Editor/Icons/Components/CameraRig.svg") - ->Attribute("ViewportIcon", "Editor/Icons/Components/Viewport/CameraRig.png") + ->Attribute("Icon", "Icons/Components/CameraRig.svg") + ->Attribute("ViewportIcon", "Icons/Components/Viewport/CameraRig.png") ->Attribute("AutoExpand", true) ->Attribute("AppearsInAddComponentMenu", AZ_CRC("Game", 0x232b318c)) ->DataElement(0, &FlyCameraInputComponent::m_moveSpeed, "Move Speed", "Speed at which the camera moves") diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/CoreLights/EditorAreaLightComponent.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/CoreLights/EditorAreaLightComponent.cpp index 6a07a8a737..8c5f6d6836 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/CoreLights/EditorAreaLightComponent.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/CoreLights/EditorAreaLightComponent.cpp @@ -49,8 +49,8 @@ namespace AZ "Light", "A light which emits from a point or goemetric shape.") ->ClassElement(Edit::ClassElements::EditorData, "") ->Attribute(Edit::Attributes::Category, "Atom") - ->Attribute(Edit::Attributes::Icon, "Editor/Icons/Components/Component_Placeholder.svg") - ->Attribute(Edit::Attributes::ViewportIcon, "editor/icons/components/viewport/component_placeholder.png") + ->Attribute(Edit::Attributes::Icon, "Icons/Components/Component_Placeholder.svg") + ->Attribute(Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Component_Placeholder.png") ->Attribute(Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(Edit::Attributes::AutoExpand, true) ->Attribute(Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-light.html") diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/CoreLights/EditorDirectionalLightComponent.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/CoreLights/EditorDirectionalLightComponent.cpp index c484db5e1e..35c5522c4e 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/CoreLights/EditorDirectionalLightComponent.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/CoreLights/EditorDirectionalLightComponent.cpp @@ -44,8 +44,8 @@ namespace AZ "Directional Light", "A directional light to cast a shadow of meshes onto meshes.") ->ClassElement(Edit::ClassElements::EditorData, "") ->Attribute(Edit::Attributes::Category, "Atom") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Component_Placeholder.svg") // [GFX TODO][ATOM-1998] create icons. - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "editor/icons/components/viewport/component_placeholder.png") // [GFX TODO][ATOM-1998] create icons. + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Component_Placeholder.svg") // [GFX TODO][ATOM-1998] create icons. + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Component_Placeholder.png") // [GFX TODO][ATOM-1998] create icons. ->Attribute(Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(Edit::Attributes::AutoExpand, true) ->Attribute(Edit::Attributes::HelpPageURL, "https://") // [GFX TODO][ATOM-1998] create page diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Decals/EditorDecalComponent.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Decals/EditorDecalComponent.cpp index 9badeaac86..73190377ca 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Decals/EditorDecalComponent.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Decals/EditorDecalComponent.cpp @@ -39,8 +39,8 @@ namespace AZ "Decal (Atom)", "The Decal component allows an entity to project a texture or material onto a mesh") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Atom") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Component_Placeholder.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "editor/icons/components/viewport/component_placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Component_Placeholder.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Component_Placeholder.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC_CE("Game")) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-decal.html") diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/DiffuseProbeGrid/EditorDiffuseProbeGridComponent.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/DiffuseProbeGrid/EditorDiffuseProbeGridComponent.cpp index 7400809daa..ae22ec06c9 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/DiffuseProbeGrid/EditorDiffuseProbeGridComponent.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/DiffuseProbeGrid/EditorDiffuseProbeGridComponent.cpp @@ -43,8 +43,8 @@ namespace AZ "Diffuse Probe Grid", "The DiffuseProbeGrid component generates a grid of diffuse light probes for global illumination") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Atom") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Component_Placeholder.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "editor/icons/components/viewport/component_placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Component_Placeholder.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Component_Placeholder.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::PrimaryAssetType, AZ::AzTypeInfo::Uuid()) diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Grid/EditorGridComponent.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Grid/EditorGridComponent.cpp index 6934995600..f500bdd6e2 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Grid/EditorGridComponent.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Grid/EditorGridComponent.cpp @@ -34,8 +34,8 @@ namespace AZ "Grid", "Adds grid to the scene") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Atom") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Component_Placeholder.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "editor/icons/components/viewport/component_placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Component_Placeholder.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Component_Placeholder.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-grid.html") diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/ImageBasedLights/EditorImageBasedLightComponent.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/ImageBasedLights/EditorImageBasedLightComponent.cpp index 0be8f7050e..ec69964236 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/ImageBasedLights/EditorImageBasedLightComponent.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/ImageBasedLights/EditorImageBasedLightComponent.cpp @@ -34,8 +34,8 @@ namespace AZ "Global Skylight (IBL)", "Adds image based illumination to the scene") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Atom") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Component_Placeholder.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "editor/icons/components/viewport/component_placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Component_Placeholder.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Component_Placeholder.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-imagebasedlight.html") diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Material/EditorMaterialComponent.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Material/EditorMaterialComponent.cpp index b6ae2dedba..e307bfcd07 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Material/EditorMaterialComponent.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Material/EditorMaterialComponent.cpp @@ -137,8 +137,8 @@ namespace AZ "Material", "The material component specifies the material to use for this entity") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Atom") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Component_Placeholder.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "editor/icons/components/viewport/component_placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Component_Placeholder.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Component_Placeholder.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-material.html") diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Mesh/EditorMeshComponent.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Mesh/EditorMeshComponent.cpp index c9aa3a6d5e..f2ad9a13e6 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Mesh/EditorMeshComponent.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Mesh/EditorMeshComponent.cpp @@ -44,8 +44,8 @@ namespace AZ "Mesh", "The mesh component is the primary method of adding visual geometry to entities") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Atom") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Component_Placeholder.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "editor/icons/components/viewport/component_placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Component_Placeholder.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Component_Placeholder.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-mesh.html") diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/Bloom/EditorBloomComponent.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/Bloom/EditorBloomComponent.cpp index a7b9f56f89..2e57b8ff7a 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/Bloom/EditorBloomComponent.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/Bloom/EditorBloomComponent.cpp @@ -32,8 +32,8 @@ namespace AZ "Bloom", "Controls the Bloom") ->ClassElement(Edit::ClassElements::EditorData, "") ->Attribute(Edit::Attributes::Category, "Atom") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Component_Placeholder.svg") // [GFX TODO ATOM-2672][PostFX] need to create icons for PostProcessing. - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "editor/icons/components/viewport/component_placeholder.png") // [GFX TODO ATOM-2672][PostFX] need to create icons for PostProcessing. + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Component_Placeholder.svg") // [GFX TODO ATOM-2672][PostFX] need to create icons for PostProcessing. + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Component_Placeholder.png") // [GFX TODO ATOM-2672][PostFX] need to create icons for PostProcessing. ->Attribute(Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(Edit::Attributes::AutoExpand, true) ->Attribute(Edit::Attributes::HelpPageURL, "https://") // [TODO ATOM-2672][PostFX] need create page for PostProcessing. diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/DepthOfField/EditorDepthOfFieldComponent.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/DepthOfField/EditorDepthOfFieldComponent.cpp index e1d4edc7c0..ae70a8394a 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/DepthOfField/EditorDepthOfFieldComponent.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/DepthOfField/EditorDepthOfFieldComponent.cpp @@ -32,8 +32,8 @@ namespace AZ "DepthOfField", "Controls the Depth of Field.") ->ClassElement(Edit::ClassElements::EditorData, "") ->Attribute(Edit::Attributes::Category, "Atom") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Component_Placeholder.svg") // [GFX TODO ATOM-2672][PostFX] need to create icons for PostProcessing. - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "editor/icons/components/viewport/component_placeholder.png") // [GFX TODO ATOM-2672][PostFX] need to create icons for PostProcessing.y + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Component_Placeholder.svg") // [GFX TODO ATOM-2672][PostFX] need to create icons for PostProcessing. + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Component_Placeholder.png") // [GFX TODO ATOM-2672][PostFX] need to create icons for PostProcessing.y ->Attribute(Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(Edit::Attributes::AutoExpand, true) ->Attribute(Edit::Attributes::HelpPageURL, "https://") // [GFX TODO][ATOM-2672][PostFX] need create page for PostProcessing. diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/DisplayMapper/EditorDisplayMapperComponent.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/DisplayMapper/EditorDisplayMapperComponent.cpp index 585ff0bd00..80aad79218 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/DisplayMapper/EditorDisplayMapperComponent.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/DisplayMapper/EditorDisplayMapperComponent.cpp @@ -32,8 +32,8 @@ namespace AZ "Display Mapper", "The display mapper applying on the look modification process.") ->ClassElement(Edit::ClassElements::EditorData, "") ->Attribute(Edit::Attributes::Category, "Atom") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Component_Placeholder.svg") // [GFX TODO][ATOM-2672][PostFX] need to create icons for PostProcessing. - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "editor/icons/components/viewport/component_placeholder.png") // [GFX TODO][ATOM-2672][PostFX] need to create icons for PostProcessing. + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Component_Placeholder.svg") // [GFX TODO][ATOM-2672][PostFX] need to create icons for PostProcessing. + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Component_Placeholder.png") // [GFX TODO][ATOM-2672][PostFX] need to create icons for PostProcessing. ->Attribute(Edit::Attributes::AppearsInAddComponentMenu, AZStd::vector({ AZ_CRC("Level", 0x9aeacc13), AZ_CRC("Game", 0x232b318c) })) ->Attribute(Edit::Attributes::AutoExpand, true) ->Attribute(Edit::Attributes::HelpPageURL, "https://") // [GFX TODO][ATOM-2672][PostFX] need to create page for PostProcessing. diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/EditorPostFxLayerComponent.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/EditorPostFxLayerComponent.cpp index a26ea597ec..e3370db194 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/EditorPostFxLayerComponent.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/EditorPostFxLayerComponent.cpp @@ -32,8 +32,8 @@ namespace AZ "PostFX Layer", "This component enables the entity to specify post process settings") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Atom") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Component_Placeholder.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "editor/icons/components/viewport/component_placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Component_Placeholder.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Component_Placeholder.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "") diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/ExposureControl/EditorExposureControlComponent.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/ExposureControl/EditorExposureControlComponent.cpp index a1135ff0ad..b38f51e7ba 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/ExposureControl/EditorExposureControlComponent.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/ExposureControl/EditorExposureControlComponent.cpp @@ -32,8 +32,8 @@ namespace AZ "Exposure Control", "Exposure component control exposure value for rendered scene.") ->ClassElement(Edit::ClassElements::EditorData, "") ->Attribute(Edit::Attributes::Category, "Atom") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Component_Placeholder.svg") // [GFX TODO ATOM-2672][PostFX] need to create icons for PostProcessing. - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "editor/icons/components/viewport/component_placeholder.png") // [GFX TODO ATOM-2672][PostFX] need to create icons for PostProcessing. + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Component_Placeholder.svg") // [GFX TODO ATOM-2672][PostFX] need to create icons for PostProcessing. + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Component_Placeholder.png") // [GFX TODO ATOM-2672][PostFX] need to create icons for PostProcessing. ->Attribute(Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(Edit::Attributes::AutoExpand, true) ->Attribute(Edit::Attributes::HelpPageURL, "https://") // [TODO ATOM-2672][PostFX] need create page for PostProcessing. diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/GradientWeightModifier/EditorGradientWeightModifierComponent.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/GradientWeightModifier/EditorGradientWeightModifierComponent.cpp index 2089dfb01b..876a696df1 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/GradientWeightModifier/EditorGradientWeightModifierComponent.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/GradientWeightModifier/EditorGradientWeightModifierComponent.cpp @@ -32,8 +32,8 @@ namespace AZ "PostFX Gradient Weight Modifier", "Modifies PostFX override factor based on a gradient signal sampled from an entity") ->ClassElement(Edit::ClassElements::EditorData, "") ->Attribute(Edit::Attributes::Category, "Atom") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Component_Placeholder.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "editor/icons/components/viewport/component_placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Component_Placeholder.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Component_Placeholder.png") ->Attribute(Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(Edit::Attributes::AutoExpand, true) ->Attribute(Edit::Attributes::HelpPageURL, "") diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/LookModification/EditorLookModificationComponent.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/LookModification/EditorLookModificationComponent.cpp index b80ffbab6f..5f6336b0d8 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/LookModification/EditorLookModificationComponent.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/LookModification/EditorLookModificationComponent.cpp @@ -32,8 +32,8 @@ namespace AZ "Look Modification", "The look modification process.") ->ClassElement(Edit::ClassElements::EditorData, "") ->Attribute(Edit::Attributes::Category, "Atom") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Component_Placeholder.svg") // [GFX TODO ATOM-2672][PostFX] need to create icons for PostProcessing. - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "editor/icons/components/viewport/component_placeholder.png") // [GFX TODO ATOM-2672][PostFX] need to create icons for PostProcessing. + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Component_Placeholder.svg") // [GFX TODO ATOM-2672][PostFX] need to create icons for PostProcessing. + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Component_Placeholder.png") // [GFX TODO ATOM-2672][PostFX] need to create icons for PostProcessing. ->Attribute(Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(Edit::Attributes::AutoExpand, true) ->Attribute(Edit::Attributes::HelpPageURL, "https://") // [TODO ATOM-2672][PostFX] need to create page for PostProcessing. diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/RadiusWeightModifier/EditorRadiusWeightModifierComponent.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/RadiusWeightModifier/EditorRadiusWeightModifierComponent.cpp index 6541feb042..fc364e9cc0 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/RadiusWeightModifier/EditorRadiusWeightModifierComponent.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/RadiusWeightModifier/EditorRadiusWeightModifierComponent.cpp @@ -32,8 +32,8 @@ namespace AZ "Radius Weight Modifier", "Modifies PostFX override factor based on proximity of an influencer against this entity's bounding sphere") ->ClassElement(Edit::ClassElements::EditorData, "") ->Attribute(Edit::Attributes::Category, "Atom") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Component_Placeholder.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "editor/icons/components/viewport/component_placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Component_Placeholder.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Component_Placeholder.png") ->Attribute(Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(Edit::Attributes::AutoExpand, true) ->Attribute(Edit::Attributes::HelpPageURL, "") diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/ShapeWeightModifier/EditorShapeWeightModifierComponent.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/ShapeWeightModifier/EditorShapeWeightModifierComponent.cpp index 0b704e8687..c5f888a9e7 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/ShapeWeightModifier/EditorShapeWeightModifierComponent.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/ShapeWeightModifier/EditorShapeWeightModifierComponent.cpp @@ -32,8 +32,8 @@ namespace AZ "PostFX Shape Weight Modifier", "Modifies PostFX override factor based on proximity of an influencer against this entity's bounding sphere") ->ClassElement(Edit::ClassElements::EditorData, "") ->Attribute(Edit::Attributes::Category, "Atom") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Component_Placeholder.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "editor/icons/components/viewport/component_placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Component_Placeholder.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Component_Placeholder.png") ->Attribute(Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(Edit::Attributes::AutoExpand, true) ->Attribute(Edit::Attributes::HelpPageURL, "") diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/Ssao/EditorSsaoComponent.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/Ssao/EditorSsaoComponent.cpp index 88657c342a..e89bde0732 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/Ssao/EditorSsaoComponent.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/PostProcess/Ssao/EditorSsaoComponent.cpp @@ -32,8 +32,8 @@ namespace AZ "SSAO", "Controls SSAO.") ->ClassElement(Edit::ClassElements::EditorData, "") ->Attribute(Edit::Attributes::Category, "Atom") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Component_Placeholder.svg") // [GFX TODO ATOM-2672][PostFX] need to create icons for PostProcessing. - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "editor/icons/components/viewport/component_placeholder.png") // [GFX TODO ATOM-2672][PostFX] need to create icons for PostProcessing. + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Component_Placeholder.svg") // [GFX TODO ATOM-2672][PostFX] need to create icons for PostProcessing. + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Component_Placeholder.png") // [GFX TODO ATOM-2672][PostFX] need to create icons for PostProcessing. ->Attribute(Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC_CE("Game")) ->Attribute(Edit::Attributes::AutoExpand, true) ->Attribute(Edit::Attributes::HelpPageURL, "https://") // [GFX TODO][ATOM-2672][PostFX] need create page for PostProcessing. diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/ReflectionProbe/EditorReflectionProbeComponent.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/ReflectionProbe/EditorReflectionProbeComponent.cpp index 976b8f4267..efefcc3dc6 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/ReflectionProbe/EditorReflectionProbeComponent.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/ReflectionProbe/EditorReflectionProbeComponent.cpp @@ -49,8 +49,8 @@ namespace AZ "Reflection Probe", "The ReflectionProbe component captures an IBL specular reflection at a specific position in the level") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Atom") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Component_Placeholder.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "editor/icons/components/viewport/component_placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Component_Placeholder.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Component_Placeholder.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::Visibility, AZ::Edit::PropertyVisibility::ShowChildrenOnly) diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/ScreenSpace/EditorDeferredFogComponent.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/ScreenSpace/EditorDeferredFogComponent.cpp index bbc1f790d4..92c2cfe700 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/ScreenSpace/EditorDeferredFogComponent.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/ScreenSpace/EditorDeferredFogComponent.cpp @@ -32,8 +32,8 @@ namespace AZ "Deferred Fog", "Controls the Deferred Fog") ->ClassElement(Edit::ClassElements::EditorData, "") ->Attribute(Edit::Attributes::Category, "Atom") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Component_Placeholder.svg") // [GFX TODO ATOM-2672][PostFX] need to create icons for PostProcessing. - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "editor/icons/components/viewport/component_placeholder.png") // [GFX TODO ATOM-2672][PostFX] need to create icons for PostProcessing. + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Component_Placeholder.svg") // [GFX TODO ATOM-2672][PostFX] need to create icons for PostProcessing. + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Component_Placeholder.png") // [GFX TODO ATOM-2672][PostFX] need to create icons for PostProcessing. ->Attribute(Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(Edit::Attributes::AutoExpand, true) ->Attribute(Edit::Attributes::HelpPageURL, "https://") // [TODO][ATOM-13427] Create Wiki for Deferred Fog diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Scripting/EditorEntityReferenceComponent.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Scripting/EditorEntityReferenceComponent.cpp index ea4c38ddc8..cdb3c80986 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Scripting/EditorEntityReferenceComponent.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/Scripting/EditorEntityReferenceComponent.cpp @@ -31,8 +31,8 @@ namespace AZ "Entity Reference", "Contains a reference list to other entities") ->ClassElement(Edit::ClassElements::EditorData, "") ->Attribute(Edit::Attributes::Category, "Atom") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Component_Placeholder.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "editor/icons/components/viewport/component_placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Component_Placeholder.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Component_Placeholder.png") ->Attribute(Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(Edit::Attributes::AutoExpand, true) ->Attribute(Edit::Attributes::HelpPageURL, "") diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/SkyBox/EditorHDRiSkyboxComponent.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/SkyBox/EditorHDRiSkyboxComponent.cpp index 9cd026ffcf..0c1b605c3a 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/SkyBox/EditorHDRiSkyboxComponent.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/SkyBox/EditorHDRiSkyboxComponent.cpp @@ -32,8 +32,8 @@ namespace AZ "HDRi Skybox", "SkyBox component render the background of your scene with cubemap") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Atom") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Component_Placeholder.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "editor/icons/components/viewport/component_placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Component_Placeholder.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Component_Placeholder.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "") diff --git a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/SkyBox/EditorPhysicalSkyComponent.cpp b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/SkyBox/EditorPhysicalSkyComponent.cpp index 07ba738522..8f9b98c15c 100644 --- a/Gems/AtomLyIntegration/CommonFeatures/Code/Source/SkyBox/EditorPhysicalSkyComponent.cpp +++ b/Gems/AtomLyIntegration/CommonFeatures/Code/Source/SkyBox/EditorPhysicalSkyComponent.cpp @@ -32,8 +32,8 @@ namespace AZ "Physical Sky", "Physical Sky render the background of your scene with physical simulation") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Atom") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Component_Placeholder.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "editor/icons/components/viewport/component_placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Component_Placeholder.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Component_Placeholder.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "") diff --git a/Gems/AudioSystem/Code/Source/Editor/ATLControlsPanel.cpp b/Gems/AudioSystem/Code/Source/Editor/ATLControlsPanel.cpp index ce74e71d48..d2a0b78ac3 100644 --- a/Gems/AudioSystem/Code/Source/Editor/ATLControlsPanel.cpp +++ b/Gems/AudioSystem/Code/Source/Editor/ATLControlsPanel.cpp @@ -147,7 +147,7 @@ namespace AudioControls QWidgetAction* pWidgetAction = new QWidgetAction(this); - m_unassignedFilterButton = new QFilterButton(QIcon(":/Editor/Icons/Unassigned.svg"), "", this); + m_unassignedFilterButton = new QFilterButton(QIcon(":/Icons/Unassigned.svg"), "", this); m_unassignedFilterButton->SetText("Unassigned"); m_unassignedFilterButton->SetChecked(m_showUnassignedControls); pWidgetAction->setDefaultWidget(m_unassignedFilterButton); diff --git a/Gems/AudioSystem/Code/Source/Editor/AudioControlsEditorUI.qrc b/Gems/AudioSystem/Code/Source/Editor/AudioControlsEditorUI.qrc index 5c5bc8927a..ad3bbec034 100644 --- a/Gems/AudioSystem/Code/Source/Editor/AudioControlsEditorUI.qrc +++ b/Gems/AudioSystem/Code/Source/Editor/AudioControlsEditorUI.qrc @@ -1,5 +1,5 @@ - + Icons/Bank_Icon.png Icons/Config_Blue_Icon.png Icons/Config_Green_Icon.png diff --git a/Gems/AudioSystem/Code/Source/Editor/QAudioControlEditorIcons.h b/Gems/AudioSystem/Code/Source/Editor/QAudioControlEditorIcons.h index 3afaa445da..700370b8d3 100644 --- a/Gems/AudioSystem/Code/Source/Editor/QAudioControlEditorIcons.h +++ b/Gems/AudioSystem/Code/Source/Editor/QAudioControlEditorIcons.h @@ -26,26 +26,26 @@ namespace AudioControls switch (type) { case AudioControls::eACET_TRIGGER: - iconFile = ":/Editor/Icons/Trigger_Icon.svg"; + iconFile = ":/Icons/Trigger_Icon.svg"; break; case AudioControls::eACET_RTPC: - iconFile = ":/Editor/Icons/RTPC_Icon.svg"; + iconFile = ":/Icons/RTPC_Icon.svg"; break; case AudioControls::eACET_SWITCH: - iconFile = ":/Editor/Icons/Switch_Icon.svg"; + iconFile = ":/Icons/Switch_Icon.svg"; break; case AudioControls::eACET_SWITCH_STATE: - iconFile = ":/Editor/Icons/Property_Icon.svg"; + iconFile = ":/Icons/Property_Icon.svg"; break; case AudioControls::eACET_ENVIRONMENT: - iconFile = ":/Editor/Icons/Environment_Icon.svg"; + iconFile = ":/Icons/Environment_Icon.svg"; break; case AudioControls::eACET_PRELOAD: - iconFile = ":/Editor/Icons/Preload_Icon.svg"; + iconFile = ":/Icons/Preload_Icon.svg"; break; default: // should make a "default"/empty icon... - iconFile = ":/Editor/Icons/RTPC_Icon.svg"; + iconFile = ":/Icons/RTPC_Icon.svg"; } QIcon icon(iconFile); @@ -56,16 +56,16 @@ namespace AudioControls //-------------------------------------------------------------------------------------------// inline QIcon GetFolderIcon() { - QIcon icon = QIcon(":/Editor/Icons/Folder_Icon.svg"); - icon.addFile(":/Editor/Icons/Folder_Icon_Selected.svg", QSize(), QIcon::Selected); + QIcon icon = QIcon(":/Icons/Folder_Icon.svg"); + icon.addFile(":/Icons/Folder_Icon_Selected.svg", QSize(), QIcon::Selected); return icon; } //-------------------------------------------------------------------------------------------// inline QIcon GetSoundBankIcon() { - QIcon icon = QIcon(":/Editor/Icons/Preload_Icon.svg"); - icon.addFile(":/Editor/Icons/Preload_Icon.svg", QSize(), QIcon::Selected); + QIcon icon = QIcon(":/Icons/Preload_Icon.svg"); + icon.addFile(":/Icons/Preload_Icon.svg", QSize(), QIcon::Selected); return icon; } @@ -78,22 +78,22 @@ namespace AudioControls switch (group) { case 0: - path = ":/Editor/Icons/folder purple.svg"; + path = ":/Icons/folder purple.svg"; break; case 1: - path = ":/Editor/Icons/folder blue.svg"; + path = ":/Icons/folder blue.svg"; break; case 2: - path = ":/Editor/Icons/folder green.svg"; + path = ":/Icons/folder green.svg"; break; case 3: - path = ":/Editor/Icons/folder red.svg"; + path = ":/Icons/folder red.svg"; break; case 4: - path = ":/Editor/Icons/folder yellow.svg"; + path = ":/Icons/folder yellow.svg"; break; default: - path = "Editor/Icons/folder red.svg"; + path = "Icons/folder red.svg"; break; } diff --git a/Gems/Blast/Code/Source/Asset/BlastAssetHandler.cpp b/Gems/Blast/Code/Source/Asset/BlastAssetHandler.cpp index 9e0aacbfda..f1d41efb52 100644 --- a/Gems/Blast/Code/Source/Asset/BlastAssetHandler.cpp +++ b/Gems/Blast/Code/Source/Asset/BlastAssetHandler.cpp @@ -104,7 +104,7 @@ namespace Blast const char* BlastAssetHandler::GetBrowserIcon() const { - return "Editor/Icons/Components/Box.png"; + return "Icons/Components/Box.png"; } void BlastAssetHandler::GetAssetTypeExtensions(AZStd::vector& extensions) diff --git a/Gems/Blast/Code/Source/Editor/EditorBlastFamilyComponent.cpp b/Gems/Blast/Code/Source/Editor/EditorBlastFamilyComponent.cpp index 9da8aa6463..fc6967b96e 100644 --- a/Gems/Blast/Code/Source/Editor/EditorBlastFamilyComponent.cpp +++ b/Gems/Blast/Code/Source/Editor/EditorBlastFamilyComponent.cpp @@ -39,8 +39,8 @@ namespace Blast "Blast Family", "Used to add a Blast family for destruction that will spawn Blast actors") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Destruction") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Box.png") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Box.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Box.png") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Box.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute( AZ::Edit::Attributes::HelpPageURL, diff --git a/Gems/Blast/Code/Source/Editor/EditorBlastMeshDataComponent.cpp b/Gems/Blast/Code/Source/Editor/EditorBlastMeshDataComponent.cpp index 51789f68da..f8fd97dc52 100644 --- a/Gems/Blast/Code/Source/Editor/EditorBlastMeshDataComponent.cpp +++ b/Gems/Blast/Code/Source/Editor/EditorBlastMeshDataComponent.cpp @@ -61,8 +61,8 @@ namespace Blast "Blast Family Mesh Data", "Used to keep track of mesh assets for a Blast family") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Destruction") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Box.png") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Box.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Box.png") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Box.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute( AZ::Edit::Attributes::HelpPageURL, diff --git a/Gems/Blast/Code/Source/Editor/EditorBlastSliceAssetHandler.cpp b/Gems/Blast/Code/Source/Editor/EditorBlastSliceAssetHandler.cpp index 1b12d7554b..8fdaa49046 100644 --- a/Gems/Blast/Code/Source/Editor/EditorBlastSliceAssetHandler.cpp +++ b/Gems/Blast/Code/Source/Editor/EditorBlastSliceAssetHandler.cpp @@ -55,8 +55,8 @@ namespace Blast "Blast Slice Storage Component", "Used process blast slice data") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Physics") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Box.png") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Box.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Box.png") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Box.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC_CE("Game")) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::AddableByUser, false) @@ -339,7 +339,7 @@ namespace Blast const char* EditorBlastSliceAssetHandler::GetBrowserIcon() const { - return "Editor/Icons/Components/Box.png"; + return "Icons/Components/Box.png"; } void EditorBlastSliceAssetHandler::GetAssetTypeExtensions(AZStd::vector& extensions) diff --git a/Gems/DebugDraw/Code/Source/EditorDebugDrawLineComponent.cpp b/Gems/DebugDraw/Code/Source/EditorDebugDrawLineComponent.cpp index 1f41b85b61..2330f54bbc 100644 --- a/Gems/DebugDraw/Code/Source/EditorDebugDrawLineComponent.cpp +++ b/Gems/DebugDraw/Code/Source/EditorDebugDrawLineComponent.cpp @@ -37,7 +37,7 @@ namespace DebugDraw "DebugDraw Line", "Draws debug line on the screen from this entity's location to specified end entity's location.") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Debugging") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/DebugDrawLine.svg") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/DebugDrawLine.svg") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->DataElement(0, &EditorDebugDrawLineComponent::m_element, "Line element settings", "Settings for the line element.") ->Attribute(AZ::Edit::Attributes::ChangeNotify, &EditorDebugDrawLineComponent::OnPropertyUpdate) diff --git a/Gems/DebugDraw/Code/Source/EditorDebugDrawObbComponent.cpp b/Gems/DebugDraw/Code/Source/EditorDebugDrawObbComponent.cpp index b1ef7daf51..18b0d491a3 100644 --- a/Gems/DebugDraw/Code/Source/EditorDebugDrawObbComponent.cpp +++ b/Gems/DebugDraw/Code/Source/EditorDebugDrawObbComponent.cpp @@ -37,7 +37,7 @@ namespace DebugDraw "DebugDraw Obb", "Draws debug obb on the screen from this entity's location to specified end entity's location.") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Debugging") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/DebugDrawObb.svg") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/DebugDrawObb.svg") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->DataElement(0, &EditorDebugDrawObbComponent::m_element, "Obb element settings", "Settings for the obb element.") ->Attribute(AZ::Edit::Attributes::ChangeNotify, &EditorDebugDrawObbComponent::OnPropertyUpdate) diff --git a/Gems/DebugDraw/Code/Source/EditorDebugDrawRayComponent.cpp b/Gems/DebugDraw/Code/Source/EditorDebugDrawRayComponent.cpp index d819c6b5d0..db29e03837 100644 --- a/Gems/DebugDraw/Code/Source/EditorDebugDrawRayComponent.cpp +++ b/Gems/DebugDraw/Code/Source/EditorDebugDrawRayComponent.cpp @@ -37,7 +37,7 @@ namespace DebugDraw "DebugDraw Ray", "Draws debug ray on the screen from this entity's location to specified end entity's location.") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Debugging") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/DebugDrawRay.svg") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/DebugDrawRay.svg") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->DataElement(0, &EditorDebugDrawRayComponent::m_element, "Ray element settings", "Settings for the ray element.") ->Attribute(AZ::Edit::Attributes::ChangeNotify, &EditorDebugDrawRayComponent::OnPropertyUpdate) diff --git a/Gems/DebugDraw/Code/Source/EditorDebugDrawSphereComponent.cpp b/Gems/DebugDraw/Code/Source/EditorDebugDrawSphereComponent.cpp index 753f6e2e72..5b741e85a8 100644 --- a/Gems/DebugDraw/Code/Source/EditorDebugDrawSphereComponent.cpp +++ b/Gems/DebugDraw/Code/Source/EditorDebugDrawSphereComponent.cpp @@ -37,7 +37,7 @@ namespace DebugDraw "DebugDraw Sphere", "Draws debug ray on the screen from this entity's location to specified end entity's location.") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Debugging") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/DebugDrawSphere.svg") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/DebugDrawSphere.svg") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->DataElement(0, &EditorDebugDrawSphereComponent::m_element, "Sphere element settings", "Settings for the sphere element.") ->Attribute(AZ::Edit::Attributes::ChangeNotify, &EditorDebugDrawSphereComponent::OnPropertyUpdate) diff --git a/Gems/DebugDraw/Code/Source/EditorDebugDrawTextComponent.cpp b/Gems/DebugDraw/Code/Source/EditorDebugDrawTextComponent.cpp index a3d842f52b..d340317a24 100644 --- a/Gems/DebugDraw/Code/Source/EditorDebugDrawTextComponent.cpp +++ b/Gems/DebugDraw/Code/Source/EditorDebugDrawTextComponent.cpp @@ -37,7 +37,7 @@ namespace DebugDraw "DebugDraw Text", "Draws debug text on the screen at this entity's location.") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Debugging") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/DebugDrawText.svg") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/DebugDrawText.svg") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->DataElement(0, &EditorDebugDrawTextComponent::m_element, "Text element settings", "Settings for the text element.") ->Attribute(AZ::Edit::Attributes::ChangeNotify, &EditorDebugDrawTextComponent::OnPropertyUpdate) diff --git a/Gems/EMotionFX/Code/Source/Integration/Components/AnimGraphNetSyncComponent.cpp b/Gems/EMotionFX/Code/Source/Integration/Components/AnimGraphNetSyncComponent.cpp index 49f6ab0a08..904f500018 100644 --- a/Gems/EMotionFX/Code/Source/Integration/Components/AnimGraphNetSyncComponent.cpp +++ b/Gems/EMotionFX/Code/Source/Integration/Components/AnimGraphNetSyncComponent.cpp @@ -125,7 +125,7 @@ namespace EMotionFX ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::Category, "Networking") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/AnimGraphNetSync.svg") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/AnimGraphNetSync.svg") ->DataElement( AZ::Edit::UIHandlers::Default, &AnimGraphNetSyncComponent::m_syncParameters, "Sync parameters", "Synchronize parameters of the anim graph on the entity" ) ->DataElement( AZ::Edit::UIHandlers::Default, &AnimGraphNetSyncComponent::m_syncActiveNodes, "Sync active nodes", diff --git a/Gems/EMotionFX/Code/Source/Integration/Editor/Components/EditorAnimAudioComponent.cpp b/Gems/EMotionFX/Code/Source/Integration/Editor/Components/EditorAnimAudioComponent.cpp index 82073a16cc..bb8e93d29c 100644 --- a/Gems/EMotionFX/Code/Source/Integration/Editor/Components/EditorAnimAudioComponent.cpp +++ b/Gems/EMotionFX/Code/Source/Integration/Editor/Components/EditorAnimAudioComponent.cpp @@ -51,7 +51,7 @@ namespace EMotionFX editContext->Class("Audio Animation", "Adds ability to execute audio triggers when animation events occur.") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Audio") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/AudioAnimation.svg") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/AudioAnimation.svg") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->DataElement(AZ::Edit::UIHandlers::Default, &EditorAnimAudioComponent::m_editorTriggerEvents, "Trigger Map", "Maps the animation events to executable audio triggers."); diff --git a/Gems/EMotionFX/Code/Source/Integration/Editor/Components/EditorSimpleLODComponent.cpp b/Gems/EMotionFX/Code/Source/Integration/Editor/Components/EditorSimpleLODComponent.cpp index 0c370c9f6e..a5f95f65f4 100644 --- a/Gems/EMotionFX/Code/Source/Integration/Editor/Components/EditorSimpleLODComponent.cpp +++ b/Gems/EMotionFX/Code/Source/Integration/Editor/Components/EditorSimpleLODComponent.cpp @@ -47,8 +47,8 @@ namespace EMotionFX "Simple LOD Distance", "The Simple LOD distance component alters the actor skeleton LOD level based on camera distance.") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Animation") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/SimpleLODDistance.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Mannequin.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/SimpleLODDistance.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Mannequin.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->DataElement(0, &EditorSimpleLODComponent::m_configuration, "LOD Configuration", ""); diff --git a/Gems/EMotionFX/Code/Source/Integration/Editor/Components/EditorSimpleMotionComponent.cpp b/Gems/EMotionFX/Code/Source/Integration/Editor/Components/EditorSimpleMotionComponent.cpp index 1d09b3e255..4b463958af 100644 --- a/Gems/EMotionFX/Code/Source/Integration/Editor/Components/EditorSimpleMotionComponent.cpp +++ b/Gems/EMotionFX/Code/Source/Integration/Editor/Components/EditorSimpleMotionComponent.cpp @@ -47,9 +47,9 @@ namespace EMotionFX "Simple Motion", "The Simple Motion component assigns a single motion to the associated Actor in lieu of an Anim Graph component") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Animation") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/SimpleMotion.svg") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/SimpleMotion.svg") ->Attribute(AZ::Edit::Attributes::PrimaryAssetType, azrtti_typeid()) - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Mannequin.png") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Mannequin.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->DataElement(0, &EditorSimpleMotionComponent::m_previewInEditor, "Preview In Editor", "Plays motion in Editor") diff --git a/Gems/EditorPythonBindings/Code/Source/PythonSystemComponent.cpp b/Gems/EditorPythonBindings/Code/Source/PythonSystemComponent.cpp index 53f5be5bc4..4e1a3dc06e 100644 --- a/Gems/EditorPythonBindings/Code/Source/PythonSystemComponent.cpp +++ b/Gems/EditorPythonBindings/Code/Source/PythonSystemComponent.cpp @@ -154,7 +154,7 @@ namespace RedirectOutput RedirectOutputType.tp_new = PyType_GenericNew; if (PyType_Ready(&RedirectOutputType) < 0) - { + { return 0; } @@ -189,7 +189,7 @@ namespace RedirectOutput void ResetRedirection(const char* funcname, PyObject*& saved, PyObject*& current) { if (current) - { + { PySys_SetObject(funcname, saved); } Py_XDECREF(current); @@ -204,7 +204,7 @@ namespace RedirectOutput s_RedirectModule = module; - SetRedirection("stdout", g_redirect_stdout_saved, g_redirect_stdout, [](const char* msg) + SetRedirection("stdout", g_redirect_stdout_saved, g_redirect_stdout, [](const char* msg) { EditorPythonConsoleNotificationBus::Broadcast(&EditorPythonConsoleNotificationBus::Events::OnTraceMessage, msg); }); @@ -363,8 +363,7 @@ namespace EditorPythonBindings auto resolveScriptPath = [&pythonPathStack](AZStd::string_view path) { - AZ::IO::Path editorScriptsPath(path); - editorScriptsPath /= "Editor/Scripts"; + auto editorScriptsPath = AZ::IO::Path(path) / "Editor" / "Scripts"; if (AZ::IO::SystemFile::Exists(editorScriptsPath.c_str())) { pythonPathStack.emplace_back(AZStd::move(editorScriptsPath.LexicallyNormal().Native())); @@ -372,7 +371,7 @@ namespace EditorPythonBindings }; // The discovery order will be: - // 1 - engine + // 1 - engine-root/EngineAsets // 2 - gems // 3 - project // 4 - user(dev) @@ -381,7 +380,7 @@ namespace EditorPythonBindings AZ::IO::FixedMaxPath engineRoot; if (settingsRegistry->Get(engineRoot.Native(), AZ::SettingsRegistryMergeUtils::FilePathKey_EngineRootFolder); !engineRoot.empty()) { - resolveScriptPath(engineRoot.Native()); + resolveScriptPath((engineRoot / "Assets").Native()); } // 2 - gems @@ -470,7 +469,7 @@ namespace EditorPythonBindings } } - + bool PythonSystemComponent::StartPythonInterpreter(const PythonPathStack& pythonPathStack) { @@ -502,7 +501,7 @@ namespace EditorPythonBindings // ignore system location for sites site-packages Py_IsolatedFlag = 1; // -I - Also sets Py_NoUserSiteDirectory. If removed PyNoUserSiteDirectory should be set. Py_IgnoreEnvironmentFlag = 1; // -E - + const bool initializeSignalHandlers = true; pybind11::initialize_interpreter(initializeSignalHandlers); @@ -555,7 +554,7 @@ namespace EditorPythonBindings } return false; } - + bool PythonSystemComponent::StopPythonInterpreter() { if (Py_IsInitialized()) @@ -704,7 +703,7 @@ namespace EditorPythonBindings // Acquire GIL before calling Python code AZStd::lock_guard lock(m_lock); pybind11::gil_scoped_acquire acquire; - + // Create standard "argc" / "argv" command-line parameters to pass in to the Python script via sys.argv. // argc = number of parameters. This will always be at least 1, since the first parameter is the script name. // argv = the list of parameters, in wchar format. diff --git a/Gems/GraphCanvas/Code/Source/Translation/TranslationAsset.cpp b/Gems/GraphCanvas/Code/Source/Translation/TranslationAsset.cpp index ac49d7da7a..8b8960fb45 100644 --- a/Gems/GraphCanvas/Code/Source/Translation/TranslationAsset.cpp +++ b/Gems/GraphCanvas/Code/Source/Translation/TranslationAsset.cpp @@ -128,7 +128,7 @@ namespace GraphCanvas const char* TranslationAssetHandler::GetBrowserIcon() const { - return "Editor/Icons/Components/Names.svg"; + return "Icons/Components/Names.svg"; } AZ::Uuid TranslationAssetHandler::GetComponentTypeId() const diff --git a/Gems/ImageProcessing/Code/Tests/ImageProcessing_Test.cpp b/Gems/ImageProcessing/Code/Tests/ImageProcessing_Test.cpp index 1bef8e2fa3..0eaa4df4c6 100644 --- a/Gems/ImageProcessing/Code/Tests/ImageProcessing_Test.cpp +++ b/Gems/ImageProcessing/Code/Tests/ImageProcessing_Test.cpp @@ -47,11 +47,11 @@ #include #include -//Enable generate image files for result of some tests. +//Enable generate image files for result of some tests. //This is slow and only useful for debugging. This should be disabled for unit test //#define DEBUG_OUTPUT_IMAGES -//There are some test functions in this test which are DISABLED. They were mainly for programming tests. +//There are some test functions in this test which are DISABLED. They were mainly for programming tests. //It's only recommended to enable them for programming test purpose. #include @@ -72,7 +72,7 @@ protected: AZStd::unique_ptr m_coreApplication; // required by engine root and IsExtensionSupported AZStd::unique_ptr m_context; AZStd::string m_engineRoot; - + void SetUp() override { BuilderSettingManager::CreateInstance(); @@ -81,13 +81,13 @@ protected: m_context = AZStd::make_unique(); BuilderPluginComponent::Reflect(m_context.get()); AZ::DataPatch::Reflect(m_context.get()); - + // Startup default local FileIO (hits OSAllocator) if not already setup. if (AZ::IO::FileIOBase::GetInstance() == nullptr) { AZ::IO::FileIOBase::SetInstance(aznew AZ::IO::LocalFileIO()); } - + // Adding this handler to allow utility functions access the serialize context AZ::ComponentApplicationBus::Handler::BusConnect(); AZ::Interface::Register(this); @@ -142,7 +142,7 @@ protected: { return m_context.get(); } - + //enum names for Images with specific identification enum ImageFeature { @@ -199,7 +199,7 @@ public: //create the directory if it's not exist const AZStd::string outputDir = AZ::Test::GetEngineRootPath() + "/Gems/ImageProcessing/Code/Tests/TestAssets/Output/"; QDir dir(outputDir.c_str()); - if (!dir.exists()) + if (!dir.exists()) { dir.mkpath("."); } @@ -213,7 +213,7 @@ public: IImageObjectPtr finalImage = imageToProcess.Get(); - //for each mipmap + //for each mipmap for (uint32 mip = 0; mip < finalImage->GetMipCount() && mip < maxMipCnt; mip++) { uint8* imageBuf; @@ -237,7 +237,7 @@ public: { bool isImageLoaded = true; bool isDifferent = false; - + if (image1 == nullptr) { isImageLoaded = false; @@ -254,7 +254,7 @@ public: { return (!image1 && !image2) ? false: true; } - + // Mip int mip1 = image1->GetMipCount(); int mip2 = image2->GetMipCount(); @@ -271,7 +271,7 @@ public: // Flag AZ::u32 flag1 = image1->GetImageFlags(); AZ::u32 flag2 = image2->GetImageFlags(); - + isDifferent |= (flag1 != flag2); // Size @@ -284,9 +284,9 @@ public: // Error float error = GetErrorBetweenImages(image1, image2); - static float EPSILON = 0.000001f; + static float EPSILON = 0.000001f; isDifferent |= abs(error) >= EPSILON; - + output += QString(",%1/%2,%3,%4/%5,%6/%7,").arg(QString::number(mip1,'f',1), QString::number(mip2,'f',1), QString::number(mipDiff), QString(ImageProcessingEditor::EditorHelper::s_PixelFormatString[format1]), QString(ImageProcessingEditor::EditorHelper::s_PixelFormatString[format2]), @@ -305,8 +305,8 @@ public: static bool CompareDDSImage(const QString& imagePath1, const QString& imagePath2, QString& output) { IImageObjectPtr image1, alphaImage1, image2, alphaImage2; - - + + image1 = IImageObjectPtr(LoadImageFromDdsFile(imagePath1.toUtf8().constData())); if (image1 && image1->HasImageFlags(EIF_AttachedAlpha)) { @@ -339,7 +339,7 @@ public: return false; } bool isDifferent = false; - + isDifferent = GetComparisonResult(image1, image2, output); @@ -384,7 +384,7 @@ TEST_F(ImageProcessingTest, TestPixelFormats) ASSERT_TRUE(pixelFormats.FindPixelFormatByLegacyName("G16R16") == ePixelFormat_R16G16); ASSERT_TRUE(pixelFormats.FindPixelFormatByLegacyName("G16R16F") == ePixelFormat_R16G16F); - //some legacy format need to be mapping to new format. + //some legacy format need to be mapping to new format. ASSERT_TRUE(pixelFormats.FindPixelFormatByLegacyName("DXT1") == ePixelFormat_BC1); ASSERT_TRUE(pixelFormats.FindPixelFormatByLegacyName("DXT5") == ePixelFormat_BC3); @@ -559,7 +559,7 @@ TEST_F(ImageProcessingTest, PresetSettingEqualityOperatorOverload_WithDifferingD //this test is to test image data won't be lost between uncompressed formats (for low to high precision or same precision) TEST_F(ImageProcessingTest, TestConvertFormatUncompressed) -{ +{ //source image IImageObjectPtr srcImage(LoadImageFromFile(m_imagFileNameMap[Image_200X200_RGB8_Jpg])); ImageToProcess imageToProcess(srcImage); @@ -571,7 +571,7 @@ TEST_F(ImageProcessingTest, TestConvertFormatUncompressed) //we will convert to target format then convert back to RGBX8 so they can compare to easy other imageToProcess.ConvertFormatUncompressed(ePixelFormat_R8G8B8A8); dstImage1 = imageToProcess.Get(); - + imageToProcess.Set(srcImage); imageToProcess.ConvertFormatUncompressed(ePixelFormat_R16G16B16A16); ASSERT_FALSE(srcImage->CompareImage(imageToProcess.Get())); //this is different than source image @@ -654,9 +654,9 @@ TEST_F(ImageProcessingTest, DISABLED_TestConvertPVRTC) //load builder presets AZStd::string buiderSetting = m_engineRoot + "/Gems/ImageProcessing/Code/Source/ImageBuilderDefaultPresets.settings"; auto outcome = BuilderSettingManager::Instance()->LoadBuilderSettings(buiderSetting, m_context.get()); - + AZStd::vector outPaths; - AZStd::string inputFile = m_engineRoot + "/Gems/ImageProcessing/Code/Tests/TestAssets/normalSmoothness_ddna.tif"; + AZStd::string inputFile = m_engineRoot + "/Gems/ImageProcessing/Code/Tests/TestAssets/normalSmoothness_ddna.tif"; const AZStd::string outputFolder = m_engineRoot + "/Gems/ImageProcessing/Code/Tests/TestAssets/temp/"; ImageConvertProcess* process = CreateImageConvertProcess(inputFile, outputFolder, "ios", m_context.get()); if (process != nullptr) @@ -680,7 +680,7 @@ TEST_F(ImageProcessingTest, DISABLED_TestConvertPVRTC) } //ASSERT_TRUE(ConvertImageFile(inputFile, outputFolder, outPaths, "ios", m_context.get())); - + } TEST_F(ImageProcessingTest, DISABLED_TestConvertFormat) @@ -691,10 +691,10 @@ TEST_F(ImageProcessingTest, DISABLED_TestConvertFormat) //images to be tested static const int imageCount = 5; ImageFeature images[imageCount] = { - Image_20X16_RGBA8_Png, - Image_32X32_16bit_F_Tif, - Image_32X32_32bit_F_Tif , - Image_512x512_Normal_Tga , + Image_20X16_RGBA8_Png, + Image_32X32_16bit_F_Tif, + Image_32X32_32bit_F_Tif , + Image_512x512_Normal_Tga , Image_128x128_Transparent_Tga }; for (int imageIdx = 0; imageIdx < imageCount; imageIdx++) @@ -764,12 +764,12 @@ TEST_F(ImageProcessingTest, DISABLED_TestImageFilter) //create dst image with same size and mipmaps dstImage = IImageObjectPtr( - IImageObject::CreateImage(srcImage->GetWidth(0), srcImage->GetHeight(0), 3, + IImageObject::CreateImage(srcImage->GetWidth(0), srcImage->GetHeight(0), 3, ePixelFormat_R32G32B32A32F)); //for each filters const std::array, 7> allFilters = - { + { { {MipGenType::point, "point"}, {MipGenType::box, "box" }, @@ -777,7 +777,7 @@ TEST_F(ImageProcessingTest, DISABLED_TestImageFilter) { MipGenType::quadratic, "Quadratic" }, { MipGenType::blackmanHarris, "blackmanHarris" }, { MipGenType::kaiserSinc, "kaiserSinc" } - } + } }; for (std::pair filter : allFilters) @@ -799,7 +799,7 @@ TEST_F(ImageProcessingTest, TestColorSpaceConversion) imageToProcess.GammaToLinearRGBA32F(true); SaveImageToFile(imageToProcess.Get(), "GammaTolinear_DeGamma", 1); imageToProcess.LinearToGamma(); - SaveImageToFile(imageToProcess.Get(), "LinearToGamma_DeGamma", 1); + SaveImageToFile(imageToProcess.Get(), "LinearToGamma_DeGamma", 1); } //This function can be used to modify some value in the builder setting and keep all presets uuid then save back to setting file @@ -827,7 +827,7 @@ TEST_F(ImageProcessingTest, VerifyRestrictedPlatform) } TEST_F(ImageProcessingTest, DISABLED_TestCubemap) -{ +{ //load builder presets AZStd::string buiderSetting = m_engineRoot + "/Gems/ImageProcessing/Code/Source/ImageBuilderDefaultPresets.settings"; auto outcome = BuilderSettingManager::Instance()->LoadBuilderSettings(buiderSetting, m_context.get()); @@ -836,7 +836,7 @@ TEST_F(ImageProcessingTest, DISABLED_TestCubemap) AZStd::string inputFile; AZStd::vector outPaths; - inputFile = m_engineRoot + "/Engine/EngineAssets/Shading/defaultProbe_cm.tif"; + inputFile = m_engineRoot + "/Assets/Engine/EngineAssets/Shading/defaultProbe_cm.tif"; IImageObjectPtr srcImage(LoadImageFromFile(inputFile)); ImageToProcess imageToProcess(srcImage); @@ -877,7 +877,7 @@ TEST_F(ImageProcessingTest, DISABLED_TestCubemap) //test image conversion for builder TEST_F(ImageProcessingTest, DISABLED_TestBuilderImageConvertor) -{ +{ AZStd::string oldCacheFolder = "E:/Javelin_old_tex_cache/textures"; AZStd::string srcFolder = "E:/Javelin_NWLYDev/dev/Assets/Textures"; @@ -888,12 +888,12 @@ TEST_F(ImageProcessingTest, DISABLED_TestBuilderImageConvertor) const AZStd::string outputFolder = m_engineRoot + "/Gems/ImageProcessing/Code/Tests/TestAssets/temp/"; AZStd::string inputFile; AZStd::vector outPaths; - + inputFile = srcFolder + "/terrain/cry/detail/grass_with_stones_displ.tif"; inputFile = m_imagFileNameMap[Image_128x128_Transparent_Tga]; AZStd::string oldFile = oldCacheFolder + "/terrain/cry/detail/grass_with_stones_displ.dds"; ImageConvertProcess* process = CreateImageConvertProcess(inputFile, outputFolder, "pc", m_context.get()); - + if (process != nullptr) { //the process can be stopped if the job is cancelled or the worker is shutting down @@ -911,7 +911,7 @@ TEST_F(ImageProcessingTest, DISABLED_TestBuilderImageConvertor) SaveImageToFile(process->GetOutputAlphaImage(), "alpha", 10); process->GetAppendOutputFilePaths(outPaths); - + QString output; //CompareDDSImage(outPaths[0].c_str(), oldFile.c_str(), output); delete process; @@ -952,9 +952,9 @@ TEST_F(ImageProcessingTest, DISABLED_TestLoadDdsImage) IImageObjectPtr originImage, alphaImage; AZStd::string inputFolder = m_engineRoot + "/Cache/AutomatedTesting/pc/automatedtesting/engineassets/texturemsg/"; AZStd::string inputFile; - + inputFile = "E:/Javelin_NWLYDev/dev/Cache/Assets/pc/assets/textures/blend_maps/moss/jav_moss_ddn.dds"; - + IImageObjectPtr newImage = IImageObjectPtr(LoadImageFromDdsFile(inputFile)); if (newImage->HasImageFlags(EIF_AttachedAlpha)) { @@ -1026,7 +1026,7 @@ TEST_F(ImageProcessingTest, EditorTextureSettingTest) { AZStd::string buiderSetting = m_engineRoot + "/Gems/ImageProcessing/Code/Source/ImageBuilderDefaultPresets.settings"; auto outcome = BuilderSettingManager::Instance()->LoadBuilderSettings(buiderSetting, m_context.get()); - + auto TestFunc = [](const AZStd::string& textureFilepath, bool isCubemap) { ImageProcessingEditor::EditorTextureSetting setting(textureFilepath); @@ -1109,7 +1109,7 @@ TEST_F(ImageProcessingTest, EditorTextureSettingTest) ASSERT_TRUE(resolutions.size() >= reducedResolutions.size()); } }; - + // For cubemap texture AZStd::string textureFilePath = m_engineRoot + "/Gems/ImageProcessing/Code/Tests/TestAssets/noon_cm.tif"; TestFunc(textureFilePath, true); @@ -1231,7 +1231,7 @@ TEST_F(ImageProcessingSerializationTest, TextureSettingReflect_SerializingLegacy // Load legacy texture settings TextureSettings legacyTextureSetting; AZStd::string textureFilepath = m_engineRoot + "/Gems/ImageProcessing/Code/Tests/TestAssets/1024x1024_24bit.tif"; - auto legacyLoadOutcome = TextureSettings::LoadLegacyTextureSettingFromFile(textureFilepath, + auto legacyLoadOutcome = TextureSettings::LoadLegacyTextureSettingFromFile(textureFilepath, textureFilepath + TextureSettings::legacyExtensionName, legacyTextureSetting, m_context.get()); // Ensure we loaded and parsed the texture settings correctly. @@ -1258,7 +1258,7 @@ TEST_F(ImageProcessingSerializationTest, TextureSettingReflect_SerializingModern // Load legacy texture settings TextureSettings legacyTextureSetting; AZStd::string textureFilepath = m_engineRoot + "/Gems/ImageProcessing/Code/Tests/TestAssets/1024x1024_24bit.tif"; - auto legacyLoadOutcome = TextureSettings::LoadLegacyTextureSettingFromFile(textureFilepath, + auto legacyLoadOutcome = TextureSettings::LoadLegacyTextureSettingFromFile(textureFilepath, textureFilepath+TextureSettings::legacyExtensionName, legacyTextureSetting, m_context.get()); // Let's make modifications to the loaded texture setting @@ -1277,7 +1277,7 @@ TEST_F(ImageProcessingSerializationTest, TextureSettingReflect_SerializingModern // Load the modified settings back to memory, using AZ::Serialization TextureSettings modernTextureSetting; auto modernLoadOutcome = TextureSettings::LoadTextureSetting(modernMetafilePath, modernTextureSetting, m_context.get()); - + // Ensure what we just serialized-in is identical to what we serialized-out. // The comparison operator also compares overrides. EXPECT_TRUE(modernLoadOutcome.IsSuccess()); @@ -1291,7 +1291,7 @@ TEST_F(ImageProcessingSerializationTest, TextureSettingReflect_SerializingModern { AZStd::string filepath = "test.xml"; - // Fill-in structure with test data + // Fill-in structure with test data TextureSettings fakeTextureSettings; fakeTextureSettings.m_preset = AZ::Uuid::CreateRandom(); fakeTextureSettings.m_sizeReduceLevel = 0; @@ -1317,10 +1317,10 @@ TEST_F(ImageProcessingSerializationTest, TextureSettingReflect_SerializingModern } TEST_F(ImageProcessingSerializationTest, DISABLED_BuilderSettingsReflect_SerializingDataInAndOut_WritesAndParsesFileAccurately) -{ +{ AZStd::string buildSettingsFilepath = m_engineRoot + "/Gems/ImageProcessing/Code/Tests/TestAssets/tempPresets.settings"; AZStd::string rcFilePath = m_engineRoot + "/Code/Tools/RC/Config/rc/rc.ini"; - + auto loadOutcome = BuilderSettingManager::Instance()->LoadBuilderSettingsFromRC(rcFilePath); ASSERT_TRUE(loadOutcome.IsSuccess()); @@ -1332,7 +1332,7 @@ TEST_F(ImageProcessingSerializationTest, DISABLED_BuilderSettingsReflect_Seriali auto writeOutcome = BuilderSettingManager::Instance()->WriteBuilderSettings(buildSettingsFilepath, m_context.get()); ASSERT_TRUE(writeOutcome.IsSuccess()); - //Re-load Builder Settings + //Re-load Builder Settings auto reloadOutcome = BuilderSettingManager::Instance()->LoadBuilderSettings(buildSettingsFilepath, m_context.get()); ASSERT_TRUE(reloadOutcome.IsSuccess()); diff --git a/Gems/LmbrCentral/Code/Source/Ai/EditorNavigationAreaComponent.cpp b/Gems/LmbrCentral/Code/Source/Ai/EditorNavigationAreaComponent.cpp index 99101bb1c7..e80e2f6a9d 100644 --- a/Gems/LmbrCentral/Code/Source/Ai/EditorNavigationAreaComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Ai/EditorNavigationAreaComponent.cpp @@ -53,8 +53,8 @@ namespace LmbrCentral editContext->Class("Navigation Area", "Navigation Area configuration") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "AI") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/NavigationArea.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/NavigationArea.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/NavigationArea.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/NavigationArea.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-nav-area.html") ->Attribute(AZ::Edit::Attributes::AutoExpand, true) diff --git a/Gems/LmbrCentral/Code/Source/Ai/EditorNavigationSeedComponent.cpp b/Gems/LmbrCentral/Code/Source/Ai/EditorNavigationSeedComponent.cpp index 344315371d..6ac5d85d49 100644 --- a/Gems/LmbrCentral/Code/Source/Ai/EditorNavigationSeedComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Ai/EditorNavigationSeedComponent.cpp @@ -38,8 +38,8 @@ namespace LmbrCentral ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::Category, "AI") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/NavigationSeed.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/NavigationSeed.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/NavigationSeed.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/NavigationSeed.png") ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-nav-seed.html") ->DataElement(AZ::Edit::UIHandlers::ComboBox, &EditorNavigationSeedComponent::m_agentType, "Agent Type", "Describes the type of the Entity for navigation purposes.") diff --git a/Gems/LmbrCentral/Code/Source/Ai/NavigationComponent.cpp b/Gems/LmbrCentral/Code/Source/Ai/NavigationComponent.cpp index 9c52242052..64fa9fc7e7 100644 --- a/Gems/LmbrCentral/Code/Source/Ai/NavigationComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Ai/NavigationComponent.cpp @@ -127,8 +127,8 @@ namespace LmbrCentral "Navigation", "The Navigation component provides basic pathfinding and pathfollowing services to an entity") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "AI") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Navigation.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Navigation.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Navigation.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Navigation.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-navigation.html") diff --git a/Gems/LmbrCentral/Code/Source/Animation/EditorAttachmentComponent.cpp b/Gems/LmbrCentral/Code/Source/Animation/EditorAttachmentComponent.cpp index 337da51159..265f4ad864 100644 --- a/Gems/LmbrCentral/Code/Source/Animation/EditorAttachmentComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Animation/EditorAttachmentComponent.cpp @@ -42,8 +42,8 @@ namespace LmbrCentral "Attachment", "The Attachment component lets an entity attach to a bone on the skeleton of another entity") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Animation") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Attachment.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Attachment.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Attachment.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Attachment.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-attachment.html") diff --git a/Gems/LmbrCentral/Code/Source/Audio/AudioProxyComponent.cpp b/Gems/LmbrCentral/Code/Source/Audio/AudioProxyComponent.cpp index 5d5f970c43..33887d6d78 100644 --- a/Gems/LmbrCentral/Code/Source/Audio/AudioProxyComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Audio/AudioProxyComponent.cpp @@ -40,7 +40,7 @@ namespace LmbrCentral editContext->Class("Audio Proxy", "The Audio Proxy component is a required dependency when you add other audio components to an entity") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Audio") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/AudioProxy.svg") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/AudioProxy.svg") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AddableByUser, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-audio-proxy.html") diff --git a/Gems/LmbrCentral/Code/Source/Audio/EditorAudioAreaEnvironmentComponent.cpp b/Gems/LmbrCentral/Code/Source/Audio/EditorAudioAreaEnvironmentComponent.cpp index 15c48e08e3..9a014c0bdf 100644 --- a/Gems/LmbrCentral/Code/Source/Audio/EditorAudioAreaEnvironmentComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Audio/EditorAudioAreaEnvironmentComponent.cpp @@ -41,8 +41,8 @@ namespace LmbrCentral editContext->Class("Audio Area Environment", "The Audio Area Environment component enables entities that are moving around and throughout a shape to have environment effects applied to any sounds that they trigger") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Audio") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/AudioAreaEnvironment.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/AudioAreaEnvironment.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/AudioAreaEnvironment.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/AudioAreaEnvironment.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-audio-area-environment.html") diff --git a/Gems/LmbrCentral/Code/Source/Audio/EditorAudioEnvironmentComponent.cpp b/Gems/LmbrCentral/Code/Source/Audio/EditorAudioEnvironmentComponent.cpp index d098be9aa5..effad46cdc 100644 --- a/Gems/LmbrCentral/Code/Source/Audio/EditorAudioEnvironmentComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Audio/EditorAudioEnvironmentComponent.cpp @@ -34,8 +34,8 @@ namespace LmbrCentral editContext->Class("Audio Environment", "The Audio Environment component provides access to features of the Audio Translation Layer (ATL) environments to apply environmental effects such as reverb or echo") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Audio") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/AudioEnvironment.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/AudioEnvironment.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/AudioEnvironment.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/AudioEnvironment.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-audio-environment.html") diff --git a/Gems/LmbrCentral/Code/Source/Audio/EditorAudioListenerComponent.cpp b/Gems/LmbrCentral/Code/Source/Audio/EditorAudioListenerComponent.cpp index 3020f8feac..79f20295e1 100644 --- a/Gems/LmbrCentral/Code/Source/Audio/EditorAudioListenerComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Audio/EditorAudioListenerComponent.cpp @@ -37,8 +37,8 @@ namespace LmbrCentral editContext->Class("Audio Listener", "The Audio Listener component allows a virtual microphone to be placed in the environment") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Audio") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/AudioListener.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/AudioListener.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/AudioListener.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/AudioListener.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-audio-listener.html") diff --git a/Gems/LmbrCentral/Code/Source/Audio/EditorAudioMultiPositionComponent.cpp b/Gems/LmbrCentral/Code/Source/Audio/EditorAudioMultiPositionComponent.cpp index 057c2ae80b..bdf92e0d2c 100644 --- a/Gems/LmbrCentral/Code/Source/Audio/EditorAudioMultiPositionComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Audio/EditorAudioMultiPositionComponent.cpp @@ -39,8 +39,8 @@ namespace LmbrCentral editContext->Class("Multi-Position Audio", "The Multi-Position Audio component provides the ability to broadcast sounds through multiple positions") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Audio") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/AudioMultiPosition.png") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/AudioMultiPosition.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/AudioMultiPosition.png") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/AudioMultiPosition.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) // Followup: Need Help URL diff --git a/Gems/LmbrCentral/Code/Source/Audio/EditorAudioPreloadComponent.cpp b/Gems/LmbrCentral/Code/Source/Audio/EditorAudioPreloadComponent.cpp index b4d241cd05..4953bd6cc2 100644 --- a/Gems/LmbrCentral/Code/Source/Audio/EditorAudioPreloadComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Audio/EditorAudioPreloadComponent.cpp @@ -40,12 +40,12 @@ namespace LmbrCentral editContext->Class("Audio Preload", "The Audio Preload component is used to load and unload soundbanks contained in Audio Translation Layer (ATL) preloads") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Audio") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/AudioPreload.svg") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/AudioPreload.svg") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) // Icon todo: - //->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/AudioPreload.png") + //->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/AudioPreload.png") ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-audio-preload.html") diff --git a/Gems/LmbrCentral/Code/Source/Audio/EditorAudioRtpcComponent.cpp b/Gems/LmbrCentral/Code/Source/Audio/EditorAudioRtpcComponent.cpp index fed6c18489..c29c9c2089 100644 --- a/Gems/LmbrCentral/Code/Source/Audio/EditorAudioRtpcComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Audio/EditorAudioRtpcComponent.cpp @@ -35,8 +35,8 @@ namespace LmbrCentral editContext->Class("Audio Rtpc", "The Audio Rtpc component provides basic Real-Time Parameter Control (RTPC) functionality allowing you to tweak sounds in real time") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Audio") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/AudioRtpc.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/AudioRtpc.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/AudioRtpc.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/AudioRtpc.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-audio-rtpc.html") diff --git a/Gems/LmbrCentral/Code/Source/Audio/EditorAudioSwitchComponent.cpp b/Gems/LmbrCentral/Code/Source/Audio/EditorAudioSwitchComponent.cpp index 6be3eb9a4a..fd88e24865 100644 --- a/Gems/LmbrCentral/Code/Source/Audio/EditorAudioSwitchComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Audio/EditorAudioSwitchComponent.cpp @@ -35,8 +35,8 @@ namespace LmbrCentral editContext->Class("Audio Switch", "The Audio Switch component provides basic Audio Translation Layer (ATL) switch functionality to specify the state of an entity") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Audio") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/AudioSwitch.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/AudioSwitch.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/AudioSwitch.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/AudioSwitch.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-audio-switch.html") diff --git a/Gems/LmbrCentral/Code/Source/Audio/EditorAudioTriggerComponent.cpp b/Gems/LmbrCentral/Code/Source/Audio/EditorAudioTriggerComponent.cpp index c619e6e988..ec1f076420 100644 --- a/Gems/LmbrCentral/Code/Source/Audio/EditorAudioTriggerComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Audio/EditorAudioTriggerComponent.cpp @@ -44,8 +44,8 @@ namespace LmbrCentral editContext->Class("Audio Trigger", "The Audio Trigger component provides Audio Translation Layer (ATL) triggers for play/stop functionality and on-demand execution") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Audio") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/AudioTrigger.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/AudioTrigger.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/AudioTrigger.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/AudioTrigger.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-audio-trigger.html") diff --git a/Gems/LmbrCentral/Code/Source/Editor/EditorCommentComponent.cpp b/Gems/LmbrCentral/Code/Source/Editor/EditorCommentComponent.cpp index 068294ac56..dc4fb90b48 100644 --- a/Gems/LmbrCentral/Code/Source/Editor/EditorCommentComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Editor/EditorCommentComponent.cpp @@ -34,8 +34,8 @@ namespace LmbrCentral "Comment", "The Comment component allows you to add long-form text comments for component entities") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Editor") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Comment.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Comment.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Comment.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Comment.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZStd::vector({ AZ_CRC("Level", 0x9aeacc13), AZ_CRC("Game", 0x232b318c), AZ_CRC("Layer", 0xe4db211a) })) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-comment.html") diff --git a/Gems/LmbrCentral/Code/Source/Rendering/EditorAreaLightComponent.cpp b/Gems/LmbrCentral/Code/Source/Rendering/EditorAreaLightComponent.cpp index 41d8b58194..00c314400e 100644 --- a/Gems/LmbrCentral/Code/Source/Rendering/EditorAreaLightComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Rendering/EditorAreaLightComponent.cpp @@ -35,8 +35,8 @@ namespace LmbrCentral "Area Light", "The Area Light component allows an entity to light a defined area") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Rendering") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/AreaLight.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/AreaLight.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/AreaLight.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/AreaLight.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::Visibility, AZ::Edit::PropertyVisibility::ShowChildrenOnly) diff --git a/Gems/LmbrCentral/Code/Source/Rendering/EditorDecalComponent.cpp b/Gems/LmbrCentral/Code/Source/Rendering/EditorDecalComponent.cpp index 3d79c4d2ae..a1803afb23 100644 --- a/Gems/LmbrCentral/Code/Source/Rendering/EditorDecalComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Rendering/EditorDecalComponent.cpp @@ -48,9 +48,9 @@ namespace LmbrCentral "Decal", "The Decal component allows an entity to project a texture or material onto a mesh")-> ClassElement(AZ::Edit::ClassElements::EditorData, "")-> Attribute(AZ::Edit::Attributes::Category, "Rendering")-> - Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Decal.svg")-> + Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Decal.svg")-> Attribute(AZ::Edit::Attributes::PrimaryAssetType, AZ::AzTypeInfo::Uuid())-> - Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Decal.png")-> + Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Decal.png")-> Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c))-> Attribute(AZ::Edit::Attributes::AutoExpand, true)-> Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-decal.html")-> diff --git a/Gems/LmbrCentral/Code/Source/Rendering/EditorEnvProbeComponent.cpp b/Gems/LmbrCentral/Code/Source/Rendering/EditorEnvProbeComponent.cpp index 3ee3d7a9b7..98327471e5 100644 --- a/Gems/LmbrCentral/Code/Source/Rendering/EditorEnvProbeComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Rendering/EditorEnvProbeComponent.cpp @@ -36,8 +36,8 @@ namespace LmbrCentral "Environment Probe", "The Environment Probe component is used to achieve the right visual quality for a space and help determine proper reflections, ambient diffuse values, particle diffuse values, and shadow colors") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Rendering") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/EnvironmentProbe.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/EnvironmentProbe.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/EnvironmentProbe.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/EnvironmentProbe.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::Visibility, AZ::Edit::PropertyVisibility::ShowChildrenOnly) diff --git a/Gems/LmbrCentral/Code/Source/Rendering/EditorGeomCacheComponent.cpp b/Gems/LmbrCentral/Code/Source/Rendering/EditorGeomCacheComponent.cpp index 657f6c2b51..37d04b94ba 100644 --- a/Gems/LmbrCentral/Code/Source/Rendering/EditorGeomCacheComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Rendering/EditorGeomCacheComponent.cpp @@ -259,8 +259,8 @@ namespace LmbrCentral editContext->Class("Geometry Cache", "Controls playback of baked vertex animations.") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Rendering") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/GeometryCache.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/GeometryCache.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/GeometryCache.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/GeometryCache.png") ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "http://docs.aws.amazon.com/console/lumberyard/userguide/geom-cache-component") diff --git a/Gems/LmbrCentral/Code/Source/Rendering/EditorHighQualityShadowComponent.cpp b/Gems/LmbrCentral/Code/Source/Rendering/EditorHighQualityShadowComponent.cpp index f56318d965..30cea4619f 100644 --- a/Gems/LmbrCentral/Code/Source/Rendering/EditorHighQualityShadowComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Rendering/EditorHighQualityShadowComponent.cpp @@ -99,8 +99,8 @@ namespace LmbrCentral editContext->Class("High Quality Shadow", "Assigns a unique shadow map to the entity to provide higher quality shadows. Has performance and memory impact so use sparingly.") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Rendering") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Shadow.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Shadow.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Shadow.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Shadow.png") ->Attribute(AZ::Edit::Attributes::PreferNoViewportIcon, true) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) diff --git a/Gems/LmbrCentral/Code/Source/Rendering/EditorLensFlareComponent.cpp b/Gems/LmbrCentral/Code/Source/Rendering/EditorLensFlareComponent.cpp index fc0bfb83f0..20e6799df6 100644 --- a/Gems/LmbrCentral/Code/Source/Rendering/EditorLensFlareComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Rendering/EditorLensFlareComponent.cpp @@ -53,9 +53,9 @@ namespace LmbrCentral "Lens Flare", "The Lens Flare component allows the placement of a lens flare on an entity") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Rendering") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/LensFlare.svg") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/LensFlare.svg") ->Attribute(AZ::Edit::Attributes::PrimaryAssetType, AZ::AzTypeInfo::Uuid()) - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/LensFlare.png") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/LensFlare.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-lens-flare.html") diff --git a/Gems/LmbrCentral/Code/Source/Rendering/EditorLightComponent.cpp b/Gems/LmbrCentral/Code/Source/Rendering/EditorLightComponent.cpp index e9ac845a88..cbef043f17 100644 --- a/Gems/LmbrCentral/Code/Source/Rendering/EditorLightComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Rendering/EditorLightComponent.cpp @@ -1962,7 +1962,7 @@ namespace LmbrCentral m_materialManager = m_editor->Get3DEngine()->GetMaterialManager(); } - _smart_ptr material = m_materialManager->LoadMaterial("Editor/Objects/envcube", false, true); + _smart_ptr material = m_materialManager->LoadMaterial("Objects/envcube", false, true); QString matName = Path::GetFileName(textureName); if (material) { @@ -1981,7 +1981,7 @@ namespace LmbrCentral } } - m_statObj = m_editor->Get3DEngine()->LoadStatObjAutoRef("Editor/Objects/envcube.cgf", nullptr, nullptr, false); + m_statObj = m_editor->Get3DEngine()->LoadStatObjAutoRef("Objects/envcube.cgf", nullptr, nullptr, false); if (m_statObj) { // We need to clone the object in order for multiple Environment Probes to not stomp each other's preview materials. diff --git a/Gems/LmbrCentral/Code/Source/Rendering/EditorMeshComponent.cpp b/Gems/LmbrCentral/Code/Source/Rendering/EditorMeshComponent.cpp index 141b3b880c..64254ee8f0 100644 --- a/Gems/LmbrCentral/Code/Source/Rendering/EditorMeshComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Rendering/EditorMeshComponent.cpp @@ -54,9 +54,9 @@ namespace LmbrCentral editContext->Class("Mesh", "The Mesh component is the primary method of adding visual geometry to entities") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Rendering") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/StaticMesh.svg") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/StaticMesh.svg") ->Attribute(AZ::Edit::Attributes::PrimaryAssetType, AZ::AzTypeInfo::Uuid()) - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/StaticMesh.png") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/StaticMesh.png") ->Attribute(AZ::Edit::Attributes::DynamicIconOverride, &EditorMeshComponent::GetMeshViewportIconPath) ->Attribute(AZ::Edit::Attributes::PreferNoViewportIcon, true) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) @@ -457,8 +457,8 @@ namespace LmbrCentral } } - AZStd::string_view staticViewportIcon = "Editor/Icons/Components/Viewport/StaticMesh.png"; - AZStd::string_view dynamicViewportIcon = "Editor/Icons/Components/Viewport/DynamicMesh.png"; + AZStd::string_view staticViewportIcon = "Icons/Components/Viewport/StaticMesh.png"; + AZStd::string_view dynamicViewportIcon = "Icons/Components/Viewport/DynamicMesh.png"; AZStd::string EditorMeshComponent::GetMeshViewportIconPath() const { if (m_mesh.m_renderOptions.IsStatic()) diff --git a/Gems/LmbrCentral/Code/Source/Rendering/EditorPointLightComponent.cpp b/Gems/LmbrCentral/Code/Source/Rendering/EditorPointLightComponent.cpp index cf3baf59ae..ac2a4ec822 100644 --- a/Gems/LmbrCentral/Code/Source/Rendering/EditorPointLightComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Rendering/EditorPointLightComponent.cpp @@ -35,8 +35,8 @@ namespace LmbrCentral "Point Light", "The Point Light component allows an entity to create a point of light") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Rendering") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/PointLight.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/PointLight.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/PointLight.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/PointLight.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::Visibility, AZ::Edit::PropertyVisibility::ShowChildrenOnly) diff --git a/Gems/LmbrCentral/Code/Source/Rendering/EditorProjectorLightComponent.cpp b/Gems/LmbrCentral/Code/Source/Rendering/EditorProjectorLightComponent.cpp index 7ad85bb4be..3faab93d82 100644 --- a/Gems/LmbrCentral/Code/Source/Rendering/EditorProjectorLightComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Rendering/EditorProjectorLightComponent.cpp @@ -36,8 +36,8 @@ namespace LmbrCentral "Projector Light", "The Projector Light component allows an entity to project a light") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Rendering") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/ProjectorLight.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/ProjectorLight.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/ProjectorLight.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/ProjectorLight.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::Visibility, AZ::Edit::PropertyVisibility::ShowChildrenOnly) diff --git a/Gems/LmbrCentral/Code/Source/Rendering/LensFlareAssetHandler.cpp b/Gems/LmbrCentral/Code/Source/Rendering/LensFlareAssetHandler.cpp index 718eabead7..d1f44a0cff 100644 --- a/Gems/LmbrCentral/Code/Source/Rendering/LensFlareAssetHandler.cpp +++ b/Gems/LmbrCentral/Code/Source/Rendering/LensFlareAssetHandler.cpp @@ -113,7 +113,7 @@ namespace LmbrCentral const char* LensFlareAssetHandler::GetBrowserIcon() const { - return "Editor/Icons/Components/LensFlare.svg"; + return "Icons/Components/LensFlare.svg"; } AZ::Uuid LensFlareAssetHandler::GetComponentTypeId() const diff --git a/Gems/LmbrCentral/Code/Source/Rendering/MeshAssetHandler.cpp b/Gems/LmbrCentral/Code/Source/Rendering/MeshAssetHandler.cpp index 3cbad8e507..c478c22b43 100644 --- a/Gems/LmbrCentral/Code/Source/Rendering/MeshAssetHandler.cpp +++ b/Gems/LmbrCentral/Code/Source/Rendering/MeshAssetHandler.cpp @@ -249,7 +249,7 @@ namespace LmbrCentral const char* MeshAssetHandler::GetBrowserIcon() const { - return "Editor/Icons/Components/StaticMesh.svg"; + return "Icons/Components/StaticMesh.svg"; } AZ::Uuid MeshAssetHandler::GetComponentTypeId() const diff --git a/Gems/LmbrCentral/Code/Source/Scripting/EditorLookAtComponent.cpp b/Gems/LmbrCentral/Code/Source/Scripting/EditorLookAtComponent.cpp index ab22514cf8..107b94d119 100644 --- a/Gems/LmbrCentral/Code/Source/Scripting/EditorLookAtComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Scripting/EditorLookAtComponent.cpp @@ -36,8 +36,8 @@ namespace LmbrCentral ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Gameplay") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/LookAt.png") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/LookAt.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/LookAt.png") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/LookAt.png") ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) diff --git a/Gems/LmbrCentral/Code/Source/Scripting/EditorRandomTimedSpawnerComponent.cpp b/Gems/LmbrCentral/Code/Source/Scripting/EditorRandomTimedSpawnerComponent.cpp index 9781b58a33..42999bb2b3 100644 --- a/Gems/LmbrCentral/Code/Source/Scripting/EditorRandomTimedSpawnerComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Scripting/EditorRandomTimedSpawnerComponent.cpp @@ -60,8 +60,8 @@ namespace LmbrCentral editContext->Class("Random Timed Spawner", "") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Gameplay") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/RandomTimedSpawner.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/RandomTimedSpawner.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/RandomTimedSpawner.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/RandomTimedSpawner.png") ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "http://docs.aws.amazon.com/console/lumberyard/userguide/random-timed-spawner-component") diff --git a/Gems/LmbrCentral/Code/Source/Scripting/EditorSpawnerComponent.cpp b/Gems/LmbrCentral/Code/Source/Scripting/EditorSpawnerComponent.cpp index 02395fe2a1..24e32c324a 100644 --- a/Gems/LmbrCentral/Code/Source/Scripting/EditorSpawnerComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Scripting/EditorSpawnerComponent.cpp @@ -41,8 +41,8 @@ namespace LmbrCentral editContext->Class("Spawner", "The Spawner component allows an entity to spawn a design-time or run-time dynamic slice (*.dynamicslice) at the entity's location with an optional offset") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Gameplay") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Spawner.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Spawner.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Spawner.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Spawner.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-spawner.html") diff --git a/Gems/LmbrCentral/Code/Source/Scripting/EditorTagComponent.cpp b/Gems/LmbrCentral/Code/Source/Scripting/EditorTagComponent.cpp index 7ebdfb2e80..63bc235cff 100644 --- a/Gems/LmbrCentral/Code/Source/Scripting/EditorTagComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Scripting/EditorTagComponent.cpp @@ -39,8 +39,8 @@ namespace LmbrCentral ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::Category, "Gameplay") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Tag.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Tag.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Tag.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Tag.png") ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-tag.html") ->DataElement(AZ::Edit::UIHandlers::Default, &EditorTagComponent::m_tags, "Tags", "The tags that will be on this entity by default") diff --git a/Gems/LmbrCentral/Code/Source/Scripting/SimpleStateComponent.cpp b/Gems/LmbrCentral/Code/Source/Scripting/SimpleStateComponent.cpp index 855e97eeeb..95a7a8d71b 100644 --- a/Gems/LmbrCentral/Code/Source/Scripting/SimpleStateComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Scripting/SimpleStateComponent.cpp @@ -207,8 +207,8 @@ namespace LmbrCentral ->Attribute(AZ::Edit::Attributes::Category, "Gameplay") ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/SimpleState.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/SimpleState.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/SimpleState.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/SimpleState.png") ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-simple-state.html") ->DataElement(AZ::Edit::UIHandlers::ComboBox, &SimpleStateComponent::m_initialStateName, "Initial state", "The initial active state") ->Attribute(AZ::Edit::Attributes::ChangeNotify, AZ_CRC("RefreshAttributesAndValues", 0xcbc2147c)) diff --git a/Gems/LmbrCentral/Code/Source/Shape/EditorBoxShapeComponent.cpp b/Gems/LmbrCentral/Code/Source/Shape/EditorBoxShapeComponent.cpp index 381f2545ed..c0b49b8e55 100644 --- a/Gems/LmbrCentral/Code/Source/Shape/EditorBoxShapeComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Shape/EditorBoxShapeComponent.cpp @@ -48,8 +48,8 @@ namespace LmbrCentral "Box Shape", "The Box Shape component creates a box around the associated entity") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Shape") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Box_Shape.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Box_Shape.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Box_Shape.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Box_Shape.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-shapes.html") diff --git a/Gems/LmbrCentral/Code/Source/Shape/EditorCapsuleShapeComponent.cpp b/Gems/LmbrCentral/Code/Source/Shape/EditorCapsuleShapeComponent.cpp index 9254702321..93fdfae29f 100644 --- a/Gems/LmbrCentral/Code/Source/Shape/EditorCapsuleShapeComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Shape/EditorCapsuleShapeComponent.cpp @@ -42,8 +42,8 @@ namespace LmbrCentral editContext->Class("Capsule Shape", "The Capsule Shape component creates a capsule around the associated entity") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Shape") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Capsule_Shape.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Capsule_Shape.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Capsule_Shape.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Capsule_Shape.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-shapes.html") diff --git a/Gems/LmbrCentral/Code/Source/Shape/EditorCompoundShapeComponent.cpp b/Gems/LmbrCentral/Code/Source/Shape/EditorCompoundShapeComponent.cpp index ce32dd5e15..c61f54ab08 100644 --- a/Gems/LmbrCentral/Code/Source/Shape/EditorCompoundShapeComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Shape/EditorCompoundShapeComponent.cpp @@ -37,8 +37,8 @@ namespace LmbrCentral "Compound Shape", "The Compound Shape component allows two or more shapes to be combined to create more complex shapes") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Shape") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Compound_Shape.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Sphere.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Compound_Shape.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Sphere.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-shapes.html") diff --git a/Gems/LmbrCentral/Code/Source/Shape/EditorCylinderShapeComponent.cpp b/Gems/LmbrCentral/Code/Source/Shape/EditorCylinderShapeComponent.cpp index 87c51bb072..89de8410f5 100644 --- a/Gems/LmbrCentral/Code/Source/Shape/EditorCylinderShapeComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Shape/EditorCylinderShapeComponent.cpp @@ -42,8 +42,8 @@ namespace LmbrCentral "Cylinder Shape", "The Cylinder Shape component creates a cylinder around the associated entity") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Shape") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Cylinder_Shape.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Cylinder_Shape.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Cylinder_Shape.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Cylinder_Shape.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-shapes.html") diff --git a/Gems/LmbrCentral/Code/Source/Shape/EditorDiskShapeComponent.cpp b/Gems/LmbrCentral/Code/Source/Shape/EditorDiskShapeComponent.cpp index 606a26ec52..3d6181cde6 100644 --- a/Gems/LmbrCentral/Code/Source/Shape/EditorDiskShapeComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Shape/EditorDiskShapeComponent.cpp @@ -35,8 +35,8 @@ namespace LmbrCentral "Disk Shape", "The Disk Shape component creates a disk around the associated entity") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Shape") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Disk_Shape.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Disk_Shape.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Disk_Shape.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Disk_Shape.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-shapes.html") diff --git a/Gems/LmbrCentral/Code/Source/Shape/EditorPolygonPrismShapeComponent.cpp b/Gems/LmbrCentral/Code/Source/Shape/EditorPolygonPrismShapeComponent.cpp index 11fc04b1db..78b2d8a49b 100644 --- a/Gems/LmbrCentral/Code/Source/Shape/EditorPolygonPrismShapeComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Shape/EditorPolygonPrismShapeComponent.cpp @@ -165,8 +165,8 @@ namespace LmbrCentral "Polygon Prism Shape", "Provides polygon prism shape") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Shape") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/PolygonPrism.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/PolygonPrism.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/PolygonPrism.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/PolygonPrism.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "http://docs.aws.amazon.com/console/lumberyard/userguide/polygon-prism-component") ->Attribute(AZ::Edit::Attributes::AutoExpand, true) diff --git a/Gems/LmbrCentral/Code/Source/Shape/EditorQuadShapeComponent.cpp b/Gems/LmbrCentral/Code/Source/Shape/EditorQuadShapeComponent.cpp index e4732494bd..ef8743b2be 100644 --- a/Gems/LmbrCentral/Code/Source/Shape/EditorQuadShapeComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Shape/EditorQuadShapeComponent.cpp @@ -35,8 +35,8 @@ namespace LmbrCentral "Quad Shape", "The Quad Shape component creates a quad around the associated entity") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Shape") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Quad_Shape.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Component_Placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Quad_Shape.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Component_Placeholder.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-shapes.html") diff --git a/Gems/LmbrCentral/Code/Source/Shape/EditorSphereShapeComponent.cpp b/Gems/LmbrCentral/Code/Source/Shape/EditorSphereShapeComponent.cpp index e96d7976df..0d9885191d 100644 --- a/Gems/LmbrCentral/Code/Source/Shape/EditorSphereShapeComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Shape/EditorSphereShapeComponent.cpp @@ -46,8 +46,8 @@ namespace LmbrCentral "Sphere Shape", "The Sphere Shape component creates a sphere around the associated entity") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Shape") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Sphere_Shape.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Sphere_Shape.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Sphere_Shape.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Sphere_Shape.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-shapes.html") diff --git a/Gems/LmbrCentral/Code/Source/Shape/EditorSplineComponent.cpp b/Gems/LmbrCentral/Code/Source/Shape/EditorSplineComponent.cpp index 42c35b8cd9..e1951de498 100644 --- a/Gems/LmbrCentral/Code/Source/Shape/EditorSplineComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Shape/EditorSplineComponent.cpp @@ -63,8 +63,8 @@ namespace LmbrCentral "Spline", "Defines a sequence of points that can be interpolated.") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Shape") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Spline.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Spline.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Spline.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Spline.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "http://docs.aws.amazon.com/console/lumberyard/userguide/spline-component") ->Attribute(AZ::Edit::Attributes::AutoExpand, true) diff --git a/Gems/LmbrCentral/Code/Source/Shape/EditorTubeShapeComponent.cpp b/Gems/LmbrCentral/Code/Source/Shape/EditorTubeShapeComponent.cpp index 937238b1b2..c8c03e2811 100644 --- a/Gems/LmbrCentral/Code/Source/Shape/EditorTubeShapeComponent.cpp +++ b/Gems/LmbrCentral/Code/Source/Shape/EditorTubeShapeComponent.cpp @@ -43,8 +43,8 @@ namespace LmbrCentral "Tube Shape", "The Tube Shape component creates a spline around the associated entity") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Shape") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Tube_Shape.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Tube_Shape.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Tube_Shape.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Tube_Shape.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-shapes.html") diff --git a/Gems/LmbrCentral/Code/Source/Unhandled/Material/MaterialAssetTypeInfo.cpp b/Gems/LmbrCentral/Code/Source/Unhandled/Material/MaterialAssetTypeInfo.cpp index cd1268f3f8..907bd66cb8 100644 --- a/Gems/LmbrCentral/Code/Source/Unhandled/Material/MaterialAssetTypeInfo.cpp +++ b/Gems/LmbrCentral/Code/Source/Unhandled/Material/MaterialAssetTypeInfo.cpp @@ -51,7 +51,7 @@ namespace LmbrCentral const char* MaterialAssetTypeInfo::GetBrowserIcon() const { - return "Editor/Icons/Components/Decal.svg"; + return "Icons/Components/Decal.svg"; } AZ::Uuid MaterialAssetTypeInfo::GetComponentTypeId() const @@ -93,6 +93,6 @@ namespace LmbrCentral const char* DccMaterialAssetTypeInfo::GetBrowserIcon() const { - return "Editor/Icons/Components/Decal.svg"; + return "Icons/Components/Decal.svg"; } } // namespace LmbrCentral diff --git a/Gems/LmbrCentral/Code/Source/Unhandled/Texture/TextureAssetTypeInfo.cpp b/Gems/LmbrCentral/Code/Source/Unhandled/Texture/TextureAssetTypeInfo.cpp index 4091ace2f4..ef559c586d 100644 --- a/Gems/LmbrCentral/Code/Source/Unhandled/Texture/TextureAssetTypeInfo.cpp +++ b/Gems/LmbrCentral/Code/Source/Unhandled/Texture/TextureAssetTypeInfo.cpp @@ -48,6 +48,6 @@ namespace LmbrCentral } const char* TextureAssetTypeInfo::GetBrowserIcon() const { - return "Editor/Icons/PropertyEditor/image_icon.svg"; + return "Icons/PropertyEditor/image_icon.svg"; } } // namespace LmbrCentral diff --git a/Gems/LmbrCentral/Code/Source/Unhandled/UI/EntityIconAssetTypeInfo.cpp b/Gems/LmbrCentral/Code/Source/Unhandled/UI/EntityIconAssetTypeInfo.cpp index c4feb8facb..a2f32763ab 100644 --- a/Gems/LmbrCentral/Code/Source/Unhandled/UI/EntityIconAssetTypeInfo.cpp +++ b/Gems/LmbrCentral/Code/Source/Unhandled/UI/EntityIconAssetTypeInfo.cpp @@ -50,6 +50,6 @@ namespace LmbrCentral const char * EntityIconAssetTypeInfo::GetBrowserIcon() const { - return "Editor/Icons/PropertyEditor/image_icon.svg"; + return "Icons/PropertyEditor/image_icon.svg"; } } // namespace LmbrCentral diff --git a/Gems/LmbrCentral/Code/Source/Unhandled/UI/UICanvasAssetTypeInfo.cpp b/Gems/LmbrCentral/Code/Source/Unhandled/UI/UICanvasAssetTypeInfo.cpp index ddf8125c84..7ed525aaa2 100644 --- a/Gems/LmbrCentral/Code/Source/Unhandled/UI/UICanvasAssetTypeInfo.cpp +++ b/Gems/LmbrCentral/Code/Source/Unhandled/UI/UICanvasAssetTypeInfo.cpp @@ -49,6 +49,6 @@ namespace LmbrCentral const char * UICanvasAssetTypeInfo::GetBrowserIcon() const { - return "Editor/Icons/Components/UiCanvasAssetRef.svg"; + return "Icons/Components/UiCanvasAssetRef.svg"; } } // namespace LmbrCentral diff --git a/Gems/LyShine/Code/Editor/ComponentHelpers.cpp b/Gems/LyShine/Code/Editor/ComponentHelpers.cpp index 9a04864141..6c20b7784d 100644 --- a/Gems/LyShine/Code/Editor/ComponentHelpers.cpp +++ b/Gems/LyShine/Code/Editor/ComponentHelpers.cpp @@ -30,7 +30,7 @@ namespace Internal { AZStd::string GetComponentIconPath(const AZ::SerializeContext::ClassData& componentClassData) { - AZStd::string iconPath = "Editor/Icons/Components/Component_Placeholder.svg"; + AZStd::string iconPath = "Icons/Components/Component_Placeholder.svg"; auto editorElementData = componentClassData.m_editData->FindElementData(AZ::Edit::ClassElements::EditorData); if (auto iconAttribute = editorElementData->FindAttribute(AZ::Edit::Attributes::Icon)) diff --git a/Gems/LyShine/Code/Editor/PropertyHandlerDirectory.cpp b/Gems/LyShine/Code/Editor/PropertyHandlerDirectory.cpp index 3789b5a130..61f6e0f3dc 100644 --- a/Gems/LyShine/Code/Editor/PropertyHandlerDirectory.cpp +++ b/Gems/LyShine/Code/Editor/PropertyHandlerDirectory.cpp @@ -49,7 +49,7 @@ PropertyDirectoryCtrl::PropertyDirectoryCtrl(QWidget* parent) refreshButton->setFocusPolicy(Qt::StrongFocus); - refreshButton->setIcon(QIcon("Editor/Icons/PropertyEditor/reset_icon.png")); + refreshButton->setIcon(QIcon("Icons/PropertyEditor/reset_icon.png")); // The icon size needs to be smaller than the fixed size to make sure it visually aligns properly. QSize iconSize = QSize(fixedSize.width() - 2, fixedSize.height() - 2); diff --git a/Gems/LyShine/Code/Editor/PropertyHandlerSprite.cpp b/Gems/LyShine/Code/Editor/PropertyHandlerSprite.cpp index 700793a250..20721d4624 100644 --- a/Gems/LyShine/Code/Editor/PropertyHandlerSprite.cpp +++ b/Gems/LyShine/Code/Editor/PropertyHandlerSprite.cpp @@ -65,7 +65,7 @@ PropertySpriteCtrl::PropertySpriteCtrl(QWidget* parent) slicerButton->setFocusPolicy(Qt::StrongFocus); - slicerButton->setIcon(QIcon("Editor/Icons/PropertyEditor/open_in.png")); + slicerButton->setIcon(QIcon("Icons/PropertyEditor/open_in.png")); // The icon size needs to be smaller than the fixed size to make sure it visually aligns properly. QSize iconSize = QSize(fixedSize.width() - 2, fixedSize.height() - 2); diff --git a/Gems/LyShine/Code/Editor/ViewportAnchor.cpp b/Gems/LyShine/Code/Editor/ViewportAnchor.cpp index 7f9b841d7f..d61066f4d9 100644 --- a/Gems/LyShine/Code/Editor/ViewportAnchor.cpp +++ b/Gems/LyShine/Code/Editor/ViewportAnchor.cpp @@ -14,10 +14,10 @@ #include "EditorCommon.h" ViewportAnchor::ViewportAnchor() - : m_anchorWhole(new ViewportIcon("Editor/Plugins/UiCanvasEditor/CanvasIcons/Anchor_Whole.tif")) - , m_anchorLeft(new ViewportIcon("Editor/Plugins/UiCanvasEditor/CanvasIcons/Anchor_Left.tif")) - , m_anchorLeftTop(new ViewportIcon("Editor/Plugins/UiCanvasEditor/CanvasIcons/Anchor_TopLeft.tif")) - , m_dottedLine(new ViewportIcon("Editor/Plugins/UiCanvasEditor/CanvasIcons/DottedLine.tif")) + : m_anchorWhole(new ViewportIcon("Plugins/UiCanvasEditor/CanvasIcons/Anchor_Whole.tif")) + , m_anchorLeft(new ViewportIcon("Plugins/UiCanvasEditor/CanvasIcons/Anchor_Left.tif")) + , m_anchorLeftTop(new ViewportIcon("Plugins/UiCanvasEditor/CanvasIcons/Anchor_TopLeft.tif")) + , m_dottedLine(new ViewportIcon("Plugins/UiCanvasEditor/CanvasIcons/DottedLine.tif")) { } diff --git a/Gems/LyShine/Code/Editor/ViewportCanvasBackground.cpp b/Gems/LyShine/Code/Editor/ViewportCanvasBackground.cpp index 82a7847459..ccc35de305 100644 --- a/Gems/LyShine/Code/Editor/ViewportCanvasBackground.cpp +++ b/Gems/LyShine/Code/Editor/ViewportCanvasBackground.cpp @@ -15,7 +15,7 @@ #include "EditorCommon.h" ViewportCanvasBackground::ViewportCanvasBackground() - : m_canvasBackground(new ViewportIcon("Editor/Plugins/UiCanvasEditor/CanvasIcons/Canvas_Background.tif")) + : m_canvasBackground(new ViewportIcon("Plugins/UiCanvasEditor/CanvasIcons/Canvas_Background.tif")) { } diff --git a/Gems/LyShine/Code/Editor/ViewportHighlight.cpp b/Gems/LyShine/Code/Editor/ViewportHighlight.cpp index 254cef8a5a..c050d55049 100644 --- a/Gems/LyShine/Code/Editor/ViewportHighlight.cpp +++ b/Gems/LyShine/Code/Editor/ViewportHighlight.cpp @@ -14,8 +14,8 @@ #include "EditorCommon.h" ViewportHighlight::ViewportHighlight() - : m_highlightIconSelected(new ViewportIcon("Editor/Plugins/UiCanvasEditor/CanvasIcons/Border_Selected.tif")) - , m_highlightIconUnselected(new ViewportIcon("Editor/Plugins/UiCanvasEditor/CanvasIcons/Border_Unselected.tif")) + : m_highlightIconSelected(new ViewportIcon("Plugins/UiCanvasEditor/CanvasIcons/Border_Selected.tif")) + , m_highlightIconUnselected(new ViewportIcon("Plugins/UiCanvasEditor/CanvasIcons/Border_Unselected.tif")) { } diff --git a/Gems/LyShine/Code/Editor/ViewportInteraction.cpp b/Gems/LyShine/Code/Editor/ViewportInteraction.cpp index a5370ef7c3..60b7f4f35b 100644 --- a/Gems/LyShine/Code/Editor/ViewportInteraction.cpp +++ b/Gems/LyShine/Code/Editor/ViewportInteraction.cpp @@ -167,8 +167,8 @@ ViewportInteraction::ViewportInteraction(EditorWindow* editorWindow) : QObject() , m_editorWindow(editorWindow) , m_activeElementId() - , m_anchorWhole(new ViewportIcon("Editor/Plugins/UiCanvasEditor/CanvasIcons/Anchor_Whole.tif")) - , m_pivotIcon(new ViewportIcon("Editor/Plugins/UiCanvasEditor/CanvasIcons/Pivot.tif")) + , m_anchorWhole(new ViewportIcon("Plugins/UiCanvasEditor/CanvasIcons/Anchor_Whole.tif")) + , m_pivotIcon(new ViewportIcon("Plugins/UiCanvasEditor/CanvasIcons/Pivot.tif")) , m_interactionMode(PersistentGetInteractionMode()) , m_interactionType(InteractionType::NONE) , m_coordinateSystem(PersistentGetCoordinateSystem()) @@ -186,13 +186,13 @@ ViewportInteraction::ViewportInteraction(EditorWindow* editorWindow) , m_startAnchors(UiTransform2dInterface::Anchors()) , m_grabbedAnchors(ViewportHelpers::SelectedAnchors()) , m_grabbedGizmoParts(ViewportHelpers::GizmoParts()) - , m_lineTriangleX(new ViewportIcon("Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Triangle_X.tif")) - , m_lineTriangleY(new ViewportIcon("Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Triangle_Y.tif")) - , m_circle(new ViewportIcon("Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Circle.tif")) - , m_lineSquareX(new ViewportIcon("Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Square_X.tif")) - , m_lineSquareY(new ViewportIcon("Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Square_Y.tif")) - , m_centerSquare(new ViewportIcon("Editor/Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Center_Square.tif")) - , m_dottedLine(new ViewportIcon("Editor/Plugins/UiCanvasEditor/CanvasIcons/DottedLine.tif")) + , m_lineTriangleX(new ViewportIcon("Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Triangle_X.tif")) + , m_lineTriangleY(new ViewportIcon("Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Triangle_Y.tif")) + , m_circle(new ViewportIcon("Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Circle.tif")) + , m_lineSquareX(new ViewportIcon("Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Square_X.tif")) + , m_lineSquareY(new ViewportIcon("Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Line_Square_Y.tif")) + , m_centerSquare(new ViewportIcon("Plugins/UiCanvasEditor/CanvasIcons/Transform_Gizmo_Center_Square.tif")) + , m_dottedLine(new ViewportIcon("Plugins/UiCanvasEditor/CanvasIcons/DottedLine.tif")) , m_dragInteraction(nullptr) , m_expanderWatcher(new ViewportInteractionExpanderWatcher(this)) { diff --git a/Gems/LyShine/Code/Editor/ViewportPivot.cpp b/Gems/LyShine/Code/Editor/ViewportPivot.cpp index 0c3660159a..694cf91515 100644 --- a/Gems/LyShine/Code/Editor/ViewportPivot.cpp +++ b/Gems/LyShine/Code/Editor/ViewportPivot.cpp @@ -15,7 +15,7 @@ #include "ViewportPivot.h" ViewportPivot::ViewportPivot() - : m_pivot(new ViewportIcon("Editor/Plugins/UiCanvasEditor/CanvasIcons/Pivot.tif")) + : m_pivot(new ViewportIcon("Plugins/UiCanvasEditor/CanvasIcons/Pivot.tif")) { } diff --git a/Gems/LyShine/Code/Source/UiFlipbookAnimationComponent.cpp b/Gems/LyShine/Code/Source/UiFlipbookAnimationComponent.cpp index a6ad0347be..facffa0e54 100644 --- a/Gems/LyShine/Code/Source/UiFlipbookAnimationComponent.cpp +++ b/Gems/LyShine/Code/Source/UiFlipbookAnimationComponent.cpp @@ -165,8 +165,8 @@ void UiFlipbookAnimationComponent::Reflect(AZ::ReflectContext* context) editInfo->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "UI") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Flipbook.png") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Flipbook.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Flipbook.png") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Flipbook.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("UI")) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ; diff --git a/Gems/LyShine/Code/Source/UiSpawnerComponent.cpp b/Gems/LyShine/Code/Source/UiSpawnerComponent.cpp index 6c2833da4f..24d080312d 100644 --- a/Gems/LyShine/Code/Source/UiSpawnerComponent.cpp +++ b/Gems/LyShine/Code/Source/UiSpawnerComponent.cpp @@ -82,8 +82,8 @@ void UiSpawnerComponent::Reflect(AZ::ReflectContext* context) editInfo->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "UI") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Spawner.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Spawner.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Spawner.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Spawner.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("UI", 0x27ff46b0)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true); diff --git a/Gems/LyShine/Code/Source/World/UiCanvasAssetRefComponent.cpp b/Gems/LyShine/Code/Source/World/UiCanvasAssetRefComponent.cpp index 2f3ddb3097..9d436f8a57 100644 --- a/Gems/LyShine/Code/Source/World/UiCanvasAssetRefComponent.cpp +++ b/Gems/LyShine/Code/Source/World/UiCanvasAssetRefComponent.cpp @@ -170,8 +170,8 @@ void UiCanvasAssetRefComponent::Reflect(AZ::ReflectContext* context) editInfo->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "UI") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/UiCanvasAssetRef.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/UiCanvasRef.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/UiCanvasAssetRef.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/UiCanvasRef.png") ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-ui-canvas-asset-ref.html") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)); diff --git a/Gems/LyShine/Code/Source/World/UiCanvasOnMeshComponent.cpp b/Gems/LyShine/Code/Source/World/UiCanvasOnMeshComponent.cpp index 6247f7413e..0888666aad 100644 --- a/Gems/LyShine/Code/Source/World/UiCanvasOnMeshComponent.cpp +++ b/Gems/LyShine/Code/Source/World/UiCanvasOnMeshComponent.cpp @@ -347,8 +347,8 @@ void UiCanvasOnMeshComponent::Reflect(AZ::ReflectContext* context) editInfo->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "UI") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/UiCanvasOnMesh.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/UiCanvasOnMesh.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/UiCanvasOnMesh.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/UiCanvasOnMesh.png") ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-ui-canvas-on-mesh.html") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)); diff --git a/Gems/LyShine/Code/Source/World/UiCanvasProxyRefComponent.cpp b/Gems/LyShine/Code/Source/World/UiCanvasProxyRefComponent.cpp index 78e8e16dfc..9d88b2b066 100644 --- a/Gems/LyShine/Code/Source/World/UiCanvasProxyRefComponent.cpp +++ b/Gems/LyShine/Code/Source/World/UiCanvasProxyRefComponent.cpp @@ -75,8 +75,8 @@ void UiCanvasProxyRefComponent::Reflect(AZ::ReflectContext* context) editInfo->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "UI") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/UiCanvasProxyRef.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/UiCanvasRef.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/UiCanvasProxyRef.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/UiCanvasRef.png") ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-ui-canvas-proxy-ref.html") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)); diff --git a/Gems/Maestro/Code/Source/Components/EditorSequenceAgentComponent.cpp b/Gems/Maestro/Code/Source/Components/EditorSequenceAgentComponent.cpp index 261b6c0ec3..2f147a7ddf 100644 --- a/Gems/Maestro/Code/Source/Components/EditorSequenceAgentComponent.cpp +++ b/Gems/Maestro/Code/Source/Components/EditorSequenceAgentComponent.cpp @@ -47,8 +47,8 @@ namespace Maestro "SequenceAgent", "Maps Director Component Animations to Behavior Properties on this Entity") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Cinematics") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/SequenceAgent.png") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/SequenceAgent.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/SequenceAgent.png") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/SequenceAgent.png") ->Attribute(AZ::Edit::Attributes::AddableByUser, false) // SequenceAgents are only added by TrackView ->Attribute(AZ::Edit::Attributes::AutoExpand, true); } diff --git a/Gems/Maestro/Code/Source/Components/EditorSequenceComponent.cpp b/Gems/Maestro/Code/Source/Components/EditorSequenceComponent.cpp index 43bfc9c24e..9ac50e003f 100644 --- a/Gems/Maestro/Code/Source/Components/EditorSequenceComponent.cpp +++ b/Gems/Maestro/Code/Source/Components/EditorSequenceComponent.cpp @@ -110,8 +110,8 @@ namespace Maestro "Sequence", "Plays Cinematic Animations") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Cinematics") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Sequence.png") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/Sequence.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Sequence.png") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/Sequence.png") //->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game")) ->Attribute(AZ::Edit::Attributes::AddableByUser, false) // SequenceAgents are only added by TrackView ->Attribute(AZ::Edit::Attributes::AutoExpand, true) diff --git a/Gems/Multiplayer/Code/Source/Components/NetBindComponent.cpp b/Gems/Multiplayer/Code/Source/Components/NetBindComponent.cpp index d3303cb121..bb1dac5a4e 100644 --- a/Gems/Multiplayer/Code/Source/Components/NetBindComponent.cpp +++ b/Gems/Multiplayer/Code/Source/Components/NetBindComponent.cpp @@ -41,8 +41,8 @@ namespace Multiplayer "Network Binding", "The Network Binding component marks an entity as able to be replicated across the network") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Multiplayer") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/NetBind.png") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/NetBind.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/NetBind.png") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/NetBind.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC_CE("Game")); } } diff --git a/Gems/NvCloth/Code/Source/Components/EditorClothComponent.cpp b/Gems/NvCloth/Code/Source/Components/EditorClothComponent.cpp index 8d9731c9e6..4705a9f2c2 100644 --- a/Gems/NvCloth/Code/Source/Components/EditorClothComponent.cpp +++ b/Gems/NvCloth/Code/Source/Components/EditorClothComponent.cpp @@ -49,8 +49,8 @@ namespace NvCloth "Cloth", "The mesh node behaves like a piece of cloth.") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "PhysX") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/Cloth.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Cloth.svg") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/Cloth.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Cloth.svg") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/lumberyard/latest/userguide/component-cloth.html") ->Attribute(AZ::Edit::Attributes::AutoExpand, true) diff --git a/Gems/PhysX/Code/Editor/ColliderComponentMode.cpp b/Gems/PhysX/Code/Editor/ColliderComponentMode.cpp index cab4612402..9aece90d90 100644 --- a/Gems/PhysX/Code/Editor/ColliderComponentMode.cpp +++ b/Gems/PhysX/Code/Editor/ColliderComponentMode.cpp @@ -223,7 +223,7 @@ namespace PhysX AzToolsFramework::ViewportUi::ViewportUiRequestBus::EventResult( buttonId, AzToolsFramework::ViewportUi::DefaultViewportId, &AzToolsFramework::ViewportUi::ViewportUiRequestBus::Events::CreateClusterButton, clusterId, - AZStd::string::format("Editor/Icons/PhysX/%s.svg", iconName)); + AZStd::string::format("Icons/PhysX/%s.svg", iconName)); return buttonId; } diff --git a/Gems/PhysX/Code/Source/EditorColliderComponent.cpp b/Gems/PhysX/Code/Source/EditorColliderComponent.cpp index eb4235766c..e1ea3addec 100644 --- a/Gems/PhysX/Code/Source/EditorColliderComponent.cpp +++ b/Gems/PhysX/Code/Source/EditorColliderComponent.cpp @@ -189,8 +189,8 @@ namespace PhysX "PhysX Collider", "PhysX shape collider") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "PhysX") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/PhysXCollider.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/PhysXCollider.svg") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/PhysXCollider.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/PhysXCollider.svg") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "http://docs.aws.amazon.com/console/lumberyard/component/physx/collider") ->Attribute(AZ::Edit::Attributes::AutoExpand, true) diff --git a/Gems/PhysX/Code/Source/EditorForceRegionComponent.cpp b/Gems/PhysX/Code/Source/EditorForceRegionComponent.cpp index b4b730538d..770200cda0 100644 --- a/Gems/PhysX/Code/Source/EditorForceRegionComponent.cpp +++ b/Gems/PhysX/Code/Source/EditorForceRegionComponent.cpp @@ -173,8 +173,8 @@ namespace PhysX "PhysX Force Region", "The force region component is used to apply a physical force on objects within the region") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "PhysX") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/ForceRegion.png") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/Viewport/ForceRegion.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/ForceRegion.png") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/ForceRegion.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/console/lumberyard/physx/force-region") ->Attribute(AZ::Edit::Attributes::AutoExpand, true) diff --git a/Gems/PhysX/Code/Source/EditorRigidBodyComponent.cpp b/Gems/PhysX/Code/Source/EditorRigidBodyComponent.cpp index 5445f7fc69..fb663dd9a4 100644 --- a/Gems/PhysX/Code/Source/EditorRigidBodyComponent.cpp +++ b/Gems/PhysX/Code/Source/EditorRigidBodyComponent.cpp @@ -307,8 +307,8 @@ namespace PhysX "PhysX Rigid Body", "The entity behaves as a movable rigid object in PhysX.") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "PhysX") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/PhysXRigidBody.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/PhysXRigidBody.svg") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/PhysXRigidBody.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/PhysXRigidBody.svg") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.aws.amazon.com/console/lumberyard/components/physx/rigid-body") diff --git a/Gems/PhysX/Code/Source/EditorShapeColliderComponent.cpp b/Gems/PhysX/Code/Source/EditorShapeColliderComponent.cpp index c77e1ad1b2..aa1c945fa3 100644 --- a/Gems/PhysX/Code/Source/EditorShapeColliderComponent.cpp +++ b/Gems/PhysX/Code/Source/EditorShapeColliderComponent.cpp @@ -83,8 +83,8 @@ namespace PhysX "PhysX Shape Collider", "Creates geometry in the PhysX simulation based on an attached shape component") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "PhysX") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/PhysXCollider.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/PhysXCollider.svg") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/PhysXCollider.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/PhysXCollider.svg") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->DataElement(AZ::Edit::UIHandlers::Default, &EditorShapeColliderComponent::m_colliderConfig, diff --git a/Gems/PhysX/Code/Source/PhysXCharacters/Components/EditorCharacterControllerComponent.cpp b/Gems/PhysX/Code/Source/PhysXCharacters/Components/EditorCharacterControllerComponent.cpp index 9a85274910..e1c730b203 100644 --- a/Gems/PhysX/Code/Source/PhysXCharacters/Components/EditorCharacterControllerComponent.cpp +++ b/Gems/PhysX/Code/Source/PhysXCharacters/Components/EditorCharacterControllerComponent.cpp @@ -101,8 +101,8 @@ namespace PhysX "PhysX Character Controller", "PhysX Character Controller") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "PhysX") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/PhysXCharacter.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/PhysXCharacter.svg") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/PhysXCharacter.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/PhysXCharacter.svg") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->DataElement(AZ::Edit::UIHandlers::Default, &EditorCharacterControllerComponent::m_configuration, "Configuration", "Configuration for the character controller") diff --git a/Gems/PhysX/Code/Source/PhysXCharacters/Components/EditorCharacterGameplayComponent.cpp b/Gems/PhysX/Code/Source/PhysXCharacters/Components/EditorCharacterGameplayComponent.cpp index c9dcbe4757..03ff0e0aea 100644 --- a/Gems/PhysX/Code/Source/PhysXCharacters/Components/EditorCharacterGameplayComponent.cpp +++ b/Gems/PhysX/Code/Source/PhysXCharacters/Components/EditorCharacterGameplayComponent.cpp @@ -49,8 +49,8 @@ namespace PhysX "PhysX Character Gameplay", "PhysX Character Gameplay") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "PhysX") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/PhysXCharacter.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/PhysXCharacter.svg") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/PhysXCharacter.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/PhysXCharacter.svg") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->DataElement(AZ::Edit::UIHandlers::Default, &EditorCharacterGameplayComponent::m_gameplayConfig, "Gameplay Configuration", "Gameplay Configuration") diff --git a/Gems/PhysX/Code/Source/PhysXCharacters/Components/RagdollComponent.cpp b/Gems/PhysX/Code/Source/PhysXCharacters/Components/RagdollComponent.cpp index d120e3d6b0..85060445fc 100644 --- a/Gems/PhysX/Code/Source/PhysXCharacters/Components/RagdollComponent.cpp +++ b/Gems/PhysX/Code/Source/PhysXCharacters/Components/RagdollComponent.cpp @@ -91,8 +91,8 @@ namespace PhysX "PhysX Ragdoll", "Provides simulation of characters in PhysX.") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "PhysX") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/PhysXRagdoll.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/Components/PhysXRagdoll.svg") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/PhysXRagdoll.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/PhysXRagdoll.svg") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->DataElement(AZ::Edit::UIHandlers::Default, &RagdollComponent::m_positionIterations, "Position Iteration Count", diff --git a/Gems/PhysX/Code/Source/Pipeline/HeightFieldAssetHandler.cpp b/Gems/PhysX/Code/Source/Pipeline/HeightFieldAssetHandler.cpp index e7c8d87998..173c35140d 100644 --- a/Gems/PhysX/Code/Source/Pipeline/HeightFieldAssetHandler.cpp +++ b/Gems/PhysX/Code/Source/Pipeline/HeightFieldAssetHandler.cpp @@ -81,7 +81,7 @@ namespace PhysX const char* HeightFieldAssetHandler::GetBrowserIcon() const { - return "Editor/Icons/Components/ColliderMesh.svg"; + return "Icons/Components/ColliderMesh.svg"; } const char* HeightFieldAssetHandler::GetGroup() const diff --git a/Gems/PhysX/Code/Source/Pipeline/MeshAssetHandler.cpp b/Gems/PhysX/Code/Source/Pipeline/MeshAssetHandler.cpp index 3315e56935..3987936b8c 100644 --- a/Gems/PhysX/Code/Source/Pipeline/MeshAssetHandler.cpp +++ b/Gems/PhysX/Code/Source/Pipeline/MeshAssetHandler.cpp @@ -77,7 +77,7 @@ namespace PhysX const char* MeshAssetHandler::GetBrowserIcon() const { - return "Editor/Icons/Components/ColliderMesh.svg"; + return "Icons/Components/ColliderMesh.svg"; } const char* MeshAssetHandler::GetGroup() const diff --git a/Gems/ScriptCanvas/Code/Editor/Components/EditorScriptCanvasComponent.cpp b/Gems/ScriptCanvas/Code/Editor/Components/EditorScriptCanvasComponent.cpp index ba82f58889..8a06848709 100644 --- a/Gems/ScriptCanvas/Code/Editor/Components/EditorScriptCanvasComponent.cpp +++ b/Gems/ScriptCanvas/Code/Editor/Components/EditorScriptCanvasComponent.cpp @@ -99,8 +99,8 @@ namespace ScriptCanvasEditor editContext->Class("Script Canvas", "The Script Canvas component allows you to add a Script Canvas asset to a component, and have it execute on the specified entity.") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Scripting") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/ScriptCanvas.svg") - ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Editor/Icons/ScriptCanvas/Viewport/ScriptCanvas.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/ScriptCanvas.svg") + ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/ScriptCanvas/Viewport/ScriptCanvas.png") ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::PrimaryAssetType, ScriptCanvasAssetHandler::GetAssetTypeStatic()) ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) diff --git a/Gems/ScriptCanvas/Code/Editor/Components/IconComponent.cpp b/Gems/ScriptCanvas/Code/Editor/Components/IconComponent.cpp index f135437134..12df5e38a9 100644 --- a/Gems/ScriptCanvas/Code/Editor/Components/IconComponent.cpp +++ b/Gems/ScriptCanvas/Code/Editor/Components/IconComponent.cpp @@ -25,7 +25,7 @@ namespace ScriptCanvasEditor { AZStd::string IconComponent::LookupClassIcon(const AZ::Uuid& classId) { - AZStd::string iconPath = "Editor/Icons/ScriptCanvas/Placeholder.png"; + AZStd::string iconPath = "Icons/ScriptCanvas/Placeholder.png"; AZ::SerializeContext* serializeContext = nullptr; AZ::ComponentApplicationBus::BroadcastResult(serializeContext, &AZ::ComponentApplicationRequests::GetSerializeContext); diff --git a/Gems/ScriptCanvas/Code/Editor/Include/ScriptCanvas/Assets/ScriptCanvasAsset.h b/Gems/ScriptCanvas/Code/Editor/Include/ScriptCanvas/Assets/ScriptCanvasAsset.h index ded24e3250..fa09601042 100644 --- a/Gems/ScriptCanvas/Code/Editor/Include/ScriptCanvas/Assets/ScriptCanvasAsset.h +++ b/Gems/ScriptCanvas/Code/Editor/Include/ScriptCanvas/Assets/ScriptCanvasAsset.h @@ -52,7 +52,7 @@ namespace ScriptCanvasEditor "Script Canvas Files (*.scriptcanvas)", "Script Canvas", "Script Canvas", - "Editor/Icons/ScriptCanvas/Viewport/ScriptCanvas.png", + "Icons/ScriptCanvas/Viewport/ScriptCanvas.png", AZ::Color(0.321f, 0.302f, 0.164f, 1.0f), true ) diff --git a/Gems/ScriptCanvas/Code/Editor/Model/LibraryDataModel.cpp b/Gems/ScriptCanvas/Code/Editor/Model/LibraryDataModel.cpp index 4b855dcf44..122ae19b51 100644 --- a/Gems/ScriptCanvas/Code/Editor/Model/LibraryDataModel.cpp +++ b/Gems/ScriptCanvas/Code/Editor/Model/LibraryDataModel.cpp @@ -100,7 +100,7 @@ namespace ScriptCanvasEditor } else { - QString defaultIcon = QStringLiteral("Editor/Icons/ScriptCanvas/Libraries/All.png"); + QString defaultIcon = QStringLiteral("Icons/ScriptCanvas/Libraries/All.png"); return QVariant(QIcon(defaultIcon)); } diff --git a/Gems/ScriptCanvas/Code/Editor/Model/UnitTestBrowserFilterModel.cpp b/Gems/ScriptCanvas/Code/Editor/Model/UnitTestBrowserFilterModel.cpp index a8c21fa4fa..665c81fa57 100644 --- a/Gems/ScriptCanvas/Code/Editor/Model/UnitTestBrowserFilterModel.cpp +++ b/Gems/ScriptCanvas/Code/Editor/Model/UnitTestBrowserFilterModel.cpp @@ -23,7 +23,7 @@ namespace ScriptCanvasEditor UnitTestBrowserFilterModel::UnitTestBrowserFilterModel(QObject* parent) : AssetBrowserFilterModel(parent) - , m_iconRunning("Editor/Icons/AssetBrowser/in_progress.gif") + , m_iconRunning("Icons/AssetBrowser/in_progress.gif") , m_iconFailedToCompile (":/ScriptCanvasEditorResources/Resources/warning_symbol.png") , m_iconFailedToCompileOld (":/ScriptCanvasEditorResources/Resources/warning_symbol_grey.png") , m_iconPassed (":/ScriptCanvasEditorResources/Resources/valid_icon.png") diff --git a/Gems/ScriptCanvas/Code/Editor/Nodes/EditorLibrary.cpp b/Gems/ScriptCanvas/Code/Editor/Nodes/EditorLibrary.cpp index 08ebd6ec2b..7d6f53806f 100644 --- a/Gems/ScriptCanvas/Code/Editor/Nodes/EditorLibrary.cpp +++ b/Gems/ScriptCanvas/Code/Editor/Nodes/EditorLibrary.cpp @@ -35,7 +35,7 @@ namespace ScriptCanvasEditor { editContext->Class("Editor", "") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/Components/All.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/All.png") ; } } diff --git a/Gems/ScriptCanvas/Code/Editor/Nodes/ScriptCanvasAssetNode.cpp b/Gems/ScriptCanvas/Code/Editor/Nodes/ScriptCanvasAssetNode.cpp index 48ca0085f0..6cae3ecc1a 100644 --- a/Gems/ScriptCanvas/Code/Editor/Nodes/ScriptCanvasAssetNode.cpp +++ b/Gems/ScriptCanvas/Code/Editor/Nodes/ScriptCanvasAssetNode.cpp @@ -50,7 +50,7 @@ namespace ScriptCanvasEditor { editContext->Class("ScriptCanvas Asset", "Script Canvas Asset Node which contains a reference to another ScriptCanvas graph") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Placeholder.png") ->Attribute(AZ::Script::Attributes::ExcludeFrom, AZ::Script::Attributes::ExcludeFlags::List) ; } diff --git a/Gems/ScriptCanvas/Code/Editor/SystemComponent.cpp b/Gems/ScriptCanvas/Code/Editor/SystemComponent.cpp index 7052ab488f..7d9cb176a3 100644 --- a/Gems/ScriptCanvas/Code/Editor/SystemComponent.cpp +++ b/Gems/ScriptCanvas/Code/Editor/SystemComponent.cpp @@ -320,7 +320,7 @@ namespace ScriptCanvasEditor { if (AZStd::wildcard_match("*.scriptcanvas", fullSourceFileName)) { - return AzToolsFramework::AssetBrowser::SourceFileDetails("Editor/Icons/AssetBrowser/ScriptCanvas_16.png"); + return AzToolsFramework::AssetBrowser::SourceFileDetails("Icons/AssetBrowser/ScriptCanvas_16.png"); } // not one of our types. diff --git a/Gems/ScriptCanvas/Code/Editor/View/Windows/MainWindow.cpp b/Gems/ScriptCanvas/Code/Editor/View/Windows/MainWindow.cpp index ee4d6d9371..3bfa83b9e7 100644 --- a/Gems/ScriptCanvas/Code/Editor/View/Windows/MainWindow.cpp +++ b/Gems/ScriptCanvas/Code/Editor/View/Windows/MainWindow.cpp @@ -448,7 +448,7 @@ namespace ScriptCanvasEditor GraphCanvas::AssetEditorAutomationRequestBus::Handler::BusConnect(ScriptCanvasEditor::AssetEditorId); AZStd::array unresolvedPath; - AZ::IO::FileIOBase::GetInstance()->ResolvePath("@assets@/editor/translation/scriptcanvas_en_us.qm", unresolvedPath.data(), unresolvedPath.size()); + AZ::IO::FileIOBase::GetInstance()->ResolvePath("@assets@/translation/scriptcanvas_en_us.qm", unresolvedPath.data(), unresolvedPath.size()); QString translationFilePath(unresolvedPath.data()); if ( m_translator.load(QLocale::Language::English, translationFilePath) ) diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Asset/Functions/RuntimeFunctionAssetHandler.cpp b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Asset/Functions/RuntimeFunctionAssetHandler.cpp index 516fa838c8..10bcadc35a 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Asset/Functions/RuntimeFunctionAssetHandler.cpp +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Asset/Functions/RuntimeFunctionAssetHandler.cpp @@ -59,7 +59,7 @@ namespace ScriptCanvas const char* SubgraphInterfaceAssetHandler::GetBrowserIcon() const { - return "Editor/Icons/ScriptCanvas/Viewport/ScriptCanvas_Function.png"; + return "Icons/ScriptCanvas/Viewport/ScriptCanvas_Function.png"; } AZ::Uuid SubgraphInterfaceAssetHandler::GetComponentTypeId() const diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Asset/Functions/ScriptCanvasFunctionAsset.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Asset/Functions/ScriptCanvasFunctionAsset.h index 48a0b7374b..5fd9f41023 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Asset/Functions/ScriptCanvasFunctionAsset.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Asset/Functions/ScriptCanvasFunctionAsset.h @@ -46,7 +46,7 @@ namespace ScriptCanvasEditor "Script Canvas Function Files (*.scriptcanvas_fn)", "Script Canvas Function", "Script Canvas Function", - "Editor/Icons/ScriptCanvas/Viewport/ScriptCanvas_Function.png", + "Icons/ScriptCanvas/Viewport/ScriptCanvas_Function.png", AZ::Color(0.192f, 0.149f, 0.392f, 1.0f), true ) diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Asset/RuntimeAsset.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Asset/RuntimeAsset.h index 0bc0daecde..de799c329f 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Asset/RuntimeAsset.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Asset/RuntimeAsset.h @@ -45,7 +45,7 @@ namespace ScriptCanvas "Script Canvas Files (*.scriptcanvas_compiled)", "Script Canvas Runtime", "Script Canvas Runtime", - "Editor/Icons/ScriptCanvas/Viewport/ScriptCanvas.png", + "Icons/ScriptCanvas/Viewport/ScriptCanvas.png", AZ::Color(1.0f,0.0f,0.0f,1.0f), false ) @@ -169,7 +169,7 @@ namespace ScriptCanvas "Script Canvas Compiled Function Interfaces (*.scriptcanvas_fn_compiled)", "Script Canvas Function Interface", "Script Canvas Function Interface", - "Editor/Icons/ScriptCanvas/Viewport/ScriptCanvas_Function.png", + "Icons/ScriptCanvas/Viewport/ScriptCanvas_Function.png", AZ::Color(1.0f,0.0f,0.0f,1.0f), false ) diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Asset/RuntimeAssetHandler.cpp b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Asset/RuntimeAssetHandler.cpp index 2106c26db5..f06f0fe185 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Asset/RuntimeAssetHandler.cpp +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Asset/RuntimeAssetHandler.cpp @@ -58,7 +58,7 @@ namespace ScriptCanvas const char* RuntimeAssetHandler::GetBrowserIcon() const { - return "Editor/Icons/ScriptCanvas/Viewport/ScriptCanvas.png"; + return "Icons/ScriptCanvas/Viewport/ScriptCanvas.png"; } AZ::Uuid RuntimeAssetHandler::GetComponentTypeId() const diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/CodeGen/NodeableCodegen.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/CodeGen/NodeableCodegen.h index 49ce1cdaa0..bfc85c8256 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/CodeGen/NodeableCodegen.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/CodeGen/NodeableCodegen.h @@ -40,7 +40,7 @@ * Example: * NodeDefinition(HelloWorld, "Hello World", "My HelloWorld Node.") * NodeDefinition(HelloWorld, "Hello World", "My HelloWorld Node.", -* NodeTags::Icon("Editor/Icons/ScriptCanvas/HelloWorld.png") +* NodeTags::Icon("Icons/ScriptCanvas/HelloWorld.png") * NodeTags::Version(3, VersionConverter)) * * ----------------------------------------------------------------------------------------------------------- */ diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Internal/Nodeables/BaseTimer.ScriptCanvasNodeable.xml b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Internal/Nodeables/BaseTimer.ScriptCanvasNodeable.xml index e7b8476ddd..35f2cee0b6 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Internal/Nodeables/BaseTimer.ScriptCanvasNodeable.xml +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Internal/Nodeables/BaseTimer.ScriptCanvasNodeable.xml @@ -6,7 +6,7 @@ PreferredClassName="BaseTimer" Uuid="{64814C82-DAE5-9B04-B375-5E47D51ECD26}" Base="ScriptCanvas::Nodeable" - Icon="Editor/Icons/ScriptCanvas/Placeholder.png" + Icon="Icons/ScriptCanvas/Placeholder.png" Category="Utilities" Version="0" EntryPoint="true" diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Internal/Nodes/BaseTimerNode.ScriptCanvasGrammar.xml b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Internal/Nodes/BaseTimerNode.ScriptCanvasGrammar.xml index 695bb76927..d1e8c72b9c 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Internal/Nodes/BaseTimerNode.ScriptCanvasGrammar.xml +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Internal/Nodes/BaseTimerNode.ScriptCanvasGrammar.xml @@ -6,7 +6,7 @@ PreferredClassName="BaseTimerNode" Uuid="{BAD6C904-6078-49E8-B461-CA4410B785A4}" Base="ScriptCanvas::Node" - Icon="Editor/Icons/ScriptCanvas/Placeholder.png" + Icon="Icons/ScriptCanvas/Placeholder.png" Category="Utilities" Version="0" GeneratePropertyFriend="True" diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/Comparison.cpp b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/Comparison.cpp index b1ba26fd29..1e6466ae2f 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/Comparison.cpp +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/Comparison.cpp @@ -35,7 +35,7 @@ namespace ScriptCanvas editContext->Class("Comparisons", "Provides mathematical equality operations")-> ClassElement(AZ::Edit::ClassElements::EditorData, "")-> Attribute(AZ::Edit::Attributes::Category, "Math/Comparisons")-> - Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Libraries/Logic.png")-> + Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Libraries/Logic.png")-> Attribute(AZ::Edit::Attributes::CategoryStyle, ".comparison")-> Attribute(ScriptCanvas::Attributes::Node::TitlePaletteOverride, "ComparisonNodeTitlePalette") ; diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/EqualTo.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/EqualTo.h index 0e63d07c5b..132fa8de36 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/EqualTo.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/EqualTo.h @@ -40,7 +40,7 @@ namespace ScriptCanvas { editContext->Class("Equal To (==)", "Checks if Value A and Value B are equal to each other") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Placeholder.png") ->Attribute(AZ::Edit::Attributes::Visibility, AZ::Edit::PropertyVisibility::ShowChildrenOnly) ; } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/Greater.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/Greater.h index e7e23415a3..a72ad55236 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/Greater.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/Greater.h @@ -39,7 +39,7 @@ namespace ScriptCanvas { editContext->Class("Greater Than (>)", "Checks if Value A is greater than Value B") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Placeholder.png") ->Attribute(AZ::Edit::Attributes::Visibility, AZ::Edit::PropertyVisibility::ShowChildrenOnly) ; } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/GreaterEqual.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/GreaterEqual.h index 2c08e10712..6151196937 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/GreaterEqual.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/GreaterEqual.h @@ -40,7 +40,7 @@ namespace ScriptCanvas { editContext->Class("Greater Than or Equal To (>=)", "Checks if Value A is greater than or equal to Value B") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Placeholder.png") ->Attribute(AZ::Edit::Attributes::Visibility, AZ::Edit::PropertyVisibility::ShowChildrenOnly) ; } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/Less.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/Less.h index fcbacec9f6..a99b578c91 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/Less.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/Less.h @@ -39,7 +39,7 @@ namespace ScriptCanvas { editContext->Class("Less Than (<)", "Checks if Value A is less than Value B") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Placeholder.png") ->Attribute(AZ::Edit::Attributes::Visibility, AZ::Edit::PropertyVisibility::ShowChildrenOnly) ; } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/LessEqual.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/LessEqual.h index fff59862b8..aac159d1d4 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/LessEqual.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/LessEqual.h @@ -39,7 +39,7 @@ namespace ScriptCanvas { editContext->Class("Less Than or Equal To (<=)", "Checks if Value A is less than or equal to Value B") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Placeholder.png") ->Attribute(AZ::Edit::Attributes::Visibility, AZ::Edit::PropertyVisibility::ShowChildrenOnly) ; } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/NotEqualTo.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/NotEqualTo.h index 19bbffb901..95c6b97007 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/NotEqualTo.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Comparison/NotEqualTo.h @@ -39,7 +39,7 @@ namespace ScriptCanvas { editContext->Class("Not Equal To (!=)", "Checks if Value A is not equal to Value B") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Placeholder.png") ->Attribute(AZ::Edit::Attributes::Visibility, AZ::Edit::PropertyVisibility::ShowChildrenOnly) ; } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/AzEventHandler.ScriptCanvasGrammar.xml b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/AzEventHandler.ScriptCanvasGrammar.xml index 66903964ba..4dba14b36c 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/AzEventHandler.ScriptCanvasGrammar.xml +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/AzEventHandler.ScriptCanvasGrammar.xml @@ -5,7 +5,7 @@ PreferredClassName="AZ Event Handler" Uuid="{38B808C5-152C-4643-A08C-463EBED55E19}" Base="ScriptCanvas::Node" - Icon="Editor/Icons/ScriptCanvas/AzEvent.png" + Icon="Icons/ScriptCanvas/AzEvent.png" Version="0" EditAttributes="AZ::Script::Attributes::ExcludeFrom@AZ::Script::Attributes::ExcludeFlags::All" GraphEntryPoint="True" diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/CoreNodes.cpp b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/CoreNodes.cpp index 01984d01f1..19c0260d7e 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/CoreNodes.cpp +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/CoreNodes.cpp @@ -70,7 +70,7 @@ namespace ScriptCanvas { editContext->Class("Core", "")-> ClassElement(AZ::Edit::ClassElements::EditorData, "")-> - Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Libraries/Core.png")-> + Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Libraries/Core.png")-> Attribute(AZ::Edit::Attributes::CategoryStyle, ".time")-> Attribute(ScriptCanvas::Attributes::Node::TitlePaletteOverride, "TimeNodeTitlePalette") ; diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/EBusEventHandler.ScriptCanvasGrammar.xml b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/EBusEventHandler.ScriptCanvasGrammar.xml index b3179ed2e4..94f06b1a4e 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/EBusEventHandler.ScriptCanvasGrammar.xml +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/EBusEventHandler.ScriptCanvasGrammar.xml @@ -6,7 +6,7 @@ PreferredClassName="Event Handler" Uuid="{33E12915-EFCA-4AA7-A188-D694DAD58980}" Base="ScriptCanvas::Node" - Icon="Editor/Icons/ScriptCanvas/Bus.png" + Icon="Icons/ScriptCanvas/Bus.png" Version="5" VersionConverter="ScriptCanvas::VersionConverters::EBusEventHandlerVersionConverter" EventHandler="SerializeContextOnWriteEndHandler<EBusEventHandler>" diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/Error.cpp b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/Error.cpp index 09e2143e12..abb0f6ddc1 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/Error.cpp +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/Error.cpp @@ -77,7 +77,7 @@ namespace ScriptCanvas editContext->Class("Error", "") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Utilities/Debug") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Error.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Error.png") ->Attribute(AZ::Edit::Attributes::Visibility, AZ::Edit::PropertyVisibility::ShowChildrenOnly) ; } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/ErrorHandler.cpp b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/ErrorHandler.cpp index 01646cd8ba..859fbfb27b 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/ErrorHandler.cpp +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/ErrorHandler.cpp @@ -68,7 +68,7 @@ namespace ScriptCanvas editContext->Class("Error Handler", "") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Utilities/Debug") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/ErrorHandler.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/ErrorHandler.png") ; } } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/ExtractProperty.ScriptCanvasGrammar.xml b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/ExtractProperty.ScriptCanvasGrammar.xml index ac841f6685..85642a25b8 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/ExtractProperty.ScriptCanvasGrammar.xml +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/ExtractProperty.ScriptCanvasGrammar.xml @@ -6,7 +6,7 @@ PreferredClassName="Extract Properties" Uuid="{D4C9DA8E-838B-41C6-B870-C75294C323DC}" Base="ScriptCanvas::Node" - Icon="Editor/Icons/ScriptCanvas/Placeholder.png" + Icon="Icons/ScriptCanvas/Placeholder.png" Category="Utilities" Version="1" VersionConverter="VersionConverter" diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/ForEach.ScriptCanvasGrammar.xml b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/ForEach.ScriptCanvasGrammar.xml index e1a660f1a9..2413edc3f5 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/ForEach.ScriptCanvasGrammar.xml +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/ForEach.ScriptCanvasGrammar.xml @@ -6,7 +6,7 @@ PreferredClassName="For Each" Uuid="{31823035-A3FF-4B8D-A3A6-819519478B7C}" Base="ScriptCanvas::Node" - Icon="Editor/Icons/ScriptCanvas/Placeholder.png" + Icon="Icons/ScriptCanvas/Placeholder.png" Category="Containers" Version="2" VersionConverter="ScriptCanvas::VersionConverters::ForEachVersionConverter" diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/FunctionCallNode.ScriptCanvasGrammar.xml b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/FunctionCallNode.ScriptCanvasGrammar.xml index 6276522331..d7e999d447 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/FunctionCallNode.ScriptCanvasGrammar.xml +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/FunctionCallNode.ScriptCanvasGrammar.xml @@ -6,7 +6,7 @@ PreferredClassName="Function Call Node" Uuid="{ECFDD30E-A16D-4435-97B7-B2A4DF3C543A}" Base="ScriptCanvas::Node" - Icon="Editor/Icons/ScriptCanvas/Bus.png" + Icon="Icons/ScriptCanvas/Bus.png" Version="Version::Current" VersionConverter="ScriptCanvas::VersionConverters::FunctionNodeVersionConverter" DynamicSlotOrdering="True" diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/FunctionDefinitionNode.ScriptCanvasGrammar.xml b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/FunctionDefinitionNode.ScriptCanvasGrammar.xml index 8baf5b3088..2197b9c668 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/FunctionDefinitionNode.ScriptCanvasGrammar.xml +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/FunctionDefinitionNode.ScriptCanvasGrammar.xml @@ -6,7 +6,7 @@ PreferredClassName="Function Definition" Uuid="{4EE28D9F-67FB-4E61-B777-5DC5B059710F}" Base="ScriptCanvas::Nodes::Core::Internal::Nodeling" - Icon="Editor/Icons/ScriptCanvas/Start.png" + Icon="Icons/ScriptCanvas/Start.png" Category="Core" Version="1" EditAttributes="AZ::Script::Attributes::ExcludeFrom@AZ::Script::Attributes::ExcludeFlags::All" diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/GetVariable.ScriptCanvasGrammar.xml b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/GetVariable.ScriptCanvasGrammar.xml index 2b00445496..c4afc1b4fd 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/GetVariable.ScriptCanvasGrammar.xml +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/GetVariable.ScriptCanvasGrammar.xml @@ -6,7 +6,7 @@ PreferredClassName="Get Variable" Uuid="{8225BE35-4C45-4A32-94D9-3DE114F6F5AF}" Base="ScriptCanvas::Node" - Icon="Editor/Icons/ScriptCanvas/Placeholder.png" + Icon="Icons/ScriptCanvas/Placeholder.png" Version="0" GeneratePropertyFriend="True" Description="Node for referencing a property within the graph"> diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/Nodeling.ScriptCanvasGrammar.xml b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/Nodeling.ScriptCanvasGrammar.xml index c4e628d89f..e3c871b6fc 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/Nodeling.ScriptCanvasGrammar.xml +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/Nodeling.ScriptCanvasGrammar.xml @@ -6,7 +6,7 @@ PreferredClassName="Nodeling" Uuid="{4413EEA0-8D81-4D61-A1E1-3C1A437F3643}" Base="ScriptCanvas::Node" - Icon="Editor/Icons/ScriptCanvas/Start.png" + Icon="Icons/ScriptCanvas/Start.png" Category="Core" Version="1" GeneratePropertyFriend="True" diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/ReceiveScriptEvent.ScriptCanvasGrammar.xml b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/ReceiveScriptEvent.ScriptCanvasGrammar.xml index 50874f161c..485518fe41 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/ReceiveScriptEvent.ScriptCanvasGrammar.xml +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/ReceiveScriptEvent.ScriptCanvasGrammar.xml @@ -6,7 +6,7 @@ PreferredClassName="Receive Script Event" Uuid="{76CF9938-4A7E-4CDA-8DF3-77C10239D99C}" Base="ScriptCanvas::Nodes::Core::Internal::ScriptEventBase" - Icon="Editor/Icons/ScriptCanvas/Bus.png" + Icon="Icons/ScriptCanvas/Bus.png" Version="4" VersionConverter="ScriptCanvas::VersionConverters::ReceiveScriptEventVersionConverter" EditAttributes="AZ::Script::Attributes::ExcludeFrom@AZ::Script::Attributes::ExcludeFlags::All" diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/Repeater.ScriptCanvasGrammar.xml b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/Repeater.ScriptCanvasGrammar.xml index d9db8d3c91..dbe9c28c54 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/Repeater.ScriptCanvasGrammar.xml +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/Repeater.ScriptCanvasGrammar.xml @@ -6,7 +6,7 @@ PreferredClassName="Repeater" Uuid="{0A38EDCA-0571-48F0-9199-F6168C1EAAF0}" Base="ScriptCanvas::Nodes::Internal::BaseTimerNode" - Icon="Editor/Icons/ScriptCanvas/Placeholder.png" + Icon="Icons/ScriptCanvas/Placeholder.png" Deprecated="This node is deprecated" DeprecationUUID="{AB587027-2270-4CA6-242F-6069C6D9BBB6}" Category="Utilities" diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/RepeaterNodeable.ScriptCanvasNodeable.xml b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/RepeaterNodeable.ScriptCanvasNodeable.xml index 2bf9f2cf40..14634ff959 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/RepeaterNodeable.ScriptCanvasNodeable.xml +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/RepeaterNodeable.ScriptCanvasNodeable.xml @@ -6,7 +6,7 @@ PreferredClassName="Repeater" Uuid="{4FBB5021-F3C8-E743-BF2E-BC6E5D57D48E}" Base="Nodeables::Time::BaseTimer" - Icon="Editor/Icons/ScriptCanvas/Placeholder.png" + Icon="Icons/ScriptCanvas/Placeholder.png" Category="Nodeables" GeneratePropertyFriend="True" Namespace="ScriptCanvas" diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/SendScriptEvent.ScriptCanvasGrammar.xml b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/SendScriptEvent.ScriptCanvasGrammar.xml index 18064698b2..5141ac9b89 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/SendScriptEvent.ScriptCanvasGrammar.xml +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/SendScriptEvent.ScriptCanvasGrammar.xml @@ -6,7 +6,7 @@ PreferredClassName="Send Script Event" Uuid="{64A97CC3-2BEA-4B47-809B-6C7DA34FD00F}" Base="ScriptCanvas::Nodes::Core::Internal::ScriptEventBase" - Icon="Editor/Icons/ScriptCanvas/Bus.png" + Icon="Icons/ScriptCanvas/Bus.png" Version="4" DynamicSlotOrdering="True" EditAttributes="AZ::Script::Attributes::ExcludeFrom@AZ::Script::Attributes::ExcludeFlags::All" diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/SetVariable.ScriptCanvasGrammar.xml b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/SetVariable.ScriptCanvasGrammar.xml index 7581022cde..a513118cfe 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/SetVariable.ScriptCanvasGrammar.xml +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/SetVariable.ScriptCanvasGrammar.xml @@ -6,7 +6,7 @@ PreferredClassName="Set Variable" Uuid="{5EFD2942-AFF9-4137-939C-023AEAA72EB0}" Base="ScriptCanvas::Node" - Icon="Editor/Icons/ScriptCanvas/Placeholder.png" + Icon="Icons/ScriptCanvas/Placeholder.png" Version="1" GeneratePropertyFriend="True" Description="Node for setting a property within the graph"> diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/Start.ScriptCanvasGrammar.xml b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/Start.ScriptCanvasGrammar.xml index db30b4c1cf..033383fbb1 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/Start.ScriptCanvasGrammar.xml +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/Start.ScriptCanvasGrammar.xml @@ -6,7 +6,7 @@ PreferredClassName="On Graph Start" Uuid="{F200B22A-5903-483A-BF63-5241BC03632B}" Base="ScriptCanvas::Node" - Icon="Editor/Icons/ScriptCanvas/Start.png" + Icon="Icons/ScriptCanvas/Start.png" Category="Timing" Version="2" GraphEntryPoint="True" diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/String.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/String.h index c215fc8d94..045509e7a2 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/String.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Core/String.h @@ -40,7 +40,7 @@ namespace ScriptCanvas { editContext->Class("String", "Holds a string value") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/String.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/String.png") ; } } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Entity/Entity.cpp b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Entity/Entity.cpp index d4f90ebc4e..9afa0e88ba 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Entity/Entity.cpp +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Entity/Entity.cpp @@ -61,7 +61,7 @@ namespace ScriptCanvas { editContext->Class("Entity", "")-> ClassElement(AZ::Edit::ClassElements::EditorData, "")-> - Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Libraries/Entity.png") + Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Libraries/Entity.png") ; } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Entity/EntityIDNode.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Entity/EntityIDNode.h index ac424e1300..dcacc0d656 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Entity/EntityIDNode.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Entity/EntityIDNode.h @@ -39,7 +39,7 @@ namespace ScriptCanvas { editContext->Class("EntityID", "Stores a reference to an entity") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/EntityID.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/EntityID.png") ->Attribute(AZ::Edit::Attributes::Visibility, AZ::Edit::PropertyVisibility::ShowChildrenOnly) ; } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Entity/EntityRef.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Entity/EntityRef.h index eed758470f..c5ac3a6fab 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Entity/EntityRef.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Entity/EntityRef.h @@ -42,7 +42,7 @@ namespace ScriptCanvas // And is unmodifiable(essentially an external constant). As such, we hide it from the node palette. editContext->Class("EntityID", "Stores a reference to an entity") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/EntityRef.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/EntityRef.png") ->Attribute(AZ::Script::Attributes::ExcludeFrom, AZ::Script::Attributes::ExcludeFlags::List) ; } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/And.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/And.h index 52d985cfb5..ce96f254d0 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/And.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/And.h @@ -40,7 +40,7 @@ namespace ScriptCanvas { editContext->Class("And", "An execution flow gate that signals True if both Boolean A and Boolean B are True, otherwise signals False") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Placeholder.png") ->Attribute(AZ::Edit::Attributes::Visibility, AZ::Edit::PropertyVisibility::ShowChildrenOnly) ; } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/Boolean.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/Boolean.h index ef7d3ff0c7..2b9a80435e 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/Boolean.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/Boolean.h @@ -41,7 +41,7 @@ namespace ScriptCanvas { editContext->Class("Boolean", "A boolean value (true/false)") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Boolean.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Boolean.png") ; } } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/Gate.ScriptCanvasGrammar.xml b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/Gate.ScriptCanvasGrammar.xml index 49671fc439..53d8623fe8 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/Gate.ScriptCanvasGrammar.xml +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/Gate.ScriptCanvasGrammar.xml @@ -6,7 +6,7 @@ PreferredClassName="If" Uuid="{F19CC10A-02FD-4E75-ADAA-9CFBD8A4E2F8}" Base="ScriptCanvas::Node" - Icon="Editor/Icons/ScriptCanvas/Print.png" + Icon="Icons/ScriptCanvas/Print.png" Version="0" GeneratePropertyFriend="True" Description="An execution flow gate that continues True if the Condition is True, otherwise continues False"> diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/IsNull.ScriptCanvasGrammar.xml b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/IsNull.ScriptCanvasGrammar.xml index e019b69ea8..a9c6369fc1 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/IsNull.ScriptCanvasGrammar.xml +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/IsNull.ScriptCanvasGrammar.xml @@ -6,7 +6,7 @@ PreferredClassName="Is Null" Uuid="{760CE936-7059-42A3-A177-530A662E4ECF}" Base="ScriptCanvas::Node" - Icon="Editor/Icons/ScriptCanvas/IsNull.png" + Icon="Icons/ScriptCanvas/IsNull.png" Version="0" GeneratePropertyFriend="True" Description="Evaluates reference types for null."> diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/Logic.cpp b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/Logic.cpp index 8f7f70d103..bc263c92fa 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/Logic.cpp +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/Logic.cpp @@ -34,7 +34,7 @@ namespace ScriptCanvas { editContext->Class("Logic", "")-> ClassElement(AZ::Edit::ClassElements::EditorData, "")-> - Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Libraries/Logic.png")-> + Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Libraries/Logic.png")-> Attribute(AZ::Edit::Attributes::CategoryStyle, ".logic")-> Attribute(ScriptCanvas::Attributes::Node::TitlePaletteOverride, "LogicNodeTitlePalette") ; diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/Not.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/Not.h index b72c036d87..117956f311 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/Not.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/Not.h @@ -39,7 +39,7 @@ namespace ScriptCanvas { editContext->Class("Not", "An execution flow gate that continues True if the Boolean is False, otherwise continues False if the Boolean is True") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Placeholder.png") ->Attribute(AZ::Edit::Attributes::Visibility, AZ::Edit::PropertyVisibility::ShowChildrenOnly) ; } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/Once.ScriptCanvasGrammar.xml b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/Once.ScriptCanvasGrammar.xml index a1b6d21906..63bb463d89 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/Once.ScriptCanvasGrammar.xml +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/Once.ScriptCanvasGrammar.xml @@ -6,7 +6,7 @@ PreferredClassName="Once" Uuid="{0E37D3CA-2862-4667-BFDB-7393DD48241B}" Base="ScriptCanvas::Node" - Icon="Editor/Icons/ScriptCanvas/Print.png" + Icon="Icons/ScriptCanvas/Print.png" Version="0" GeneratePropertyFriend="True" Description="An execution flow gate that will only activate once. The gate will reopen if it receives a Reset pulse."> diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/Or.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/Or.h index 20ceed2946..5eb2681585 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/Or.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Logic/Or.h @@ -38,7 +38,7 @@ namespace ScriptCanvas { editContext->Class("Or", "An execution flow gate that continues True if either Boolean A or Boolean B are True, otherwise continues False") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Placeholder.png") ->Attribute(AZ::Edit::Attributes::Visibility, AZ::Edit::PropertyVisibility::ShowChildrenOnly) ; } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/AABBNode.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/AABBNode.h index 2016117d6e..28b957fbfc 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/AABBNode.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/AABBNode.h @@ -41,7 +41,7 @@ namespace ScriptCanvas { editContext->Class("AABB", "An axis-aligned bounding box value") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/AABB.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/AABB.png") ; } } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/CRCNode.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/CRCNode.h index df8b0e755c..6d950a0d5c 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/CRCNode.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/CRCNode.h @@ -41,7 +41,7 @@ namespace ScriptCanvas { editContext->Class("CRC", "A CRC value") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/CRC.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/CRC.png") ; } } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/ColorNode.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/ColorNode.h index 02f0c3ba93..d1e1e539c7 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/ColorNode.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/ColorNode.h @@ -41,7 +41,7 @@ namespace ScriptCanvas { editContext->Class("Color", "A four channel color value") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Color.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Color.png") ; } } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Divide.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Divide.h index 6ea59162fb..e8ba617822 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Divide.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Divide.h @@ -43,7 +43,7 @@ namespace ScriptCanvas ->Attribute(ScriptCanvas::Attributes::Node::TitlePaletteOverride, "DeprecatedNodeTitlePalette") ->Attribute(AZ::Script::Attributes::Deprecated, true) ->Attribute(AZ::Edit::Attributes::Category, "Math/Number/Deprecated") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Placeholder.png") ->Attribute(AZ::Edit::Attributes::Visibility, AZ::Edit::PropertyVisibility::ShowChildrenOnly) ; } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Math.cpp b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Math.cpp index cf542ba90d..be32f73b5d 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Math.cpp +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Math.cpp @@ -32,7 +32,7 @@ namespace ScriptCanvas { editContext->Class("Math", "")-> ClassElement(AZ::Edit::ClassElements::EditorData, "")-> - Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Libraries/Math.png")-> + Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Libraries/Math.png")-> Attribute(AZ::Edit::Attributes::CategoryStyle, ".math")-> Attribute(ScriptCanvas::Attributes::Node::TitlePaletteOverride, "MathNodeTitlePalette") ; diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Matrix3x3Node.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Matrix3x3Node.h index 5a1d7f2818..852443c953 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Matrix3x3Node.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Matrix3x3Node.h @@ -42,7 +42,7 @@ namespace ScriptCanvas { editContext->Class("Matrix3x3", "A 3x3 matrix value") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Matrix3x3.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Matrix3x3.png") ; } } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Matrix4x4Node.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Matrix4x4Node.h index 476c022c55..ae2cbba6e9 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Matrix4x4Node.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Matrix4x4Node.h @@ -41,7 +41,7 @@ namespace ScriptCanvas { editContext->Class("Matrix4x4", "A 4x4 matrix value") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Matrix4x4.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Matrix4x4.png") ; } } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Multiply.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Multiply.h index 14fb97dd4d..2cb4690217 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Multiply.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Multiply.h @@ -42,7 +42,7 @@ namespace ScriptCanvas ->Attribute(ScriptCanvas::Attributes::Node::TitlePaletteOverride, "DeprecatedNodeTitlePalette") ->Attribute(AZ::Script::Attributes::Deprecated, true) ->Attribute(AZ::Edit::Attributes::Category, "Math/Number/Deprecated") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Placeholder.png") ->Attribute(AZ::Edit::Attributes::Visibility, AZ::Edit::PropertyVisibility::ShowChildrenOnly) ; } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Number.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Number.h index bd3a7f390e..e706002d1d 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Number.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Number.h @@ -39,7 +39,7 @@ namespace ScriptCanvas { editContext->Class("Number", "A numeric value") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Number.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Number.png") ; } } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/OBBNode.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/OBBNode.h index 2755d40fbd..1de4ee2bcb 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/OBBNode.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/OBBNode.h @@ -41,7 +41,7 @@ namespace ScriptCanvas { editContext->Class("OBB", "An oriented bounding box value") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/OBB.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/OBB.png") ; } } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/PlaneNode.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/PlaneNode.h index 72c24a11f4..a3fbc589ad 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/PlaneNode.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/PlaneNode.h @@ -41,7 +41,7 @@ namespace ScriptCanvas { editContext->Class("Plane", "A plane value according to the equation: Ax + By + Cz + D = 0") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Plane.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Plane.png") ; } } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Rotation.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Rotation.h index 8e977dcbb2..cfa30b996a 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Rotation.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Rotation.h @@ -39,7 +39,7 @@ namespace ScriptCanvas { editContext->Class("Quaternion", "imaginary(X, Y, Z), real W") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Quaternion.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Quaternion.png") ; } } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Subtract.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Subtract.h index b744e5a309..37d31ce083 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Subtract.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Subtract.h @@ -42,7 +42,7 @@ namespace ScriptCanvas ->Attribute(ScriptCanvas::Attributes::Node::TitlePaletteOverride, "DeprecatedNodeTitlePalette") ->Attribute(AZ::Script::Attributes::Deprecated, true) ->Attribute(AZ::Edit::Attributes::Category, "Math/Number/Deprecated") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Placeholder.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Placeholder.png") ->Attribute(AZ::Edit::Attributes::Visibility, AZ::Edit::PropertyVisibility::ShowChildrenOnly) ; } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Sum.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Sum.h index 5ebfe5536f..cf469153ec 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Sum.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Sum.h @@ -44,7 +44,7 @@ namespace ScriptCanvas ->Attribute(ScriptCanvas::Attributes::Node::TitlePaletteOverride, "DeprecatedNodeTitlePalette") ->Attribute(AZ::Script::Attributes::Deprecated, true) ->Attribute(AZ::Edit::Attributes::Category, "Math/Number/Deprecated") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Add.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Add.png") ->Attribute(AZ::Edit::Attributes::Visibility, AZ::Edit::PropertyVisibility::ShowChildrenOnly) ; } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Transform.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Transform.h index cdbda85846..3d27aa88dd 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Transform.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Transform.h @@ -39,7 +39,7 @@ namespace ScriptCanvas { editContext->Class("Transform", "A 3D transform value") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Transform.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Transform.png") ; } } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Vector.h b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Vector.h index 3b0682fc46..f527dae2ad 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Vector.h +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Math/Vector.h @@ -41,7 +41,7 @@ namespace ScriptCanvas { editContext->Class("Vector2", "A 2D vector value") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Vector.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Vector.png") ; } } @@ -70,7 +70,7 @@ namespace ScriptCanvas { editContext->Class("Vector3", "A 3D vector value") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Vector.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Vector.png") ; } } @@ -99,7 +99,7 @@ namespace ScriptCanvas { editContext->Class("Vector4", "A 4D vector value") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Vector.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Vector.png") ; } } diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Operators/Operators.cpp b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Operators/Operators.cpp index 6b4d93b4e8..4cc1ddfab0 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Operators/Operators.cpp +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Operators/Operators.cpp @@ -33,7 +33,7 @@ namespace ScriptCanvas { editContext->Class("Operators", "")-> ClassElement(AZ::Edit::ClassElements::EditorData, "")-> - Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Libraries/Operators.png")-> + Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Libraries/Operators.png")-> Attribute(AZ::Edit::Attributes::CategoryStyle, ".operators")-> Attribute(ScriptCanvas::Attributes::Node::TitlePaletteOverride, "OperatorsNodeTitlePalette") ; diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/String/String.cpp b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/String/String.cpp index 03a2564b5e..4eb7f15f85 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/String/String.cpp +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/String/String.cpp @@ -34,7 +34,7 @@ namespace ScriptCanvas { editContext->Class("String", "") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") - ->Attribute(AZ::Edit::Attributes::Icon, "Editor/Icons/ScriptCanvas/Libraries/String.png") + ->Attribute(AZ::Edit::Attributes::Icon, "Icons/ScriptCanvas/Libraries/String.png") ->Attribute(AZ::Edit::Attributes::CategoryStyle, ".string") ->Attribute(ScriptCanvas::Attributes::Node::TitlePaletteOverride, "StringNodeTitlePalette") ; diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Time/DurationNodeable.ScriptCanvasNodeable.xml b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Time/DurationNodeable.ScriptCanvasNodeable.xml index 0c813e05dc..0a6f032982 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Time/DurationNodeable.ScriptCanvasNodeable.xml +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Time/DurationNodeable.ScriptCanvasNodeable.xml @@ -5,7 +5,7 @@ QualifiedName="ScriptCanvas::Nodeables::Time::DurationNodeable" PreferredClassName="Duration" Base="ScriptCanvas::Nodeable" - Icon="Editor/Icons/ScriptCanvas/Placeholder.png" + Icon="Icons/ScriptCanvas/Placeholder.png" Category="Nodeables" GeneratePropertyFriend="True" Namespace="ScriptCanvas" diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Time/HeartBeatNodeable.ScriptCanvasNodeable.xml b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Time/HeartBeatNodeable.ScriptCanvasNodeable.xml index 4e51642483..16d0fb7f1a 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Time/HeartBeatNodeable.ScriptCanvasNodeable.xml +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Time/HeartBeatNodeable.ScriptCanvasNodeable.xml @@ -5,7 +5,7 @@ QualifiedName="Nodeables::Time::HeartBeatNodeable" PreferredClassName="HeartBeat" Base="Nodeables::Time::BaseTimer" - Icon="Editor/Icons/ScriptCanvas/Placeholder.png" + Icon="Icons/ScriptCanvas/Placeholder.png" Category="Timing" GeneratePropertyFriend="True" Namespace="ScriptCanvas" diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Time/Time.cpp b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Time/Time.cpp index 393c1afa4b..145f07a0eb 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Time/Time.cpp +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Libraries/Time/Time.cpp @@ -36,7 +36,7 @@ namespace ScriptCanvas { editContext->Class