サウンドと音楽
media、channel、サウンドマネージャーを使って、Pixi’VNでサウンドや音楽を再生・一時停止・再開・編集・停止する方法。フェードトランジションやフィルターも含み、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!";
},
]);Initialize
また、ゲームの初期化直後にchannelsを定義することも推奨されます。 To do this, you can use the sound.channels.add function.
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の開始時にのみ変更できます。
フィルターは、サウンドの高度なカスタマイズを可能にする要素です。