LogoLogo
HomeOnline DashboardAPIDiscordForums
SDK 0.5.2
SDK 0.5.2
  • Welcome
  • Overview
    • What is coherence?
    • How does coherence work?
    • Features and Roadmap
    • Requirements
  • Get Started
    • Install coherence
    • Scene setup
    • Prefab setup
    • Build and run
    • Baking and code generation
    • Create a free account
    • Deploy replication server
    • Share builds
  • Authority and communication
    • How authority works
    • Authority transfer
    • Commands
    • Client messages
    • Server-side and input queues
    • Animations
  • Persistence
    • Overview
    • Configuring persistence
    • Storage
    • Example – A global counter
  • Optimization
    • Overview
    • Simulation frequency
    • Areas of interest
    • World size
    • Level of detail
    • Interpolation
    • Extrapolation
  • Connected entities
    • Overview
    • Entity references
    • Parent-child relationships
  • Simulators
    • Overview
    • Client vs. simulator logic
    • Build and deploy
    • Simulator load balancing
  • Tutorial project
    • Get the Tutorial Project
    • Start Tutorial
      • 1. Transforms
      • 2. Physics
      • 3. Persistence
      • 4. Animation and Variables
      • 5. AI Navigation
      • 6. Network Commands
      • 7. Network Teams (draft)
  • Game Services
    • Game account
    • Key-value store
    • Matchmaking
  • Developer Portal
    • Overview
    • Dashboard
    • Resource Usage
    • Replicator and Simulator Configuration
    • Enabling Game Services
  • API reference
    • Network SDK
      • CoherenceSync
      • MonoBridge
      • LiveQuery
      • Archetype
      • Sample UI
      • Settings Window
      • Custom Bindings
    • Cloud API
      • API tokens and keys
      • Server discovery
      • Game account
      • Key-value store
      • Matchmaking
    • Replication Server
    • Simulation Server
  • Schema reference
    • Overview
    • Specification
    • Field Settings
    • Archetypes and LOD-ing
  • Resources
    • Downloads
    • SDK Update Guide
    • Video Tutorials
    • Glossary
    • CLI Utilities
    • Helper Scripts
    • Troubleshooting
  • Community
    • Discord
  • Additional information
    • Pricing
    • SLA
    • Unreal Engine support
    • WebGL
    • Peer-to-Peer (P2P)
    • Known Issues
    • Changelog
Powered by GitBook
On this page
  • Build a simulator to be uploaded to the cloud
  • Upload your simulator

Was this helpful?

Export as PDF
  1. Simulators

Build and deploy

Last updated 3 years ago

Was this helpful?

Build a simulator to be uploaded to the cloud

A simulator build is a built Unity Player for the Linux 64-bit platform that you can upload to coherence straight from Unity Editor.

Make sure you have run through and .

On Unity's menu bar, navigate to coherence -> Simulator -> Build Wizard.

From within the Build Wizard you can build and upload simulators.

The Info tab provides information and requirements to build simulators properly.

The Build tab creates valid simulator builds from Build Configuration Assets.

There's a known issue in the Platforms package provided by Unity where builds will fail when the project is not in the target build platform. To prevent this from happening, please switch your active platform to match the one used in your build configuration before building.

Creating a Build Configuration Asset

You can create them via Assets -> Create -> coherence -> Simulator Build Configuration.

A newly created build configuration looks like this:

There are several settings you might want to change.

  • Specify the scenes you want to get in the build via the Scene List component.

  • Specify a Company Name and a Version from the General Settings component (optional).

  • Additionally, you can add our OptimizeForSize component (find it using Add Component). Specify which optimizations you want to use to reduce the final build size from the Optimize For Size component (optional).

Reducing simulator build size (experimental ⚠️)

This feature is experimental, please make sure you backup your project beforehand.

You can add an OptimizeForSize component to your build configuration via the Add Component in the build configuration inspector. It looks like this:

Select the desired optimizations depending on your needs.

Optimization

What it does

Replace Textures And Sounds With Dummies

Project's textures and sound files are replaced with tiny and lightweight alternatives (dummies). Original assets are copied over to <project>/Library/coherence/AssetsBackup. They are restored once the build process has finished.

Keep Original Assets Backup

The Assets Backup (found at<project>/Library/coherence/AssetsBackup) is kept after the build process is completed, instead of deleted. This will take disk space depending on the size of the project, but it's a safety convenience.

Compress Meshes

Sets Mesh Compression on all your models to High.

Disable Static Batching

Settings applied to built simulators will be reverted once the build process is completed, so these settings won't affect other builds you make.

Upload your simulator

Once you have created a valid simulator build, you can upload it to coherence.

If you built your simulator using the Build tab, you should have a valid path to your simulator build set already. If you haven't or want to use a different path, use the Browse button.

You'll see in the developer dashboard when your simulator is ready and running.

Target frame rate on simulator builds is forced at 30.

Static Batching tries to combine meshes at compile-time, potentially increasing build size. Depending on your project, static batching can affect build size drastically. Read more about .

static batching
Build and run
Create an account
Optimize For Size component, part of a Build Configuration Asset.