Unity事例ノート

UNITY

ボタンをクリックした時だけ無音にする

ゲームビューでクリックすれば音を出して、ボタンを押したときだけは音を消すしくみを作ってみましょう。

マウスの左ボタンを押すタイミングでオーディオ再生しますが、マウスカーソルがボタンに乗っている間は再生されません。

関連記事:
ボタンを押せば音が鳴る
マウスを押してる間だけ音が鳴る
クリックのタイミングで発射音を出す
触れたタイミングで音を鳴らす

ボタンを押したときだけ無音にするスクリプト

音楽ファイルを、インポートします。

プロジェクトビューの中で右クリックして、新しいアセットをインポート。

今回はsound01というmp3ファイルを用意しました。

空のオブジェクトを作成します。

GameObject(空のオブジェクト)に、AudioSourceコンポーネントを追加します。

オーディオクリップにsound01を入れ、ゲーム開始時に再生のチェックを外します。

PlaySound.csを作成し、GameObjectに追加します。

PlaySound.csを記述します。

ゲームプレイして、画面をクリックすれば、音が鳴るようになります。

イベントトリガーの追加

続いて、ボタンをクリックした時には無音になるように、設定していきましょう。

ボタンを作成します。

Buttonにイベントトリガーを追加します。

コンポーネントを追加 > イベント > イベントトリガー

Pointer Enterを設定

「新しいイベントタイプを追加」をクリックし、Pointer Enterを選択します。

Pointer Enterは、ボタンにマウスを乗せたときのアクションになります。

Pointer Enterを以下の手順で設定しましょう。

Pointer Exitを設定

続いて、ボタンからマウスが離れた時の、アクションをつけましょう。

「新しいイベントタイプを追加」をクリックし、Pointer Exitを選択します。

ここでは、PlaySound > Exit() を選択します。

ゲームプレイしてみましょう。

画面上をクリックすれば、サウンド再生。

ボタンをクリックしたときだけ、再生されません。

関連記事:
ボタンを押せば音が鳴る
マウスを押してる間だけ音が鳴る
クリックのタイミングで発射音を出す
触れたタイミングで音を鳴らす