Răsfoiți Sursa

Adding an asset test project for contributors

Signed-off-by: Jonny Galloway <[email protected]>
Jonny Galloway 2 ani în urmă
părinte
comite
28fa6e4183
98 a modificat fișierele cu 2469 adăugiri și 0 ștergeri
  1. 4 0
      LICENSE-CC-BY-4.0.txt
  2. 6 0
      Project/.gitignore
  3. 3 0
      Project/Assets/Materials/default.material
  4. 6 0
      Project/Assets/Materials/default.materialcanvas.azasset.materialcanvas.azasset
  5. 17 0
      Project/Assets/Materials/default.materialtype
  6. 144 0
      Project/Assets/Materials/default_ForwardPass.azsl
  7. 42 0
      Project/Assets/Materials/default_ForwardPass.shader
  8. 11 0
      Project/CMakeLists.txt
  9. 6 0
      Project/Config/default_aws_resource_mappings.json
  10. 11 0
      Project/Config/shader_global_build_options.json
  11. 69 0
      Project/Gem/CMakeLists.txt
  12. 31 0
      Project/Gem/Include/MPS-Asset-Test/MPS-Asset-TestBus.h
  13. 2 0
      Project/Gem/Platform/Android/PAL_android.cmake
  14. 11 0
      Project/Gem/Platform/Android/mps-asset-test_android_files.cmake
  15. 10 0
      Project/Gem/Platform/Android/mps-asset-test_shared_android_files.cmake
  16. 2 0
      Project/Gem/Platform/Linux/PAL_linux.cmake
  17. 11 0
      Project/Gem/Platform/Linux/mps-asset-test_linux_files.cmake
  18. 10 0
      Project/Gem/Platform/Linux/mps-asset-test_shared_linux_files.cmake
  19. 2 0
      Project/Gem/Platform/Mac/PAL_mac.cmake
  20. 12 0
      Project/Gem/Platform/Mac/mps-asset-test_mac_files.cmake
  21. 11 0
      Project/Gem/Platform/Mac/mps-asset-test_shared_mac_files.cmake
  22. 2 0
      Project/Gem/Platform/Windows/PAL_windows.cmake
  23. 10 0
      Project/Gem/Platform/Windows/mps-asset-test_shared_windows_files.cmake
  24. 11 0
      Project/Gem/Platform/Windows/mps-asset-test_windows_files.cmake
  25. 2 0
      Project/Gem/Platform/iOS/PAL_ios.cmake
  26. 12 0
      Project/Gem/Platform/iOS/mps-asset-test_ios_files.cmake
  27. 10 0
      Project/Gem/Platform/iOS/mps-asset-test_shared_ios_files.cmake
  28. 18 0
      Project/Gem/Registry/assetprocessor_settings.setreg
  29. 37 0
      Project/Gem/Source/MPS-Asset-TestModule.cpp
  30. 76 0
      Project/Gem/Source/MPS-Asset-TestSystemComponent.cpp
  31. 40 0
      Project/Gem/Source/MPS-Asset-TestSystemComponent.h
  32. 31 0
      Project/Gem/enabled_gems.cmake
  33. 21 0
      Project/Gem/gem.json
  34. 7 0
      Project/Gem/mps-asset-test_files.cmake
  35. 4 0
      Project/Gem/mps-asset-test_shared_files.cmake
  36. 843 0
      Project/Levels/MPS-Asset-Test/MPS-Asset-Test.prefab
  37. 8 0
      Project/Platform/Android/android_project.cmake
  38. 9 0
      Project/Platform/Android/android_project.json
  39. 8 0
      Project/Platform/Linux/linux_project.cmake
  40. 3 0
      Project/Platform/Linux/linux_project.json
  41. 8 0
      Project/Platform/Mac/mac_project.cmake
  42. 3 0
      Project/Platform/Mac/mac_project.json
  43. 8 0
      Project/Platform/Windows/windows_project.cmake
  44. 3 0
      Project/Platform/Windows/windows_project.json
  45. 8 0
      Project/Platform/iOS/ios_project.cmake
  46. 3 0
      Project/Platform/iOS/ios_project.json
  47. 23 0
      Project/Registry/assetprocessor_settings.setreg
  48. 10 0
      Project/Registry/awscoreconfiguration.setreg
  49. 11 0
      Project/Registry/physxdebugconfiguration.setreg
  50. 9 0
      Project/Registry/physxdefaultsceneconfiguration.setreg
  51. 98 0
      Project/Registry/physxsystemconfiguration.setreg
  52. 3 0
      Project/Resources/GameSDK.ico
  53. 3 0
      Project/Resources/LegacyLogoLauncher.bmp
  54. 68 0
      Project/Resources/Platform/Mac/Images.xcassets/AppIcon.appiconset/Contents.json
  55. 3 0
      Project/Resources/Platform/Mac/Images.xcassets/AppIcon.appiconset/icon_128.png
  56. 3 0
      Project/Resources/Platform/Mac/Images.xcassets/AppIcon.appiconset/icon_128_2x.png
  57. 3 0
      Project/Resources/Platform/Mac/Images.xcassets/AppIcon.appiconset/icon_16.png
  58. 3 0
      Project/Resources/Platform/Mac/Images.xcassets/AppIcon.appiconset/icon_16_2x.png
  59. 3 0
      Project/Resources/Platform/Mac/Images.xcassets/AppIcon.appiconset/icon_256.png
  60. 3 0
      Project/Resources/Platform/Mac/Images.xcassets/AppIcon.appiconset/icon_256_2x.png
  61. 3 0
      Project/Resources/Platform/Mac/Images.xcassets/AppIcon.appiconset/icon_32.png
  62. 3 0
      Project/Resources/Platform/Mac/Images.xcassets/AppIcon.appiconset/icon_32_2x.png
  63. 3 0
      Project/Resources/Platform/Mac/Images.xcassets/AppIcon.appiconset/icon_512.png
  64. 3 0
      Project/Resources/Platform/Mac/Images.xcassets/AppIcon.appiconset/icon_512_2x.png
  65. 6 0
      Project/Resources/Platform/Mac/Images.xcassets/Contents.json
  66. 24 0
      Project/Resources/Platform/Mac/Info.plist
  67. 116 0
      Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/Contents.json
  68. 3 0
      Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPadAppIcon152x152.png
  69. 3 0
      Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPadAppIcon76x76.png
  70. 3 0
      Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPadProAppIcon167x167.png
  71. 3 0
      Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPadSettingsIcon29x29.png
  72. 3 0
      Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPadSettingsIcon58x58.png
  73. 3 0
      Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPadSpotlightIcon40x40.png
  74. 3 0
      Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPadSpotlightIcon80x80.png
  75. 3 0
      Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPhoneAppIcon120x120.png
  76. 3 0
      Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPhoneAppIcon180x180.png
  77. 3 0
      Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPhoneSettingsIcon58x58.png
  78. 3 0
      Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPhoneSettingsIcon87x87.png
  79. 3 0
      Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPhoneSpotlightIcon120x120.png
  80. 3 0
      Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPhoneSpotlightIcon80x80.png
  81. 6 0
      Project/Resources/Platform/iOS/Images.xcassets/Contents.json
  82. 169 0
      Project/Resources/Platform/iOS/Images.xcassets/LaunchImage.launchimage/Contents.json
  83. 3 0
      Project/Resources/Platform/iOS/Images.xcassets/LaunchImage.launchimage/iPadLaunchImage1024x768.png
  84. 3 0
      Project/Resources/Platform/iOS/Images.xcassets/LaunchImage.launchimage/iPadLaunchImage1536x2048.png
  85. 3 0
      Project/Resources/Platform/iOS/Images.xcassets/LaunchImage.launchimage/iPadLaunchImage2048x1536.png
  86. 3 0
      Project/Resources/Platform/iOS/Images.xcassets/LaunchImage.launchimage/iPadLaunchImage768x1024.png
  87. 3 0
      Project/Resources/Platform/iOS/Images.xcassets/LaunchImage.launchimage/iPhoneLaunchImage640x1136.png
  88. 3 0
      Project/Resources/Platform/iOS/Images.xcassets/LaunchImage.launchimage/iPhoneLaunchImage640x960.png
  89. 45 0
      Project/Resources/Platform/iOS/Info.plist
  90. 5 0
      Project/ShaderLib/README.md
  91. 26 0
      Project/ShaderLib/scenesrg.srgi
  92. 26 0
      Project/ShaderLib/viewsrg.srgi
  93. 0 0
      Project/autoexec.cfg
  94. 83 0
      Project/cmake/EngineFinder.cmake
  95. 3 0
      Project/game.cfg
  96. 3 0
      Project/preview.png
  97. 39 0
      Project/project.json
  98. 0 0
      Project/readme.md

+ 4 - 0
LICENSE-CC-BY-4.0.txt

@@ -0,0 +1,4 @@
+Copyright 2022 Amazon.com, Inc. or its affiliates, all rights reserved.
+
+Documentation content excluding code, and including images, is licensed under a Creative Commons Attribution 4.0 International License, available at https://creativecommons.org/licenses/by/4.0/.
+

+ 6 - 0
Project/.gitignore

@@ -0,0 +1,6 @@
+[Bb]uild/
+[Cc]ache/
+[Uu]ser/
+[Uu]ser_test*/
+_savebackup/
+CMakeUserPresets.json

+ 3 - 0
Project/Assets/Materials/default.material

@@ -0,0 +1,3 @@
+{
+    "materialType": "./default.materialtype"
+}

+ 6 - 0
Project/Assets/Materials/default.materialcanvas.azasset.materialcanvas.azasset

@@ -0,0 +1,6 @@
+{
+    "Type": "JsonSerialization",
+    "Version": 1,
+    "ClassName": "Graph",
+    "ClassData": {}
+}

+ 17 - 0
Project/Assets/Materials/default.materialtype

@@ -0,0 +1,17 @@
+{
+    "description": "default Material Type Template.",
+    "version": 1,
+    "shaders": [
+        {
+            "file": "./default_ForwardPass.shader"
+        },
+        {
+            "file": "Shaders/Shadow/Shadowmap.shader"
+        },
+        {
+            "file": "Shaders/Depth/DepthPass.shader"
+        }
+    ],
+    "functors": [
+    ]
+}

+ 144 - 0
Project/Assets/Materials/default_ForwardPass.azsl

@@ -0,0 +1,144 @@
+/*
+ * Copyright (c) Contributors to the Open 3D Engine Project.
+ * For complete copyright and license terms please see the LICENSE at the root of this distribution.
+ *
+ * SPDX-License-Identifier: Apache-2.0 OR MIT
+ *
+ */
+
+#include <viewsrg.srgi>
+#include <Atom/Features/PBR/DefaultObjectSrg.azsli>
+#include <Atom/Features/PBR/ForwardPassSrg.azsli>
+#include <Atom/Features/PBR/ForwardPassOutput.azsli>
+#include <Atom/Features/PBR/AlphaUtils.azsli>
+#include <Atom/Features/SrgSemantics.azsli>
+#include <Atom/Features/ColorManagement/TransformColor.azsli>
+#include <Atom/Features/PBR/Lighting/StandardLighting.azsli>
+#include <Atom/Features/PBR/Decals.azsli>
+
+// Everything inside of the generated blocks will eventually be replaced in the generated files as the material graph is compiled. 
+
+// O3DE_GENERATED_INCLUDES_BEGIN
+// O3DE_GENERATED_INCLUDES_END
+
+struct VSInput
+{
+    float3 m_position : POSITION;
+    float3 m_normal : NORMAL;
+    float4 m_tangent : TANGENT; 
+    float3 m_bitangent : BITANGENT;
+
+    // O3DE_GENERATED_VSINPUT_BEGIN
+    // O3DE_GENERATED_VSINPUT_END
+};
+
+struct VSOutput
+{
+    precise linear centroid float4 m_position : SV_Position;
+    float3 m_normal: NORMAL;
+    float3 m_tangent : TANGENT; 
+    float3 m_bitangent : BITANGENT;
+    float3 m_worldPosition : UV0;
+};
+
+#include <Atom/Features/Vertex/VertexHelper.azsli>
+
+ShaderResourceGroup MaterialSrg : SRG_PerMaterial
+{
+    // O3DE_GENERATED_MATERIAL_SRG_BEGIN
+    // O3DE_GENERATED_MATERIAL_SRG_END
+}
+ 
+// O3DE_GENERATED_CLASSES_BEGIN
+// O3DE_GENERATED_CLASSES_END
+ 
+// O3DE_GENERATED_FUNCTIONS_BEGIN
+// O3DE_GENERATED_FUNCTIONS_END
+
+VSOutput default_MainPassVS(VSInput IN)
+{
+    VSOutput OUT;
+ 
+    float3 worldPosition = mul(ObjectSrg::GetWorldMatrix(), float4(IN.m_position, 1.0)).xyz;
+ 
+    // O3DE_GENERATED_INSTRUCTIONS_BEGIN: inPositionOffset
+    float4 inPositionOffset = float4(0.0, 0.0, 0.0, 0.0);
+    // O3DE_GENERATED_INSTRUCTIONS_END
+
+    VertexHelper(IN, OUT, worldPosition + inPositionOffset.xyz);
+
+    return OUT;
+}
+
+ForwardPassOutput default_MainPassPS(VSOutput IN)
+{
+    // O3DE_GENERATED_INSTRUCTIONS_BEGIN: inBaseColor, inEmissive, inMetallic, inRoughness, inSpecularF0Factor
+float node7_inValue = 0;
+float node7_outValue = node7_inValue;
+float node5_outTime = SceneSrg::m_time;
+float4 node6_inValue1 = node5_outTime;
+float4 node6_inValue2 = node7_outValue;
+float4 node6_outValue = node6_inValue1 + node6_inValue2;
+float4 node4_inValue = node6_outValue;
+float4 node4_outValue = sin(node4_inValue);
+float2 node3_inUV = float2(0, 0);
+float4 node3_outColor = 1.0;
+float4 node18_inValue1 = node4_outValue;
+float4 node18_inValue2 = node3_outColor;
+float4 node18_outValue = mul(node18_inValue1, node18_inValue2);
+float4 inBaseColor = node18_outValue;
+float inMetallic = 0;
+float inSpecularF0Factor = 0;
+float inRoughness = node3_outColor;
+float4 inEmissive = float4(0, 0, 0, 1);
+    // O3DE_GENERATED_INSTRUCTIONS_END
+
+    // ------- Surface -------
+
+    Surface surface;
+    surface.position = IN.m_worldPosition.xyz;
+    surface.normal = normalize(IN.m_normal);
+    surface.vertexNormal = normalize(IN.m_normal);
+    surface.roughnessLinear = inRoughness;
+    surface.CalculateRoughnessA();
+    surface.SetAlbedoAndSpecularF0(inBaseColor.rgb, inSpecularF0Factor, inMetallic);
+    surface.clearCoat.InitializeToZero();
+
+    // ------- LightingData -------
+
+    LightingData lightingData;
+    lightingData.tileIterator.Init(IN.m_position, PassSrg::m_lightListRemapped, PassSrg::m_tileLightData);
+    lightingData.Init(surface.position, surface.normal, surface.roughnessLinear);
+    lightingData.specularResponse = FresnelSchlickWithRoughness(lightingData.NdotV, surface.specularF0, surface.roughnessLinear);
+    lightingData.diffuseResponse = 1.0f - lightingData.specularResponse;
+    lightingData.emissiveLighting = inEmissive;
+
+    // ------- Lighting Calculation -------
+
+    // Apply Decals
+    ApplyDecals(lightingData.tileIterator, surface);
+
+    // Apply Direct Lighting
+    ApplyDirectLighting(surface, lightingData, IN.m_position);
+
+    // Apply Image Based Lighting (IBL)
+    ApplyIBL(surface, lightingData);
+
+    // Finalize Lighting
+    lightingData.FinalizeLighting();
+
+    PbrLightingOutput lightingOutput = GetPbrLightingOutput(surface, lightingData, inBaseColor.a);
+
+    // ------- Output -------
+
+    ForwardPassOutput OUT;
+
+    OUT.m_diffuseColor = lightingOutput.m_diffuseColor;
+    OUT.m_diffuseColor.w = -1; // Subsurface scattering is disabled
+    OUT.m_specularColor = lightingOutput.m_specularColor;
+    OUT.m_specularF0 = lightingOutput.m_specularF0;
+    OUT.m_albedo = lightingOutput.m_albedo;
+    OUT.m_normal = lightingOutput.m_normal;
+
+    return OUT;
+}

+ 42 - 0
Project/Assets/Materials/default_ForwardPass.shader

@@ -0,0 +1,42 @@
+{
+    "Source" : "./default_ForwardPass.azsl",
+
+    "DepthStencilState" :
+    {
+        "Depth" :
+        {
+            "Enable" : true,
+            "CompareFunc" : "GreaterEqual"
+        },
+        "Stencil" :
+        {
+            "Enable" : true,
+            "ReadMask" : "0x00",
+            "WriteMask" : "0xFF",
+            "FrontFace" :
+            {
+                "Func" : "Always",
+                "DepthFailOp" : "Keep",
+                "FailOp" : "Keep",
+                "PassOp" : "Replace"
+            }
+        }
+    },
+
+    "ProgramSettings":
+    {
+      "EntryPoints":
+      [
+        {
+          "name": "default_MainPassVS",
+          "type": "Vertex"
+        },
+        {
+          "name": "default_MainPassPS",
+          "type": "Fragment"
+        }
+      ]
+    },
+
+    "DrawList" : "forward"
+}

+ 11 - 0
Project/CMakeLists.txt

@@ -0,0 +1,11 @@
+
+if(NOT PROJECT_NAME)
+    cmake_minimum_required(VERSION 3.20)
+    include(cmake/EngineFinder.cmake OPTIONAL)
+    find_package(o3de REQUIRED)
+    project(MPS-Asset-Test
+        LANGUAGES C CXX
+        VERSION 1.0.0.0
+    )
+    o3de_initialize()
+endif()

+ 6 - 0
Project/Config/default_aws_resource_mappings.json

@@ -0,0 +1,6 @@
+{
+    "AWSResourceMappings": {},
+    "AccountId": "EMPTY",
+    "Region": "us-east-1",
+    "Version": "1.0.0"
+}

+ 11 - 0
Project/Config/shader_global_build_options.json

@@ -0,0 +1,11 @@
+{
+    "Type": "JsonSerialization",
+    "Version": 1,
+    "ClassName": "GlobalBuildOptions",
+    "ClassData": {
+        "ShaderCompilerArguments" : {
+            "DefaultMatrixOrder" : "Row",
+            "AzslcAdditionalFreeArguments" : "--strip-unused-srgs"
+        }
+    }
+}

+ 69 - 0
Project/Gem/CMakeLists.txt

@@ -0,0 +1,69 @@
+
+set(gem_path ${CMAKE_CURRENT_LIST_DIR})
+set(gem_json ${gem_path}/gem.json)
+o3de_restricted_path(${gem_json} gem_restricted_path gem_parent_relative_path)
+
+# Currently we are in the MPS-Asset-Test/Code folder: ${CMAKE_CURRENT_LIST_DIR}
+# Get the platform specific folder ${pal_dir} for the current folder: ${CMAKE_CURRENT_LIST_DIR}/Platform/${PAL_PLATFORM_NAME}
+# Note: o3de_pal_dir will take care of the details for us, as this may be a restricted platform
+#       in which case it will see if that platform is present here or in the restricted folder.
+#       i.e. It could here : MPS-Asset-Test/Code/Platform/<platform_name>  or
+#            <restricted_folder>/<platform_name>/MPS-Asset-Test/Code
+o3de_pal_dir(pal_dir ${CMAKE_CURRENT_LIST_DIR}/Platform/${PAL_PLATFORM_NAME} "${gem_restricted_path}" "${gem_path}" "${gem_parent_relative_path}")
+
+# Now that we have the platform abstraction layer (PAL) folder for this folder, thats where we will find the
+# traits for this platform. Traits for a platform are defines for things like whether or not something in this project
+# is supported by this platform.
+include(${pal_dir}/PAL_${PAL_PLATFORM_NAME_LOWERCASE}.cmake)
+
+# Now that we have loaded our project traits for this platform, see if this project is even supported on this platform.
+# If its not supported we just return after including the unsupported.
+if(NOT PAL_TRAIT_MPS-ASSET-TEST_SUPPORTED)
+    return()
+endif()
+
+# We are on a supported platform, so add the MPS-Asset-Test target
+# Note: We include the common files and the platform specific files which are set in mps-asset-test_files.cmake and
+# in ${pal_dir}/mps-asset-test_${PAL_PLATFORM_NAME_LOWERCASE}_files.cmake
+ly_add_target(
+    NAME MPS-Asset-Test.Static STATIC
+    NAMESPACE Gem
+    FILES_CMAKE
+        mps-asset-test_files.cmake
+        ${pal_dir}/mps-asset-test_${PAL_PLATFORM_NAME_LOWERCASE}_files.cmake
+    INCLUDE_DIRECTORIES
+        PUBLIC
+            Include
+    BUILD_DEPENDENCIES
+        PRIVATE
+            AZ::AzGameFramework
+            Gem::Atom_AtomBridge.Static
+)
+
+ly_add_target(
+    NAME MPS-Asset-Test ${PAL_TRAIT_MONOLITHIC_DRIVEN_MODULE_TYPE}
+    NAMESPACE Gem
+    FILES_CMAKE
+        mps-asset-test_shared_files.cmake
+        ${pal_dir}/mps-asset-test_shared_${PAL_PLATFORM_NAME_LOWERCASE}_files.cmake
+    INCLUDE_DIRECTORIES
+        PUBLIC
+            Include
+    BUILD_DEPENDENCIES
+        PRIVATE
+            Gem::MPS-Asset-Test.Static
+            AZ::AzCore
+)
+
+# if enabled, MPS-Asset-Test is used by all kinds of applications
+ly_create_alias(NAME MPS-Asset-Test.Builders NAMESPACE Gem TARGETS Gem::MPS-Asset-Test)
+ly_create_alias(NAME MPS-Asset-Test.Tools    NAMESPACE Gem TARGETS Gem::MPS-Asset-Test)
+ly_create_alias(NAME MPS-Asset-Test.Clients  NAMESPACE Gem TARGETS Gem::MPS-Asset-Test)
+ly_create_alias(NAME MPS-Asset-Test.Servers  NAMESPACE Gem TARGETS Gem::MPS-Asset-Test)
+
+################################################################################
+# Gem dependencies
+################################################################################
+
+# Enable the specified list of gems from GEM_FILE or GEMS list for this specific project:
+ly_enable_gems(PROJECT_NAME MPS-Asset-Test GEM_FILE enabled_gems.cmake)

+ 31 - 0
Project/Gem/Include/MPS-Asset-Test/MPS-Asset-TestBus.h

@@ -0,0 +1,31 @@
+
+#pragma once
+
+#include <AzCore/EBus/EBus.h>
+#include <AzCore/Interface/Interface.h>
+
+namespace MPS_Asset_Test
+{
+    class MPS_Asset_TestRequests
+    {
+    public:
+        AZ_RTTI(MPS_Asset_TestRequests, "{C0BA4AD3-AA19-4F34-9147-CD9D1A3E6A71}");
+        virtual ~MPS_Asset_TestRequests() = default;
+        // Put your public methods here
+    };
+
+    class MPS_Asset_TestBusTraits
+        : public AZ::EBusTraits
+    {
+    public:
+        //////////////////////////////////////////////////////////////////////////
+        // EBusTraits overrides
+        static constexpr AZ::EBusHandlerPolicy HandlerPolicy = AZ::EBusHandlerPolicy::Single;
+        static constexpr AZ::EBusAddressPolicy AddressPolicy = AZ::EBusAddressPolicy::Single;
+        //////////////////////////////////////////////////////////////////////////
+    };
+
+    using MPS_Asset_TestRequestBus = AZ::EBus<MPS_Asset_TestRequests, MPS_Asset_TestBusTraits>;
+    using MPS_Asset_TestInterface = AZ::Interface<MPS_Asset_TestRequests>;
+
+} // namespace MPS_Asset_Test

+ 2 - 0
Project/Gem/Platform/Android/PAL_android.cmake

@@ -0,0 +1,2 @@
+
+set(PAL_TRAIT_MPS-ASSET-TEST_SUPPORTED TRUE)

+ 11 - 0
Project/Gem/Platform/Android/mps-asset-test_android_files.cmake

@@ -0,0 +1,11 @@
+# {BEGIN_LICENSE}
+# Copyright (c) Contributors to the Open 3D Engine Project.
+# For complete copyright and license terms please see the LICENSE at the root of this distribution.
+#
+# SPDX-License-Identifier: Apache-2.0 OR MIT
+#
+# {END_LICENSE}
+
+set(FILES
+    PAL_android.cmake
+)

+ 10 - 0
Project/Gem/Platform/Android/mps-asset-test_shared_android_files.cmake

@@ -0,0 +1,10 @@
+# {BEGIN_LICENSE}
+# Copyright (c) Contributors to the Open 3D Engine Project.
+# For complete copyright and license terms please see the LICENSE at the root of this distribution.
+#
+# SPDX-License-Identifier: Apache-2.0 OR MIT
+#
+# {END_LICENSE}
+
+set(FILES
+)

+ 2 - 0
Project/Gem/Platform/Linux/PAL_linux.cmake

@@ -0,0 +1,2 @@
+
+set(PAL_TRAIT_MPS-ASSET-TEST_SUPPORTED TRUE)

+ 11 - 0
Project/Gem/Platform/Linux/mps-asset-test_linux_files.cmake

@@ -0,0 +1,11 @@
+# {BEGIN_LICENSE}
+# Copyright (c) Contributors to the Open 3D Engine Project.
+# For complete copyright and license terms please see the LICENSE at the root of this distribution.
+#
+# SPDX-License-Identifier: Apache-2.0 OR MIT
+#
+# {END_LICENSE}
+
+set(FILES
+    PAL_linux.cmake
+)

+ 10 - 0
Project/Gem/Platform/Linux/mps-asset-test_shared_linux_files.cmake

@@ -0,0 +1,10 @@
+# {BEGIN_LICENSE}
+# Copyright (c) Contributors to the Open 3D Engine Project.
+# For complete copyright and license terms please see the LICENSE at the root of this distribution.
+#
+# SPDX-License-Identifier: Apache-2.0 OR MIT
+#
+# {END_LICENSE}
+
+set(FILES
+)

+ 2 - 0
Project/Gem/Platform/Mac/PAL_mac.cmake

@@ -0,0 +1,2 @@
+
+set(PAL_TRAIT_MPS-ASSET-TEST_SUPPORTED TRUE)

+ 12 - 0
Project/Gem/Platform/Mac/mps-asset-test_mac_files.cmake

@@ -0,0 +1,12 @@
+# {BEGIN_LICENSE}
+# Copyright (c) Contributors to the Open 3D Engine Project.
+# For complete copyright and license terms please see the LICENSE at the root of this distribution.
+#
+# SPDX-License-Identifier: Apache-2.0 OR MIT
+#
+# {END_LICENSE}
+
+set(FILES
+    ../../../Resources/Platform/Mac/Info.plist
+    PAL_mac.cmake
+)

+ 11 - 0
Project/Gem/Platform/Mac/mps-asset-test_shared_mac_files.cmake

@@ -0,0 +1,11 @@
+# {BEGIN_LICENSE}
+# Copyright (c) Contributors to the Open 3D Engine Project.
+# For complete copyright and license terms please see the LICENSE at the root of this distribution.
+#
+# SPDX-License-Identifier: Apache-2.0 OR MIT
+#
+# {END_LICENSE}
+
+set(FILES
+    ../../../Resources/Platform/Mac/Info.plist
+)

+ 2 - 0
Project/Gem/Platform/Windows/PAL_windows.cmake

@@ -0,0 +1,2 @@
+
+set(PAL_TRAIT_MPS-ASSET-TEST_SUPPORTED TRUE)

+ 10 - 0
Project/Gem/Platform/Windows/mps-asset-test_shared_windows_files.cmake

@@ -0,0 +1,10 @@
+# {BEGIN_LICENSE}
+# Copyright (c) Contributors to the Open 3D Engine Project.
+# For complete copyright and license terms please see the LICENSE at the root of this distribution.
+#
+# SPDX-License-Identifier: Apache-2.0 OR MIT
+#
+# {END_LICENSE}
+
+set(FILES
+)

+ 11 - 0
Project/Gem/Platform/Windows/mps-asset-test_windows_files.cmake

@@ -0,0 +1,11 @@
+# {BEGIN_LICENSE}
+# Copyright (c) Contributors to the Open 3D Engine Project.
+# For complete copyright and license terms please see the LICENSE at the root of this distribution.
+#
+# SPDX-License-Identifier: Apache-2.0 OR MIT
+#
+# {END_LICENSE}
+
+set(FILES
+    PAL_windows.cmake
+)

+ 2 - 0
Project/Gem/Platform/iOS/PAL_ios.cmake

@@ -0,0 +1,2 @@
+
+set(PAL_TRAIT_MPS-ASSET-TEST_SUPPORTED TRUE)

+ 12 - 0
Project/Gem/Platform/iOS/mps-asset-test_ios_files.cmake

@@ -0,0 +1,12 @@
+# {BEGIN_LICENSE}
+# Copyright (c) Contributors to the Open 3D Engine Project.
+# For complete copyright and license terms please see the LICENSE at the root of this distribution.
+#
+# SPDX-License-Identifier: Apache-2.0 OR MIT
+#
+# {END_LICENSE}
+
+set(FILES
+    ../../../Resources/Platform/iOS/Info.plist
+    PAL_ios.cmake
+)

+ 10 - 0
Project/Gem/Platform/iOS/mps-asset-test_shared_ios_files.cmake

@@ -0,0 +1,10 @@
+# {BEGIN_LICENSE}
+# Copyright (c) Contributors to the Open 3D Engine Project.
+# For complete copyright and license terms please see the LICENSE at the root of this distribution.
+#
+# SPDX-License-Identifier: Apache-2.0 OR MIT
+#
+# {END_LICENSE}
+
+set(FILES
+)

+ 18 - 0
Project/Gem/Registry/assetprocessor_settings.setreg

@@ -0,0 +1,18 @@
+{
+    "Amazon": {
+        "AssetProcessor": {
+            "Settings": {
+                "ScanFolder MPS-Asset-Test/Assets": {
+                    "watch": "@GEMROOT:MPS-Asset-Test@/Assets",
+                    "recursive": 1,
+                    "order": 101
+                },
+                "ScanFolder MPS-Asset-Test/Registry": {
+                    "watch": "@GEMROOT:MPS-Asset-Test@/Registry",
+                    "recursive": 1,
+                    "order": 102
+                }
+            }
+        }
+    }
+}

+ 37 - 0
Project/Gem/Source/MPS-Asset-TestModule.cpp

@@ -0,0 +1,37 @@
+
+#include <AzCore/Memory/SystemAllocator.h>
+#include <AzCore/Module/Module.h>
+
+#include "MPS-Asset-TestSystemComponent.h"
+
+namespace MPS_Asset_Test
+{
+    class MPS_Asset_TestModule
+        : public AZ::Module
+    {
+    public:
+        AZ_RTTI(MPS_Asset_TestModule, "{1EC33541-DE80-45AD-97B3-3A902DBF4636}", AZ::Module);
+        AZ_CLASS_ALLOCATOR(MPS_Asset_TestModule, AZ::SystemAllocator, 0);
+
+        MPS_Asset_TestModule()
+            : AZ::Module()
+        {
+            // Push results of [MyComponent]::CreateDescriptor() into m_descriptors here.
+            m_descriptors.insert(m_descriptors.end(), {
+                MPS_Asset_TestSystemComponent::CreateDescriptor(),
+            });
+        }
+
+        /**
+         * Add required SystemComponents to the SystemEntity.
+         */
+        AZ::ComponentTypeList GetRequiredSystemComponents() const override
+        {
+            return AZ::ComponentTypeList{
+                azrtti_typeid<MPS_Asset_TestSystemComponent>(),
+            };
+        }
+    };
+}// namespace MPS_Asset_Test
+
+AZ_DECLARE_MODULE_CLASS(Gem_MPS_Asset_Test, MPS_Asset_Test::MPS_Asset_TestModule)

+ 76 - 0
Project/Gem/Source/MPS-Asset-TestSystemComponent.cpp

@@ -0,0 +1,76 @@
+
+#include <AzCore/Serialization/SerializeContext.h>
+#include <AzCore/Serialization/EditContext.h>
+#include <AzCore/Serialization/EditContextConstants.inl>
+
+#include "MPS-Asset-TestSystemComponent.h"
+
+namespace MPS_Asset_Test
+{
+    void MPS_Asset_TestSystemComponent::Reflect(AZ::ReflectContext* context)
+    {
+        if (AZ::SerializeContext* serialize = azrtti_cast<AZ::SerializeContext*>(context))
+        {
+            serialize->Class<MPS_Asset_TestSystemComponent, AZ::Component>()
+                ->Version(0)
+                ;
+
+            if (AZ::EditContext* ec = serialize->GetEditContext())
+            {
+                ec->Class<MPS_Asset_TestSystemComponent>("MPS_Asset_Test", "[Description of functionality provided by this System Component]")
+                    ->ClassElement(AZ::Edit::ClassElements::EditorData, "")
+                        ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("System"))
+                        ->Attribute(AZ::Edit::Attributes::AutoExpand, true)
+                    ;
+            }
+        }
+    }
+
+    void MPS_Asset_TestSystemComponent::GetProvidedServices(AZ::ComponentDescriptor::DependencyArrayType& provided)
+    {
+        provided.push_back(AZ_CRC("MPS_Asset_TestService"));
+    }
+
+    void MPS_Asset_TestSystemComponent::GetIncompatibleServices(AZ::ComponentDescriptor::DependencyArrayType& incompatible)
+    {
+        incompatible.push_back(AZ_CRC("MPS_Asset_TestService"));
+    }
+
+    void MPS_Asset_TestSystemComponent::GetRequiredServices([[maybe_unused]] AZ::ComponentDescriptor::DependencyArrayType& required)
+    {
+    }
+
+    void MPS_Asset_TestSystemComponent::GetDependentServices([[maybe_unused]] AZ::ComponentDescriptor::DependencyArrayType& dependent)
+    {
+    }
+
+    MPS_Asset_TestSystemComponent::MPS_Asset_TestSystemComponent()
+    {
+        if (MPS_Asset_TestInterface::Get() == nullptr)
+        {
+            MPS_Asset_TestInterface::Register(this);
+        }
+    }
+
+    MPS_Asset_TestSystemComponent::~MPS_Asset_TestSystemComponent()
+    {
+        if (MPS_Asset_TestInterface::Get() == this)
+        {
+            MPS_Asset_TestInterface::Unregister(this);
+        }
+    }
+
+    void MPS_Asset_TestSystemComponent::Init()
+    {
+    }
+
+    void MPS_Asset_TestSystemComponent::Activate()
+    {
+        MPS_Asset_TestRequestBus::Handler::BusConnect();
+    }
+
+    void MPS_Asset_TestSystemComponent::Deactivate()
+    {
+        MPS_Asset_TestRequestBus::Handler::BusDisconnect();
+    }
+}

+ 40 - 0
Project/Gem/Source/MPS-Asset-TestSystemComponent.h

@@ -0,0 +1,40 @@
+
+#pragma once
+
+#include <AzCore/Component/Component.h>
+
+#include <MPS-Asset-Test/MPS-Asset-TestBus.h>
+
+namespace MPS_Asset_Test
+{
+    class MPS_Asset_TestSystemComponent
+        : public AZ::Component
+        , protected MPS_Asset_TestRequestBus::Handler
+    {
+    public:
+        AZ_COMPONENT(MPS_Asset_TestSystemComponent, "{04CFD3D7-735A-4701-85B3-9E4D95D46AA4}");
+
+        static void Reflect(AZ::ReflectContext* context);
+
+        static void GetProvidedServices(AZ::ComponentDescriptor::DependencyArrayType& provided);
+        static void GetIncompatibleServices(AZ::ComponentDescriptor::DependencyArrayType& incompatible);
+        static void GetRequiredServices(AZ::ComponentDescriptor::DependencyArrayType& required);
+        static void GetDependentServices(AZ::ComponentDescriptor::DependencyArrayType& dependent);
+
+        MPS_Asset_TestSystemComponent();
+        ~MPS_Asset_TestSystemComponent();
+
+    protected:
+        ////////////////////////////////////////////////////////////////////////
+        // MPS_Asset_TestRequestBus interface implementation
+
+        ////////////////////////////////////////////////////////////////////////
+
+        ////////////////////////////////////////////////////////////////////////
+        // AZ::Component interface implementation
+        void Init() override;
+        void Activate() override;
+        void Deactivate() override;
+        ////////////////////////////////////////////////////////////////////////
+    };
+}

+ 31 - 0
Project/Gem/enabled_gems.cmake

@@ -0,0 +1,31 @@
+
+set(ENABLED_GEMS
+    MPS-Asset-Test
+    Atom
+    AudioSystem
+    AWSCore
+    CameraFramework
+    DebugDraw
+    EditorPythonBindings
+    EMotionFX
+    GameState
+    ImGui
+    LandscapeCanvas
+    LyShine
+    PhysX
+    PrimitiveAssets
+    PrefabBuilder
+    SaveData
+    ScriptCanvasPhysics
+    ScriptEvents
+    StartingPointInput
+    TextureAtlas
+    WhiteBox
+    props_mps
+    character_mps
+    kb3d_mps
+    landscape_mps
+    level_art_mps
+    pbr_material_pack_mps
+    particlefx_mps
+)

+ 21 - 0
Project/Gem/gem.json

@@ -0,0 +1,21 @@
+{
+    "gem_name": "MPS-Asset-Test",
+    "display_name": "MPS-Asset-Test",
+    "license": "What license MPS-Asset-Test uses goes here: i.e. Apache-2.0 or MIT",
+    "license_url": "Link to the license web site goes here: i.e. https://opensource.org/licenses/Apache-2.0 Or https://opensource.org/licenses/MIT",
+    "origin": "The name of the originator goes here. i.e. XYZ Inc.",
+    "origin_url": "The primary repo for MPS-Asset-Test goes here: i.e. http://www.mydomain.com",
+    "type": "",
+    "summary": "A short description of MPS-Asset-Test.",
+    "canonical_tags": [
+        "Gem"
+    ],
+    "user_tags": [
+        "MPS-Asset-Test"
+    ],
+    "icon_path": "preview.png",
+    "requirements": "",
+    "documentation_url": "",
+    "dependencies": [
+    ]
+}

+ 7 - 0
Project/Gem/mps-asset-test_files.cmake

@@ -0,0 +1,7 @@
+
+set(FILES
+    Include/MPS-Asset-Test/MPS-Asset-TestBus.h
+    Source/MPS-Asset-TestSystemComponent.cpp
+    Source/MPS-Asset-TestSystemComponent.h
+    enabled_gems.cmake
+)

+ 4 - 0
Project/Gem/mps-asset-test_shared_files.cmake

@@ -0,0 +1,4 @@
+
+set(FILES
+    Source/MPS-Asset-TestModule.cpp
+)

+ 843 - 0
Project/Levels/MPS-Asset-Test/MPS-Asset-Test.prefab

@@ -0,0 +1,843 @@
+{
+    "ContainerEntity": {
+        "Id": "Entity_[1146574390643]",
+        "Name": "Level",
+        "Components": {
+            "Component_[10641544592923449938]": {
+                "$type": "EditorInspectorComponent",
+                "Id": 10641544592923449938
+            },
+            "Component_[12039882709170782873]": {
+                "$type": "EditorOnlyEntityComponent",
+                "Id": 12039882709170782873
+            },
+            "Component_[12265484671603697631]": {
+                "$type": "EditorPendingCompositionComponent",
+                "Id": 12265484671603697631
+            },
+            "Component_[14126657869720434043]": {
+                "$type": "EditorEntitySortComponent",
+                "Id": 14126657869720434043,
+                "Child Entity Order": [
+                    "Entity_[1176639161715]",
+                    "Entity_[649198097988]",
+                    "Entity_[381692106648]"
+                ]
+            },
+            "Component_[15230859088967841193]": {
+                "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
+                "Id": 15230859088967841193,
+                "Parent Entity": ""
+            },
+            "Component_[16239496886950819870]": {
+                "$type": "EditorDisabledCompositionComponent",
+                "Id": 16239496886950819870
+            },
+            "Component_[18225413929989878930]": {
+                "$type": "LocalViewBookmarkComponent",
+                "Id": 18225413929989878930,
+                "LocalBookmarkFileName": "MPS-Asset-Test_86433838269.setreg"
+            },
+            "Component_[5688118765544765547]": {
+                "$type": "EditorEntityIconComponent",
+                "Id": 5688118765544765547
+            },
+            "Component_[7247035804068349658]": {
+                "$type": "EditorPrefabComponent",
+                "Id": 7247035804068349658
+            },
+            "Component_[9307224322037797205]": {
+                "$type": "EditorLockComponent",
+                "Id": 9307224322037797205
+            },
+            "Component_[9562516168917670048]": {
+                "$type": "EditorVisibilityComponent",
+                "Id": 9562516168917670048
+            }
+        }
+    },
+    "Entities": {
+        "Entity_[1155164325235]": {
+            "Id": "Entity_[1155164325235]",
+            "Name": "Sun",
+            "Components": {
+                "Component_[13620450453324765907]": {
+                    "$type": "EditorLockComponent",
+                    "Id": 13620450453324765907
+                },
+                "Component_[2134313378593666258]": {
+                    "$type": "EditorInspectorComponent",
+                    "Id": 2134313378593666258
+                },
+                "Component_[234010807770404186]": {
+                    "$type": "EditorVisibilityComponent",
+                    "Id": 234010807770404186
+                },
+                "Component_[2970359110423865725]": {
+                    "$type": "EditorEntityIconComponent",
+                    "Id": 2970359110423865725
+                },
+                "Component_[3722854130373041803]": {
+                    "$type": "EditorOnlyEntityComponent",
+                    "Id": 3722854130373041803
+                },
+                "Component_[5992533738676323195]": {
+                    "$type": "EditorDisabledCompositionComponent",
+                    "Id": 5992533738676323195
+                },
+                "Component_[7378860763541895402]": {
+                    "$type": "AZ::Render::EditorDirectionalLightComponent",
+                    "Id": 7378860763541895402,
+                    "Controller": {
+                        "Configuration": {
+                            "Intensity": 1.0,
+                            "CameraEntityId": "",
+                            "ShadowFilterMethod": 1
+                        }
+                    }
+                },
+                "Component_[7892834440890947578]": {
+                    "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
+                    "Id": 7892834440890947578,
+                    "Parent Entity": "Entity_[1176639161715]",
+                    "Transform Data": {
+                        "Translate": [
+                            0.0,
+                            0.0,
+                            13.487043380737305
+                        ],
+                        "Rotate": [
+                            -76.13099670410156,
+                            -0.847000002861023,
+                            -15.8100004196167
+                        ]
+                    }
+                },
+                "Component_[8599729549570828259]": {
+                    "$type": "EditorEntitySortComponent",
+                    "Id": 8599729549570828259
+                },
+                "Component_[952797371922080273]": {
+                    "$type": "EditorPendingCompositionComponent",
+                    "Id": 952797371922080273
+                }
+            }
+        },
+        "Entity_[1159459292531]": {
+            "Id": "Entity_[1159459292531]",
+            "Name": "Ground",
+            "Components": {
+                "Component_[12260880513256986252]": {
+                    "$type": "EditorEntityIconComponent",
+                    "Id": 12260880513256986252
+                },
+                "Component_[13711420870643673468]": {
+                    "$type": "EditorDisabledCompositionComponent",
+                    "Id": 13711420870643673468
+                },
+                "Component_[138002849734991713]": {
+                    "$type": "EditorOnlyEntityComponent",
+                    "Id": 138002849734991713
+                },
+                "Component_[16578565737331764849]": {
+                    "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
+                    "Id": 16578565737331764849,
+                    "Parent Entity": "Entity_[1176639161715]"
+                },
+                "Component_[16919232076966545697]": {
+                    "$type": "EditorInspectorComponent",
+                    "Id": 16919232076966545697
+                },
+                "Component_[5182430712893438093]": {
+                    "$type": "EditorMaterialComponent",
+                    "Id": 5182430712893438093
+                },
+                "Component_[5245524694917323904]": {
+                    "$type": "EditorColliderComponent",
+                    "Id": 5245524694917323904,
+                    "ColliderConfiguration": {
+                        "Position": [
+                            0.0,
+                            0.0,
+                            -0.5
+                        ],
+                        "MaterialSlots": {
+                            "Slots": [
+                                {
+                                    "Name": "Entire object"
+                                }
+                            ]
+                        }
+                    },
+                    "ShapeConfiguration": {
+                        "ShapeType": 1,
+                        "Box": {
+                            "Configuration": [
+                                512.0,
+                                512.0,
+                                1.0
+                            ]
+                        }
+                    },
+                    "DebugDrawSettings": {
+                        "LocallyEnabled": false
+                    }
+                },
+                "Component_[5675108321710651991]": {
+                    "$type": "AZ::Render::EditorMeshComponent",
+                    "Id": 5675108321710651991,
+                    "Controller": {
+                        "Configuration": {
+                            "ModelAsset": {
+                                "assetId": {
+                                    "guid": "{0CD745C0-6AA8-569A-A68A-73A3270986C4}",
+                                    "subId": 277889906
+                                },
+                                "assetHint": "objects/groudplane/groundplane_512x512m.azmodel"
+                            }
+                        }
+                    }
+                },
+                "Component_[5681893399601237518]": {
+                    "$type": "EditorEntitySortComponent",
+                    "Id": 5681893399601237518
+                },
+                "Component_[592692962543397545]": {
+                    "$type": "EditorPendingCompositionComponent",
+                    "Id": 592692962543397545
+                },
+                "Component_[7090012899106946164]": {
+                    "$type": "EditorLockComponent",
+                    "Id": 7090012899106946164
+                },
+                "Component_[9410832619875640998]": {
+                    "$type": "EditorVisibilityComponent",
+                    "Id": 9410832619875640998
+                }
+            }
+        },
+        "Entity_[1163754259827]": {
+            "Id": "Entity_[1163754259827]",
+            "Name": "Camera",
+            "Components": {
+                "Component_[11895140916889160460]": {
+                    "$type": "EditorEntityIconComponent",
+                    "Id": 11895140916889160460
+                },
+                "Component_[16880285896855930892]": {
+                    "$type": "{CA11DA46-29FF-4083-B5F6-E02C3A8C3A3D} EditorCameraComponent",
+                    "Id": 16880285896855930892,
+                    "Controller": {
+                        "Configuration": {
+                            "Field of View": 55.0,
+                            "EditorEntityId": 17714891909842724273
+                        }
+                    }
+                },
+                "Component_[17187464423780271193]": {
+                    "$type": "EditorLockComponent",
+                    "Id": 17187464423780271193
+                },
+                "Component_[17495696818315413311]": {
+                    "$type": "EditorEntitySortComponent",
+                    "Id": 17495696818315413311
+                },
+                "Component_[18086214374043522055]": {
+                    "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
+                    "Id": 18086214374043522055,
+                    "Parent Entity": "Entity_[1176639161715]",
+                    "Transform Data": {
+                        "Translate": [
+                            -2.3000001907348633,
+                            -3.9368600845336914,
+                            1.0
+                        ],
+                        "Rotate": [
+                            -2.050307512283325,
+                            1.9552897214889526,
+                            -43.623355865478516
+                        ]
+                    }
+                },
+                "Component_[2654521436129313160]": {
+                    "$type": "EditorVisibilityComponent",
+                    "Id": 2654521436129313160
+                },
+                "Component_[5265045084611556958]": {
+                    "$type": "EditorDisabledCompositionComponent",
+                    "Id": 5265045084611556958
+                },
+                "Component_[7169798125182238623]": {
+                    "$type": "EditorPendingCompositionComponent",
+                    "Id": 7169798125182238623
+                },
+                "Component_[7255796294953281766]": {
+                    "$type": "GenericComponentWrapper",
+                    "Id": 7255796294953281766,
+                    "m_template": {
+                        "$type": "FlyCameraInputComponent"
+                    }
+                },
+                "Component_[8866210352157164042]": {
+                    "$type": "EditorInspectorComponent",
+                    "Id": 8866210352157164042
+                },
+                "Component_[9129253381063760879]": {
+                    "$type": "EditorOnlyEntityComponent",
+                    "Id": 9129253381063760879
+                }
+            }
+        },
+        "Entity_[1168049227123]": {
+            "Id": "Entity_[1168049227123]",
+            "Name": "Grid",
+            "Components": {
+                "Component_[11443347433215807130]": {
+                    "$type": "EditorEntityIconComponent",
+                    "Id": 11443347433215807130
+                },
+                "Component_[14249419413039427459]": {
+                    "$type": "EditorInspectorComponent",
+                    "Id": 14249419413039427459
+                },
+                "Component_[15448581635946161318]": {
+                    "$type": "AZ::Render::EditorGridComponent",
+                    "Id": 15448581635946161318,
+                    "Controller": {
+                        "Configuration": {
+                            "primarySpacing": 4.0,
+                            "primaryColor": [
+                                0.501960813999176,
+                                0.501960813999176,
+                                0.501960813999176
+                            ],
+                            "secondarySpacing": 0.5,
+                            "secondaryColor": [
+                                0.250980406999588,
+                                0.250980406999588,
+                                0.250980406999588
+                            ]
+                        }
+                    }
+                },
+                "Component_[1843303322527297409]": {
+                    "$type": "EditorDisabledCompositionComponent",
+                    "Id": 1843303322527297409
+                },
+                "Component_[380249072065273654]": {
+                    "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
+                    "Id": 380249072065273654,
+                    "Parent Entity": "Entity_[1176639161715]"
+                },
+                "Component_[7476660583684339787]": {
+                    "$type": "EditorPendingCompositionComponent",
+                    "Id": 7476660583684339787
+                },
+                "Component_[7557626501215118375]": {
+                    "$type": "EditorEntitySortComponent",
+                    "Id": 7557626501215118375
+                },
+                "Component_[7984048488947365511]": {
+                    "$type": "EditorVisibilityComponent",
+                    "Id": 7984048488947365511
+                },
+                "Component_[8118181039276487398]": {
+                    "$type": "EditorOnlyEntityComponent",
+                    "Id": 8118181039276487398
+                },
+                "Component_[9189909764215270515]": {
+                    "$type": "EditorLockComponent",
+                    "Id": 9189909764215270515
+                }
+            }
+        },
+        "Entity_[1172344194419]": {
+            "Id": "Entity_[1172344194419]",
+            "Name": "Shader Ball",
+            "Components": {
+                "Component_[10789351944715265527]": {
+                    "$type": "EditorOnlyEntityComponent",
+                    "Id": 10789351944715265527
+                },
+                "Component_[12037033284781049225]": {
+                    "$type": "EditorEntitySortComponent",
+                    "Id": 12037033284781049225
+                },
+                "Component_[13759153306105970079]": {
+                    "$type": "EditorPendingCompositionComponent",
+                    "Id": 13759153306105970079
+                },
+                "Component_[14135560884830586279]": {
+                    "$type": "EditorInspectorComponent",
+                    "Id": 14135560884830586279
+                },
+                "Component_[16247165675903986673]": {
+                    "$type": "EditorVisibilityComponent",
+                    "Id": 16247165675903986673,
+                    "VisibilityFlag": false
+                },
+                "Component_[18082433625958885247]": {
+                    "$type": "EditorDisabledCompositionComponent",
+                    "Id": 18082433625958885247
+                },
+                "Component_[6472623349872972660]": {
+                    "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
+                    "Id": 6472623349872972660,
+                    "Parent Entity": "Entity_[1176639161715]",
+                    "Transform Data": {
+                        "Rotate": [
+                            0.0,
+                            0.10000000149011612,
+                            180.0
+                        ]
+                    }
+                },
+                "Component_[6495255223970673916]": {
+                    "$type": "AZ::Render::EditorMeshComponent",
+                    "Id": 6495255223970673916,
+                    "Controller": {
+                        "Configuration": {
+                            "ModelAsset": {
+                                "assetId": {
+                                    "guid": "{FD340C30-755C-5911-92A3-19A3F7A77931}",
+                                    "subId": 281415304
+                                },
+                                "assetHint": "objects/shaderball/shaderball_default_1m.azmodel"
+                            }
+                        }
+                    }
+                },
+                "Component_[8550141614185782969]": {
+                    "$type": "EditorEntityIconComponent",
+                    "Id": 8550141614185782969
+                },
+                "Component_[9439770997198325425]": {
+                    "$type": "EditorLockComponent",
+                    "Id": 9439770997198325425
+                }
+            }
+        },
+        "Entity_[1176639161715]": {
+            "Id": "Entity_[1176639161715]",
+            "Name": "Atom Default Environment",
+            "Components": {
+                "Component_[10757302973393310045]": {
+                    "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
+                    "Id": 10757302973393310045,
+                    "Parent Entity": "Entity_[1146574390643]"
+                },
+                "Component_[14505817420424255464]": {
+                    "$type": "EditorInspectorComponent",
+                    "Id": 14505817420424255464,
+                    "ComponentOrderEntryArray": [
+                        {
+                            "ComponentId": 10757302973393310045
+                        }
+                    ]
+                },
+                "Component_[14988041764659020032]": {
+                    "$type": "EditorLockComponent",
+                    "Id": 14988041764659020032
+                },
+                "Component_[15900837685796817138]": {
+                    "$type": "EditorVisibilityComponent",
+                    "Id": 15900837685796817138
+                },
+                "Component_[3298767348226484884]": {
+                    "$type": "EditorOnlyEntityComponent",
+                    "Id": 3298767348226484884
+                },
+                "Component_[4076975109609220594]": {
+                    "$type": "EditorPendingCompositionComponent",
+                    "Id": 4076975109609220594
+                },
+                "Component_[5679760548946028854]": {
+                    "$type": "EditorDisabledCompositionComponent",
+                    "Id": 5679760548946028854
+                },
+                "Component_[5855590796136709437]": {
+                    "$type": "EditorEntitySortComponent",
+                    "Id": 5855590796136709437,
+                    "Child Entity Order": [
+                        "Entity_[1155164325235]",
+                        "Entity_[1180934129011]",
+                        "Entity_[1172344194419]",
+                        "Entity_[1168049227123]",
+                        "Entity_[1163754259827]",
+                        "Entity_[1159459292531]"
+                    ]
+                },
+                "Component_[9277695270015777859]": {
+                    "$type": "EditorEntityIconComponent",
+                    "Id": 9277695270015777859
+                }
+            }
+        },
+        "Entity_[1180934129011]": {
+            "Id": "Entity_[1180934129011]",
+            "Name": "Global Sky",
+            "Components": {
+                "Component_[11231930600558681245]": {
+                    "$type": "AZ::Render::EditorHDRiSkyboxComponent",
+                    "Id": 11231930600558681245,
+                    "Controller": {
+                        "Configuration": {
+                            "CubemapAsset": {
+                                "assetId": {
+                                    "guid": "{215E47FD-D181-5832-B1AB-91673ABF6399}",
+                                    "subId": 1000
+                                },
+                                "assetHint": "lightingpresets/highcontrast/goegap_4k_skyboxcm.exr.streamingimage"
+                            }
+                        }
+                    }
+                },
+                "Component_[1428633914413949476]": {
+                    "$type": "EditorLockComponent",
+                    "Id": 1428633914413949476
+                },
+                "Component_[14936200426671614999]": {
+                    "$type": "AZ::Render::EditorImageBasedLightComponent",
+                    "Id": 14936200426671614999,
+                    "Controller": {
+                        "Configuration": {
+                            "diffuseImageAsset": {
+                                "assetId": {
+                                    "guid": "{3FD09945-D0F2-55C8-B9AF-B2FD421FE3BE}",
+                                    "subId": 3000
+                                },
+                                "assetHint": "lightingpresets/highcontrast/goegap_4k_iblglobalcm_ibldiffuse.exr.streamingimage"
+                            },
+                            "specularImageAsset": {
+                                "assetId": {
+                                    "guid": "{3FD09945-D0F2-55C8-B9AF-B2FD421FE3BE}",
+                                    "subId": 2000
+                                },
+                                "assetHint": "lightingpresets/highcontrast/goegap_4k_iblglobalcm_iblspecular.exr.streamingimage"
+                            }
+                        }
+                    }
+                },
+                "Component_[14994774102579326069]": {
+                    "$type": "EditorDisabledCompositionComponent",
+                    "Id": 14994774102579326069
+                },
+                "Component_[15417479889044493340]": {
+                    "$type": "EditorPendingCompositionComponent",
+                    "Id": 15417479889044493340
+                },
+                "Component_[15826613364991382688]": {
+                    "$type": "EditorEntitySortComponent",
+                    "Id": 15826613364991382688
+                },
+                "Component_[1665003113283562343]": {
+                    "$type": "EditorOnlyEntityComponent",
+                    "Id": 1665003113283562343
+                },
+                "Component_[3704934735944502280]": {
+                    "$type": "EditorEntityIconComponent",
+                    "Id": 3704934735944502280
+                },
+                "Component_[5698542331457326479]": {
+                    "$type": "EditorVisibilityComponent",
+                    "Id": 5698542331457326479
+                },
+                "Component_[6644513399057217122]": {
+                    "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
+                    "Id": 6644513399057217122,
+                    "Parent Entity": "Entity_[1176639161715]"
+                },
+                "Component_[931091830724002070]": {
+                    "$type": "EditorInspectorComponent",
+                    "Id": 931091830724002070
+                }
+            }
+        },
+        "Entity_[381692106648]": {
+            "Id": "Entity_[381692106648]",
+            "Name": "hts_road_c",
+            "Components": {
+                "Component_[11232430136431374678]": {
+                    "$type": "EditorVisibilityComponent",
+                    "Id": 11232430136431374678
+                },
+                "Component_[11608228612077603576]": {
+                    "$type": "EditorOnlyEntityComponent",
+                    "Id": 11608228612077603576
+                },
+                "Component_[11964991318764436598]": {
+                    "$type": "EditorPendingCompositionComponent",
+                    "Id": 11964991318764436598
+                },
+                "Component_[14659434778387959219]": {
+                    "$type": "EditorEntityIconComponent",
+                    "Id": 14659434778387959219
+                },
+                "Component_[18274215730579794650]": {
+                    "$type": "EditorDisabledCompositionComponent",
+                    "Id": 18274215730579794650
+                },
+                "Component_[2618380555493572508]": {
+                    "$type": "AZ::Render::EditorMeshComponent",
+                    "Id": 2618380555493572508,
+                    "Controller": {
+                        "Configuration": {
+                            "ModelAsset": {
+                                "assetId": {
+                                    "guid": "{13E539F9-9535-512F-B9FA-8DACFC2BA772}",
+                                    "subId": 283344819
+                                },
+                                "assetHint": "kb3d_hightechstreets/objects/hts_road_c/hts_road_c.azmodel"
+                            }
+                        }
+                    }
+                },
+                "Component_[2890524035625555550]": {
+                    "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
+                    "Id": 2890524035625555550,
+                    "Parent Entity": "Entity_[1146574390643]",
+                    "Transform Data": {
+                        "Translate": [
+                            0.18282854557037354,
+                            -0.3583040237426758,
+                            0.9422913789749146
+                        ]
+                    }
+                },
+                "Component_[6009065962997688442]": {
+                    "$type": "EditorLockComponent",
+                    "Id": 6009065962997688442
+                },
+                "Component_[828547212593823523]": {
+                    "$type": "EditorEntitySortComponent",
+                    "Id": 828547212593823523
+                },
+                "Component_[8584908098851499133]": {
+                    "$type": "EditorMaterialComponent",
+                    "Id": 8584908098851499133,
+                    "Controller": {
+                        "Configuration": {
+                            "materials": [
+                                {
+                                    "Key": {
+                                        "materialSlotStableId": 9265600
+                                    },
+                                    "Value": {
+                                        "MaterialAsset": {
+                                            "assetId": {
+                                                "guid": "{51DE21E9-F590-51A3-AFD1-3CCC344741C0}"
+                                            },
+                                            "assetHint": "kb3d_hightechstreets/objects/hts_road_c/hts_road_c_kb3d_hts_rubbergray.azmaterial"
+                                        }
+                                    }
+                                },
+                                {
+                                    "Key": {
+                                        "materialSlotStableId": 881380358
+                                    },
+                                    "Value": {
+                                        "MaterialAsset": {
+                                            "assetId": {
+                                                "guid": "{03AF0B63-99D9-55F7-9F93-860856E47A42}"
+                                            },
+                                            "assetHint": "kb3d_hightechstreets/objects/hts_road_c/hts_road_c_kb3d_hts_plasticwhite.azmaterial"
+                                        }
+                                    }
+                                },
+                                {
+                                    "Key": {
+                                        "materialSlotStableId": 1116965034
+                                    },
+                                    "Value": {
+                                        "MaterialAsset": {
+                                            "assetId": {
+                                                "guid": "{07992105-5D06-5C2B-8C2C-0B700BEDEE75}"
+                                            },
+                                            "assetHint": "kb3d_hightechstreets/objects/hts_road_c/hts_road_c_kb3d_hts_lightblue.azmaterial"
+                                        }
+                                    }
+                                },
+                                {
+                                    "Key": {
+                                        "materialSlotStableId": 1201697824
+                                    },
+                                    "Value": {
+                                        "MaterialAsset": {
+                                            "assetId": {
+                                                "guid": "{5E8F46BE-F55D-5A4F-97C5-1FA13FA94E47}"
+                                            },
+                                            "assetHint": "kb3d_hightechstreets/objects/hts_road_c/hts_road_c_kb3d_hts_metalgrey.azmaterial"
+                                        }
+                                    }
+                                },
+                                {
+                                    "Key": {
+                                        "materialSlotStableId": 2220685425
+                                    },
+                                    "Value": {
+                                        "MaterialAsset": {
+                                            "assetId": {
+                                                "guid": "{C603BD6F-3ADC-5F4B-B0C2-C3C98DC16E14}"
+                                            },
+                                            "assetHint": "kb3d_hightechstreets/objects/hts_road_c/hts_road_c_kb3d_hts_metallight.azmaterial"
+                                        }
+                                    }
+                                },
+                                {
+                                    "Key": {
+                                        "materialSlotStableId": 2849564097
+                                    },
+                                    "Value": {
+                                        "MaterialAsset": {
+                                            "assetId": {
+                                                "guid": "{4AAF878A-2F45-5665-9FA8-D22575E66D5C}"
+                                            },
+                                            "assetHint": "kb3d_hightechstreets/objects/hts_road_c/hts_road_c_kb3d_hts_metaldarkgrey.azmaterial"
+                                        }
+                                    }
+                                },
+                                {
+                                    "Key": {
+                                        "materialSlotStableId": 3619000048
+                                    },
+                                    "Value": {
+                                        "MaterialAsset": {
+                                            "assetId": {
+                                                "guid": "{873B047E-7590-59C9-85C6-05401BB545BF}"
+                                            },
+                                            "assetHint": "kb3d_hightechstreets/objects/hts_road_c/hts_road_c_kb3d_hts_metalwhite.azmaterial"
+                                        }
+                                    }
+                                },
+                                {
+                                    "Key": {
+                                        "materialSlotStableId": 4202942227
+                                    },
+                                    "Value": {
+                                        "MaterialAsset": {
+                                            "assetId": {
+                                                "guid": "{82D17CC2-B52B-5D43-BD48-A04C53A35FA1}"
+                                            },
+                                            "assetHint": "kb3d_hightechstreets/objects/hts_road_c/hts_road_c_kb3d_hts_metalyellow.azmaterial"
+                                        }
+                                    }
+                                }
+                            ]
+                        }
+                    }
+                },
+                "Component_[9257432994196758248]": {
+                    "$type": "EditorInspectorComponent",
+                    "Id": 9257432994196758248
+                }
+            }
+        },
+        "Entity_[649198097988]": {
+            "Id": "Entity_[649198097988]",
+            "Name": "hts_bench_a",
+            "Components": {
+                "Component_[10589212807996350507]": {
+                    "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
+                    "Id": 10589212807996350507,
+                    "Parent Entity": "Entity_[1146574390643]"
+                },
+                "Component_[11255235909994901886]": {
+                    "$type": "EditorInspectorComponent",
+                    "Id": 11255235909994901886
+                },
+                "Component_[12229453525688994994]": {
+                    "$type": "AZ::Render::EditorMeshComponent",
+                    "Id": 12229453525688994994,
+                    "Controller": {
+                        "Configuration": {
+                            "ModelAsset": {
+                                "assetId": {
+                                    "guid": "{298E5F87-B65A-5886-B6DD-191DD9D84DE5}",
+                                    "subId": 281617696
+                                },
+                                "assetHint": "kb3d_hightechstreets/objects/hts_bench_a/hts_bench_a.azmodel"
+                            }
+                        }
+                    }
+                },
+                "Component_[1392011186359693350]": {
+                    "$type": "EditorOnlyEntityComponent",
+                    "Id": 1392011186359693350
+                },
+                "Component_[1630143204206431072]": {
+                    "$type": "EditorMaterialComponent",
+                    "Id": 1630143204206431072,
+                    "Controller": {
+                        "Configuration": {
+                            "materials": [
+                                {
+                                    "Key": {
+                                        "materialSlotStableId": 881380358
+                                    },
+                                    "Value": {
+                                        "MaterialAsset": {
+                                            "assetId": {
+                                                "guid": "{E5F52A8E-88CC-5A89-A9D7-FFEB78D6FE7B}"
+                                            },
+                                            "assetHint": "kb3d_hightechstreets/objects/hts_bench_a/hts_bench_a_kb3d_hts_plasticwhite.azmaterial"
+                                        }
+                                    }
+                                },
+                                {
+                                    "Key": {
+                                        "materialSlotStableId": 1201697824
+                                    },
+                                    "Value": {
+                                        "MaterialAsset": {
+                                            "assetId": {
+                                                "guid": "{F2EF64B7-3428-5556-BB83-773A97D42B29}"
+                                            },
+                                            "assetHint": "kb3d_hightechstreets/objects/hts_bench_a/hts_bench_a_kb3d_hts_metalgrey.azmaterial"
+                                        }
+                                    }
+                                },
+                                {
+                                    "Key": {
+                                        "materialSlotStableId": 3619000048
+                                    },
+                                    "Value": {
+                                        "MaterialAsset": {
+                                            "assetId": {
+                                                "guid": "{09C7C74C-ED70-520C-8CEE-43B57E05B366}"
+                                            },
+                                            "assetHint": "kb3d_hightechstreets/objects/hts_bench_a/hts_bench_a_kb3d_hts_metalwhite.azmaterial"
+                                        }
+                                    }
+                                }
+                            ]
+                        }
+                    }
+                },
+                "Component_[16803068173746691149]": {
+                    "$type": "EditorVisibilityComponent",
+                    "Id": 16803068173746691149
+                },
+                "Component_[17115724360853562687]": {
+                    "$type": "EditorEntitySortComponent",
+                    "Id": 17115724360853562687
+                },
+                "Component_[4541269734555853195]": {
+                    "$type": "EditorDisabledCompositionComponent",
+                    "Id": 4541269734555853195
+                },
+                "Component_[6844522713015350749]": {
+                    "$type": "EditorLockComponent",
+                    "Id": 6844522713015350749
+                },
+                "Component_[9040201881620207373]": {
+                    "$type": "EditorEntityIconComponent",
+                    "Id": 9040201881620207373
+                },
+                "Component_[9538214551917479634]": {
+                    "$type": "EditorPendingCompositionComponent",
+                    "Id": 9538214551917479634
+                }
+            }
+        }
+    }
+}

+ 8 - 0
Project/Platform/Android/android_project.cmake

@@ -0,0 +1,8 @@
+# {BEGIN_LICENSE}
+# Copyright (c) Contributors to the Open 3D Engine Project.
+# For complete copyright and license terms please see the LICENSE at the root of this distribution.
+#
+# SPDX-License-Identifier: Apache-2.0 OR MIT
+#
+# {END_LICENSE}
+

+ 9 - 0
Project/Platform/Android/android_project.json

@@ -0,0 +1,9 @@
+{
+    "Tags": ["Android"],
+    "android_settings" : {
+        "package_name" : "org.o3de.MPS-Asset-Test",
+        "version_number" : 1,
+        "version_name" : "1.0.0.0",
+        "orientation" : "landscape"
+    }
+}

+ 8 - 0
Project/Platform/Linux/linux_project.cmake

@@ -0,0 +1,8 @@
+# {BEGIN_LICENSE}
+# Copyright (c) Contributors to the Open 3D Engine Project.
+# For complete copyright and license terms please see the LICENSE at the root of this distribution.
+#
+# SPDX-License-Identifier: Apache-2.0 OR MIT
+#
+# {END_LICENSE}
+

+ 3 - 0
Project/Platform/Linux/linux_project.json

@@ -0,0 +1,3 @@
+{
+  "Tags": ["Linux"]
+}

+ 8 - 0
Project/Platform/Mac/mac_project.cmake

@@ -0,0 +1,8 @@
+# {BEGIN_LICENSE}
+# Copyright (c) Contributors to the Open 3D Engine Project.
+# For complete copyright and license terms please see the LICENSE at the root of this distribution.
+#
+# SPDX-License-Identifier: Apache-2.0 OR MIT
+#
+# {END_LICENSE}
+

+ 3 - 0
Project/Platform/Mac/mac_project.json

@@ -0,0 +1,3 @@
+{
+  "Tags": ["Mac"]
+}

+ 8 - 0
Project/Platform/Windows/windows_project.cmake

@@ -0,0 +1,8 @@
+# {BEGIN_LICENSE}
+# Copyright (c) Contributors to the Open 3D Engine Project.
+# For complete copyright and license terms please see the LICENSE at the root of this distribution.
+#
+# SPDX-License-Identifier: Apache-2.0 OR MIT
+#
+# {END_LICENSE}
+

+ 3 - 0
Project/Platform/Windows/windows_project.json

@@ -0,0 +1,3 @@
+{
+  "Tags": ["Windows"]
+}

+ 8 - 0
Project/Platform/iOS/ios_project.cmake

@@ -0,0 +1,8 @@
+# {BEGIN_LICENSE}
+# Copyright (c) Contributors to the Open 3D Engine Project.
+# For complete copyright and license terms please see the LICENSE at the root of this distribution.
+#
+# SPDX-License-Identifier: Apache-2.0 OR MIT
+#
+# {END_LICENSE}
+

+ 3 - 0
Project/Platform/iOS/ios_project.json

@@ -0,0 +1,3 @@
+{
+    "Tags": ["iOS"]
+}

+ 23 - 0
Project/Registry/assetprocessor_settings.setreg

@@ -0,0 +1,23 @@
+{
+    "Amazon": {
+        "AssetProcessor": {
+            "Settings": {
+                "ScanFolder Project/ShaderLib": {
+                    "watch": "@PROJECTROOT@/ShaderLib",
+                    "recursive": 1,
+                    "order": 1
+                },
+                "ScanFolder Project/Shaders": {
+                    "watch": "@PROJECTROOT@/Shaders",
+                    "recurisve": 1,
+                    "order": 2
+                },
+                "ScanFolder Project/Registry": {
+                    "watch": "@PROJECTROOT@/Registry",
+                    "recursive": 1,
+                    "order": 3
+                }
+            }
+        }
+    }
+}

+ 10 - 0
Project/Registry/awscoreconfiguration.setreg

@@ -0,0 +1,10 @@
+{
+    "Amazon":
+    {
+        "AWSCore":
+        {
+            "ProfileName": "default",
+            "ResourceMappingConfigFileName": "default_aws_resource_mappings.json"
+        }
+    }
+}

+ 11 - 0
Project/Registry/physxdebugconfiguration.setreg

@@ -0,0 +1,11 @@
+{
+    "Amazon": {
+        "Gems": {
+            "PhysX": {
+                "Debug": {
+                    "PhysXDebugConfiguration": {}
+                }
+            }
+        }
+    }
+}

+ 9 - 0
Project/Registry/physxdefaultsceneconfiguration.setreg

@@ -0,0 +1,9 @@
+{
+    "Amazon": {
+        "Gems": {
+            "PhysX": {
+                "DefaultSceneConfiguration": {}
+            }
+        }
+    }
+}

+ 98 - 0
Project/Registry/physxsystemconfiguration.setreg

@@ -0,0 +1,98 @@
+{
+    "Amazon": {
+        "Gems": {
+            "PhysX": {
+                "PhysXSystemConfiguration": {
+                    "CollisionConfig": {
+                        "Layers": {
+                            "LayerNames": [
+                                "Default",
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {},
+                                {}
+                            ]
+                        },
+                        "Groups": {
+                            "GroupPresets": [
+                                {
+                                    "Name": "All",
+                                    "ReadOnly": true
+                                },
+                                {
+                                    "Id": {
+                                        "GroupId": "{98C73681-BDA7-4FC5-AED6-605732EB3590}"
+                                    },
+                                    "Name": "None",
+                                    "Group": {
+                                        "Mask": 0
+                                    },
+                                    "ReadOnly": true
+                                }
+                            ]
+                        }
+                    }
+                }
+            }
+        }
+    }
+}

+ 3 - 0
Project/Resources/GameSDK.ico

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:ba0704efd586fee72b3d45b19163a1b67cd5594bcbf57cb28d796e2919502aba
+size 148143

+ 3 - 0
Project/Resources/LegacyLogoLauncher.bmp

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:ef3584c695998fd5f2d137148a11f68602523c817af5d18fdd6c56b0b5278a6c
+size 462760

+ 68 - 0
Project/Resources/Platform/Mac/Images.xcassets/AppIcon.appiconset/Contents.json

@@ -0,0 +1,68 @@
+{
+  "images" : [
+    {
+      "size" : "16x16",
+      "idiom" : "mac",
+      "filename" : "icon_16.png",
+      "scale" : "1x"
+    },
+    {
+      "size" : "16x16",
+      "idiom" : "mac",
+      "filename" : "icon_16_2x.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "32x32",
+      "idiom" : "mac",
+      "filename" : "icon_32.png",
+      "scale" : "1x"
+    },
+    {
+      "size" : "32x32",
+      "idiom" : "mac",
+      "filename" : "icon_32_2x.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "128x128",
+      "idiom" : "mac",
+      "filename" : "icon_128.png",
+      "scale" : "1x"
+    },
+    {
+      "size" : "128x128",
+      "idiom" : "mac",
+      "filename" : "icon_128_2x.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "256x256",
+      "idiom" : "mac",
+      "filename" : "icon_256.png",
+      "scale" : "1x"
+    },
+    {
+      "size" : "256x256",
+      "idiom" : "mac",
+      "filename" : "icon_256_2x.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "512x512",
+      "idiom" : "mac",
+      "filename" : "icon_512.png",
+      "scale" : "1x"
+    },
+    {
+      "size" : "512x512",
+      "idiom" : "mac",
+      "filename" : "icon_512_2x.png",
+      "scale" : "2x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

+ 3 - 0
Project/Resources/Platform/Mac/Images.xcassets/AppIcon.appiconset/icon_128.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:2a3c136f7b2a511eed671ebb00dd3cc60e4accd511caade4fc7813a1ea2ae6a8
+size 6731

+ 3 - 0
Project/Resources/Platform/Mac/Images.xcassets/AppIcon.appiconset/icon_128_2x.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:4d841d75c32539c3364f37815bc69699ab27ca064ba1c70f4700aef369851f34
+size 6731

+ 3 - 0
Project/Resources/Platform/Mac/Images.xcassets/AppIcon.appiconset/icon_16.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:8f42f51ad40e2fe400002473a5dc60d11fe003a9280a16c85b6f4611a90c3049
+size 1290

+ 3 - 0
Project/Resources/Platform/Mac/Images.xcassets/AppIcon.appiconset/icon_16_2x.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:a15e80648085e63ca2504cd88b9dcc2ea9bd568a4fc094bf4b2b6332293665e4
+size 1290

+ 3 - 0
Project/Resources/Platform/Mac/Images.xcassets/AppIcon.appiconset/icon_256.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:6d5a16c796e26a7de4bca532bf9547d0e20d643f7f3fabd6cc7fe55e0a8de674
+size 13328

+ 3 - 0
Project/Resources/Platform/Mac/Images.xcassets/AppIcon.appiconset/icon_256_2x.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:902c53d384ec0abbafdb9fc169c0c0e629b0011522fcc344178fc91e5507080b
+size 13328

+ 3 - 0
Project/Resources/Platform/Mac/Images.xcassets/AppIcon.appiconset/icon_32.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:116fb5ac7ccbe734e1a233b263651a62956176ba227e3227dde8b9e582f9df84
+size 2006

+ 3 - 0
Project/Resources/Platform/Mac/Images.xcassets/AppIcon.appiconset/icon_32_2x.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:5b0f2f08c999ae797ed013ed9656f2817caf18a6c109b09f917b2571ac0882cf
+size 4032

+ 3 - 0
Project/Resources/Platform/Mac/Images.xcassets/AppIcon.appiconset/icon_512.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:5466a6281c4103c0efa30bb41e727d076280fbb2bff0f871598523fce53004c3
+size 27527

+ 3 - 0
Project/Resources/Platform/Mac/Images.xcassets/AppIcon.appiconset/icon_512_2x.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:e9aaf5d13439a7c0466d99951a2db96882299af6beaabdffdc639bad22fc0e57
+size 27527

+ 6 - 0
Project/Resources/Platform/Mac/Images.xcassets/Contents.json

@@ -0,0 +1,6 @@
+{
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

+ 24 - 0
Project/Resources/Platform/Mac/Info.plist

@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>CFBundleInfoDictionaryVersion</key>
+	<false/>
+	<key>CFBundleDisplayName</key>
+	<string>MPS-Asset-Test</string>
+	<key>CFBundleExecutable</key>
+	<string>MPS-Asset-Test.GameLauncher</string>
+	<key>CFBundleIdentifier</key>
+	<string>com.amazon.MPS-Asset-Test</string>
+	<key>CFBundlePackageType</key>
+	<string>APPL</string>
+	<key>CFBundleShortVersionString</key>
+	<string>1.0.0</string>
+	<key>CFBundleSignature</key>
+	<string>03DE</string>
+	<key>CFBundleVersion</key>
+	<string>1.0.0</string>
+	<key>LSApplicationCategoryType</key>
+	<string>public.app-category.puzzle-games</string>
+</dict>
+</plist>

+ 116 - 0
Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/Contents.json

@@ -0,0 +1,116 @@
+{
+  "images" : [
+    {
+      "size" : "20x20",
+      "idiom" : "iphone",
+      "filename" : "iPhoneNotificationIcon40x40.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "20x20",
+      "idiom" : "iphone",
+      "filename" : "iPhoneNotificationIcon60x60.png",
+      "scale" : "3x"
+    },
+    {
+      "size" : "29x29",
+      "idiom" : "iphone",
+      "filename" : "iPhoneSettingsIcon58x58.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "29x29",
+      "idiom" : "iphone",
+      "filename" : "iPhoneSettingsIcon87x87.png",
+      "scale" : "3x"
+    },
+    {
+      "size" : "40x40",
+      "idiom" : "iphone",
+      "filename" : "iPhoneSpotlightIcon80x80.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "40x40",
+      "idiom" : "iphone",
+      "filename" : "iPhoneSpotlightIcon120x120.png",
+      "scale" : "3x"
+    },
+    {
+      "size" : "60x60",
+      "idiom" : "iphone",
+      "filename" : "iPhoneAppIcon120x120.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "60x60",
+      "idiom" : "iphone",
+      "filename" : "iPhoneAppIcon180x180.png",
+      "scale" : "3x"
+    },
+    {
+      "size" : "20x20",
+      "idiom" : "ipad",
+      "filename" : "iPadNotificationIcon20x20.png",
+      "scale" : "1x"
+    },
+    {
+      "size" : "20x20",
+      "idiom" : "ipad",
+      "filename" : "iPadNotificationIcon40x40.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "29x29",
+      "idiom" : "ipad",
+      "filename" : "iPadSettingsIcon29x29.png",
+      "scale" : "1x"
+    },
+    {
+      "size" : "29x29",
+      "idiom" : "ipad",
+      "filename" : "iPadSettingsIcon58x58.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "40x40",
+      "idiom" : "ipad",
+      "filename" : "iPadSpotlightIcon40x40.png",
+      "scale" : "1x"
+    },
+    {
+      "size" : "40x40",
+      "idiom" : "ipad",
+      "filename" : "iPadSpotlightIcon80x80.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "76x76",
+      "idiom" : "ipad",
+      "filename" : "iPadAppIcon76x76.png",
+      "scale" : "1x"
+    },
+    {
+      "size" : "76x76",
+      "idiom" : "ipad",
+      "filename" : "iPadAppIcon152x152.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "83.5x83.5",
+      "idiom" : "ipad",
+      "filename" : "iPadProAppIcon167x167.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "1024x1024",
+      "idiom" : "ios-marketing",
+      "filename" : "iOSAppStoreIcon1024x1024.png",
+      "scale" : "1x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

+ 3 - 0
Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPadAppIcon152x152.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:a924b3938732005cc0fd8837d4d35597f8bb248f0dbfb7803b3e84d70cf4fb03
+size 8053

+ 3 - 0
Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPadAppIcon76x76.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:b3167471fe3b6946db674eb12a58fcf23d986d58c0a1a02c339d3166e78988a7
+size 4464

+ 3 - 0
Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPadProAppIcon167x167.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:6e871667d1b8b6b056b60499d2b85e003cff061f9974040dd70e5eb043f3d905
+size 8065

+ 3 - 0
Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPadSettingsIcon29x29.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:cc59f3592e9bbea6a67b2e975bf0029b4d7d33c97ae7da4785bb5c4aaecfa2ab
+size 1940

+ 3 - 0
Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPadSettingsIcon58x58.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:5541daec55ba7cc61fe5976d72d7e4895fec03efeb2a3bb374e0d3fbb9e3cabe
+size 3245

+ 3 - 0
Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPadSpotlightIcon40x40.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:67317863e942ba9128f8ddeac312aae776d282798d1199a579782fa78cb0eba5
+size 2440

+ 3 - 0
Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPadSpotlightIcon80x80.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:2fcdaa49d78cd772f256dd195534234423fec1dde8897f4934c447e72f120157
+size 4489

+ 3 - 0
Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPhoneAppIcon120x120.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:0d78b269d0c05cec6e30ef755b9a3446e0eab961b9f79bdf048e3bd791bcc643
+size 6453

+ 3 - 0
Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPhoneAppIcon180x180.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:81dbfd6012c857332531907583fe54d560ffb2f113cae73407000f68620fa56a
+size 9044

+ 3 - 0
Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPhoneSettingsIcon58x58.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:809cbf4b7205c5f9f7e61910457ba55ebeca3a5b5998fb927945868391a42ebf
+size 3245

+ 3 - 0
Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPhoneSettingsIcon87x87.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:4626e9d9dc96ad9d23d944405c438d77112e234dd67538db11aded1365920289
+size 4718

+ 3 - 0
Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPhoneSpotlightIcon120x120.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:b28b3c474dece14970cac4bac48f4716c419dbb4ada78c483bd486538930ed8a
+size 6461

+ 3 - 0
Project/Resources/Platform/iOS/Images.xcassets/AppIcon.appiconset/iPhoneSpotlightIcon80x80.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:06a2718bfe8220cbbd0f45b56d2eeeb7e993602eaaabf72ce34ecacd702ee1ca
+size 4554

+ 6 - 0
Project/Resources/Platform/iOS/Images.xcassets/Contents.json

@@ -0,0 +1,6 @@
+{
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

+ 169 - 0
Project/Resources/Platform/iOS/Images.xcassets/LaunchImage.launchimage/Contents.json

@@ -0,0 +1,169 @@
+{
+  "images" : [
+    {
+      "extent" : "full-screen",
+      "idiom" : "iphone",
+      "subtype" : "2436h",
+      "filename" : "iPhoneLaunchImage1125x2436.png",
+      "minimum-system-version" : "11.0",
+      "orientation" : "portrait",
+      "scale" : "3x"
+    },
+    {
+      "extent" : "full-screen",
+      "idiom" : "iphone",
+      "subtype" : "2436h",
+      "filename" : "iPhoneLaunchImage2436x1125.png",
+      "minimum-system-version" : "11.0",
+      "orientation" : "landscape",
+      "scale" : "3x"
+    },
+    {
+      "extent" : "full-screen",
+      "idiom" : "iphone",
+      "subtype" : "736h",
+      "filename" : "iPhoneLaunchImage1242x2208.png",
+      "minimum-system-version" : "8.0",
+      "orientation" : "portrait",
+      "scale" : "3x"
+    },
+    {
+      "extent" : "full-screen",
+      "idiom" : "iphone",
+      "subtype" : "736h",
+      "filename" : "iPhoneLaunchImage2208x1242.png",
+      "minimum-system-version" : "8.0",
+      "orientation" : "landscape",
+      "scale" : "3x"
+    },
+    {
+      "extent" : "full-screen",
+      "idiom" : "iphone",
+      "subtype" : "667h",
+      "filename" : "iPhoneLaunchImage750x1334.png",
+      "minimum-system-version" : "8.0",
+      "orientation" : "portrait",
+      "scale" : "2x"
+    },
+    {
+      "orientation" : "portrait",
+      "idiom" : "iphone",
+      "filename" : "iPhoneLaunchImage640x960.png",
+      "extent" : "full-screen",
+      "minimum-system-version" : "7.0",
+      "scale" : "2x"
+    },
+    {
+      "extent" : "full-screen",
+      "idiom" : "iphone",
+      "subtype" : "retina4",
+      "filename" : "iPhoneLaunchImage640x1136.png",
+      "minimum-system-version" : "7.0",
+      "orientation" : "portrait",
+      "scale" : "2x"
+    },
+    {
+      "orientation" : "portrait",
+      "idiom" : "ipad",
+      "filename" : "iPadLaunchImage768x1024.png",
+      "extent" : "full-screen",
+      "minimum-system-version" : "7.0",
+      "scale" : "1x"
+    },
+    {
+      "orientation" : "landscape",
+      "idiom" : "ipad",
+      "filename" : "iPadLaunchImage1024x768.png",
+      "extent" : "full-screen",
+      "minimum-system-version" : "7.0",
+      "scale" : "1x"
+    },
+    {
+      "orientation" : "portrait",
+      "idiom" : "ipad",
+      "filename" : "iPadLaunchImage1536x2048.png",
+      "extent" : "full-screen",
+      "minimum-system-version" : "7.0",
+      "scale" : "2x"
+    },
+    {
+      "orientation" : "landscape",
+      "idiom" : "ipad",
+      "filename" : "iPadLaunchImage2048x1536.png",
+      "extent" : "full-screen",
+      "minimum-system-version" : "7.0",
+      "scale" : "2x"
+    },
+    {
+      "orientation" : "portrait",
+      "idiom" : "iphone",
+      "extent" : "full-screen",
+      "scale" : "1x"
+    },
+    {
+      "orientation" : "portrait",
+      "idiom" : "iphone",
+      "extent" : "full-screen",
+      "scale" : "2x"
+    },
+    {
+      "orientation" : "portrait",
+      "idiom" : "iphone",
+      "extent" : "full-screen",
+      "subtype" : "retina4",
+      "scale" : "2x"
+    },
+    {
+      "orientation" : "portrait",
+      "idiom" : "ipad",
+      "extent" : "to-status-bar",
+      "scale" : "1x"
+    },
+    {
+      "orientation" : "portrait",
+      "idiom" : "ipad",
+      "extent" : "full-screen",
+      "scale" : "1x"
+    },
+    {
+      "orientation" : "landscape",
+      "idiom" : "ipad",
+      "extent" : "to-status-bar",
+      "scale" : "1x"
+    },
+    {
+      "orientation" : "landscape",
+      "idiom" : "ipad",
+      "extent" : "full-screen",
+      "scale" : "1x"
+    },
+    {
+      "orientation" : "portrait",
+      "idiom" : "ipad",
+      "extent" : "to-status-bar",
+      "scale" : "2x"
+    },
+    {
+      "orientation" : "portrait",
+      "idiom" : "ipad",
+      "extent" : "full-screen",
+      "scale" : "2x"
+    },
+    {
+      "orientation" : "landscape",
+      "idiom" : "ipad",
+      "extent" : "to-status-bar",
+      "scale" : "2x"
+    },
+    {
+      "orientation" : "landscape",
+      "idiom" : "ipad",
+      "extent" : "full-screen",
+      "scale" : "2x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

+ 3 - 0
Project/Resources/Platform/iOS/Images.xcassets/LaunchImage.launchimage/iPadLaunchImage1024x768.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:38583298f4d1a5baa0b55633c8314bad93abe80794e57a7d6a64ff88964b9165
+size 21711

+ 3 - 0
Project/Resources/Platform/iOS/Images.xcassets/LaunchImage.launchimage/iPadLaunchImage1536x2048.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:b75b156d6be43cdaa2bc3699b4a5b601a33df6061b12452922ec35e0f55179fa
+size 52195

+ 3 - 0
Project/Resources/Platform/iOS/Images.xcassets/LaunchImage.launchimage/iPadLaunchImage2048x1536.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:4ba634166ac4960b554252e40141167ba2f9b3b673d058aa473be1c2fb9ba804
+size 54510

+ 3 - 0
Project/Resources/Platform/iOS/Images.xcassets/LaunchImage.launchimage/iPadLaunchImage768x1024.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:596171ca532b8ff564ab14e3d525f1d91995684b910d66fcdcd0b85c61a232dc
+size 23354

+ 3 - 0
Project/Resources/Platform/iOS/Images.xcassets/LaunchImage.launchimage/iPhoneLaunchImage640x1136.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:a989ae9fec0ab04159d5a5360306b4f174b1887b21f58e241fa26fd468a4c809
+size 20870

+ 3 - 0
Project/Resources/Platform/iOS/Images.xcassets/LaunchImage.launchimage/iPhoneLaunchImage640x960.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:276a83ca591e3616e489970d95aa56c3456aada212578bf885bf42610dbaade9
+size 21139

+ 45 - 0
Project/Resources/Platform/iOS/Info.plist

@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>CFBundleDevelopmentRegion</key>
+	<string>en</string>
+	<key>CFBundleDisplayName</key>
+	<string>MPS-Asset-Test</string>
+	<key>CFBundleExecutable</key>
+	<string>MPS-Asset-Test.GameLauncher</string>
+	<key>CFBundleIdentifier</key>
+	<string>com.amazon.lumberyard.MPS-Asset-Test</string>
+	<key>CFBundleInfoDictionaryVersion</key>
+	<string>6.0</string>
+	<key>CFBundleName</key>
+	<string>MPS-Asset-Test</string>
+	<key>CFBundlePackageType</key>
+	<string>APPL</string>
+	<key>CFBundleShortVersionString</key>
+	<string>1.0</string>
+	<key>CFBundleSignature</key>
+	<string>????</string>
+	<key>CFBundleVersion</key>
+	<string>1.0</string>
+	<key>UIRequiredDeviceCapabilities</key>
+	<array>
+		<string>arm64</string>
+		<string>metal</string>
+	</array>
+	<key>UIRequiresFullScreen</key>
+	<true/>
+	<key>UIStatusBarHidden</key>
+	<true/>
+	<key>UISupportedInterfaceOrientations</key>
+	<array>
+		<string>UIInterfaceOrientationLandscapeRight</string>
+		<string>UIInterfaceOrientationLandscapeLeft</string>
+	</array>
+	<key>UISupportedInterfaceOrientations~ipad</key>
+	<array>
+		<string>UIInterfaceOrientationLandscapeRight</string>
+		<string>UIInterfaceOrientationLandscapeLeft</string>
+	</array>
+</dict>
+</plist>

+ 5 - 0
Project/ShaderLib/README.md

@@ -0,0 +1,5 @@
+# Customizing Shader Resource Groups
+
+Please read:  
+*\<engine\>/Gems/Atom/Feature/Common/Assets/ShaderResourceGroups/README.md*  
+for details on how to customize scenesrg.srgi and viewsrg.srgi.  

+ 26 - 0
Project/ShaderLib/scenesrg.srgi

@@ -0,0 +1,26 @@
+// {BEGIN_LICENSE}
+/*
+ * Copyright (c) Contributors to the Open 3D Engine Project.
+ * For complete copyright and license terms please see the LICENSE at the root of this distribution.
+ *
+ * SPDX-License-Identifier: Apache-2.0 OR MIT
+ *
+ */
+// {END_LICENSE}
+
+#pragma once
+
+// Please read README.md for an explanation on why scenesrg.srgi and viewsrg.srgi are
+// located in this folder (And how you can optionally customize your own scenesrg.srgi
+// and viewsrg.srgi in your game project).
+
+#include <Atom/Features/SrgSemantics.azsli>
+
+partial ShaderResourceGroup SceneSrg : SRG_PerScene
+{
+/* Intentionally Empty. Helps define the SrgSemantic for SceneSrg once.*/
+};
+
+#define AZ_COLLECTING_PARTIAL_SRGS
+#include <Atom/Feature/Common/Assets/ShaderResourceGroups/SceneSrgAll.azsli>
+#undef AZ_COLLECTING_PARTIAL_SRGS

+ 26 - 0
Project/ShaderLib/viewsrg.srgi

@@ -0,0 +1,26 @@
+// {BEGIN_LICENSE}
+/*
+ * Copyright (c) Contributors to the Open 3D Engine Project.
+ * For complete copyright and license terms please see the LICENSE at the root of this distribution.
+ *
+ * SPDX-License-Identifier: Apache-2.0 OR MIT
+ *
+ */
+// {END_LICENSE}
+
+#pragma once
+
+// Please read README.md for an explanation on why scenesrg.srgi and viewsrg.srgi are
+// located in this folder (And how you can optionally customize your own scenesrg.srgi
+// and viewsrg.srgi in your game project).
+
+#include <Atom/Features/SrgSemantics.azsli>
+
+partial ShaderResourceGroup ViewSrg : SRG_PerView
+{
+/* Intentionally Empty. Helps define the SrgSemantic for ViewSrg once.*/
+};
+
+#define AZ_COLLECTING_PARTIAL_SRGS
+#include <Atom/Feature/Common/Assets/ShaderResourceGroups/ViewSrgAll.azsli>
+#undef AZ_COLLECTING_PARTIAL_SRGS

+ 0 - 0
Project/autoexec.cfg


+ 83 - 0
Project/cmake/EngineFinder.cmake

@@ -0,0 +1,83 @@
+# 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_SOURCE_DIR}/project.json project_json)
+set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/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'\nError: ${json_error}")
+endif()
+
+if(CMAKE_MODULE_PATH)
+    foreach(module_path ${CMAKE_MODULE_PATH})
+        if(EXISTS ${module_path}/Findo3de.cmake)
+            file(READ ${module_path}/../engine.json engine_json)
+            string(JSON engine_name ERROR_VARIABLE json_error GET ${engine_json} engine_name)
+            if(json_error)
+                message(FATAL_ERROR "Unable to read key 'engine_name' from 'engine.json'\nError: ${json_error}")
+            endif()
+            if(LY_ENGINE_NAME_TO_USE STREQUAL engine_name)
+                return() # Engine being forced through CMAKE_MODULE_PATH
+            endif()
+        endif()
+    endforeach()
+endif()
+
+if(DEFINED ENV{USERPROFILE} AND EXISTS $ENV{USERPROFILE})
+    set(manifest_path $ENV{USERPROFILE}/.o3de/o3de_manifest.json) # Windows
+else()
+    set(manifest_path $ENV{HOME}/.o3de/o3de_manifest.json) # Unix
+endif()
+
+set(registration_error [=[
+Engine registration is required before configuring a project.
+Run 'scripts/o3de register --this-engine' from the engine root.
+]=])
+
+# Read the ~/.o3de/o3de_manifest.json file and look through the 'engines_path' object.
+# Find a key that matches LY_ENGINE_NAME_TO_USE and use that as the engine path.
+if(EXISTS ${manifest_path})
+    file(READ ${manifest_path} manifest_json)
+    set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${manifest_path})
+
+    string(JSON engines_path_count ERROR_VARIABLE json_error LENGTH ${manifest_json} engines_path)
+    if(json_error)
+        message(FATAL_ERROR "Unable to read key 'engines_path' from '${manifest_path}'\nError: ${json_error}\n${registration_error}")
+    endif()
+
+    string(JSON engines_path_type ERROR_VARIABLE json_error TYPE ${manifest_json} engines_path)
+    if(json_error OR NOT ${engines_path_type} STREQUAL "OBJECT")
+        message(FATAL_ERROR "Type of 'engines_path' in '${manifest_path}' is not a JSON Object\nError: ${json_error}")
+    endif()
+
+    math(EXPR engines_path_count "${engines_path_count}-1")
+    foreach(engine_path_index RANGE ${engines_path_count})
+        string(JSON engine_name ERROR_VARIABLE json_error MEMBER ${manifest_json} engines_path ${engine_path_index})
+        if(json_error)
+            message(FATAL_ERROR "Unable to read 'engines_path/${engine_path_index}' from '${manifest_path}'\nError: ${json_error}")
+        endif()
+
+        if(LY_ENGINE_NAME_TO_USE STREQUAL engine_name)
+            string(JSON engine_path ERROR_VARIABLE json_error GET ${manifest_json} engines_path ${engine_name})
+            if(json_error)
+                message(FATAL_ERROR "Unable to read value from 'engines_path/${engine_name}'\nError: ${json_error}")
+            endif()
+
+            if(engine_path)
+                list(APPEND CMAKE_MODULE_PATH "${engine_path}/cmake")
+                return()
+            endif()
+        endif()
+    endforeach()
+    
+    message(FATAL_ERROR "The project.json uses engine name '${LY_ENGINE_NAME_TO_USE}' but no engine with that name has been registered.\n${registration_error}")
+else()
+    # If the user is passing CMAKE_MODULE_PATH we assume thats where we will find the engine
+    if(NOT CMAKE_MODULE_PATH)
+        message(FATAL_ERROR "O3DE Manifest file not found.\n${registration_error}")
+    endif()
+endif()

+ 3 - 0
Project/game.cfg

@@ -0,0 +1,3 @@
+-- Enable warnings when asset loads take longer than the given millisecond threshold
+cl_assetLoadWarningEnable=true
+cl_assetLoadWarningMsThreshold=100

+ 3 - 0
Project/preview.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:13e825d395c997ca41a7db98191b14d7d4b900329bf15a6ba91579abac4df61f
+size 6058

+ 39 - 0
Project/project.json

@@ -0,0 +1,39 @@
+{
+    "project_name": "MPS-Asset-Test",
+    "project_id": "{C8D8E20A-03DD-4507-A8C2-D3949C2A3977}",
+    "license": "CC BY 4.0",
+    "license_url": "https://creativecommons.org/licenses/by/4.0/",
+    "origin": "https://o3d.foundation/",
+    "origin_url": "https://github.com/o3de/o3de-multiplayersample-assets/",
+    "display_name": "MPS: Asset Test Project",
+    "summary": "This project is set up for contributors to test assets created in this repos asset gems.",
+	"documentation_url": "https://github.com/o3de/o3de-multiplayersample-assets/Project/readme.md",
+    "canonical_tags": [
+        "Project"
+    ],
+    "user_tags": [
+        "MPS-Asset-Test"
+    ],
+    "icon_path": "preview.png",
+    "engine": "o3de-sdk",
+    "external_subdirectories": [
+        "../Gems/character_mps",
+        "../Gems/kb3d_mps",
+        "../Gems/landscape_mps",
+        "../Gems/level_art_mps",
+        "../Gems/particlefx_mps",
+        "../Gems/pbr_material_pack_mps",
+        "../Gems/props_mps",
+		"Gem"
+    ],
+    "restricted": "MPS-Asset-Test",
+    "gem_names": [
+        "props_mps",
+        "character_mps",
+        "kb3d_mps",
+        "landscape_mps",
+        "level_art_mps",
+        "pbr_material_pack_mps",
+        "particlefx_mps"
+    ]
+}

+ 0 - 0
Project/readme.md