Предыстория: у меня есть 3 Oculus OVRPlayerController, между которыми я хотел бы перемещаться. OVRPlayers загружаются из стека по таймеру, например, каждые 10 секунд загружается новый игрок, а старый — SetActive(false)
.
У меня есть два возможных решения:
//1. Changing tag to MainCamera
player = Instantiate(resource) as GameObject;
player.SetActive(true);
player.tag = "MainCamera";
//2. Enabling new Cameras and disabling old Cameras by loop
oldPlayer.tag = "Untagged";
oldPlayer.SetActive(false);
//New player loaded from prefab and then->
Camera[] cameras = player.GetComponentsInChildren<Camera> ();
foreach(Camera cam in cameras){
cam.enabled = false;
}
Но ни один из них не работает. Новый контроллер персонажа загружается правильно, и IO работает нормально, но камера неактивна, просто черный вид. Есть идеи, как переназначить камеры OVRPlayer?
РЕДАКТИРОВАТЬ: Unity регистрирует первый OVRPlayer как основной или что-то подобное, потому что позже, когда я снова включаю его вручную в редакторе, я также могу использовать его для просмотра игры. Но мне нужно переопределить это «основное или что-то подобное».