【Unity】常にカメラを見るスプライト

Uncategorized
202 words

ゲーム業界ではこのことを「ビルボード」と言うみたいです。知りませんでした。

環境

  • Windows 11 Home 21H2
  • Unity 2021.3.11f1

手順

スクリプトの作成

常にカメラを見るスクリプトを作ります。

Assetsフォルダー内に C#スクリプト を作成し、次のコードをコピペ。

1
2
3
4
5
6
7
8
9
10
11
12
using UnityEngine;

public class BillBoard : MonoBehaviour
{
void Update()
{
var c = Camera.main.transform.position;
var p = transform.position;
c.x = p.x;
transform.LookAt(2 * p - c);
}
}

アタッチ

今回は自キャラに設定するため、1つ空オブジェクトを挟む必要がありました。

親オブジェクトを移動用にして、子供オブジェクトをカメラ向く用です。

親オブジェクト

子供オブジェクト

確認

自キャラのスプライトが傾いて、ゲーム画面からは常にカメラの方を向いています。

参考