Я реализовал движение игрока, а также три разные комнаты.Я понимаю, как создать камеру от первого и третьего лица, но как я могу сделать три разных вида камеры, чтобы отслеживать игрока из комнаты в комнату?В частности, есть ли способ увеличить каждую комнату при нажатии на соответствующую кнопку?
До сих пор у меня есть отдельный скриптосновная камера с этим кодом (я знаю, что это, вероятно, не самый эффективный способ, но я просто изучаю Unity и C #, так что именно этот способ имеет для меня наибольшее значение):
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class cameraControls : MonoBehaviour
{
public GameObject player;
//private Vector3 offset;
public bool greenRoom;
public bool blueRoom;
public bool purpleRoom;
void OnGUI()
{
// Room 1 (Green room)
if (GUI.Button(new Rect(20, 50, 140, 40), "Green Room Camera"))
{
greenRoom = true;
blueRoom = false;
purpleRoom = false;
}
// Room 2 (Blue room)
if (GUI.Button(new Rect(20, 110, 140, 40), "Blue Room Camera"))
{
blueRoom = true;
greenRoom = false;
purpleRoom = false;
}
// Room 3 (Purple room)
if (GUI.Button(new Rect(20, 110, 140, 40), "Purple Room Camera"))
{
blueRoom = false;
greenRoom = false;
purpleRoom = true;
}
}
// Start is called before the first frame update
void Start()
{
//offset = transform.position - player.transform.position;
}
// Update is called once per frame
void Update()
{
if (greenRoom == true && blueRoom == false && purpleRoom == false)
{
}
if (blueRoom == true && greenRoom == false && purpleRoom == false)
{
}
if (purpleRoom == true && blueRoom == false && greenRoom == false)
{
}
}
}