3.3. Setup a New UProject

3.3.1. Limitations and requirements

  • Only Windows x64 and Linux platforms are supported. Mac support will be added in future releases.

  • The project should have type C++ (not Blueprint). Choose C++ when you create a new project:

    Untitled

    If you need to add SODA.Sim plugin to an existing Blueprint project, first convert the project to C++.

  • Only Development and DebugGame builds are supported, not Shippment. It means that you may may pack your project only in Development and DebugGame configurations:

    Untitled

    Accordingly, use only Development and DebugGame configurations while using IDE or makefile. E.g. Visual Studio:

    Untitled

  • Only Monolithic builds are supported, not Modular. See TargetLinkType here.

3.3.2. Setup Steps

  1. Clone plugins You need to clone the required set of plugins from SODA.Auto GitHub. At least one plugin is required - SodaSim.

    [!WARNING]

    • Keep it mind SodaSim repo contain one submodule SodaSimProto. Make sure you clone the submodule as well.

    • All repose include LFS files. Make sure you clone LFS files as well.

    • Don’t try to download ZIP archives directly from the Git Hub site, as this way you will not be able to download binary files via LFS Untitled

    You can use the tool to clone the repository or via the command line:

    git clone https://github.com/soda-auto/SodaSim.git
    cd SodaSim
    git submodule update --init --recursive
    
  2. SODA.Sim plugin install There are two ways to install the plugin (see Working with Plugins in Unreal Engine for more details) - copy it to one of the folders:

    • to the project plugins directory

    • to the engine plugins directory (available only if you compiled UnrealEngine from source)

    End enable it by checking Edit → Plugins → Soda → SodaSim and then restart the project:

    Untitled

    Useful links:

  3. GameMode setup You may use either built-in class ASodaGameMode or create a custom GameMode class.

    If you use ASodaGameMode), just set it as Default GameMode (Edit→Project Settings):

    Untitled

    To create a custom class add component USodaGameModeComponent into the GameMode class:

    Untitled

    Regardless of the GameMode class type (built-in or custom) it is strongly recommended to set SodaHUD as default HUD

    Useful links:

  4. Set SodaGameViewportClient as default Game Viewport Client Class:

    Untitled

  5. Asset Manager setup You need to add two new elements - SodaLibraryPrimaryAsset and MetadataPrimaryAsset to Primary Asset Types To Scan section. You also need to set paths to folders with according Primary Asset types. Typically, these folders are /Game and /SodaSim, but if you develop or use your own plugins, that may use mentioned Primary Assets, add here paths to these plugins:

    Untitled

    Useful links:

  6. Physics setup To be able to use ChaosVehicleMovement component inside the simulator, you need to set the following parameters values:

    • Tick Physic Async - enabled

    • Substeping - disabled

    • (recommended) Asyn Fixed Time Step = 0.01, but keep in mind that this parameter’s value directly impacts the performance

      Untitled

Useful links: