復習:壊れる壁
CoddyのUnityジャーニー「物理演算とゲームプレイ」セクションの一部。レッスン 14/71。
このまとめでは、章の内容を整理します。OnCollisionEnter、衝突したもののタグ、そしてcollision.relativeVelocityから得られる衝突速度です。
チャレンジ
簡単Brick.csを書きます。速い砲弾は、ぶつかったレンガを壊します。
- レンガの
OnCollisionEnterで、collision.gameObject.CompareTag("Ball")とcollision.relativeVelocity.magnitude >= breakSpeedを&&でつないで同時に判定します。 - 両方が真のとき、
Brick brokenをログに出力し、Destroy(gameObject);を実行します。遅いボールや落下中のレンガは何も壊しません。
「プレイ」を押し、矢印キーで狙いを定めて、Spaceで発射します。その後、「確認」を押します。
自分で試してみよう
using UnityEngine;
public class Brick : MonoBehaviour
{
public float breakSpeed = 6f;
}
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
物理演算とゲームプレイのすべてのレッスン
自分で練習してみよう: Unityプレイグラウンド