ToneBeyond Audio Engine
インディーゲームのための、超軽量クロスプラットフォーム・オーディオミドルウェア。 Nuendo / iZotope で作った音を、Swift / Kotlin の3行で鳴らす。
iOSAndroidmacOSWindowsSwitch 2 (HAL予約)
これは何?
ゲームオーディオの制作には「作る人(サウンドデザイナー)」と「組み込む人(プログラマー)」の 分業が必要です。ToneBeyond Audio Engine は、この2つの世界を 1つのバイナリファイル(.tbb サウンドバンク)と イベント名という契約でつなぎます。Wwise / FMOD と同じ思想を、依存ゼロ・超軽量・ 完全自社コントロールで実現したものです。
再生中のヒープ確保ゼロを自動テストで常時証明。音切れ(ドロップアウト)を構造的に防止。
トリム・フェード・ゲインをエディタで。元の WAV は一切変更されず、ビルド時に焼き込み。
「危険度→BGMの緊迫感」のようなカーブをエディタで描く。コードは値を渡すだけ。
長尺 BGM はディスクから直接再生(常駐 256KB)、容量は約 1/10。チェックボックス2つ。
距離減衰 + 定電力パン。移動エミッタはボイスハンドルで毎フレーム追従。
実機で鳴っている音・同時発音数・RTPC 値をエディタにリアルタイム表示。
NAS / iCloud 上の数千〜数万ファイルを高速登録。SQLite インデックスでミリ秒台の検索・即試聴。
コードが要求する音と制作状況を自動突合。「次に作る音」が常に見える。
発注の尺・用途から曲の土台を自動生成。手持ちの AU 音源でレンダリングし、仮データとしてゲームに即投入。本制作は .mid から DAW で。
全体像
[Nuendo / iZotope] → WAV (48kHz, 英数字名)
↓ ドラッグ&ドロップ
[ToneBeyond Editor] … 管理・非破壊編集・RTPC カーブ・突合
↓ ワンボタンビルド
[.tbb サウンドバンク] + [組み込みキット (Swift / Kotlin)]
↓
[ゲーム (iOS / Android)] ←UDP— Live Profiler でエディタに状況が戻る
鍵になる契約はひとつだけ: ファイル名 = イベント名 = コードの定数。
sword_swing.wav と書き出せば、Swift では TBEvent_sword_swing が
補完に現れます。
クイックスタート(10分)
- 書き出す — Nuendo: ファイル > 書き出し > オーディオミックスダウン (Wave / 48000 Hz / ステレオ、1音=1ファイル、英数字名)
- 入れる — フォルダをエディタのウィンドウへドラッグ&ドロップ
- 整える — ループ / ストリーミング / 圧縮 / RTPC / トリムを左パネルで設定、Space で試聴
- 焼く — 「.tbb をビルド」→
tb_bank_export.tbbが完成 - 組み込む — 右下の「組み込みキット」ボタン、あとは 組み込みページの3行
// Swift — これで鳴ります
TBAudio.start()
TBAudio.loadBankNamed("tb_bank_export")
TBAudio.postEvent(TBEvent_sword_swing)
入手方法
| 形態 | 方法 |
|---|---|
| エディタ(macOS) | ToneBeyondEditor-0.1.dmg を開いて Applications へドラッグ |
| ソース | git clone → cmake -B build && cmake --build build(macOS / Windows / Linux) |
| iOS ランタイム | tools/build_xcframework.sh → ToneBeyondRuntime.xcframework |
| Android ランタイム | アプリ側 CMake がソース直ビルド(手順) |