ブロックのプレハブ
つぎ、ブロックのプレハブを作成し、ボールが当たったら消える処理を作りましょう。
画像の前準備
ブロックの画像(スプライト)は、他のスプライトと比べて、1つではなく、同じ画像に多数が一緒にまとまっている。必要なメモリーの使用量を最適化するためにゲーム開発の中でよくある作戦である。
ただし、まとまったままで使えないので、先に分割しないといけない。このため、Unityは「Sprite Editor」(スプライトエディタ)がある。
まず、ブロック画像を選択し、Inspectorで「Open Sprite Editor」を選択してください:

ここで、画像を各スプライトに分割ができる。手動で1個ずつ個別に区切りをつける場合もあるが、今回はきれいに揃えているので自動的に分割可能である。
「行列分割」を使い、4x4の行列で分割してもらう。「Slice」メニューで「Automatic」から「Grid by Cell Count」に変えて、4行と4列にして、最後に「Slice」を押してください。

これで、各ブロックを分割できたので、最後に適用するには「Apply」ボタンを押してください。プロジェクトビューで各スプライトを確認ができる(画像の ▷ を押せば出る)

プレハブ作成
お好みの色のブロックを選んで、ボールと同じようにドラッグドロップでシーンに追加してください。名前は「Brick」にしましょう。
当たり判定の処理を行うため、BoxCollider2D を追加してください。その後、「ボールがブロックが衝突したら、ブロックが消える」というスクリプト「BlockDestroy」を作成しましょう。
using UnityEngine;
// ボールが当たったら、ブロックを消す処理
public class BlockDestroy : MonoBehaviour
{
// 衝突したら…
private void OnCollisionEnter2D(Collision2D other)
{
// 自分のことを削除
Destroy(gameObject);
}
}

プレハブ化にするのは、ボールと同様にヒエラルキーから「Prefab」フォルダーへドラッグドロップするだけ
確認のために、手動で「Prefab」フォルダーから、シーンにいくつかのブロックを適当に追加してみましょう:



No comments to display
No comments to display