現在、Unityを使って2Dのアクションゲームを作成しております。
その中でPlayerが敵Unitへダメージを与える際に、敵ごとに挙動を変えたいのでインターフェースを利用してみたのですが、
コード private void OnCollisionEnter(Collision collision) { // 武器を振って当たった敵ユニットのインターフェースを取得する var hit = collision.gameObject.GetComponent<IReceiveDamage>(); // 相手がダメージを受ける hit.ReceiveDamage(10f); }
ネットの記事を見たところ、GetComponentは重いので「update」なのでは使わずにキャッシュした変数を使いまわすようにすると説明されていました。
ここから質問なのですが、「update」などでは使ってはいけないと言う事は理解できたのですが、上記の使い方のように攻撃のたびにGetComponentで対象の参照をゲットするような使い方もPCゲーム制作においてはやはり避けるべきなのでしょうか?
分かりづらい質問で申し訳ありませんが、どなたか教えていただければ幸いです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/01/27 10:01