clusterでミニゲームを作る(テーブルサッカー)
cluster向けのUunityワールドで簡単なミニゲームを作ってみたいと思ったことはありませんか?
テーブルサッカーをUnityで制作するためのガイドを書きます。
最小単位を作る
まず、最小単位から作り始めます。ゲームに必要な基本形状はキューブ、シリンダー、スフィアです。これらの形状はUnityの標準的な3Dオブジェクトを利用します。基本的に、テーブルサッカーの棒はシリンダーを利用して作ります。また、プレイヤーにはスフィア&キューブ
ボールにはスフィアを使用します。これらの形状は全てUnityの3Dオブジェクトで作成可能です。
次に、テーブル本体を作成します。テーブル本体はキューブだけを利用して作ります。サッカーフィールドの長方形の形状を再現するためには、キューブが最適です。また、キューブの形状を使ってゴールエリアを作成することも可能です。
UnityエディタでHierarchyウィンドウから該当のキューブを選択します。
インスペクタウィンドウに移動し、Transformコンポーネントを見つけます。
Scaleの項目において、X, Y, Zの値を変更します。これによりキューブの大きさが変わります。
以上でキューブの大きさを自由に変更することができます。
さて、フィールドが完成したら、次はスコアリングシステムを作ります。Unityの物理エンジンを利用して、キューブのコライダーを敵側と味方側に設置します。
コライダーは物体の"当たり判定"を扱います。ボールがゴールのコライダーに接触したら、それをトリガーとしてスコアを加算するプログラムを作成します。
スコアはUnityのUIシステム、具体的にはキャンバスを使って表示します。
Unityでスコア表示を行うための手順は次の通りです。
「Hierarchy」ウィンドウで右クリックし、「UI > Canvas」を選択して新規Canvasを作成します。
Canvasが選択されている状態で「Inspector」ウィンドウに移動し、「Render Mode」を「World Space」に変更します。
そのまま「Inspector」ウィンドウで「Rect Transform」の「Pos X/Y/Z」、「Width」、「Height」を調整し、表示位置と大きさを調節します。
さらに、「Dynamic Pixels Per Unit」の値を上げることでテキスト表示が鮮明になります。
注意点として、Canvas作成時に自動生成される「Event System」は削除してください。このままだとゲームアップロードが阻害されます。
次にスコア表示テキストの作成です。
Hierarchyウィンドウで作成したCanvasを右クリックし、「UI > Legacy > Text」を選択してTextオブジェクトを作ります。
Textオブジェクトを選択し、Inspectorウィンドウで「Rect Transform」の「Scale」を調整してテキストの大きさを設定します。
最後に、「Character」、「Paragraph」の項目でフォント種類、配置などテキスト表示の詳細設定が可能です。
Textに「Set Text Gimmick」コンポーネントを追加し、On Colliderでぶつかったシグナルを数えるようにLogicを組みます。
Logicではこのように記述して
テキストに反映されるようにitemのリンクを貼って
SetTextGimmickで数えたintegerを反映するようにしましょう。
以上でUnity内でスコア表示が可能となります。
次に棒に注目します。各棒はクリックするとアニメーションされるようにします。シンプルさを保つために、アニメーションは回転と出し入れだけで表現します。Unityのアニメーションシステムを使用してこれを実現します。
そして最後に、全ての棒を作成します。棒の数だけ手動で作成します。
以上がUnityでテーブルサッカーを作る手順です。シンプルな3Dオブジェクトを使ってゲームの基本的な要素を作成し、Unityの物理エンジンとアニメーションシステムを駆使してゲームを実現します。
ADVANCED & SCORE STRIKEの紹介
更に面白くかっこよくしたいのでこれを続けていきたいと思います。
基本的な形はそのままメッシュを非表示にして、あとで見た目を豪華にするためにメッシュの位置にiPadのShaper3D等で作成した追加の3Dモデルを配置することができます。
Saper3DはローポリゴンのSTLしか出力できませんが、clusterにはちょうどいいですiPadを持っているならベストのツールですね。
そして棒を追加して、色を変え、プロクリエイトでテクスチャーを描き、
色々な機能を追加し、
全く新しいゲームになりました。
効果音を収録しました。
流石にフリーの商用可能なテーブルテニスの棒のガチャガチャ音は転がってなかったので、ドライバーとプラスチックのフレームで代用します。
収録と編集はガレージバンドを使いました。
さて、完成したゲームはboothで無料から配信しています。
Logicなどの参考にしてみてはいかがですか?
この記事が気に入ったらサポートをしてみませんか?