Skip to Content
DocsDeveloper integration guideExport from Unity

Export from Unity

Keep the original C# code, characters, scenes, and assets. Use Unity’s official Web Build Support, Default template, and native Build. No Combos Editor plugin, Unity Pipeline, Unity CLI, or custom template is required. Adapt native plugins and platform dependencies for Web as needed.

1. Activate the Web platform

Open the project with its required editor and test its main scene. In Unity Hub → Installs → that editor → Add modules, install Web Build Support. Stop Play, then choose File → Build Profiles → Web → Switch Platform. Older editors use Build Settings → WebGL. Wait for imports and the Active indicator.

Unity's native Web platform is active. This scene list belongs to BoatAttack.

Unity’s native Web platform is active. This scene list belongs to BoatAttack.

2. Configure your scenes and output

Put your entry scene at index 0 and include every required scene. In Player Settings → Web, select Default and turn off Development Build.

Select Unity's built-in Default template.

Select Unity’s built-in Default template.

SettingExample and adaptation
CompressionGzip + Decompression Fallback; Disabled is another option if size permits
ThreadsSingle-threaded; multithreading requires host cross-origin isolation
Graphics and memoryWebGL 2, 256 MB initial memory with growth; validate against your game and devices
ScenesMain menu + Island in this example; replace with your own

Gzip, Decompression Fallback, and single-threaded publishing settings.

Gzip, Decompression Fallback, and single-threaded publishing settings.

Without fallback, .gz/.br files need matching server Content-Encoding. With fallback, Unity’s loader decompresses .unityweb, adding loader size and losing native streaming decompression benefits. File extensions alone do not prove compatibility: test the final host. Unity deployment documentation .

3. Include dynamic assets

For local Addressables, enable Build Addressables content on Player Build and keep StreamingAssets/aa. In BoatAttack: Window → Asset Management → Addressables → Settings → Build. Check public URLs and browser access for remote assets. Projects without Addressables do not need to install it. Enter a real level to check characters, boats, and UI—not only the menu. Addressables documentation .

4. Build the complete folder

Save, choose native Build, and output to dist in the project root. Back up old output and build into an empty folder. Resolve Console errors until the build succeeds.

dist/ ├── index.html ├── Build/ ├── TemplateData/ └── StreamingAssets/

Keep the entire export: C# becomes WebAssembly and assets travel with the engine build. Do not rewrite it line by line in JavaScript or upload Assets, Packages, ProjectSettings, or Library.

5. Play and publish

Use an HTTP server or Build And Run. Enter a level, drive or move, and check dynamic assets, UI, pause, and replay. Follow Publish and update, retest online, and declare only verified devices.

The native BoatAttack Default export running a race locally.

The native BoatAttack Default export running a race locally.

The BoatAttack example contains its specific compatibility patch and recorded results. A game that already exports to WebGL does not need that patch or its scene names.


Source: Combos developer integration guide , checked on 2026-10-08 with CLI v1.14.2. Example results refer to the original recorded runs.

Last updated on