■音関係

CD-DAについて

バージョン04.05.12からCD-DA対応になりました。
CD-DAというのは音楽CDのことです。プレイ中はそのゲーム用の音楽CDをCDドライブに入れ、CDからリアルタイムに曲を読み出して再生します。違うCDが入っててもいいのですが、流れる曲は当然製作者の意図とは違ってしまいます。
これは人によって好みが色々。「音が綺麗。オーディオでも再生できて良い」という人もいれば「いちいちCDいれるのめんどい。重い」という人もいます。
なおネット配布のゲームの場合はまず関係ありません。CD配れないし。

やりかた。
[サウンド再生]で「ファイル名」を「CD_n」と設定。nはトラックナンバーです。

【参考】公式掲示板637あたり

サウンドモードは作れるか

今のところLiveMakerにはサウンドモードを作る機能はありませんが、やろうと思えば出来ます。
たとえば、文字列選択や画像選択で曲名を選択させ分岐、分岐先のノードで該当する音を鳴らして選択ノードへ戻る。
グラフィックに凝れば、そこそこのものが出来ると思います。

「次の曲」とか「前の曲」とかのやりかた。(ファイル名が連番でないときもOK)

  1. 適当な配列変数Aを作り(要素数は曲数と同じ)、それぞれの要素に曲のファイル名を再生したい順番に代入。
  2. 再生用文字列変数Bと、適当な整数変数Cを用意。
  3. 曲が再生されたとき、そのファイル名を関数IndexOfStrで配列変数Aの中から検索。結果は整数変数Cに代入されるようにします。計算ノードの中身をこんな感じ↓にすればOK。

整数変数C = IndexOfStr( 配列変数A,"再生中の曲のファイル名" )

  1. 「次の曲」「前の曲」を選んだときに、以下のような計算ノードへジャンプさせます。

「次の曲」を選んだとき: 文字列変数B = 配列変数A[ 整数変数C+1 ]
「前の曲」を選んだとき: 文字列変数B = 配列変数A[ 整数変数C-1 ]

  1. 文字列変数Bを[サウンド再生]コマンドのファイル名として再生させます。
    ※この場合、「サウンド」フォルダがデフォルトパスになります。各ファイルが「サウンド\BGM」などのフォルダに入っている場合は、

文字列変数B = "BGM\\" + 配列変数A[ 整数変数C+1 ]
  または
文字列変数B = "BGM\\" + 配列変数A[ 整数変数C-1 ]

  1. などとしなければいけないので注意。ただし、1.の時点で「サウンド」フォルダより下のパスを含めたファイル名を代入した場合、この手間は要りません。


考え方は「変数名で画像を指定」と同じです。

BGMのクロスフェード

クロスフェードというのはつまり「滑らかに切り替わる」ということです。Aがいつの間にかBになってるというか。
サウンドのトラック数が以前の倍になったので、たとえば「BGM」トラックで流していた曲をフェードアウトさせながら「BGM2」トラックで別の曲を再生開始、とすればクロスフェードっぽいことができます。

【参考】公式掲示板849あたり

効果音をクリックで中断

効果音を再生し続け、プレイヤーのクリックで止める方法。

  1. 効果音をリピート再生させる
  2. 「最低○秒間はクリック無効」としたい場合、[ウエイト]コマンドを挿入して「クリックで中断」のチェックを外し、任意の値を設定。
  3. [再生終了待ち]コマンドを挿入、「クリックで中断」にチェック。
  4. [サウンドの停止]コマンドを挿入して効果音を再生しているトラックを停止。


こうすると、まず2.で設定した分だけ音が連続再生され、その後はプレイヤーがクリックするまで鳴り続けます。
電話が鳴り続けたり、時計が鳴り続けたり、というときに使えそうです。

…が、これだとスキップ時に音を飛ばしたり出来ませんので、そのへんが気になるなら別の方法で行きましょう。
1.2.までは上と同じです。

  1. [ウエイト]コマンドを挿入、値は0、「クリックで中断」にチェック、「文章スキップ中は実行しない」にチェック。
  2. [サウンドの停止]コマンドを挿入して効果音を再生しているトラックを停止。


どちらをとるかはお好みでどうぞ。

SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送