Troca de camera
2 participantes
Página 1 de 1
Troca de camera
oi Marcos, fiz um tutorial que vc postou no Youtube de troca de câmeras, porém ele está dando um problema, o jogo começa sem nenhuma câmera.
Meu script está assim:
O SelectedCamera foi uma forma que um cara me deu para a câmera não ser destruída, pois quero configurar para que ela fique salva no jogo, tipo: escolho a câmera AR (do meu projeto) e depois passo ela para a de terceira pessoa, então quando eu voltar para o jogo, quero que ela comece com a câmera que escolhi. Ah... eu uso o ApplicationController na cena Loader, se isso for ajudar.
O que quero é que o jogo comece com uma câmera (pois não está começando com nenhuma, a não ser que eu aperte a tecla C) e se eu mudar de câmera ou ficar na msm, quero que ela fique salva quando eu desligar o jogo.
Meu script está assim:
- Código:
using UnityEngine;
using System.Collections;
public class TrocarCamera : MonoBehaviour {
public GameObject[] cameras;
public int numeroCameras;
public int NumeroMaximo;
void Start () {
numeroCameras = PlayerPrefs.GetInt("SelectedCamera");
cameras[numeroCameras].gameObject.SetActive(true);
NumeroMaximo = cameras.Length;
numeroCameras = 1;
foreach (GameObject obj in cameras) {
obj.gameObject.SetActive (false);
}
Debug.Log(cameras [numeroCameras]);
}
void Update (){
if (Input.GetKeyDown ("c") && numeroCameras < NumeroMaximo) {
numeroCameras++;
foreach (GameObject obj in cameras) {
obj.gameObject.SetActive (false);
}
cameras [numeroCameras - 1].gameObject.SetActive (true);
}
if (Input.GetKeyDown ("c") && numeroCameras == NumeroMaximo) {
foreach (GameObject obj in cameras) {
obj.gameObject.SetActive (false);
}
cameras [numeroCameras - 1].gameObject.SetActive (true);
numeroCameras = 0;
}
}
void OnDestroy()
{
PlayerPrefs.SetInt("SelectedCamera", numeroCameras);
}
}
O SelectedCamera foi uma forma que um cara me deu para a câmera não ser destruída, pois quero configurar para que ela fique salva no jogo, tipo: escolho a câmera AR (do meu projeto) e depois passo ela para a de terceira pessoa, então quando eu voltar para o jogo, quero que ela comece com a câmera que escolhi. Ah... eu uso o ApplicationController na cena Loader, se isso for ajudar.
O que quero é que o jogo comece com uma câmera (pois não está começando com nenhuma, a não ser que eu aperte a tecla C) e se eu mudar de câmera ou ficar na msm, quero que ela fique salva quando eu desligar o jogo.
keivy349- Iniciante
- PONTOS : 3440
REPUTAÇÃO : 0
Respeito as regras :
Re: Troca de camera
Tente trocar a sua void Start por esta aqui:
O que acontece é que primeiro você ativa a camera, mas depois desativa todas... então só troquei a ordem dos comandos.
- Código:
void Start () {
NumeroMaximo = cameras.Length;
numeroCameras = 1;
foreach (GameObject obj in cameras) {
obj.gameObject.SetActive (false);
}
numeroCameras = PlayerPrefs.GetInt("SelectedCamera");
cameras[numeroCameras].gameObject.SetActive(true);
}
O que acontece é que primeiro você ativa a camera, mas depois desativa todas... então só troquei a ordem dos comandos.
Tópicos semelhantes
» Duvida com troca de sprite quando muda camera
» alguem sabe como fazer uma troca de camera logo apos um certo tempo?
» No script da "Câmera estilo Gta" como faço para o mouse mover a câmera ?
» COMO FAZER CAMERA ORBITAR O PLAYER/CAMERA LIVRE!
» Troca de armas
» alguem sabe como fazer uma troca de camera logo apos um certo tempo?
» No script da "Câmera estilo Gta" como faço para o mouse mover a câmera ?
» COMO FAZER CAMERA ORBITAR O PLAYER/CAMERA LIVRE!
» Troca de armas
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos