Local development - AWS SimSpace Weaver

Local development

You can deploy your SimSpace Weaver applications locally for rapid testing and debugging. SimSpace Weaver Local is supported for building on Microsoft Windows only.

Important

For information about developing with Unity and Unreal Engine, see Support for other engines.

Requirements

Build your simulation for SimSpace Weaver Local

To learn to use SimSpace Weaver Local, you can use the same Pathfinding Sample application that you ran in the cloud during the Getting started with SimSpace Weaver tutorials, but this time on your local hardware.

To build the sample application for SimSpace Weaver Local
  1. At a command prompt, go to project-folder\tools\local.

  2. Run generate_visual_studio_project.bat.

  3. Open project-folder\buildlocal\PathfindingSampleLocal.sln in Visual Studio.

  4. Set your build configuration to RelWithDebInfo.

  5. Choose Build > Build Solution.

    Visual Studio will put your build artifacts in:

    • project-folder\buildlocal\out\RelWithDebInfo.

    Inside that folder, you should see the following executable files:

    • PathfindingSampleLocalSpatial.exe

    • PathfindingSampleLocalView.exe

Run your simulation with SimSpace Weaver Local

You can use SimSpace Weaver Local to run any combination of up to 24 spatial or custom apps on your local computer. The simulation clock starts after all spatial apps defined in the schema start.

To run your apps with SimSpace Weaver Local
  1. In a file chooser window, go to project-folder\buildlocal\out\RelWithDebInfo.

  2. SimSpace Weaver Local apps require a schema file named schema.yaml in the working directory of the apps. Any failure to read the required information from the schema terminates the apps.

    The schema for SimSpace Weaver Local doesn't have to be identical to project-folder\tools\project-name-schema.yaml, but you can use it as a starting point.

    Choose one of the following:

    • Copy that schema to project-folder\buildlocal\out\RelWithDebInfo\schema.yaml.

    • Set the environment variable WEAVERLOCAL_SCHEMA_PATH to the name of a schema file with a different path or file name.

      Example
      set WEAVERLOCAL_SCHEMA_PATH=c:\projects\MyProject\tools\MyProject-schema.yaml
      Note

      If you set your environment variable from the command line, that environment variable (with that value) is only accessible from that command prompt session (console window).

  3. The schema for the sample application defines a 2x2 grid, which creates 4 partitions. You will run a script that will launch 4 instances of the spatial app, to match the number of spatial apps specified in the schema. The script will also launch 1 view app. After all spatial apps launch and are assigned a partition, the simulation will automatically start ticking.

    To launch your apps

    1. At a command prompt, go to the local tools folder for your project.

      cd project-folder\tools\local
    2. Run the script to launch the apps.

      launch_simulation_locally.bat
      Note

      If you set WEAVERLOCAL_SCHEMA_PATH to the name of a schema file, you must start your spatial apps at the command line in the same session (window) that you set the environment variable.

      Important

      If you get a Windows security pop-up, choose Allow Access so that you can connect to the view app to visualize the simulation.

      Note

      You can also start your spatial and view apps manually. To do so, you must manually launch 4 instances of the spatial app and one view app.

      • Spatial app: start PathfindingSampleLocalSpatial.exe

      • View app: start PathfindingSampleLocalView.exe

View your local simulation

To view your local simulation, you can use any of the clients that are included with the SimSpaceWeaverAppSdkDistributable. For more information on building and using the sample clients, see Step 5: View your simulation of the quick start tutorial.

You must update the IP address and port number in the client to connect to the view app for your local simulation. Always use the following values with SimSpace Weaver Local:

tcp://127.0.0.1:7000

Depending on the client you select, you can update the IP address and port number as follows:

  • Unreal – Change the URL on line 1 of view_app_url.txt

  • Console – Launch the client with the IP address and port number URL as a parameter

Stop your local simulation

Your local simulation will continue to run if your local spatial apps are active. If you close one of the spatial app windows then you will stop the entire simulation. Close all of the other windows to clean up the rest of the simulation.

You can manually close each app window, or you can use the following script to automatically close all of them:

  • project-folder\tools\local\terminate_local_simulation.bat

Note

Even though closing one spatial app window stops the simulation, make sure to close the other app windows. You won't be able to launch another local simulation successfully if there are windows still open from a previous simulation.