こんにちは、YMYゲーム開発部です。

今回は、『夢酔のバーテンダー』のカクテル作成ミニゲームの制作過程をお話しします。
カクテルミニゲームの制作で学んだことや苦労した点をまとめたので、同じように開発している人や、これからゲーム開発をしようと思っている方の参考になればと思います!

今回の制作のポイント

  • 液体表現への挑戦
    Shaderとパーティクルを使った液体の表現方法と調整の苦労
  • UIの試行錯誤
    ジャイロ機能からボタン方式へ、規模感と端末不具合を考慮した方針転換
  • YouTubeで学ぶ実践的な開発
    チュートリアル動画を活用した短期間での技術習得

開発環境

  • Unity:最新バージョン(常にアップデート)
  • OS:Mac
  • エディタ:Visual Studio Code
  • その他
    • Adobe Illustrator(素材作成)
    • Studio One(SE・BGM制作)

カクテル作成ミニゲームとは?

このミニゲームでは、プレイヤーがカクテルの材料を選んで組み合わせ、シェイカーを振ると液体が混ざる様子をアニメーションで楽しめる、ちょっとした体験型のミニゲームです。

液体表現への挑戦

このミニゲームで一番こだわったのが、シェイカーを振った時に中の液体が動いて混ざる様子を表現することです。

開発前に学習したこと

液体表現を実装するために、以下を学習しました。

  • Shader(シェーダー) の使い方
  • Particle(パーティクル) の使い方
  • Unityでの物理演算(重力設定、落下の動き)

学習方法

YouTubeやブログで液体の表現方法を調べて、良さそうなチュートリアル動画を見つけました。
その方法をなぞった後、実際に制作中のゲームに組み込んでいきました。

学習期間:2〜3日

調整に時間がかかりました…。

苦労したポイント

実装で特に大変だったのが以下の点です。

Shaderの使い方と調整

液体表現用のShaderを使ったのですが、液体表現用のレイヤーがゲームカメラと別のレイヤーになっていて、ズレて表示されたり、表示されなかったりする問題が発生しました。
正しいレイヤーと位置に動かす調整がかなり大変でした。

落下の方向と受け皿の設定

物理演算で液体を落下させる際、落下の方向や落下した時の受け皿の設定に苦労しました。
特に困ったのが、アニメーションでシェイカーを早く振りすぎると、物体が受け皿から消えて落ちてしまうこと。
液体オブジェクトがそのまま消えてしまうので、アニメーションの速度や物理演算のパラメータを調整して、消えないようにする必要がありました。
試行錯誤を重ねて、なんとか自然な動きになるよう調整しました。

UIの配置 – 試行錯誤の記録

実は、UIの配置は当初の構想から大きく変わりました。

最初の構想

当初はスマホゲームなので、ジャイロ機能を使ったアイデアを考えていました。

  • ゲーム画面を縦向きにし、画面幅いっぱいにシェイカーを配置
  • 実際にスマホを振ってシェイカーを振る

カクテル組み合わせUIとシェイカーを振るシーンは別で作成していました。

なぜ変更したのか

ジャイロ機能について資料を読み進めたところ、問題点が見えてきました。

  • 端末によって不具合が起きる
  • 難易度が高すぎる

これらを考慮して方針転換しました。

最終的な形

カクテルの組み合わせ選択画面の右横に配置する形に変更。

ユーザーがボタンクリックで気軽にシェイカーを振るアニメーションを楽しめる形になりました。

結果的に、プレイヤーが1つの画面で完結できる構成になりました。

プレイヤーに楽しんでもらうための工夫

このミニゲームで意識したのは、「ちょっとした体験」を楽しんでもらうことです。

カクテルの組み合わせを選ぶ楽しさ
・「どの材料を組み合わせるか」という融合系のゲームのような楽しさ

音と動きの演出
・ 材料を選択すると液体が注がれるSE
・ シェイカーを振るボタンで混ざる様子を確認できる

バーテンダーになった気分を味わえる要素を目指しました。


今回はカクテル作成ミニゲームの制作についてお届けしました。

Shaderや物理演算の調整は大変でしたが、シェイカーを振って液体が混ざる様子を楽しんでもらえたら嬉しいです。

ジャイロ機能からボタン方式への変更は大きな決断でしたが、結果的により実装しやすく、遊びやすいミニゲームになったと思います。

次回の更新もお楽しみに!