ソースを参照

make project script-only

Signed-off-by: guillaume-haerinck <[email protected]>
guillaume-haerinck 1 ヶ月 前
コミット
421df03f51
84 ファイル変更445 行追加1033 行削除
  1. 4 0
      .command_settings
  2. 2 1
      .gitignore
  3. 15 0
      AssetBundling/SeedLists/Example.seed
  4. 30 16
      CMakeLists.txt
  5. 11 0
      CMakePresets.json
  6. 0 72
      Code/CMakeLists.txt
  7. 0 31
      Code/Include/GameJam2021/GameJam2021Bus.h
  8. 0 2
      Code/Platform/Android/PAL_android.cmake
  9. 0 4
      Code/Platform/Android/gamejam2021_android_files.cmake
  10. 0 3
      Code/Platform/Android/gamejam2021_shared_android_files.cmake
  11. 0 2
      Code/Platform/Linux/PAL_linux.cmake
  12. 0 4
      Code/Platform/Linux/gamejam2021_linux_files.cmake
  13. 0 3
      Code/Platform/Linux/gamejam2021_shared_linux_files.cmake
  14. 0 2
      Code/Platform/Mac/PAL_mac.cmake
  15. 0 5
      Code/Platform/Mac/gamejam2021_mac_files.cmake
  16. 0 4
      Code/Platform/Mac/gamejam2021_shared_mac_files.cmake
  17. 0 2
      Code/Platform/Windows/PAL_windows.cmake
  18. 0 3
      Code/Platform/Windows/gamejam2021_shared_windows_files.cmake
  19. 0 4
      Code/Platform/Windows/gamejam2021_windows_files.cmake
  20. 0 2
      Code/Platform/iOS/PAL_ios.cmake
  21. 0 5
      Code/Platform/iOS/gamejam2021_ios_files.cmake
  22. 0 3
      Code/Platform/iOS/gamejam2021_shared_ios_files.cmake
  23. 0 37
      Code/Source/GameJam2021Module.cpp
  24. 0 76
      Code/Source/GameJam2021SystemComponent.cpp
  25. 0 40
      Code/Source/GameJam2021SystemComponent.h
  26. 0 25
      Code/enabled_gems.cmake
  27. 0 7
      Code/gamejam2021_files.cmake
  28. 0 4
      Code/gamejam2021_shared_files.cmake
  29. 0 16
      Code/gem.json
  30. 0 92
      EngineFinder.cmake
  31. 7 0
      Platform/Android/android_project.cmake
  32. 1 1
      Platform/Android/android_project.json
  33. 7 0
      Platform/Linux/linux_project.cmake
  34. 7 0
      Platform/Mac/mac_project.cmake
  35. 7 0
      Platform/Windows/windows_project.cmake
  36. 7 0
      Platform/iOS/ios_project.cmake
  37. 27 0
      Registry/assetprocessor_settings.setreg
  38. 9 0
      Registry/assimp_settings.setreg
  39. 0 3
      Resources/GameSDK.ico
  40. 0 3
      Resources/LegacyLogoLauncher.bmp
  41. 0 6
      Resources/Platform/Mac/Images.xcassets/Contents.json
  42. 0 68
      Resources/Platform/Mac/Images.xcassets/TestDPAppIcon.appiconset/Contents.json
  43. 0 3
      Resources/Platform/Mac/Images.xcassets/TestDPAppIcon.appiconset/icon_128.png
  44. 0 3
      Resources/Platform/Mac/Images.xcassets/TestDPAppIcon.appiconset/icon_128_2x.png
  45. 0 3
      Resources/Platform/Mac/Images.xcassets/TestDPAppIcon.appiconset/icon_16.png
  46. 0 3
      Resources/Platform/Mac/Images.xcassets/TestDPAppIcon.appiconset/icon_16_2x.png
  47. 0 3
      Resources/Platform/Mac/Images.xcassets/TestDPAppIcon.appiconset/icon_256.png
  48. 0 3
      Resources/Platform/Mac/Images.xcassets/TestDPAppIcon.appiconset/icon_256_2x.png
  49. 0 3
      Resources/Platform/Mac/Images.xcassets/TestDPAppIcon.appiconset/icon_32.png
  50. 0 3
      Resources/Platform/Mac/Images.xcassets/TestDPAppIcon.appiconset/icon_32_2x.png
  51. 0 3
      Resources/Platform/Mac/Images.xcassets/TestDPAppIcon.appiconset/icon_512.png
  52. 0 3
      Resources/Platform/Mac/Images.xcassets/TestDPAppIcon.appiconset/icon_512_2x.png
  53. 0 24
      Resources/Platform/Mac/Info.plist
  54. 0 6
      Resources/Platform/iOS/Images.xcassets/Contents.json
  55. 0 169
      Resources/Platform/iOS/Images.xcassets/LaunchImage.launchimage/Contents.json
  56. 0 3
      Resources/Platform/iOS/Images.xcassets/LaunchImage.launchimage/iPadLaunchImage1024x768.png
  57. 0 3
      Resources/Platform/iOS/Images.xcassets/LaunchImage.launchimage/iPadLaunchImage1536x2048.png
  58. 0 3
      Resources/Platform/iOS/Images.xcassets/LaunchImage.launchimage/iPadLaunchImage2048x1536.png
  59. 0 3
      Resources/Platform/iOS/Images.xcassets/LaunchImage.launchimage/iPadLaunchImage768x1024.png
  60. 0 3
      Resources/Platform/iOS/Images.xcassets/LaunchImage.launchimage/iPhoneLaunchImage640x1136.png
  61. 0 3
      Resources/Platform/iOS/Images.xcassets/LaunchImage.launchimage/iPhoneLaunchImage640x960.png
  62. 0 116
      Resources/Platform/iOS/Images.xcassets/TestDPAppIcon.appiconset/Contents.json
  63. 0 3
      Resources/Platform/iOS/Images.xcassets/TestDPAppIcon.appiconset/iPadAppIcon152x152.png
  64. 0 3
      Resources/Platform/iOS/Images.xcassets/TestDPAppIcon.appiconset/iPadAppIcon76x76.png
  65. 0 3
      Resources/Platform/iOS/Images.xcassets/TestDPAppIcon.appiconset/iPadProAppIcon167x167.png
  66. 0 3
      Resources/Platform/iOS/Images.xcassets/TestDPAppIcon.appiconset/iPadSettingsIcon29x29.png
  67. 0 3
      Resources/Platform/iOS/Images.xcassets/TestDPAppIcon.appiconset/iPadSettingsIcon58x58.png
  68. 0 3
      Resources/Platform/iOS/Images.xcassets/TestDPAppIcon.appiconset/iPadSpotlightIcon40x40.png
  69. 0 3
      Resources/Platform/iOS/Images.xcassets/TestDPAppIcon.appiconset/iPadSpotlightIcon80x80.png
  70. 0 3
      Resources/Platform/iOS/Images.xcassets/TestDPAppIcon.appiconset/iPhoneAppIcon120x120.png
  71. 0 3
      Resources/Platform/iOS/Images.xcassets/TestDPAppIcon.appiconset/iPhoneAppIcon180x180.png
  72. 0 3
      Resources/Platform/iOS/Images.xcassets/TestDPAppIcon.appiconset/iPhoneSettingsIcon58x58.png
  73. 0 3
      Resources/Platform/iOS/Images.xcassets/TestDPAppIcon.appiconset/iPhoneSettingsIcon87x87.png
  74. 0 3
      Resources/Platform/iOS/Images.xcassets/TestDPAppIcon.appiconset/iPhoneSpotlightIcon120x120.png
  75. 0 3
      Resources/Platform/iOS/Images.xcassets/TestDPAppIcon.appiconset/iPhoneSpotlightIcon80x80.png
  76. 0 45
      Resources/Platform/iOS/Info.plist
  77. 11 5
      ShaderLib/scenesrg.srgi
  78. 11 5
      ShaderLib/viewsrg.srgi
  79. 14 0
      autoexec.cfg
  80. 173 0
      cmake/EngineFinder.cmake
  81. 27 0
      package.bat
  82. 40 0
      package.sh
  83. 35 10
      project.json
  84. 0 20
      project.json.bak0

+ 4 - 0
.command_settings

@@ -0,0 +1,4 @@
+[export_project]
+option.build.assets = True
+seedlist.paths = AssetBundling/SeedLists/*.seed
+archive.output.format = zip

+ 2 - 1
.gitignore

@@ -2,4 +2,5 @@
 [Cc]ache/
 [Uu]ser/
 [Uu]ser_test*/
-_savebackup/
+_savebackup/
+CMakeUserPresets.json

+ 15 - 0
AssetBundling/SeedLists/Example.seed

@@ -0,0 +1,15 @@
+{
+    "Type": "JsonSerialization",
+    "Version": 1,
+    "ClassName": "AZStd::vector<SeedInfo, allocator>",
+    "ClassData": [
+        {
+            "assetId": {
+                "guid": "{B3C48432-037D-5AA5-BB1B-6D7AE19E89DF}",
+                "subId": 204440690
+            },
+            "platformFlags": 2,
+            "pathHint": "levels/start/start.spawnable"
+        }
+    ]
+}

+ 30 - 16
CMakeLists.txt

@@ -1,23 +1,37 @@
 
 if(NOT PROJECT_NAME)
-    cmake_minimum_required(VERSION 3.20)
-    project(GameJam2021
+    cmake_minimum_required(VERSION 3.22)
+
+    # Utility function to look for an optional 'engine_finder_cmake_path'setting 
+    function(get_engine_finder_cmake_path project_json_file_path path_value)
+        if(NOT ${path_value} AND EXISTS "${project_json_file_path}")
+            file(READ "${project_json_file_path}" project_json_data)
+            string(JSON engine_finder_cmake_value ERROR_VARIABLE json_error GET ${project_json_data} "engine_finder_cmake_path")
+            cmake_path(APPEND CMAKE_CURRENT_SOURCE_DIR "${engine_finder_cmake_value}" engine_finder_cmake_value)
+            if(NOT json_error AND EXISTS "${engine_finder_cmake_value}")
+                set(${path_value} "${engine_finder_cmake_value}" PARENT_SCOPE)
+            elseif(json_error AND ${engine_finder_cmake_value} STREQUAL "NOTFOUND")
+                # When the error value is just NOTFOUND that means there is a JSON
+                # parsing error, and not simply a missing key 
+                message(WARNING "Unable to read 'engine_finder_cmake_path'.\nError: ${json_error} ${engine_finder_cmake_value}")
+            endif()
+        endif()
+    endfunction()
+    
+    # Check for optional 'engine_finder_cmake_path' in order of preference
+    # We support per-project customization to make it easier to upgrade 
+    # or revert to a custom EngineFinder.cmake 
+    get_engine_finder_cmake_path("${CMAKE_CURRENT_SOURCE_DIR}/user/project.json" engine_finder_cmake_path)
+    get_engine_finder_cmake_path("${CMAKE_CURRENT_SOURCE_DIR}/project.json" engine_finder_cmake_path)
+    if(NOT engine_finder_cmake_path)
+        set(engine_finder_cmake_path cmake/EngineFinder.cmake)
+    endif()
+
+    include(${engine_finder_cmake_path} OPTIONAL)
+    find_package(o3de REQUIRED)
+    project(GnomebodysHome
         LANGUAGES C CXX
         VERSION 1.0.0.0
     )
-    include(EngineFinder.cmake OPTIONAL)
-    find_package(o3de REQUIRED)
     o3de_initialize()
-else()
-    # Add the project_name to global LY_PROJECTS_TARGET_NAME property
-    file(READ "${CMAKE_CURRENT_LIST_DIR}/project.json" project_json)
-
-    string(JSON project_target_name ERROR_VARIABLE json_error GET ${project_json} "project_name")
-    if(json_error)
-        message(FATAL_ERROR "Unable to read key 'project_name' from 'project.json'")
-    endif()
-
-    set_property(GLOBAL APPEND PROPERTY LY_PROJECTS_TARGET_NAME ${project_target_name})
-
-    add_subdirectory(Code)
 endif()

+ 11 - 0
CMakePresets.json

@@ -0,0 +1,11 @@
+{
+    "version": 4,
+    "cmakeMinimumRequired": {
+        "major": 3,
+        "minor": 23,
+        "patch": 0
+    },
+    "include": [
+        "user/cmake/engine/CMakePresets.json"
+    ]
+}

+ 0 - 72
Code/CMakeLists.txt

@@ -1,72 +0,0 @@
-
-# Currently we are in the GameJam2021/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: ly_get_list_relative_pal_filename 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 : GameJam2021/Code/Platform/<platorm_name>  or
-#            <restricted_folder>/<platform_name>/GameJam2021/Code
-ly_get_list_relative_pal_filename(pal_dir ${CMAKE_CURRENT_LIST_DIR}/Platform/${PAL_PLATFORM_NAME} ${o3de_project_restricted_path} ${o3de_project_path} ${o3de_project_name})
-
-# 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_GAMEJAM2021_SUPPORTED)
-    return()
-endif()
-
-# We are on a supported platform, so add the GameJam2021 target
-# Note: We include the common files and the platform specific files which are set in gamejam2021_files.cmake and
-# in ${pal_dir}/gamejam2021_${PAL_PLATFORM_NAME_LOWERCASE}_files.cmake
-ly_add_target(
-    NAME GameJam2021.Static STATIC
-    NAMESPACE Gem
-    FILES_CMAKE
-        gamejam2021_files.cmake
-        ${pal_dir}/gamejam2021_${PAL_PLATFORM_NAME_LOWERCASE}_files.cmake
-    INCLUDE_DIRECTORIES
-        PUBLIC
-            Include
-    BUILD_DEPENDENCIES
-        PRIVATE
-            AZ::AzGameFramework
-            Gem::Atom_AtomBridge.Static
-)
-
-ly_add_target(
-    NAME GameJam2021 ${PAL_TRAIT_MONOLITHIC_DRIVEN_MODULE_TYPE}
-    NAMESPACE Gem
-    FILES_CMAKE
-        gamejam2021_shared_files.cmake
-        ${pal_dir}/gamejam2021_shared_${PAL_PLATFORM_NAME_LOWERCASE}_files.cmake
-    INCLUDE_DIRECTORIES
-        PUBLIC
-            Include
-    BUILD_DEPENDENCIES
-        PRIVATE
-            Gem::GameJam2021.Static
-            AZ::AzCore
-)
-
-# if enabled, GameJam2021 is used by all kinds of applications
-ly_create_alias(NAME GameJam2021.Builders NAMESPACE Gem TARGETS Gem::GameJam2021)
-ly_create_alias(NAME GameJam2021.Tools    NAMESPACE Gem TARGETS Gem::GameJam2021)
-ly_create_alias(NAME GameJam2021.Clients  NAMESPACE Gem TARGETS Gem::GameJam2021)
-ly_create_alias(NAME GameJam2021.Servers  NAMESPACE Gem TARGETS Gem::GameJam2021)
-
-################################################################################
-# Gem dependencies
-################################################################################
-
-# Enable the specified list of gems from GEM_FILE or GEMS list for this specific project:
-ly_enable_gems(PROJECT_NAME GameJam2021 GEM_FILE enabled_gems.cmake)
-
-if(PAL_TRAIT_BUILD_SERVER_SUPPORTED)
-    # this property causes it to actually make a ServerLauncher.
-    # if you don't want a Server application, you can remove this and the
-    # following ly_enable_gems lines.
-    set_property(GLOBAL APPEND PROPERTY LY_LAUNCHER_SERVER_PROJECTS GameJam2021)
-endif()

+ 0 - 31
Code/Include/GameJam2021/GameJam2021Bus.h

@@ -1,31 +0,0 @@
-
-#pragma once
-
-#include <AzCore/EBus/EBus.h>
-#include <AzCore/Interface/Interface.h>
-
-namespace GameJam2021
-{
-    class GameJam2021Requests
-    {
-    public:
-        AZ_RTTI(GameJam2021Requests, "{47b7150b-434d-4c72-bb3e-ed5f2b55d422}");
-        virtual ~GameJam2021Requests() = default;
-        // Put your public methods here
-    };
-    
-    class GameJam2021BusTraits
-        : public AZ::EBusTraits
-    {
-    public:
-        //////////////////////////////////////////////////////////////////////////
-        // EBusTraits overrides
-        static constexpr AZ::EBusHandlerPolicy HandlerPolicy = AZ::EBusHandlerPolicy::Single;
-        static constexpr AZ::EBusAddressPolicy AddressPolicy = AZ::EBusAddressPolicy::Single;
-        //////////////////////////////////////////////////////////////////////////
-    };
-
-    using GameJam2021RequestBus = AZ::EBus<GameJam2021Requests, GameJam2021BusTraits>;
-    using GameJam2021Interface = AZ::Interface<GameJam2021Requests>;
-
-} // namespace GameJam2021

+ 0 - 2
Code/Platform/Android/PAL_android.cmake

@@ -1,2 +0,0 @@
-
-set(PAL_TRAIT_GAMEJAM2021_SUPPORTED TRUE)

+ 0 - 4
Code/Platform/Android/gamejam2021_android_files.cmake

@@ -1,4 +0,0 @@
-
-set(FILES
-    PAL_android.cmake
-)

+ 0 - 3
Code/Platform/Android/gamejam2021_shared_android_files.cmake

@@ -1,3 +0,0 @@
-
-set(FILES
-)

+ 0 - 2
Code/Platform/Linux/PAL_linux.cmake

@@ -1,2 +0,0 @@
-
-set(PAL_TRAIT_GAMEJAM2021_SUPPORTED TRUE)

+ 0 - 4
Code/Platform/Linux/gamejam2021_linux_files.cmake

@@ -1,4 +0,0 @@
-
-set(FILES
-    PAL_linux.cmake
-)

+ 0 - 3
Code/Platform/Linux/gamejam2021_shared_linux_files.cmake

@@ -1,3 +0,0 @@
-
-set(FILES
-)

+ 0 - 2
Code/Platform/Mac/PAL_mac.cmake

@@ -1,2 +0,0 @@
-
-set(PAL_TRAIT_GAMEJAM2021_SUPPORTED TRUE)

+ 0 - 5
Code/Platform/Mac/gamejam2021_mac_files.cmake

@@ -1,5 +0,0 @@
-
-set(FILES
-    ../../../Resources/Platform/Mac/Info.plist
-    PAL_mac.cmake
-)

+ 0 - 4
Code/Platform/Mac/gamejam2021_shared_mac_files.cmake

@@ -1,4 +0,0 @@
-
-set(FILES
-    ../../../Resources/Platform/Mac/Info.plist
-)

+ 0 - 2
Code/Platform/Windows/PAL_windows.cmake

@@ -1,2 +0,0 @@
-
-set(PAL_TRAIT_GAMEJAM2021_SUPPORTED TRUE)

+ 0 - 3
Code/Platform/Windows/gamejam2021_shared_windows_files.cmake

@@ -1,3 +0,0 @@
-
-set(FILES
-)

+ 0 - 4
Code/Platform/Windows/gamejam2021_windows_files.cmake

@@ -1,4 +0,0 @@
-
-set(FILES
-    PAL_windows.cmake
-)

+ 0 - 2
Code/Platform/iOS/PAL_ios.cmake

@@ -1,2 +0,0 @@
-
-set(PAL_TRAIT_GAMEJAM2021_SUPPORTED TRUE)

+ 0 - 5
Code/Platform/iOS/gamejam2021_ios_files.cmake

@@ -1,5 +0,0 @@
-
-set(FILES
-    ../Resources/Platform/iOS/Info.plist
-    PAL_ios.cmake
-)

+ 0 - 3
Code/Platform/iOS/gamejam2021_shared_ios_files.cmake

@@ -1,3 +0,0 @@
-
-set(FILES
-)

+ 0 - 37
Code/Source/GameJam2021Module.cpp

@@ -1,37 +0,0 @@
-
-#include <AzCore/Memory/SystemAllocator.h>
-#include <AzCore/Module/Module.h>
-
-#include "GameJam2021SystemComponent.h"
-
-namespace GameJam2021
-{
-    class GameJam2021Module
-        : public AZ::Module
-    {
-    public:
-        AZ_RTTI(GameJam2021Module, "{d5214946-0e67-4a51-baba-f1b733e22631}", AZ::Module);
-        AZ_CLASS_ALLOCATOR(GameJam2021Module, AZ::SystemAllocator, 0);
-
-        GameJam2021Module()
-            : AZ::Module()
-        {
-            // Push results of [MyComponent]::CreateDescriptor() into m_descriptors here.
-            m_descriptors.insert(m_descriptors.end(), {
-                GameJam2021SystemComponent::CreateDescriptor(),
-            });
-        }
-
-        /**
-         * Add required SystemComponents to the SystemEntity.
-         */
-        AZ::ComponentTypeList GetRequiredSystemComponents() const override
-        {
-            return AZ::ComponentTypeList{
-                azrtti_typeid<GameJam2021SystemComponent>(),
-            };
-        }
-    };
-}// namespace GameJam2021
-
-AZ_DECLARE_MODULE_CLASS(Gem_GameJam2021, GameJam2021::GameJam2021Module)

+ 0 - 76
Code/Source/GameJam2021SystemComponent.cpp

@@ -1,76 +0,0 @@
-
-#include <AzCore/Serialization/SerializeContext.h>
-#include <AzCore/Serialization/EditContext.h>
-#include <AzCore/Serialization/EditContextConstants.inl>
-
-#include "GameJam2021SystemComponent.h"
-
-namespace GameJam2021
-{
-    void GameJam2021SystemComponent::Reflect(AZ::ReflectContext* context)
-    {
-        if (AZ::SerializeContext* serialize = azrtti_cast<AZ::SerializeContext*>(context))
-        {
-            serialize->Class<GameJam2021SystemComponent, AZ::Component>()
-                ->Version(0)
-                ;
-
-            if (AZ::EditContext* ec = serialize->GetEditContext())
-            {
-                ec->Class<GameJam2021SystemComponent>("GameJam2021", "[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 GameJam2021SystemComponent::GetProvidedServices(AZ::ComponentDescriptor::DependencyArrayType& provided)
-    {
-        provided.push_back(AZ_CRC("GameJam2021Service"));
-    }
-
-    void GameJam2021SystemComponent::GetIncompatibleServices(AZ::ComponentDescriptor::DependencyArrayType& incompatible)
-    {
-        incompatible.push_back(AZ_CRC("GameJam2021Service"));
-    }
-
-    void GameJam2021SystemComponent::GetRequiredServices([[maybe_unused]] AZ::ComponentDescriptor::DependencyArrayType& required)
-    {
-    }
-
-    void GameJam2021SystemComponent::GetDependentServices([[maybe_unused]] AZ::ComponentDescriptor::DependencyArrayType& dependent)
-    {
-    }
-    
-    GameJam2021SystemComponent::GameJam2021SystemComponent()
-    {
-        if (GameJam2021Interface::Get() == nullptr)
-        {
-            GameJam2021Interface::Register(this);
-        }
-    }
-
-    GameJam2021SystemComponent::~GameJam2021SystemComponent()
-    {
-        if (GameJam2021Interface::Get() == this)
-        {
-            GameJam2021Interface::Unregister(this);
-        }
-    }
-
-    void GameJam2021SystemComponent::Init()
-    {
-    }
-
-    void GameJam2021SystemComponent::Activate()
-    {
-        GameJam2021RequestBus::Handler::BusConnect();
-    }
-
-    void GameJam2021SystemComponent::Deactivate()
-    {
-        GameJam2021RequestBus::Handler::BusDisconnect();
-    }
-}

+ 0 - 40
Code/Source/GameJam2021SystemComponent.h

@@ -1,40 +0,0 @@
-
-#pragma once
-
-#include <AzCore/Component/Component.h>
-
-#include <GameJam2021/GameJam2021Bus.h>
-
-namespace GameJam2021
-{
-    class GameJam2021SystemComponent
-        : public AZ::Component
-        , protected GameJam2021RequestBus::Handler
-    {
-    public:
-        AZ_COMPONENT(GameJam2021SystemComponent, "{279b3554-e39f-4db3-b47c-5165ceca58ad}");
-
-        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);
-
-        GameJam2021SystemComponent();
-        ~GameJam2021SystemComponent();
-
-    protected:
-        ////////////////////////////////////////////////////////////////////////
-        // GameJam2021RequestBus interface implementation
-
-        ////////////////////////////////////////////////////////////////////////
-
-        ////////////////////////////////////////////////////////////////////////
-        // AZ::Component interface implementation
-        void Init() override;
-        void Activate() override;
-        void Deactivate() override;
-        ////////////////////////////////////////////////////////////////////////
-    };
-}

+ 0 - 25
Code/enabled_gems.cmake

@@ -1,25 +0,0 @@
-
-set(ENABLED_GEMS
-    Atom
-    AudioSystem
-    AWSCore
-    CameraFramework
-    DebugDraw
-    EditorPythonBindings
-    EMotionFX
-    GameState
-    ImGui
-    LandscapeCanvas
-    LyShine
-    Multiplayer
-    PhysX
-    PrimitiveAssets
-    SaveData
-    ScriptCanvasPhysics
-    ScriptEvents
-    StartingPointInput
-    TextureAtlas
-    WhiteBox
-    PrefabBuilder
-    ScriptCanvas
-)

+ 0 - 7
Code/gamejam2021_files.cmake

@@ -1,7 +0,0 @@
-
-set(FILES
-    Include/GameJam2021/GameJam2021Bus.h
-    Source/GameJam2021SystemComponent.cpp
-    Source/GameJam2021SystemComponent.h
-    enabled_gems.cmake
-)

+ 0 - 4
Code/gamejam2021_shared_files.cmake

@@ -1,4 +0,0 @@
-
-set(FILES
-    Source/GameJam2021Module.cpp
-)

+ 0 - 16
Code/gem.json

@@ -1,16 +0,0 @@
-{
-    "gem_name": "GameJam2021",
-    "display_name": "GameJam2021",
-    "license": "What license GameJam2021 uses goes here: i.e. https://opensource.org/licenses/MIT",
-    "origin": "The primary repo for GameJam2021 goes here: i.e. http://www.mydomain.com",
-    "type": "Code",
-    "summary": "A short description of GameJam2021.",
-    "canonical_tags": [
-        "Gem"
-    ],
-    "user_tags": [
-        "GameJam2021"
-    ],
-    "icon_path": "preview.png",
-    "requirements": ""
-}

+ 0 - 92
EngineFinder.cmake

@@ -1,92 +0,0 @@
-# {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}
-# This file is copied during engine registration. Edits to this file will be lost next
-# time a registration happens.
-
-include_guard()
-
-# Read the engine name from the project_json file
-file(READ ${CMAKE_CURRENT_LIST_DIR}/project.json project_json)
-set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${CMAKE_CURRENT_LIST_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()

+ 7 - 0
Platform/Android/android_project.cmake

@@ -1 +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}
 

+ 1 - 1
Platform/Android/android_project.json

@@ -1,7 +1,7 @@
 {
     "Tags": ["Android"],
     "android_settings" : {
-        "package_name" : "com.lumberyard.GameJam2021",
+        "package_name" : "org.o3de.GnomebodysHome",
         "version_number" : 1,
         "version_name" : "1.0.0.0",
         "orientation" : "landscape"

+ 7 - 0
Platform/Linux/linux_project.cmake

@@ -1 +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}
 

+ 7 - 0
Platform/Mac/mac_project.cmake

@@ -1 +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}
 

+ 7 - 0
Platform/Windows/windows_project.cmake

@@ -1 +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}
 

+ 7 - 0
Platform/iOS/ios_project.cmake

@@ -1 +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}
 

+ 27 - 0
Registry/assetprocessor_settings.setreg

@@ -0,0 +1,27 @@
+{
+    "Amazon": {
+        "AssetProcessor": {
+            "Settings": {
+                "ScanFolder Project/ShaderLib": {
+                    "watch": "@PROJECTROOT@/ShaderLib",
+                    "recursive": 1,
+                    "order": 1
+                },
+                "ScanFolder Project/Shaders": {
+                    "watch": "@PROJECTROOT@/Shaders",
+                    "recursive": 1,
+                    "order": 2
+                },
+                "ScanFolder Project/Registry": {
+                    "watch": "@PROJECTROOT@/Registry",
+                    "recursive": 1,
+                    "order": 3
+                },
+                "Exclude export scripts": {
+                    "pattern": ".*\\\\/ExportScripts\\\\/.*"
+                },
+                "ProjectRelativeGemsScanFolderPriority":"higher"
+            }
+        }
+    }
+}

+ 9 - 0
Registry/assimp_settings.setreg

@@ -0,0 +1,9 @@
+{
+    "O3DE": {
+        "Preferences": {
+            "SceneAPI": {
+                "AssImpReadRootTransform": true
+            }
+        }
+    }
+}

+ 0 - 3
Resources/GameSDK.ico

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

+ 0 - 3
Resources/LegacyLogoLauncher.bmp

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

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

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

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

@@ -1,68 +0,0 @@
-{
-  "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"
-  }
-}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@@ -1,24 +0,0 @@
-<?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>GameJam2021</string>
-	<key>CFBundleExecutable</key>
-	<string>GameJam2021.GameLauncher</string>
-	<key>CFBundleIdentifier</key>
-	<string>com.amazon.GameJam2021</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>

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

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

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

@@ -1,169 +0,0 @@
-{
-  "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"
-  }
-}

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

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

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

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

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

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

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

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

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

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

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

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

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

@@ -1,116 +0,0 @@
-{
-  "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"
-  }
-}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@@ -1,45 +0,0 @@
-<?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>GameJam2021</string>
-	<key>CFBundleExecutable</key>
-	<string>GameJam2021.GameLauncher</string>
-	<key>CFBundleIdentifier</key>
-	<string>com.amazon.lumberyard.GameJam2021</string>
-	<key>CFBundleInfoDictionaryVersion</key>
-	<string>6.0</string>
-	<key>CFBundleName</key>
-	<string>GameJam2021</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>

+ 11 - 5
ShaderLib/scenesrg.srgi

@@ -1,6 +1,16 @@
+// {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
 
+// this file is included by 'scenesrg_all.srgi', which is included by each shader using the scene-srg.
 // 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).
@@ -9,9 +19,5 @@
 
 partial ShaderResourceGroup SceneSrg : SRG_PerScene
 {
-/* Intentionally Empty. Helps define the SrgSemantic for SceneSrg once.*/
+    /* Intentionally Empty. Add fields here based on the project's needs */
 };
-
-#define AZ_COLLECTING_PARTIAL_SRGS
-#include <Atom/Feature/Common/Assets/ShaderResourceGroups/SceneSrgAll.azsli>
-#undef AZ_COLLECTING_PARTIAL_SRGS

+ 11 - 5
ShaderLib/viewsrg.srgi

@@ -1,6 +1,16 @@
+// {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
 
+// this file is included by 'viewsrg_all.srgi', which is included by each shader using the view-srg.
 // 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).
@@ -9,9 +19,5 @@
 
 partial ShaderResourceGroup ViewSrg : SRG_PerView
 {
-/* Intentionally Empty. Helps define the SrgSemantic for ViewSrg once.*/
+    /* Intentionally Empty. Add fields here based on the project's needs */
 };
-
-#define AZ_COLLECTING_PARTIAL_SRGS
-#include <Atom/Feature/Common/Assets/ShaderResourceGroups/ViewSrgAll.azsli>
-#undef AZ_COLLECTING_PARTIAL_SRGS

+ 14 - 0
autoexec.cfg

@@ -0,0 +1,14 @@
+; edit this file to make it load whatever level you want on startup automatically
+; You can also add additional commands in here that you want it to exec on startup.
+loadlevel start
+
+; uncomment the following line in any game packages that have all the
+; assets precompiled, so that it doesn't try to launch the Asset Processor in
+; actual shipping builds.
+
+; bg_ConnectToAssetProcessor 0
+
+; uncomment the following line to hide any debug display info from the top
+; right corner of the screen.
+
+; r_DisplayInfo 0

+ 173 - 0
cmake/EngineFinder.cmake

@@ -0,0 +1,173 @@
+# Edits to this file may be lost in upgrades. Instead of changing this file, use 
+# the 'engine_finder_cmake_path' key in your project.json or user/project.json to specify 
+# an alternate .cmake file to use instead of this one.
+
+include_guard()
+
+set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/project.json)
+
+# Option 1: Use engine manually set in CMAKE_MODULE_PATH
+# CMAKE_MODULE_PATH must contain a path to an engine's cmake folder 
+if(CMAKE_MODULE_PATH)
+    foreach(module_path ${CMAKE_MODULE_PATH})
+        cmake_path(SET module_engine_version_cmake_path "${module_path}/o3deConfigVersion.cmake")
+        if(EXISTS "${module_engine_version_cmake_path}")
+            include("${module_engine_version_cmake_path}")
+            if(PACKAGE_VERSION_COMPATIBLE)
+                message(STATUS "Selecting engine from CMAKE_MODULE_PATH '${module_path}'")
+                return()
+            else()
+                message(WARNING "Not using engine from CMAKE_MODULE_PATH '${module_path}' because it is not compatible with this project.")
+            endif()
+        endif()
+    endforeach()
+    message(VERBOSE "No compatible engine found from CMAKE_MODULE_PATH '${CMAKE_MODULE_PATH}'.")
+endif()
+
+# before proceeding, check and set a global variable if its a "script only" project
+file(READ ${CMAKE_CURRENT_SOURCE_DIR}/project.json o3de_project_json)
+string(JSON project_is_script_only ERROR_VARIABLE json_error GET ${o3de_project_json} "script_only")
+if(project_is_script_only AND NOT json_error)
+    # we only set it if there's no error and it is a script only project
+    message(STATUS "This is a script-only project, no C++ compiler will be used")
+    set_property(GLOBAL PROPERTY "O3DE_SCRIPT_ONLY" TRUE)
+endif()
+
+# Option 2: Use the engine from the 'engine_path' field in <project>/user/project.json
+cmake_path(SET O3DE_USER_PROJECT_JSON_PATH ${CMAKE_CURRENT_SOURCE_DIR}/user/project.json)
+if(EXISTS "${O3DE_USER_PROJECT_JSON_PATH}")
+    file(READ "${O3DE_USER_PROJECT_JSON_PATH}" user_project_json)
+    if(user_project_json)
+        string(JSON user_project_engine_path ERROR_VARIABLE json_error GET ${user_project_json} engine_path)
+        if(user_project_engine_path AND NOT json_error)
+            cmake_path(SET user_engine_version_cmake_path "${user_project_engine_path}/cmake/o3deConfigVersion.cmake")
+            if(EXISTS "${user_engine_version_cmake_path}")
+                include("${user_engine_version_cmake_path}")
+                if(PACKAGE_VERSION_COMPATIBLE)
+                    message(STATUS "Selecting engine '${user_project_engine_path}' from 'engine_path' in '<project>/user/project.json'.")
+                    list(APPEND CMAKE_MODULE_PATH "${user_project_engine_path}/cmake")
+                    return()
+                else()
+                    message(FATAL_ERROR "The engine at '${user_project_engine_path}' from 'engine_path' in '${O3DE_USER_PROJECT_JSON_PATH}' is not compatible with this project. Please register this project with a compatible engine, or remove the local override by running:\nscripts\\o3de edit-project-properties -pp ${CMAKE_CURRENT_SOURCE_DIR} --user --engine-path \"\"")
+                endif()
+            else()
+                message(FATAL_ERROR "This project cannot use the engine at '${user_project_engine_path}' because the version cmake file '${user_engine_version_cmake_path}' needed to check compatibility is missing.  \nPlease register this project with a compatible engine, or remove the local override by running:\nscripts\\o3de edit-project-properties -pp ${CMAKE_CURRENT_SOURCE_DIR} --user --engine-path \"\"\nIf you want this project to use an older engine(not recommended), provide a custom EngineFinder.cmake using the o3de CLI's --engine-finder-cmake-path option. ")
+            endif()
+        elseif(json_error AND ${user_project_engine_path} STREQUAL "NOTFOUND")
+            # When the value is just NOTFOUND that means there is a JSON
+            # parsing error, and not simply a missing key 
+            message(FATAL_ERROR "Unable to read 'engine_path' from '${user_project_engine_path}'\nError: ${json-error}")
+        endif()
+    endif()
+endif()
+
+
+# Option 3: Find a compatible engine registered in ~/.o3de/o3de_manifest.json 
+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 [=[
+To enable more verbose logging, run the cmake command again with '--log-level VERBOSE'
+Engine registration is required before configuring a project.
+Run 'scripts/o3de register --this-engine' from the engine root.
+]=])
+
+# Create a list of all engines
+if(EXISTS ${manifest_path})
+    file(READ ${manifest_path} manifest_json)
+    set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${manifest_path})
+
+    string(JSON engines_count ERROR_VARIABLE json_error LENGTH ${manifest_json} engines)
+    if(json_error)
+        message(FATAL_ERROR "Unable to read key 'engines' from '${manifest_path}'\nError: ${json_error}\n${registration_error}")
+    endif()
+
+    string(JSON engines_type ERROR_VARIABLE json_error TYPE ${manifest_json} engines)
+    if(json_error OR NOT ${engines_type} STREQUAL "ARRAY")
+        message(FATAL_ERROR "Type of 'engines' in '${manifest_path}' is not a JSON ARRAY\nError: ${json_error}\n${registration_error}")
+    endif()
+
+    math(EXPR engines_count "${engines_count}-1")
+    foreach(array_index RANGE ${engines_count})
+        string(JSON manifest_engine_path ERROR_VARIABLE json_error GET ${manifest_json} engines "${array_index}")
+        if(json_error)
+            message(FATAL_ERROR "Unable to read 'engines/${array_index}' from '${manifest_path}'\nError: ${json_error}\n${registration_error}")
+        endif()
+        list(APPEND O3DE_ENGINE_PATHS ${manifest_engine_path})
+    endforeach()
+elseif(NOT CMAKE_MODULE_PATH)
+    message(FATAL_ERROR "O3DE Manifest file not found at '${manifest_path}'.\n${registration_error}")
+endif()
+
+# We cannot just run find_package() on the list of engine paths because
+# CMAKE_FIND_PACKAGE_SORT_ORDER sorts based on file name and chooses
+# the first package that returns PACKAGE_VERSION_COMPATIBLE 
+set(O3DE_MOST_COMPATIBLE_ENGINE_PATH "")
+set(O3DE_MOST_COMPATIBLE_ENGINE_VERSION "")
+foreach(manifest_engine_path IN LISTS O3DE_ENGINE_PATHS) 
+    # Does this engine have a config version cmake file?
+    cmake_path(SET version_cmake_path "${manifest_engine_path}/cmake/o3deConfigVersion.cmake")
+    if(NOT EXISTS "${version_cmake_path}") 
+        message(VERBOSE "Ignoring '${manifest_engine_path}' because no config version cmake file was found at '${version_cmake_path}'")
+        continue()
+    endif()
+
+    unset(PACKAGE_VERSION)
+    unset(PACKAGE_VERSION_COMPATIBLE)
+    include("${version_cmake_path}")
+
+    # Follow the version checking convention from find_package(CONFIG)
+    if(PACKAGE_VERSION_COMPATIBLE)
+        if(NOT O3DE_MOST_COMPATIBLE_ENGINE_PATH) 
+            set(O3DE_MOST_COMPATIBLE_ENGINE_PATH "${manifest_engine_path}") 
+            set(O3DE_MOST_COMPATIBLE_ENGINE_VERSION ${PACKAGE_VERSION}) 
+            message(VERBOSE "Found compatible engine '${manifest_engine_path}' with version '${PACKAGE_VERSION}'")
+        elseif(${PACKAGE_VERSION} VERSION_GREATER ${O3DE_MOST_COMPATIBLE_ENGINE_VERSION})
+            set(O3DE_MOST_COMPATIBLE_ENGINE_PATH "${manifest_engine_path}")
+            set(O3DE_MOST_COMPATIBLE_ENGINE_VERSION ${PACKAGE_VERSION})
+            message(VERBOSE "Found more compatible engine '${manifest_engine_path}' with version '${PACKAGE_VERSION}' because it has a greater version number.")
+        else()
+            message(VERBOSE "Not using engine '${manifest_engine_path}' with version '${PACKAGE_VERSION}' because it doesn't have a greater version number or has a different engine name.")
+        endif()
+    else()
+        message(VERBOSE "Ignoring '${manifest_engine_path}' because it is not a compatible engine.")
+    endif()
+endforeach()
+
+if(O3DE_MOST_COMPATIBLE_ENGINE_PATH)
+    message(STATUS "Selecting engine '${O3DE_MOST_COMPATIBLE_ENGINE_PATH}'")
+    # Make sure PACKAGE_VERSION_COMPATIBLE is set so Findo3de.cmake knows
+    # compatibility was checked
+    set(PACKAGE_VERSION_COMPATIBLE True)
+    set(PACKAGE_VERSION O3DE_MOST_COMPATIBLE_ENGINE_VERSION)
+    list(APPEND CMAKE_MODULE_PATH "${O3DE_MOST_COMPATIBLE_ENGINE_PATH}/cmake")
+    return()
+endif()
+
+# No compatible engine was found.
+# Read the 'engine' field in project.json or user/project.json for more helpful messages 
+if(user_project_json)
+    string(JSON user_project_engine ERROR_VARIABLE json_error GET ${user_project_json} engine)
+endif()
+
+if(NOT user_project_engine)
+    string(JSON project_engine ERROR_VARIABLE json_error GET ${o3de_project_json} engine)
+    if(json_error AND ${project_engine} STREQUAL "NOTFOUND")
+        message(FATAL_ERROR "Unable to read key 'engine' from 'project.json'\nError: ${json_error}")
+    endif()
+endif()
+
+if(user_project_engine)
+    message(FATAL_ERROR "The local '${O3DE_USER_PROJECT_JSON_PATH}' engine is '${user_project_engine}' but no compatible engine with that name and version was found.  Please register the compatible engine, or remove the local engine override.\n${registration_error}")
+elseif(project_engine)
+    message(FATAL_ERROR "The project.json engine is '${project_engine}' but no engine with that name and version was found.\n${registration_error}")
+else()
+    set(project_registration_error [=[
+    Project registration is required before configuring a project.
+    Run 'scripts/o3de register -pp PROJECT_PATH --engine-path ENGINE_PATH' from the engine root.
+    ]=])
+    message(FATAL_ERROR "${project_registration_error}")
+endif()

+ 27 - 0
package.bat

@@ -0,0 +1,27 @@
+REM --------------------------------------------------------------------------------------------------
+REM 
+REM Copyright (c) Contributors to the Open 3D Engine Project.
+REM For complete copyright and license terms please see the LICENSE at the root of this distribution.
+REM 
+REM SPDX-License-Identifier: Apache-2.0 OR MIT
+REM 
+REM --------------------------------------------------------------------------------------------------
+
+
+REM This script is meant to export the project into a standalone shippable project that others can run.
+REM However, the project developer is expected to modify it to add steps or change it to their needs.
+REM
+REM To get more information about the possible tweakable parameters, run 
+REM (engine folder)\scripts\o3de.bat export-project -es ExportScripts/export_source_built_project.py --script-help
+
+set O3DE_PATH=F:/o3de
+set O3DE_PROJECT_PATH=D:/temp
+set O3DE_PROJECT_SEEDLIST=%O3DE_PROJECT_PATH%\AssetBundling\SeedLists\Example.seed
+set OUTPUT_PATH=%O3DE_PROJECT_PATH%\ProjectPackages
+
+REM change this to release or debug if you want it to make a release or debug package
+REM (Only works if the installer you have actually includes release and debug binaries)
+set OUTPUT_CONFIGURATION=profile
+
+%O3DE_PATH%\scripts\o3de.bat export-project -es ExportScripts\export_source_built_project.py --project-path %O3DE_PROJECT_PATH% --no-monolithic-build --log-level INFO -assets --config %OUTPUT_CONFIGURATION% --archive-output zip --seedlist %O3DE_PROJECT_SEEDLIST% -out %OUTPUT_PATH%
+

+ 40 - 0
package.sh

@@ -0,0 +1,40 @@
+#
+# 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
+#
+#
+
+# This script is meant to export the project into a standalone shippable project that others can run.
+# However, the project developer is expected to modify it to add steps or change it to their needs.
+
+# To get more information about the possible tweakable parameters, run 
+# (engine folder)/scripts/o3de.sh export-project -es ExportScripts/export_source_built_project.py --script-help
+
+# The output of this script will be placed in the "ProjectPackages" folder and will include
+# * A standalone version of the project game client, shippable, with all the assets and binaries
+# * A standalone version of the project server (if the project has one), shippable, with all the assets and binaries
+# * A standalone version of the project's "Unified" (Client + 'listen' Server), with assets and binaries
+# * zip files of each of the above (based on the --archive-output zip) option below - xz, bz2, gzip and 'none' 
+#   are also available.
+
+O3DE_PATH=F:/o3de
+O3DE_PROJECT_PATH=D:/temp
+
+# The seedlist is a list of assets that will be included in the package (it automatically computes dependencies
+# based on these assets and will include dependencies recusively on anything in the seed list.  Modify it
+# to include your own 'root' assets that you want to include in the package using the AssetBundler tool
+O3DE_PROJECT_SEEDLIST=${O3DE_PROJECT_PATH}/AssetBundling/SeedLists/Example.seed
+OUTPUT_PATH=${O3DE_PROJECT_PATH}/ProjectPackages
+
+# change this to release, profile, or debug 
+# (Only works if the installer you have actually includes release, profile or debug binaries)
+
+# note that script-only-projects cannot support monolithic configurations and the default installer
+# only includes monolithic release configuration (along with non-monolithic debug and profile).
+# you can build your own installer that has non-monolithic release, and then use release, in that case,
+# but otherwise, stick to either profile or debug.
+OUTPUT_CONFIGURATION=profile
+
+${O3DE_PATH}/scripts/o3de.sh export-project -es ExportScripts/export_source_built_project.py --project-path ${O3DE_PROJECT_PATH} -nomono  --log-level INFO -assets --config ${OUTPUT_CONFIGURATION} --archive-output zip --seedlist ${O3DE_PROJECT_SEEDLIST} -out ${OUTPUT_PATH}

+ 35 - 10
project.json

@@ -1,19 +1,44 @@
 {
-    "project_name": "GameJam2021",
-    "origin": "The primary repo for GameJam2021 goes here: i.e. http://www.mydomain.com",
-    "license": "What license GameJam2021 uses goes here: i.e. https://opensource.org/licenses/MIT",
-    "display_name": "GameJam2021",
-    "summary": "A short description of GameJam2021.",
+    "project_name": "GnomebodysHome",
+    "version": "1.0.0",
+    "project_id": "{3392BAF0-352A-4E25-825B-DE7F8AFAA3C7}",
+    "origin": "The primary repo for GnomebodysHome goes here: i.e. http://www.mydomain.com",
+    "license": "What license GnomebodysHome uses goes here: i.e. https://opensource.org/licenses/Apache-2.0 Or https://opensource.org/licenses/MIT etc.",
+    "display_name": "GnomebodysHome",
+    "summary": "A short description of GnomebodysHome.",
+    "script_only": true,
     "canonical_tags": [
         "Project"
     ],
     "user_tags": [
-        "GameJam2021"
+        "GnomebodysHome"
     ],
     "icon_path": "preview.png",
     "engine": "o3de",
-    "external_subdirectories": [],
-    "restricted_name": "projects",
-    "project_id": "{873840b2-e16d-4e10-9ca8-7382b1ac1a77}",
-    "engine_version": "2.2.2"
+    "restricted": "GnomebodysHome",
+    "gem_names": [
+        "Atom",
+        "AudioSystem",
+        "CameraFramework",
+        "Compression",
+        "DebugDraw",
+        "DiffuseProbeGrid",
+        "EditorPythonBindings",
+        "EMotionFX",
+        "GameState",
+        "ImGui",
+        "LandscapeCanvas",
+        "LyShine",
+        "PhysX",
+        "PrimitiveAssets",
+        "PrefabBuilder",
+        "SaveData",
+        "ScriptCanvasPhysics",
+        "ScriptEvents",
+        "StartingPointInput",
+        "TextureAtlas",
+        "WhiteBox",
+        "RemoteTools"
+    ],
+    "engine_version": "4.2.0"
 }

+ 0 - 20
project.json.bak0

@@ -1,20 +0,0 @@
-{
-    "project_name": "GameJam2021",
-    "origin": "The primary repo for GameJam2021 goes here: i.e. http://www.mydomain.com",
-    "license": "What license GameJam2021 uses goes here: i.e. https://opensource.org/licenses/MIT",
-    "display_name": "GameJam2021",
-    "summary": "A short description of GameJam2021.",
-    "canonical_tags": [
-        "Project"
-    ],
-    "user_tags": [
-        "GameJam2021"
-    ],
-    "icon_path": "preview.png",
-    "engine": "o3de",
-    "external_subdirectories": [
-        "Gem"
-    ],
-    "restricted_name": "projects",
-    "project_id": "{873840b2-e16d-4e10-9ca8-7382b1ac1a77}"
-}