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.
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.
Generation Flow
Quick Start
Get up and running in under 2 minutes.
Import SoundCraft AI into your Unity project via the Asset Store. All files live under
Assets/SoundCraftAI/.Go to
Window → SoundCraft AI → Generator. A welcome popup will guide you on first open.Paste your Invoice Number from the Asset Store purchase email (starts with
IN) and click Verify Invoice.Type a description, e.g. "8-bit retro coin pickup chime" or "heavy iron sword hitting plate armor".
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.
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
- Check the purchase confirmation email from the Unity Asset Store. The invoice number starts with
INfollowed by 8–18 characters (e.g.IN0123456789AB). - You can also find it in your Unity Asset Store order history.
Activating the plugin
Window → SoundCraft AI → Generator).Invoice section controls
| Control | Description |
|---|---|
| Invoice Number | Your Unity Asset Store invoice number, starting with IN. Find it in your purchase email or order history. |
| Verify Invoice | Validates 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
- Each non-cached generation uses one of your monthly generations.
- A request for several variations uses one generation per variation produced.
- Unused generations do not accumulate or carry over.
- Cache hits are free. If you generate the exact same prompt with the same settings, the server returns the cached result instantly without using any of your monthly generations.
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:
| Section | Description |
|---|---|
| Invoice | Invoice number input, verification status, and remaining-generations display |
| Prompt | Main text prompt input, plus a collapsible negative-prompt field |
| Options | Model selector, style preset, category, duration, and variation count |
| Import | Per-category import settings, optional AudioSource prefab, and Project-window ping toggles |
| Generate | The generate button, progress bar, and cancel button |
| History | Your 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
- Concrete, physical descriptions — the material, action, and surface
- One clear sound per prompt, rather than a whole scene
- Adjectives that set the tone (heavy, wet, metallic, distant, sharp)
Example prompts
| Prompt | Auto-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.
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.
| Model | Best For | Notes |
|---|---|---|
| ElevenLabs SFX v2 Recommended | Premium quality — hero and signature SFX | Up to 22 seconds |
| MMAudio V2 Cheap | Batch placeholder SFX while prototyping | Up to 30 seconds · default selection |
| CassetteAI Fast | Instant turnaround while iterating on prompts | Up to 30 seconds |
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.
| Style | Tag Applied |
|---|---|
| None | (prompt sent unchanged) |
| Retro 8-bit | retro 8-bit chiptune |
| Realistic | realistic high-fidelity |
| Cartoon | cartoon stylized |
| Horror | dark horror |
| Sci-Fi | sci-fi futuristic |
| Fantasy | fantasy magical |
Generation Options
Control the model, length, and how many takes you get.
| Option | Values | Description |
|---|---|---|
| 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.5 – 30 seconds (default 2) |
Target clip length. Short UI blips work best around 0.5–1.5s; ambience loops at 8–30s. |
| Variations | 1 – 8 (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:
| Setting | Default | Description |
|---|---|---|
| Apply per-category import settings | On | Sets the AudioImporter compression, load type, and mono/stereo automatically for the clip's category. |
| Also create AudioSource prefab | Off | Emits a ready-to-drop AudioSource prefab next to each clip, pre-tuned for the category. |
| Ping clip in Project window | On | Highlights 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.
| Category | Typical Sounds |
|---|---|
| UI | clicks, hovers, confirms, errors, pickups, level-up chimes |
| Weapons | sword swings, gunshots, reloads, bow releases, blade clashes |
| Footsteps | steps on grass, gravel, wood, stone, snow, metal |
| Ambience | wind, rain, forests, caves, room tone, crowds, doors, creaks |
| Creatures | growls, roars, screeches, wing flaps, monster breathing |
| Impacts | punches, crashes, explosions, glass and wood breaking |
| Music | short jingles, stingers, fanfares, victory and game-over cues |
| Other | anything 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.
| Category | Load Type | Channels | Reason |
|---|---|---|---|
| UI | Decompress On Load | Mono | Tiny clips that must be instant and pan-free |
| Footsteps | Decompress On Load | Mono | Short, frequently triggered, positional |
| Weapons / Impacts | Decompress On Load | Stereo | Punchy one-shots that need to fire with no delay |
| Creatures | Compressed In Memory | Stereo | Mid-length clips, kept compressed to save memory |
| Ambience / Music | Streaming | Stereo | Long, looping audio that should stream from disk |
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.
| Category | Spatial | Loop | Rolloff |
|---|---|---|---|
| UI / Music | 2D | Music loops | — |
| Footsteps | 3D | No | Tight (short range) |
| Weapons / Impacts / Creatures | 3D | No | Logarithmic |
| Ambience | 3D | Yes | Logarithmic (wide range) |
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:
| Action | Description |
|---|---|
| Play | Previews any variation of the clip directly in the Editor. |
| Regenerate | Re-runs the same prompt and settings to get fresh takes. |
| Locate | Selects and highlights the clip in the Project window. |
| Delete | Removes 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.
The three-pane layout
| Pane | What 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 — Sounds | A 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 & Details | A 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
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.
Order the grid by Name (A–Z / Z–A), Duration (short → long or long → short), or Recently modified.
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.
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
| Action | Description |
|---|---|
| Add to Scene | Drops 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 Project | Selects 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:
| Command | Description |
|---|---|
| Play / Stop | Audition or stop the clip in the Editor. |
| Add to Scene | Instantiate a pre-tuned AudioSource for the clip. |
| Reveal in Project | Locate the source asset. |
| Add to Favourites / Unfavourite | Toggle 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. |
| Delete | Move the clip to the OS trash (after a confirmation prompt). |
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.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
- The full three-pane layout — category sidebar, searchable sound grid, and preview pane — running as a normal runtime UI.
- Live waveform rendering of every clip, with a playhead that sweeps across the wave as it plays.
- Click-to-audition playback, category filtering, name/tag search, sorting, and per-clip favourites.
- The per-category AudioSource profile (2D/3D, looping, rolloff) surfaced in the details pane.
Opening & building it
Open
Assets/SoundCraftAI/Demo/Scenes/SoundCraftAI Showcase.unity and press Play to try it in the Editor.File → Build Settings → WebGL → Switch Platform, then add the showcase scene to Scenes In Build.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, and host the output anywhere — an ideal interactive preview for an Asset Store listing.
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.
| Script | Type | Responsibility |
|---|---|---|
SoundCraftAIWindow.cs | EditorWindow | Main UI. Draws all controls, manages state, persists settings via EditorPrefs, orchestrates the verify → generate → poll → import flow, and shows the history list. |
SoundCraftAIAPI.cs | static class | HTTP 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.cs | static class | Downloads each clip with authentication headers, files it into a category folder, configures the AudioImporter, and optionally creates an AudioSource prefab. |
SoundCraftAICatalog.cs | static class | Categories, style presets, models, and the per-category import + AudioSource profiles. |
SoundCraftAIPreview.cs | static class | Plays a generated clip inside the Editor for the history Play button. |
SoundCraftAISettings.cs | ScriptableObject | Per-project settings (backend URL, defaults). |
SoundCraftAIError.cs | struct | Structured error returned by the backend. |
SoundCraftAIWelcome.cs | EditorWindow | One-time welcome popup shown on first open after import. |
Library/SoundLibraryWindow.cs | EditorWindow | The Sound Library — the three-pane browser. Owns the category sidebar, card grid, preview and details views, and the scan → filter pipeline. |
Library/SoundLibraryScanner.cs | class | Builds the clip list by scanning Generated/ for AudioClips; the subfolder is the category. |
Library/SoundWaveformCache.cs | class | Process-wide peak-rendered waveform-thumbnail cache, built one-per-tick off EditorApplication.update. |
Library/SoundOperations.cs | static class | Per-clip file/scene ops: play, reveal, Add-to-Scene, rename, duplicate, set-category (folder move), delete. |
Library/… | VisualElement | Card, grid, sidebar, preview, details, search, context-menu, tag/favourite metadata and window-state views. |
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/.
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
.csfiles are inside theEditor/andRuntime/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.comWe typically respond within 24 hours.
- Check the Troubleshooting section
- Check the FAQ section
- Verify your invoice is correct (starts with
IN) - Include your Unity version
- Unity version
- SoundCraft AI version (currently v1.0)
- Console error messages (lines starting with
[SoundCraft AI]) - Steps to reproduce the issue
SoundCraft AI v1.0 · Prompt-to-SFX Generation for Unity
Support: ragendom@gmail.com
© 2026 SoundCraft AI — All rights reserved.