Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
「Sympathy」Phantasy Star Online 2のプロシージャルBGMシステム        株式会社SEGAPhantasy Star Online 2 開発チーム
登場人物小川卓哉         小林秀聡 プランナー        サウンドクリエイター今別府デニス幸生     増田 亮 プログラマー          プログラマー
Agenda• Sympathy開発経緯を説明• Sympathyの仕組み (実際に使用したツールをもとに説明。)• まとめ・展望
SYMPATHYの開発経緯
PSO2のゲーム性とBGMの関係• PSO2は何度も同じクエストを遊びながら、装  備やアイテムを収集していくゲームである。• ゲームのコンセプトに「無限の冒険感」とあるよ  うに同じクエストでもマップのランダム性を特  化することで、毎回違う...
Sympathyの柱1ゲームに合わせて何度でも聞くことができるBGM作成 – 自動生成されるゲーム内要素(ダンジョンの形状、敵やボ   ス、ギミックの配置など)に応じてBGMも変化させる – オンラインゲームである都合上、ユーザーは同じステージ...
Sympathyの柱2盛り上がりを体感できるような作りを目指す。– ユーザーが「今、緊張している、ピンチ。」という気分に対し  て、緊迫感のあるBGMに変化する– ユーザーが「俺って強い」と感じている気分に対して拍車が  かかるように、テンポの...
Sympathyの柱3 ランダム生成だが、 きちんと楽曲になっている。– 映画音楽のように自然な戦闘開始、終了時の楽曲変化を  行う。– 楽曲全体として、一曲の音楽として聞けるものが、自動的  に生成されるようにする。
PSOBGMの歴史
PSOBGMの歴史• ファンタシースターオンライン(DC)でBGMの切り替  えシステムを実装。初期は60〜70個のパーツ、  1パーツは3〜4秒(4小節)• ファンタシースターZERO(DS)で、MIDIを使った  BGMシステムを導入• 小...
Phantasy Star Online 2の冒険中BGMをムービーでご覧ください
SYMPATHYの基本
Phantasy Star Online 2のBGMは                       クリップ     という数秒程度のサウンドファイルの集合体です。     一曲あたり…                   クリップ      ...
クリップはこんな風に再生します          余韻部分を重複して再生し自然につなげています                   余韻            クリップ               クリップ同時再生               ...
フレーズクリップがいくつか合わさって、    クリップ                            同時に再生「フレーズ」になります。       クリップ                   クリップ   ←条件によって再生 etc...
「パート」=Aメロ、Bメロ、サビなどに対応     メロ1パート          メロ2パート    サビパート    楽章   楽章      楽章      楽章   楽章    楽章    etc. 再生時は メロ~サビのパートを   ...
シリーズ伝統の戦闘BGM切替戦闘が始まった!⇒切替楽曲を挟んで戦闘楽曲へ               楽章           楽章 非戦闘楽曲     フレーズ  フレーズ   フレーズ  フレーズ非戦闘→戦闘         楽章     ...
過去作からの進化過去作の反省点:戦闘終了後にまた敵に襲われた!⇒しばらく非戦闘曲が鳴ってしまう      戦闘               敵を倒した!    戦闘→非戦闘       と思ったら、また敵だ!     急激戦闘      戦闘 ...
通常曲(非戦闘曲) → 切り替え用楽曲 → 戦闘曲           (「通常→戦闘」曲)
ゲームに合わせて何度でも聞くことができるBGM作成SYMPATHYの柱1
オンラインゲームは同じマップを       ・    にわたって       ・       も              遊ぶ      同じBGMじゃあ飽きますよね同じBGMが嫌なら、毎回違うBGMにしたら良いじゃない。          ...
仕組み1       楽章   楽章     楽章     楽章     楽章     楽章仕組み2       楽章   楽章     楽章     楽章     楽章     楽章仕組み3   フレーズ     フレーズ   フレーズ   ...
仕組み4   再生するごとにランダムにクリップを選択                                 クリップ   クリップ                                     クリップ           ...
5つの仕組みで      聞くたびに違う曲に!しかしデータ量は恐ろしいことに…     1マップにつき数千クリップ     クリップをすべて繋げると1~2時間に及ぶものも
ランダムクリップの再生デモ・      を繰り返し再生・   →   楽章の移動時、  パートがループした時に  クリップがシャッフルされる・        が同時再生・        は再生しない・水色枠:オケ、アンビエント・赤色枠:フレーズ...
盛り上がりを体感できるような作りを目指す。SYMPATHYの柱2
おさらい メロ~サビのパートを            につなぎ合わせますクエスト開始   メロ1   メロ2    サビ前    サビ1   サビ2   メロ3   ・・・                     1コーラス 基本の流れ    ...
どのパートを再生しよう?  やりたいこと:        ゲーム内の盛り上がりをBGMで補強したいでも、Phantasy Star Online 2は           マップがプロシージャル生成            敵がプロシージャル配置...
近くのブーストエネミーの強さ  撃破した小/中ボスの強さ   パーティーメンバーの数                    ヒーロー度    他パーティーの人数クエスト中にパーティー参加した人数     PSEバースト中か           ...
盛り上がり度によるパート選択全てのパートには「起伏レベル」が設定されています           パートの雰囲気に合わせて手付けです再生確率               落ち着いたメロは起伏レベル低               派手なサビは起伏...
ランダム生成だが、きちんと楽曲になっている。SYMPATHYの柱3
楽曲、パートのつなげ方• 最初に非戦闘曲のキーを決める• 戦闘曲はその平行調など自然に移れるものに• パート同士は似たようなコード進行にならない  ように気をつける• 一度作ったパートを転調して、盛り上がり度の  高いパートで使うことも
楽曲間のつながりについて•   非戦闘曲←→戦闘曲をつなげるために•   1.非戦闘、戦闘曲からの引用。•   2.オリジナルのフレーズを制作する•   3.効果音的なものでつなぐ•   非戦闘→戦闘曲は戦闘曲のリズムを•   戦闘→非戦闘曲は...
遷移楽曲の作り方一例       直前のパート   戦闘曲が再生中最初のフ レーズ        フレーズ    フレーズ                                       切り替え先(次)のパート          ...
クリップには全て余韻を• どんな楽曲、パート、フレーズにもつながるよう  にするには余韻が不可欠• 作曲後1小節ごとに隙間をつくり、余韻をつけ  てバウンス→小節数が1000以上に• 余韻をつけた状態でクリップを切り分ける
細かな演出
ヒーロー状態/ピンチ状態ヒーロー度/ピンチ度が一定以上    一方的に有利/不利な状態専用のクリップを再生したり、通常のクリップの再生を止めたりして、     特別な状態であることをユーザーに伝えます         平常時   ヒーロー状態 ...
ボス戦闘演出ボス戦闘では、ザコ戦闘と比べて様々な状況変化があります。• 脚を破壊すると転倒して動きが止まる      ⇒ 一斉攻撃のチャンス!• ダメージを与えると攻撃パターンが変わる    ⇒ 要警戒!• 攻撃をかいくぐってボスの身体に登って...
ボス戦闘演出戦況が変化する時、再生するクリップを切り替えたり、曲の先頭にジャンプさせる。              脚を破壊した!平常脚破壊                    戦況が変化!     曲頭に戻る平常              ...
実機映像をご覧ください(1)           戦闘曲⇔非戦闘曲の切替           特殊状態による曲調の変化ポイント! 遷移楽曲を経て  自然に切り替わるBGM ゲーム内の状況変化  →関連パラメータの変化  →曲調の変化  とい...
実機映像をご覧ください(2)          ボス戦における戦闘演出の例ポイント! 脚を破壊して転倒すると変化 起き上がる時に変化 脚は全部で4本あり、1本破壊する  毎に徐々に盛り上がっていく ピンチ状態
おまけとまとめ
おまけ:実装のTips• クリップの再生条件、つながりの条件はとても複雑。  BGMを聞きながら頻繁に変更したくなります。• 処理落ちしていても止めるわけにはいきません  (ロード中もそのままBGMを流しています)• Phantasy Star...
まとめと展望• Sympathyの3つの柱を実現 – 自然な遷移   • 遷移位置の制限、遷移楽曲、急激戦闘楽曲 – 飽きないように   • シャッフル/スキップ、ランダム/N回目クリップ – プレイヤーを盛り上げたい   • 多様なゲーム内状...
質疑応答ご清聴ありがとうございました。
おまけのおまけ
ところで「戦闘」って?    Phantasy Star Online 2のマップは    プロシージャル生成。    こんな風に「チップ」を並べて    作られています。
「戦闘」とは:・敵が道でつながった隣接チップにいて・AIが臨戦状態であること            道でつながっていない            こっちに気付いていない
「Sympathy」 Phantasy Star Online 2の プロシージャルBGMシステム by セガ
「Sympathy」 Phantasy Star Online 2の プロシージャルBGMシステム by セガ
「Sympathy」 Phantasy Star Online 2の プロシージャルBGMシステム by セガ
Upcoming SlideShare
Loading in …5
×

「Sympathy」 Phantasy Star Online 2の プロシージャルBGMシステム by セガ

9,239 views

Published on

  • Be the first to comment

「Sympathy」 Phantasy Star Online 2の プロシージャルBGMシステム by セガ

  1. 1. 「Sympathy」Phantasy Star Online 2のプロシージャルBGMシステム 株式会社SEGAPhantasy Star Online 2 開発チーム
  2. 2. 登場人物小川卓哉 小林秀聡 プランナー サウンドクリエイター今別府デニス幸生 増田 亮 プログラマー プログラマー
  3. 3. Agenda• Sympathy開発経緯を説明• Sympathyの仕組み (実際に使用したツールをもとに説明。)• まとめ・展望
  4. 4. SYMPATHYの開発経緯
  5. 5. PSO2のゲーム性とBGMの関係• PSO2は何度も同じクエストを遊びながら、装 備やアイテムを収集していくゲームである。• ゲームのコンセプトに「無限の冒険感」とあるよ うに同じクエストでもマップのランダム性を特 化することで、毎回違うクエストに見えるよう にしている。• BGMも毎回違うように聞かせたい!! 今回のサウンドコンセプトになります。
  6. 6. Sympathyの柱1ゲームに合わせて何度でも聞くことができるBGM作成 – 自動生成されるゲーム内要素(ダンジョンの形状、敵やボ ス、ギミックの配置など)に応じてBGMも変化させる – オンラインゲームである都合上、ユーザーは同じステージを 多数回プレイすることとなる。飽きがこないようにするため、 楽曲の自動生成に大きな幅を持たせ、同じステージでも、 プレイするごとに違う曲となるようにする。
  7. 7. Sympathyの柱2盛り上がりを体感できるような作りを目指す。– ユーザーが「今、緊張している、ピンチ。」という気分に対し て、緊迫感のあるBGMに変化する– ユーザーが「俺って強い」と感じている気分に対して拍車が かかるように、テンポのよいBGMに変化する。
  8. 8. Sympathyの柱3 ランダム生成だが、 きちんと楽曲になっている。– 映画音楽のように自然な戦闘開始、終了時の楽曲変化を 行う。– 楽曲全体として、一曲の音楽として聞けるものが、自動的 に生成されるようにする。
  9. 9. PSOBGMの歴史
  10. 10. PSOBGMの歴史• ファンタシースターオンライン(DC)でBGMの切り替 えシステムを実装。初期は60〜70個のパーツ、 1パーツは3〜4秒(4小節)• ファンタシースターZERO(DS)で、MIDIを使った BGMシステムを導入• 小節ごとにMIDIファイルを作成、それを連結して再 生した• また、SMFへテキストコマンドを埋め込み、ゲーム 中の再生時に実行することにより、プログラマの手 を介さずに様々な再生を可能にした。→このときの 再生テクニックが今回にも生かされている
  11. 11. Phantasy Star Online 2の冒険中BGMをムービーでご覧ください
  12. 12. SYMPATHYの基本
  13. 13. Phantasy Star Online 2のBGMは クリップ という数秒程度のサウンドファイルの集合体です。 一曲あたり… クリップ クリップ クリップ クリップ クリップ クリップ クリップ クリップ クリップ クリップ クリップ クリップ クリップ クリップ クリップ クリップ クリップ クリップ クリップ クリップ クリップ クリップ クリップ クリップ
  14. 14. クリップはこんな風に再生します 余韻部分を重複して再生し自然につなげています 余韻 クリップ クリップ同時再生 クリップ クリップ クリップ クリップ クリップ クリップ 「1小節」 株式会社 CRI・ミドルウェア様のCRI ADX2を使用させていただいています。
  15. 15. フレーズクリップがいくつか合わさって、 クリップ 同時に再生「フレーズ」になります。 クリップ クリップ ←条件によって再生 etc. 楽章フレーズがいくつか並んで、 「楽章」となり… フレーズ フレーズ フレーズ パート「楽章」がいくつか並んで、 「パート」となります。 楽章 楽章 楽章
  16. 16. 「パート」=Aメロ、Bメロ、サビなどに対応 メロ1パート メロ2パート サビパート 楽章 楽章 楽章 楽章 楽章 楽章 etc. 再生時は メロ~サビのパートを につなぎ合わせますクエスト開始 メロ1 メロ2 サビ前 サビ1 サビ2 メロ3 ・・・ 1コーラス
  17. 17. シリーズ伝統の戦闘BGM切替戦闘が始まった!⇒切替楽曲を挟んで戦闘楽曲へ 楽章 楽章 非戦闘楽曲 フレーズ フレーズ フレーズ フレーズ非戦闘→戦闘 楽章 楽章切替用楽曲 フレーズ フレーズ フレーズ フレーズ 楽章 楽章 戦闘楽曲 フレーズ フレーズ フレーズ フレーズ 自然で素早い切替のミソ: ・楽章ごとに楽曲切替用のフレーズを用意 ・「フレーズの切れ目」から「楽章の切れ目」につなげる
  18. 18. 過去作からの進化過去作の反省点:戦闘終了後にまた敵に襲われた!⇒しばらく非戦闘曲が鳴ってしまう 戦闘 敵を倒した! 戦闘→非戦闘 と思ったら、また敵だ! 急激戦闘 戦闘 「急激戦闘曲」は短く作り、すぐに戦闘曲に戻れるように
  19. 19. 通常曲(非戦闘曲) → 切り替え用楽曲 → 戦闘曲 (「通常→戦闘」曲)
  20. 20. ゲームに合わせて何度でも聞くことができるBGM作成SYMPATHYの柱1
  21. 21. オンラインゲームは同じマップを ・ にわたって ・ も 遊ぶ 同じBGMじゃあ飽きますよね同じBGMが嫌なら、毎回違うBGMにしたら良いじゃない。 ――マリー・アントワネット
  22. 22. 仕組み1 楽章 楽章 楽章 楽章 楽章 楽章仕組み2 楽章 楽章 楽章 楽章 楽章 楽章仕組み3 フレーズ フレーズ フレーズ フレーズ フレーズ フレーズ 次の楽章へつながるように最後のフレーズは固定
  23. 23. 仕組み4 再生するごとにランダムにクリップを選択 クリップ クリップ クリップ クリップ クリップ仕組み5 同じ個所をN回目に再生したときだけ再生されるクリップ パート 1 クリップ クリップ クリップ 2 クリップ クリップ クリップ 3 クリップ クリップ クリップ
  24. 24. 5つの仕組みで 聞くたびに違う曲に!しかしデータ量は恐ろしいことに… 1マップにつき数千クリップ クリップをすべて繋げると1~2時間に及ぶものも
  25. 25. ランダムクリップの再生デモ・ を繰り返し再生・ → 楽章の移動時、 パートがループした時に クリップがシャッフルされる・ が同時再生・ は再生しない・水色枠:オケ、アンビエント・赤色枠:フレーズ、効果音・黄色枠:リズム1・緑色枠:リズム2
  26. 26. 盛り上がりを体感できるような作りを目指す。SYMPATHYの柱2
  27. 27. おさらい メロ~サビのパートを につなぎ合わせますクエスト開始 メロ1 メロ2 サビ前 サビ1 サビ2 メロ3 ・・・ 1コーラス 基本の流れ メロ サビ サビ前 って一体なんやねん
  28. 28. どのパートを再生しよう? やりたいこと: ゲーム内の盛り上がりをBGMで補強したいでも、Phantasy Star Online 2は マップがプロシージャル生成 敵がプロシージャル配置 最大12パーティー同時参加 ゲームの盛り上がりとは言っても、あまりにも複雑。
  29. 29. 近くのブーストエネミーの強さ 撃破した小/中ボスの強さ パーティーメンバーの数 ヒーロー度 他パーティーの人数クエスト中にパーティー参加した人数 PSEバースト中か 盛り上がり度 近くのエネミーの強さ 自キャラのHP ピンチ度 パーティーメンバーのHP 近くのエネミー数 どれだけゴールに近づいたか Eトライアル中か
  30. 30. 盛り上がり度によるパート選択全てのパートには「起伏レベル」が設定されています パートの雰囲気に合わせて手付けです再生確率 落ち着いたメロは起伏レベル低 派手なサビは起伏レベル高…など パートの起伏レベル 現在の盛り上がり度 現在の盛り上がり度以下のパートが再生されやすい
  31. 31. ランダム生成だが、きちんと楽曲になっている。SYMPATHYの柱3
  32. 32. 楽曲、パートのつなげ方• 最初に非戦闘曲のキーを決める• 戦闘曲はその平行調など自然に移れるものに• パート同士は似たようなコード進行にならない ように気をつける• 一度作ったパートを転調して、盛り上がり度の 高いパートで使うことも
  33. 33. 楽曲間のつながりについて• 非戦闘曲←→戦闘曲をつなげるために• 1.非戦闘、戦闘曲からの引用。• 2.オリジナルのフレーズを制作する• 3.効果音的なものでつなぐ• 非戦闘→戦闘曲は戦闘曲のリズムを• 戦闘→非戦闘曲は通常曲のリズムを
  34. 34. 遷移楽曲の作り方一例 直前のパート 戦闘曲が再生中最初のフ レーズ フレーズ フレーズ 切り替え先(次)のパート 戦闘→非戦闘曲 非戦闘曲を再生 最初の 最後の フレーズ フレーズ フレーズ フレーズ フレーズ 非戦闘曲 最後のフフレーズ フレーズ レーズ全体的には、過去作品と比べて余韻を含んだストリームの再生が可能になり、更にそれぞれのフレーズをつなげやすくなった。
  35. 35. クリップには全て余韻を• どんな楽曲、パート、フレーズにもつながるよう にするには余韻が不可欠• 作曲後1小節ごとに隙間をつくり、余韻をつけ てバウンス→小節数が1000以上に• 余韻をつけた状態でクリップを切り分ける
  36. 36. 細かな演出
  37. 37. ヒーロー状態/ピンチ状態ヒーロー度/ピンチ度が一定以上 一方的に有利/不利な状態専用のクリップを再生したり、通常のクリップの再生を止めたりして、 特別な状態であることをユーザーに伝えます 平常時 ヒーロー状態 ピンチ状態 メロディ リズム ヒーロー ピンチ
  38. 38. ボス戦闘演出ボス戦闘では、ザコ戦闘と比べて様々な状況変化があります。• 脚を破壊すると転倒して動きが止まる ⇒ 一斉攻撃のチャンス!• ダメージを与えると攻撃パターンが変わる ⇒ 要警戒!• 攻撃をかいくぐってボスの身体に登って戦闘 ⇒ 全く違った展開へ ヒーロー/ピンチとは異なる状況の変化を BGMでも演出したい!
  39. 39. ボス戦闘演出戦況が変化する時、再生するクリップを切り替えたり、曲の先頭にジャンプさせる。 脚を破壊した!平常脚破壊 戦況が変化! 曲頭に戻る平常 再生クリップを脚破壊 切り替える 様々な戦況変化に合わせた多彩な表現が可能
  40. 40. 実機映像をご覧ください(1) 戦闘曲⇔非戦闘曲の切替 特殊状態による曲調の変化ポイント! 遷移楽曲を経て 自然に切り替わるBGM ゲーム内の状況変化 →関連パラメータの変化 →曲調の変化 という流れ
  41. 41. 実機映像をご覧ください(2) ボス戦における戦闘演出の例ポイント! 脚を破壊して転倒すると変化 起き上がる時に変化 脚は全部で4本あり、1本破壊する 毎に徐々に盛り上がっていく ピンチ状態
  42. 42. おまけとまとめ
  43. 43. おまけ:実装のTips• クリップの再生条件、つながりの条件はとても複雑。 BGMを聞きながら頻繁に変更したくなります。• 処理落ちしていても止めるわけにはいきません (ロード中もそのままBGMを流しています)• Phantasy Star Online 2では、専用スレッドにて Luaで書かれたステートマシンを動かして制御して います。 ⇒スクリプトで書くにも複雑すぎたので、最適解ではない• GUIで高速なステートマシンが書けるような環境が あればベター
  44. 44. まとめと展望• Sympathyの3つの柱を実現 – 自然な遷移 • 遷移位置の制限、遷移楽曲、急激戦闘楽曲 – 飽きないように • シャッフル/スキップ、ランダム/N回目クリップ – プレイヤーを盛り上げたい • 多様なゲーム内状況を「盛り上がり度」に集約• これからの展望 – ランダムの中から、いかにしてより印象に残るシーン を作り出すことができるか
  45. 45. 質疑応答ご清聴ありがとうございました。
  46. 46. おまけのおまけ
  47. 47. ところで「戦闘」って? Phantasy Star Online 2のマップは プロシージャル生成。 こんな風に「チップ」を並べて 作られています。
  48. 48. 「戦闘」とは:・敵が道でつながった隣接チップにいて・AIが臨戦状態であること 道でつながっていない こっちに気付いていない

×
Save this presentation