#cluster Creator Kit シンプルなスコアボードの作り方

2022/03/26に公開

ゲームを作る際に 得点を表示させるスコアボードを作りたくなった時の参考用の記事です。

https://youtu.be/evLb6aHoLoo

ゴールにボールを入れると スコアが加算されるサンプルを作っていきます。
なるべくシンプルな構成で作ったので拡張も簡単にできるハズ。

使うコンポーネント

Grabbable Item

  • Grabbable Itemを使うと、プレイヤーがオブジェクトを掴んで移動できるようになります。

On Collide Item Trigger

  • アイテムが他のものに衝突したことを通知するトリガー

Global Logic

  • メッセージを読み取り、計算した結果をどのギミックからでも読めるメッセージとして通知するオペレーション

Set Text Gimmick

  • Textにメッセージの内容を設定するギミック

作り方

ゴールを作る

まずは あたり判定のある ゴールオブジェクトを作成します。

  1. Hierarchyで右クリック CreateEmpty して GameObject をつくる
  2. Inspector で 名前を Goal に変更する
  3. Inspector で Add Component を押して Box Collider コンポーネントを追加する
  4. Goal 以下に Cube を追加
  5. Cube の Transform Scale を 0.5,0.5,0.5 に変更

ボールを作る

Goal に当たったら hit Signal を Goalに通知する ボールを作成する

  1. Hierarchyで右クリック CreateEmpty して GameObject をつくる
  2. Inspector で 名前を Ball に変更する
  3. Inspector で Add Component を押して Rigidbody コンポーネントを追加する
  4. Inspector で Add Component を押して Grabbable Item コンポーネントを追加する
  5. Inspector で Add Component を押して On Collide Item Trigger コンポーネントを追加する

On Collide Item Trigger コンポーネント
Collision Event Type: Enter
Collision Type: EveryThing
Target: CollidedItemOrPlayer
Key: hit
Value: Signal

スコア表を作る

スコア表示する Canvas を作成する

  1. Hierarchyで右クリック CreateEmpty して GameObject をつくる
  2. Inspector で 名前を Score に変更する
  3. Inspector で Add Component を押して Canvas コンポーネントを追加する
  4. Inspector で Add Component を押して Canvas Scaler コンポーネントを追加する
  5. Score の下に CreateEmpty して GameObject をつくる
  6. Inspector で 名前を Text に変更する
  7. Inspector で Add Component を押して Text コンポーネントを追加する
  8. 各コンポーネントの値を調整する

Rect Transform コンポーネント
Width: 200
Height: 60

Text コンポーネント
Font Size: 30
Text: "スコア 999"

  1. Inspector で Add Component を押して Set Text Gimmick コンポーネントを追加する

Set Text Gimmick コンポーネント
Target: Global
Key : score
Parameter Type: Integer
Format: "スコア {0}"

ゴールに衝突したときの処理を作る

オブジェクトの準備ができたので ゴールにボールが衝突したとき スコアを加算する処理を作ります。

  1. Hierarchyで右クリック CreateEmpty して GameObject をつくる
  2. Inspector で 名前を System に変更する
  3. ワールド入室時の スコアを0にする処理を追加する
    Inspector で Add Component を押して On Create Item Trigger コンポーネントを追加する

On Create Item Trigger コンポーネント
Target: Global score
Value: Integer 0

  1. Inspector で Add Component を押して Global Logic コンポーネントを追加する
    Global hit Signalを受信したら Global score を加算する。

Global Logic コンポーネント
Target: Item
Key: hit
Item: Goal <- Hierarchy の Goal を ドラッグ & ドロップする

  1. + ボタンを押してロジックを追加

Global Logic コンポーネント ロジック部分
Global score Integer
= Add (加算)
RoomState Integer score
Constant Integer 1

ココまでの設定で一式のオブジェクトの容易ができました。
実行してボールをゴールに投げ込むとスコアが加算される筈です。

Discussion