AWS SimSpace Weaver handles deploying and managing your simulation infrastructure. You can scale your spatial simulations across up to 10 Amazon Elastic Compute Cloud (Amazon EC2) instances while SimSpace Weaver manages the challenging tasks of provisioning, networking, and deprovisioning infrastructure for you. SimSpace Weaver lets you spend less time worrying about infrastructure and more time developing simulation code and content to fill your virtual worlds.
SimSpace Weaver is a flexible service that gives you the opportunity to scale up your own simulation engines. Integrate with either the SimSpace Weaver app SDK for C++ or SimSpace Weaver app SDK for Python to create AWS SimSpace Weaver applications (or simply apps). Then, upload your apps to Amazon Simple Storage Service (Amazon S3) and use them as part of your simulation. Apps can take many different forms and perform various read and write functions based on your simulation code. Within a single simulation, these apps run distributed across your chosen quantity of Amazon EC2 instances while SimSpace Weaver manages the communication and simulation state between them. You can build simulation apps that manage object pathfinding and create specialized apps that send simulation data to a client for visualization purposes.
To learn more, see our samples and tutorials.
SimSpace Weaver works by dividing the simulation world into discrete areas called spatial partitions. SimSpace Weaver automatically partitions your simulation world according to your predefined configuration. Each spatial area is managed by a SimSpace Weaver app that is responsible for the simulation logic and behavior of all entities within that area. SimSpace Weaver currently supports partitioning into a uniform 2D grid.
SimSpace Weaver maintains the global state of all simulated entities, meaning that every entity can be aware of each other's spatial presence and state. SimSpace Weaver also manages the memory and replication of entity data between servers, allowing entities to seamlessly cross boundaries between different simulation areas.
Applications can read simulation data from other areas of the simulation using the subscription system. This means simulation objects can account for events happening in neighboring partitions or interact with other objects along partition boundaries. Use subscriptions to read data out of the simulation for visualization and interactivity.
The SimSpace Weaver app SDK contains Messaging APIs that you can use to send and receive messages between applications in a simulation. Subscriptions provide a pull method to read simulation events; messaging provides a push method to transmit data in the simulation. SimSpace Weaver messages contain the sender in the message header so message recipients can reply. You can use messages to forward information that an application receives from an external client to other applications in the simulation.
To learn more, see our samples and tutorials.
Run simulations with different sets of logic and behaviors in the same simulated environment. Each domain has its own allocated compute resources. Entities can interact and transfer across domains so the simulation still behaves as a single, seamless world. Use multi-domain for more advanced simulations that combine different types of entities that have differing compute needs. For example, a simulation of a virtual city may utilize multi-domain to have a domain dedicated to simulating pedestrians and another dedicated to simulating traffic.
Snapshots allow you to save the state of your simulation entities at any point in time. Snapshot files are uploaded and stored in Amazon S3. Use your snapshot files to launch new simulations with the existing Start Simulation API. Snapshots are an ideal tool for simulations with branching scenarios and addressing backup and restore use cases. Use snapshots to save your simulation progress at regular intervals, especially for long running simulations.
Run simulation code by using your own local hardware to accelerate iteration times and test for free. AWS SimSpace Weaver Local uses the same APIs as the cloud service, so you can seamlessly transition to the cloud for full-scale production without needing to modify any code. AWS SimSpace Weaver Local is currently available for Windows.
SimSpace Weaver offers built-in integrations with Unreal Engine 5 and Unity LTS Release 2021.3.7f1 to accelerate your development with these popular tools.
The default update rate for SimSpace Weaver simulations is 30 Hz. You can adjust the update rate to 10 Hz, 15 Hz, or allow the clock to run as fast as possible to fit your simulation needs while still keeping all your applications time synchronized.
You can utilize your own container images to run your simulation applications instead of AWS SimSpace Weaver’s stock Amazon Linux (AL2) container. Create your own AL2 based container images with any dependencies required by your simulation applications and upload the images to Amazon Elastic Container Registry (Amazon ECR). Use this feature to help reduce the file size of your simulation applications, increase upload speeds, and improve iteration times.
SimSpace Weaver has no upfront commitments. You pay only for the compute resources used by your simulation for however long you use them.
For details, see the pricing page.