0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Scratch ライブラリ(BGM 管理)

Posted at

Scratch ライブラリ(BGM 管理)

はじめに

Hi, there! 先日公開した Attractive Drivers (→記事) ですが、公開 1 か月で参照数 700 を突破し、800 に達する勢いです。ありがたいものです。最初に公開した G14 Jerrydog (→記事1)/(→記事2) は公開 1 週間程度で参照数が 100 にはなったものの、600 を超えたあたりから鈍り始め、先日ようやく 700 に達した形です。あっさり追い抜いていきました。

Attractive Drivers は SEGA の名作 OutRun へのオマージュとなっております。ぜひプレイしてみてください。

  • Attractive Drivers

ドライブ中に聞ける曲数も 5 曲に増えたので、ぜひ聞いてみてください。完全オリジナル。割と全部気に入ってます。

BGM 管理

さて、私の作っているプロジェクトでは常に使っている BGM 管理システムです。毎回同じなので、以前よりライブラリっぽくはなっていたのですが、今回改めてライブラリとしてシェアしました。

プロジェクト

ここにあります。

image.png

ライブラリ概要

BGM を流すためのスプライトです。以下のような特徴があります。

  • 曲をイントロとメインに分けて登録し、メインをループさせることも可能
  • 各種メッセージを送ることで停止や再生が可能
  • 曲を変える際、自動的に現在の曲をフェードアウトして次の曲に進む

使い方

基本

ほぼ全てのプロジェクトで使っているので、詳細は「中身を見る」で参照してみてください。

① 使用したいBGMを用意します

  • 以下の命名規則に従ってサウンドに音楽を追加する
    • 曲名が「Name」の場合、曲名は「Name (Intro)」と「Name (Main)」にする必要があります。 「Name (Intro)」は、ドラムフィルインなどのイントロフレーズがある楽曲の場合のみ必要となります
    • 「Name (Main)」は曲のメインループです。ループさせる必要がある場合は、滑らかに曲の終わりと始まりがつながるようにしておきましょう

② いくつかのリストに情報を設定します

  • 上記の「Name」のような曲名を「BGM Title」リストに追加します
  • イントロフレーズが必要な場合は、「BGM Intro」リストに「1」を追加して「Name (Intro)」データを用意します。必要ない場合は、そのリストに 0 を追加します
  • その音楽をループさせたい場合は、「BGM Loop」リストに 1 を追加します。不要な場合は 0 を付加してください
  • リストのインデックス番号は音楽のトラック番号になります

③ ゲーム内で音楽を再生します

  • イベント名「Track」+トラック番号を送信するだけで、曲が再生されます。最初の音楽の場合は「Track1」のようになります
    • 別のBGMの再生中にイベントを送信すると、現在のBGMがフェードアウトし、前のBGMが停止してから新しいBGMが始まります

各種情報

変数・リスト

In: 他スプライト管理の値を参照/Out: 本スプライトで設定

変数名 In/Out 概要
BGM Auto Disk Repeat Out 1: 最後の曲終了後、最初に戻る
BGM Auto Track Repeat Out 1: 現在のトラックをループさせる
BGM Current Track Out 現在のトラック番号
BGM Sound Volume In 現在の音量

イベント

イベント名 操作
BGM - Volume Up ボリュームを 1 上げる
BGM - Volume Down ボリュームを 1 下げる
BGM - Volume Set 音量を BGM Sound Volume にする
BGM - Track Infinite Loop On トラックのループを有効にする
BGM - Track Infinite Loop Off トラックのループを無効にする
BGM - Disk Repeat On ディスクのループを有効にする
BGM - Disk Repeat Off ディスクのループを無効にする
BGM - Prev Track 前のトラックへ戻る
BGM - Next Track 次のトラックへ進む
BGM - Pause ポーズ※
BGM - Play ポーズの場合は再開させる、or 現在のトラックで曲を開始する
BGM - Replay 現在のトラックで曲を開始する
BGM - Stop 現在の曲を終了させる

※ Scratch の仕様上、正確なポーズはできないため疑似的に再現。厳密には超ゆっくり進む状態となっている。

コスチューム

特になし


ということで、BGM をならす時にはいつもこれを使ってます。もう少しシンプルにできそうなので、バージョン2を作るかもしれない。


Scratch ライブラリと Scratch Tips 目次へ戻る

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?