v1.0 · Unity 2021.3+

SoundCraft AI

Generate game-ready sound effects from text prompts, directly inside the Unity Editor. No accounts, no API keys — just your Asset Store invoice number.

Unity 2021.3+ 250 Gens / Month Auto-Categorised Editor-Only

🏠 Overview

Type a prompt, click generate, get a game-ready sound effect in seconds.

SoundCraft AI is a Unity Editor plugin that connects to the SoundCraft AI cloud backend to generate game sound effects from simple text descriptions. The result is downloaded, sorted into a category folder, imported with correct AudioImporter settings, and — optionally — wrapped in a ready-to-use AudioSource prefab, all without ever leaving Unity.

💡
No accounts, no API keys. SoundCraft AI is activated with your Unity Asset Store invoice number. No separate website registration, no API keys to manage. Just enter your invoice, verify, and start generating.

Generation Flow

✍️ Type prompt 🚀 Send to cloud ⏳ Poll progress 📥 Download clip(s) 📁 Auto-categorise & import

Quick Start

Get up and running in under 2 minutes.

Import the package
Import SoundCraft AI into your Unity project via the Asset Store. All files live under Assets/SoundCraftAI/.
Open the plugin
Go to Window → SoundCraft AI → Generator. A welcome popup will guide you on first open.
Enter your invoice
Paste your Invoice Number from the Asset Store purchase email (starts with IN) and click Verify Invoice.
Write a prompt
Type a description, e.g. "8-bit retro coin pickup chime" or "heavy iron sword hitting plate armor".
Generate!
Optionally pick a Style preset and a number of Variations, then click Generate. In a few seconds your clip is imported, sorted, and pinged in the Project window.
No dependencies. SoundCraft AI uses only built-in Unity APIs (UnityWebRequest, EditorWindow, AudioImporter, AssetDatabase). No packages to install.

📄 Invoice Activation

Your Asset Store invoice number is your license key.

SoundCraft AI uses your Unity Asset Store invoice number to verify your purchase and manage your generation allowance. No separate account, API key, or registration is needed.

How to find your invoice number

  1. Check the purchase confirmation email from the Unity Asset Store. The invoice number starts with IN followed by 8–18 characters (e.g. IN0123456789AB).
  2. You can also find it in your Unity Asset Store order history.

Activating the plugin

Open the SoundCraft AI window (Window → SoundCraft AI → Generator).
Enter your invoice number in the Invoice Number field.
Click Verify Invoice.
On success, you'll see a green message: "✓ Verified — X of Y generations remaining this month".
💡
Automatic verification. When you enter a valid invoice number for the first time, the server automatically verifies your purchase against the Unity Asset Store and activates your license. No manual approval or waiting required.

Invoice section controls

ControlDescription
Invoice NumberYour Unity Asset Store invoice number, starting with IN. Find it in your purchase email or order history.
Verify InvoiceValidates your invoice with the SoundCraft AI server and displays your remaining generations.

Activation

Paste your Unity Asset Store invoice number into the field at the top of the SoundCraft AI window and click Verify Invoice. Your invoice activates the asset across all your installations — there's no machine-specific binding.

Your purchase includes 250 generations every month. Cached prompts return instantly without using your allowance.

If you need to clear a stored invoice (for example, after a typo), use Window → SoundCraft AI → Forget Invoice.

📊 Monthly Allowance

250 generations every month, included with your purchase.

Your purchase includes 250 generations every month. The allowance is issued every month for as long as you own the asset.

How the allowance works

💡
Allowance display. After verifying your invoice, the plugin shows: "✓ Verified — 248 of 250 generations remaining this month". This updates as you generate.

🔃 Plugin Updates

Update from the Unity Asset Store at any time for the latest features.

New versions of SoundCraft AI are released through the Unity Asset Store. You can update at any time from your order history or from the Package Manager.

🖼 Generator Window

Your single control panel for everything.

Open it via Window → SoundCraft AI → Generator. The window is resizable and divided into these sections from top to bottom:

SectionDescription
InvoiceInvoice number input, verification status, and remaining-generations display
PromptMain text prompt input, plus a collapsible negative-prompt field
OptionsModel selector, style preset, category, duration, and variation count
ImportPer-category import settings, optional AudioSource prefab, and Project-window ping toggles
GenerateThe generate button, progress bar, and cancel button
HistoryYour last 20 generations, with play, regenerate, locate, and delete per entry

All settings are persisted between Unity sessions via EditorPrefs.

💬 Prompt Guide

The prompt is the most important factor in the quality of your sound effect.

What works well

Example prompts

PromptAuto-Category
"8-bit retro coin pickup chime"UI
"heavy iron sword hitting plate armor"Weapons
"wet footstep on grass"Footsteps
"distant forest wind ambience loop"Ambience
"menacing low-frequency monster growl"Creatures
"wooden crate smashing apart"Impacts

Negative prompt

The optional negative prompt tells the AI what to avoid — for example "music, voice, distortion". Expand the collapsible Negative prompt field below the prompt to set one per generation.

💡
Generate variations. Games need several takes of common sounds. Raise the Variations slider (1–8) to get that many distinct takes of the same prompt in a single click — ideal for footsteps, impacts and gunfire.

🎧 Sound Models

Three SFX engines, tuned for different needs.

The Model selector offers three AI sound engines. Pick the one that fits the job — the cloud backend routes your request to that engine.

ModelBest ForNotes
ElevenLabs SFX v2 RecommendedPremium quality — hero and signature SFXUp to 22 seconds
MMAudio V2 CheapBatch placeholder SFX while prototypingUp to 30 seconds · default selection
CassetteAI FastInstant turnaround while iterating on promptsUp to 30 seconds
All models are included in your purchase. There is no per-generation cost. Each variation produced — with any model — uses one of your monthly generations.

🎨 Style Presets

Genre tags that keep a project's whole sound palette consistent.

Pick a style preset to prepend a short genre tag to your prompt. Your typed prompt is never modified — the style tag is added only when the generation request is sent. Choose None to send the prompt as-is.

StyleTag Applied
None(prompt sent unchanged)
Retro 8-bitretro 8-bit chiptune
Realisticrealistic high-fidelity
Cartooncartoon stylized
Horrordark horror
Sci-Fisci-fi futuristic
Fantasyfantasy magical

Generation Options

Control the model, length, and how many takes you get.

OptionValuesDescription
Model ElevenLabs / MMAudio V2 / CassetteAI Which AI sound engine generates the clip. See Sound Models.
Style preset None Default / 6 presets Optional genre tag prepended to your prompt. See Style Presets.
Category Auto Default / 8 categories Which folder the clip is filed under. Auto lets the server classify the prompt; pick a category to override it.
Duration 0.530 seconds (default 2) Target clip length. Short UI blips work best around 0.5–1.5s; ambience loops at 8–30s.
Variations 18 (default 1) How many distinct takes of the prompt to generate in one click. Each variation uses one generation.

📦 Auto-Import

Control what happens after a clip is generated.

When a generation completes, SoundCraft AI downloads each clip, files it into a category subfolder, and imports it — ready to use. The Import section of the window controls the optional extras:

SettingDefaultDescription
Apply per-category import settingsOnSets the AudioImporter compression, load type, and mono/stereo automatically for the clip's category.
Also create AudioSource prefabOffEmits a ready-to-drop AudioSource prefab next to each clip, pre-tuned for the category.
Ping clip in Project windowOnHighlights the first generated clip in the Project window when the import finishes.

All generated files are saved to Assets/SoundCraftAI/Generated/<Category>/.

📁 Categories

Every generation is sorted into the right folder automatically.

The backend classifies each prompt into one of eight categories and files the clip under Generated/<Category>/. You can override the classification with the Category dropdown in the window.

CategoryTypical Sounds
UIclicks, hovers, confirms, errors, pickups, level-up chimes
Weaponssword swings, gunshots, reloads, bow releases, blade clashes
Footstepssteps on grass, gravel, wood, stone, snow, metal
Ambiencewind, rain, forests, caves, room tone, crowds, doors, creaks
Creaturesgrowls, roars, screeches, wing flaps, monster breathing
Impactspunches, crashes, explosions, glass and wood breaking
Musicshort jingles, stingers, fanfares, victory and game-over cues
Otheranything that doesn't fit the categories above

💾 AudioImporter Settings

Automatically configured for how each kind of sound is used in a game.

When Apply per-category import settings is enabled, each generated clip's AudioImporter is configured for its category — you never touch import settings by hand.

CategoryLoad TypeChannelsReason
UIDecompress On LoadMonoTiny clips that must be instant and pan-free
FootstepsDecompress On LoadMonoShort, frequently triggered, positional
Weapons / ImpactsDecompress On LoadStereoPunchy one-shots that need to fire with no delay
CreaturesCompressed In MemoryStereoMid-length clips, kept compressed to save memory
Ambience / MusicStreamingStereoLong, looping audio that should stream from disk
You stay in control. These settings are applied once on import. You can freely change any clip's AudioImporter settings afterwards in the Inspector — SoundCraft AI never re-imports a clip behind your back.

🔊 AudioSource Prefabs

Optional ready-to-drop prefabs, pre-tuned per category.

Enable Also create AudioSource prefab in the Import section to emit a prefab next to each generated clip. The prefab is a GameObject with an AudioSource already configured for how that category of sound is normally used — drag it straight into your scene.

CategorySpatialLoopRolloff
UI / Music2DMusic loops
Footsteps3DNoTight (short range)
Weapons / Impacts / Creatures3DNoLogarithmic
Ambience3DYesLogarithmic (wide range)
On looping. Unity has no clip-level loop point — looping is an AudioSource property. Clips classified as Ambience or Music get AudioSource.loop enabled on their generated prefab.

🕔 History

Your last 20 generations, always at hand.

The History section at the bottom of the window lists your last 20 generations. Each entry shows its category and prompt, with these per-entry actions:

ActionDescription
PlayPreviews any variation of the clip directly in the Editor.
RegenerateRe-runs the same prompt and settings to get fresh takes.
LocateSelects and highlights the clip in the Project window.
DeleteRemoves the entry and deletes its generated files from the project.

History is persisted between Unity sessions. Entries whose files have been deleted are pruned automatically when the window opens.

📚 Sound Library

A Mixamo-style browser for every sound you’ve generated — search, tag, preview, and drop into your scene.

While the Generator is where sounds are made, the Sound Library is where you live with them. It scans Assets/SoundCraftAI/Generated/ and presents every clip in a fast, searchable, three-pane browser modelled on Mixamo — so a project with hundreds of generated effects stays navigable. Open it from Window → SoundCraft AI → Library.

💡
Two windows, one workflow. Generate sounds in the Generator window; browse, organise, and reuse them in the Library window. The Library re-scans automatically whenever the project changes, so new generations appear the moment they’re imported.

The three-pane layout

📁 Categories 🎵 Sound grid 🔊 Preview & details
PaneWhat it shows
Left — Categories★ Favourites and All are pinned at the top, followed by one entry per Generated/<Category>/ folder that contains clips. Each entry shows a live count. Selecting one filters the grid.
Center — SoundsA virtualised card grid. Every card renders a waveform thumbnail, the clip name, its duration, a category badge, and an always-visible favourite star. A search field, a sort dropdown, and a card-size slider sit above it.
Right — Preview & DetailsA large waveform of the selected clip with a Play / Stop transport, plus the clip’s name, category, duration and format, an editable tag list, and Reveal in Project / Add to Scene buttons.

Browsing & filtering

🔍 Search

A debounced, case-insensitive substring search across each clip’s name and its tags. Type wood to surface every footstep on wood, regardless of category.

⇅ Sort

Order the grid by Name (A–Z / Z–A), Duration (short → long or long → short), or Recently modified.

★ Favourites

Click the star on any card to favourite it. The ★ Favourites category collects them for one-click access to the sounds you reach for most.

📏 Card size

Drag the size slider to scale the grid from dense thumbnails to large waveform tiles. Labels gracefully peel away as cards shrink.

Tags

Add free-form tags to any clip from the details pane (wood, heavy, boss-fight…). Tags are folded into the search index, so they become an extra, project-specific way to organise sounds on top of the fixed categories. Tags and favourites are stored per-project in ProjectSettings/ — they never touch your clips or your version-controlled assets.

Preview & playback

Selecting a card renders its waveform in the preview pane and arms the transport. Play auditions the clip directly in the Editor (no Play-mode required); Stop halts it. Waveform thumbnails are peak-rendered once and cached process-wide, so they appear instantly as you scroll — clips whose PCM can’t be read (streaming compression) fall back to a note glyph instead of stalling.

Putting a sound to work

ActionDescription
Add to SceneDrops a new GameObject carrying an AudioSource pre-tuned from the clip’s category profile — spatial blend, loop, rolloff, min/max distance and volume are all set for you (see AudioSource Prefabs). The object is selected and framed in the Scene view, and the action is undoable.
Reveal in ProjectSelects and pings the source clip in the Project window.

Right-click context menu

Right-click any card for the full set of per-clip operations:

CommandDescription
Play / StopAudition or stop the clip in the Editor.
Add to SceneInstantiate a pre-tuned AudioSource for the clip.
Reveal in ProjectLocate the source asset.
Add to Favourites / UnfavouriteToggle the favourite star.
Rename…Rename the underlying asset (with name-collision validation).
Duplicate…Copy the clip within its folder under a new name.
Set Category →Re-file the clip into another category. Because categories are folders, this is a real AssetDatabase move on disk.
DeleteMove the clip to the OS trash (after a confirmation prompt).
Categories are folders. The Library never invents a separate category database — a clip’s category is simply the Generated/ subfolder it lives in. Set Category physically moves the file, which keeps the Library, the Project window, and your version control perfectly in sync.
🎮
Try it at runtime. A playable, build-ready version of this browser ships in Assets/SoundCraftAI/Demo/. See Runtime Showcase below.

🎮 Runtime Showcase

A playable, WebGL-ready demo scene that turns the Library into an interactive sound-browser you can build and share.

The package includes a self-contained runtime showcase under Assets/SoundCraftAI/Demo/. It re-creates the Library’s three-pane browser as an in-game UI — built for 1920×1080 landscape — and is pre-loaded with a set of example generated sounds (footsteps, impacts, weapons and ambience). Press Play in the Editor, or build it to WebGL, and anyone can click through the clips, hear them, and watch their waveforms.

What it demonstrates

Opening & building it

Open the scene
Open Assets/SoundCraftAI/Demo/Scenes/SoundCraftAI Showcase.unity and press Play to try it in the Editor.
Switch to WebGL
File → Build Settings → WebGL → Switch Platform, then add the showcase scene to Scenes In Build.
Set a 1080p canvas
For best results set the WebGL player resolution (or template canvas) to 1920×1080 — the UI is authored to scale to that reference size.
Build & share
Build, and host the output anywhere — an ideal interactive preview for an Asset Store listing.
Demo only — safe to delete. Everything under Demo/ is self-contained example content. It is independent of the core (Editor-only) plugin, so you can delete the whole folder before shipping your game without affecting SoundCraft AI.

🛠 Architecture

Editor-only generation tooling, zero runtime overhead.

ScriptTypeResponsibility
SoundCraftAIWindow.csEditorWindowMain UI. Draws all controls, manages state, persists settings via EditorPrefs, orchestrates the verify → generate → poll → import flow, and shows the history list.
SoundCraftAIAPI.csstatic classHTTP client. Handles /prod/verify, /prod/status, and /prod/generate, plus async polling. Sends X-Client-Version (and X-Invoice on downloads) headers. Uses EditorApplication.update for async polling.
SoundCraftAIImporter.csstatic classDownloads each clip with authentication headers, files it into a category folder, configures the AudioImporter, and optionally creates an AudioSource prefab.
SoundCraftAICatalog.csstatic classCategories, style presets, models, and the per-category import + AudioSource profiles.
SoundCraftAIPreview.csstatic classPlays a generated clip inside the Editor for the history Play button.
SoundCraftAISettings.csScriptableObjectPer-project settings (backend URL, defaults).
SoundCraftAIError.csstructStructured error returned by the backend.
SoundCraftAIWelcome.csEditorWindowOne-time welcome popup shown on first open after import.
Library/SoundLibraryWindow.csEditorWindowThe Sound Library — the three-pane browser. Owns the category sidebar, card grid, preview and details views, and the scan → filter pipeline.
Library/SoundLibraryScanner.csclassBuilds the clip list by scanning Generated/ for AudioClips; the subfolder is the category.
Library/SoundWaveformCache.csclassProcess-wide peak-rendered waveform-thumbnail cache, built one-per-tick off EditorApplication.update.
Library/SoundOperations.csstatic classPer-clip file/scene ops: play, reveal, Add-to-Scene, rename, duplicate, set-category (folder move), delete.
Library/…VisualElementCard, grid, sidebar, preview, details, search, context-menu, tag/favourite metadata and window-state views.
Editor-only — zero runtime overhead. All generation scripts live in an Editor/ folder, which means they are never included in your game build. The Runtime/ folder holds only a version constant. Zero impact on shipped game size or performance.

📁 File Structure

Everything lives under Assets/SoundCraftAI/.

Assets/
  SoundCraftAI/
    Editor/
      SoundCraftAIWindow.cs — Editor window UI & generation flow
      SoundCraftAIAPI.cs — HTTP client (invoice auth, async polling)
      SoundCraftAIImporter.cs — Download, auto-import, AudioSource prefab
      SoundCraftAICatalog.cs — Categories, styles, models, profiles
      SoundCraftAIPreview.cs — Editor audio preview
      SoundCraftAISettings.cs — Per-project settings
      SoundCraftAIError.cs — Structured error type
      SoundCraftAIWelcome.cs — First-open welcome popup
      Library/ — The Sound Library browser (window, scanner, views, waveform cache)
    Runtime/ — Version constant only (no runtime behaviour)
    Resources/ — Settings asset
    Documentation/
      Documentation.html — This file
    Demo/ Runtime showcase scene + scripts (safe to delete before shipping)
      Scenes/   Scripts/
    Generated/ — Output, sorted into category subfolders
      UI/   Weapons/   Footsteps/   ...

Generated file naming convention

Generated/{Category}/{sanitised_prompt_slug}_v{N}_{hash}.wav

The prompt slug is: lowercase, special characters stripped, spaces replaced with underscores, truncated to 40 characters. N is the variation number; hash is a short unique suffix. (ElevenLabs clips arrive as .mp3; the file extension always matches the real audio format.)

💡 Troubleshooting

Common issues and how to fix them.

📄 "Verify Invoice" shows an error
  • Invoice number not recognized — Make sure you're entering your invoice number (starts with IN), not the order number. Unity invoices can take 2–4 hours to become available after purchase — try again later.
  • "This invoice has been refunded" — The purchase has been refunded. The license is no longer valid.
  • Could not reach the server — Check your internet connection and try again.
📊 "No generations remaining this month"

You've used all 250 generations from this month's allowance. Your next allowance arrives at the start of next month. If you requested several variations, remember each variation uses one generation.

⏳ A generation fails or times out
  • The cloud backend may be under heavy load. Try again in a few minutes.
  • Check your network connection — the plugin polls the server every 3 seconds.
  • If one model fails, try another from the Model selector.
🔊 A generated clip won't play
  • Select the clip in the Project window and confirm it imported as an AudioClip.
  • Use the Play button in the History list, or the Inspector preview, to audition it.
⚠ Compilation errors after import
  • Ensure all .cs files are inside the Editor/ and Runtime/ folders as imported.
  • If you see namespace errors, confirm you are on Unity 2021.3 LTS or newer.

FAQ

Frequently asked questions.

Does this plugin affect my game's build size or runtime performance?

No. All generation scripts are in an Editor/ folder and are excluded from builds automatically. The generated audio clips are included (like any other asset), but the plugin code has zero runtime footprint.

Can I use the generated sound effects commercially?

Yes. Sound effects generated through SoundCraft AI are yours to use in any project, commercial or otherwise.

Can I use this plugin offline?

The plugin requires an internet connection to generate new sound effects (the AI runs on cloud servers). However, previously generated clips in Assets/SoundCraftAI/Generated/ are standard Unity assets and work fully offline.

Can I use one invoice on multiple machines?

Yes. Your invoice activates the asset across all your installations — there's no machine-specific binding.

Do unused generations carry over?

No. Unused generations do not accumulate. Your allowance is issued every month for as long as you own the asset.

Does the same prompt always produce the same result?

If all settings (prompt, negative prompt, style, model, duration, variation count) are identical, the server may return a cached result instantly without using any of your monthly generations. Otherwise the AI produces new audio each time.

Can I use the clips with Addressables or Asset Bundles?

Yes. The generated audio clips and AudioSource prefabs are standard Unity assets. You can include them in Addressable groups or Asset Bundles like any other asset.

What happens if I delete a generated clip file?

It is removed from the History list on the next window refresh. There is no way to recover it — you would need to generate a new one with a similar prompt.

📬 Support

Need help? We're here for you.

📧

Get in Touch

If you run into any issues, have feature requests, or need help integrating SoundCraft AI into your project, don't hesitate to reach out.

✉ ragendom@gmail.com

We typically respond within 24 hours.

💬 Before Contacting
  • Check the Troubleshooting section
  • Check the FAQ section
  • Verify your invoice is correct (starts with IN)
  • Include your Unity version
📋 Helpful Info to Include
  • Unity version
  • SoundCraft AI version (currently v1.0)
  • Console error messages (lines starting with [SoundCraft AI])
  • Steps to reproduce the issue
Enjoying SoundCraft AI? A review on the Unity Asset Store helps other developers discover the plugin and helps us keep improving it. Thank you!

SoundCraft AI v1.0 · Prompt-to-SFX Generation for Unity

Support: ragendom@gmail.com

© 2026 SoundCraft AI — All rights reserved.