3Dプロジェクトで2D素材を扱う時に発生しがちな問題として、
2D素材を用いたオブジェクトがカメラの方向を向いてくれない!!
というものがあると思います。
今回の記事ではそれを改善できるテクニックを紹介していきます。
Unity3Dと2D混在させる方法
まず肝心の3Dプロジェクトで2D素材を使う方法ですが
下記のように空のオブジェクトを作成して、SpriteRendererを追加してください。
その後表示したい2D素材をSpriteに入れてあげましょう。
そうすると下記のように、
3D空間でも2D素材を表示することが可能になります!
ですがこのままでは、
カメラを動かしても正面に向いてはくれません。
次からはこのオブジェクトを
カメラ正面に向かせるコードを記述していきます。
Unityの3D空間でと2D素材に正面を向かせる方法
CameraFrontスクリプトを作成して、
先ほど作ったオブジェクトにアタッチしてください。
スクリプトには下記コードを記述してください。
CameraFront.cs
using UnityEngine;
public class CameraFront : MonoBehaviour
{
Camera maincam;
private void Start()
{
//メインカメラ取得
maincam = Camera.main;
}
private void Update()
{
TurningImage();
}
//オブジェクトをメインカメラの方向に向ける
private void TurningImage()
{
transform.LookAt(maincam.transform.position);
}
}
これでカメラを動かしても
常に正面を向いてくれるようになりました!
YouTubeチャンネル
ゲーム雑学や、具体的なゲーム開発方法まで紹介しているチャンネルを運営しています!
参照記事