サウンドと音楽
Pixi’VN で media、channels、sound マネージャーを使用してサウンドや音楽を再生・一時停止・再開・編集・停止する方法。フェードトランジションやフィルターも含み、Tone.js をベースに構築されています。
オーディオシステム全体は、バージョン1.6.0/1.8.0で見直されました。
sound モジュールは、Tone.js ライブラリをラップしたものです。シンプルなインターフェースでサウンドを再生し、各stepで現在の状態を保存します。
ink
このメソッドは ink 構文で使用できます。詳しくはこちらをご覧ください。
import { narration, newLabel, sound } from "@drincs/pixi-vn";
export const startLabel = newLabel("start", [
async () => {
await sound.play("sfx_whoosh", { delay: 0.1 });
await sound.play("bgm_cheerful", { loop: true, channel: "bgm" });
narration.dialogue =
"Hello, I'm a cheerful background music that will loop forever until you stop me.";
},
() => {
sound.pause("bgm_cheerful");
narration.dialogue = "I'm paused, but I can be resumed.";
},
() => {
sound.resume("bgm_cheerful");
narration.dialogue = "I'm back!";
},
]);初期化
ゲームの初期化直後に channels を定義することもお勧めします。そのためには、sound.channels.add 関数を使用できます。
import { Game, sound } from "@drincs/pixi-vn";
Game.init(body, {
// ...
}).then(() => {
sound.channels.add("bgm", { background: true });
sound.channels.add("sfx");
sound.defaultChannelAlias = "sfx";
});再生
play 関数の実行時に channel が指定されない場合、media は sound.defaultChannelAlias に割り当てられます。
基本的な機能は、サウンド(asset)を開始することです。これは play 関数を使用して行うことができます。 play 関数は media インスタンスを生成し、それを操作して再生されたサウンドを制御できます。
トランジション
一時停止と再開
個々の、または複数の media を一時停止する方法にはさまざまなものがあります。
編集
ゲームのセーブファイルに保存されるのは media の設定のみです。
さまざまな目的のために、ほぼすべての設定をいつでも編集することができます。
停止
サウンドを停止するには、stop 関数を使用できます。
フィルター
現在、これらは media の開始時にのみ変更できます。
フィルターは、サウンドの高度なカスタマイズを可能にする要素です。