[RESOLVIDO] Como fazer um objeto ter a mesma rotação de outro
2 participantes
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
[RESOLVIDO] Como fazer um objeto ter a mesma rotação de outro
Salve galeris ! Eu fiz um sistema de camera em terceira pessoa, e eu gostaria que o player tivesse a mesma rotação do que a câmera. Para isso, eu criei essa linha apenas para igular as rotações dos objetos:
- Código:
GameObject.FindGameObjectWithTag("Player").transform.rotation = camObj.transform.rotation;
ruanzikaad- Mestre
- PONTOS : 3187
REPUTAÇÃO : 47
Idade : 24
Respeito as regras :
Re: [RESOLVIDO] Como fazer um objeto ter a mesma rotação de outro
- Código:
GameObject.FindGameObjectWithTag("Player").transform.rotation.y = camObj.transform.rotation.y;
Re: [RESOLVIDO] Como fazer um objeto ter a mesma rotação de outro
Não dá, eu teria que guardar os valores em variáveis temporárias ( o que eu ja fiz) e depois dizer que variavel1 fosse = variavel 2. Até aí elas ficam iguais mas o player não rotacionaMatrirxp escreveu:
- Código:
GameObject.FindGameObjectWithTag("Player").transform.rotation.y = camObj.transform.rotation.y;
ruanzikaad- Mestre
- PONTOS : 3187
REPUTAÇÃO : 47
Idade : 24
Respeito as regras :
Re: [RESOLVIDO] Como fazer um objeto ter a mesma rotação de outro
[list=linenums]
[*]
Tenta isso!
[/list]
[*]
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Rotate : MonoBehaviour {
public GameObject Player;
public GameObject Object;
float Rotate_Y;
// Use this for initialization
void Start () {
Player = GameObject.FindGameObjectWithTag("Player");
}
// Update is called once per frame
void Update () {
Rotate_Y = Player.transform.rotation.eulerAngles.y;
Player.transform.Rotate(new Vector3(0,Rotate_Y,0));
}
}
Tenta isso!
[/list]
Re: [RESOLVIDO] Como fazer um objeto ter a mesma rotação de outro
Acho que isso não é o que eu preciso. Eu queria que o y do Object fosse igual ao Y do player. Apenas issoMatrirxp escreveu:[list=linenums]
[*]
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Rotate : MonoBehaviour {
public GameObject Player;
public GameObject Object;
float Rotate_Y;
// Use this for initialization
void Start () {
Player = GameObject.FindGameObjectWithTag("Player");
}
// Update is called once per frame
void Update () {
Rotate_Y = Player.transform.rotation.eulerAngles.y;
Player.transform.Rotate(new Vector3(0,Rotate_Y,0));
}
}
Tenta isso!
[/list]
ruanzikaad- Mestre
- PONTOS : 3187
REPUTAÇÃO : 47
Idade : 24
Respeito as regras :
Re: [RESOLVIDO] Como fazer um objeto ter a mesma rotação de outro
E exatamente isso que ele faz.
Voce pode colocar essa parte:
No void Start () para igualar a rotação apenas no inicio da cena.
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Rotate : MonoBehaviour {
public GameObject Player;
public GameObject Object;
float Rotate_Y;
// Use this for initialization
void Start () {
Player = GameObject.FindGameObjectWithTag("Player");
}
// Update is called once per frame
void Update () {
Rotate_Y = Object.transform.rotation.eulerAngles.y;
Player.transform.Rotate(new Vector3(0,Rotate_Y,0));
}
}
Voce pode colocar essa parte:
- Código:
Rotate_Y = Object.transform.rotation.eulerAngles.y;
Player.transform.Rotate(new Vector3(0,Rotate_Y,0));
No void Start () para igualar a rotação apenas no inicio da cena.
Re: [RESOLVIDO] Como fazer um objeto ter a mesma rotação de outro
Nesse script o Rotate faz com que o player fique rodando sem parar. Eu queria que o player rotacionasse conforme a camera virasse saca?Matrirxp escreveu:E exatamente isso que ele faz.
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Rotate : MonoBehaviour {
public GameObject Player;
public GameObject Object;
float Rotate_Y;
// Use this for initialization
void Start () {
Player = GameObject.FindGameObjectWithTag("Player");
}
// Update is called once per frame
void Update () {
Rotate_Y = Object.transform.rotation.eulerAngles.y;
Player.transform.Rotate(new Vector3(0,Rotate_Y,0));
}
}
Voce pode colocar essa parte:
- Código:
Rotate_Y = Object.transform.rotation.eulerAngles.y;
Player.transform.Rotate(new Vector3(0,Rotate_Y,0));
No void Start () para igualar a rotação apenas no inicio da cena.
ruanzikaad- Mestre
- PONTOS : 3187
REPUTAÇÃO : 47
Idade : 24
Respeito as regras :
Re: [RESOLVIDO] Como fazer um objeto ter a mesma rotação de outro
No script que eu escrevi, o player rotaciona certinho com a camera mas o problema é que vai em todos os ângulos, eu preciso apenas do Yruanzikaad escreveu:Nesse script o Rotate faz com que o player fique rodando sem parar. Eu queria que o player rotacionasse conforme a camera virasse saca?Matrirxp escreveu:E exatamente isso que ele faz.
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Rotate : MonoBehaviour {
public GameObject Player;
public GameObject Object;
float Rotate_Y;
// Use this for initialization
void Start () {
Player = GameObject.FindGameObjectWithTag("Player");
}
// Update is called once per frame
void Update () {
Rotate_Y = Object.transform.rotation.eulerAngles.y;
Player.transform.Rotate(new Vector3(0,Rotate_Y,0));
}
}
Voce pode colocar essa parte:
- Código:
Rotate_Y = Object.transform.rotation.eulerAngles.y;
Player.transform.Rotate(new Vector3(0,Rotate_Y,0));
No void Start () para igualar a rotação apenas no inicio da cena.
ruanzikaad- Mestre
- PONTOS : 3187
REPUTAÇÃO : 47
Idade : 24
Respeito as regras :
Re: [RESOLVIDO] Como fazer um objeto ter a mesma rotação de outro
Há alguma maneira de deixar sempre o eixo X em 0 ?ruanzikaad escreveu:No script que eu escrevi, o player rotaciona certinho com a camera mas o problema é que vai em todos os ângulos, eu preciso apenas do Yruanzikaad escreveu:Nesse script o Rotate faz com que o player fique rodando sem parar. Eu queria que o player rotacionasse conforme a camera virasse saca?Matrirxp escreveu:E exatamente isso que ele faz.
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Rotate : MonoBehaviour {
public GameObject Player;
public GameObject Object;
float Rotate_Y;
// Use this for initialization
void Start () {
Player = GameObject.FindGameObjectWithTag("Player");
}
// Update is called once per frame
void Update () {
Rotate_Y = Object.transform.rotation.eulerAngles.y;
Player.transform.Rotate(new Vector3(0,Rotate_Y,0));
}
}
Voce pode colocar essa parte:
- Código:
Rotate_Y = Object.transform.rotation.eulerAngles.y;
Player.transform.Rotate(new Vector3(0,Rotate_Y,0));
No void Start () para igualar a rotação apenas no inicio da cena.
ruanzikaad- Mestre
- PONTOS : 3187
REPUTAÇÃO : 47
Idade : 24
Respeito as regras :
Re: [RESOLVIDO] Como fazer um objeto ter a mesma rotação de outro
Você tentou colocar no void Start() ?
- Código:
void Start () {
Rotate_Y = Object.transform.rotation.eulerAngles.y;
Player.transform.Rotate(new Vector3(0,Rotate_Y,0));
}
Re: [RESOLVIDO] Como fazer um objeto ter a mesma rotação de outro
Sim mas eu preciso que o player fique constantemente mudando o eixo Y para o eixo da Cam, e na void Start ele só faz isso uma vezMatrirxp escreveu:Você tentou colocar no void Start() ?
- Código:
void Start () {
Rotate_Y = Object.transform.rotation.eulerAngles.y;
Player.transform.Rotate(new Vector3(0,Rotate_Y,0));
}
ruanzikaad- Mestre
- PONTOS : 3187
REPUTAÇÃO : 47
Idade : 24
Respeito as regras :
Re: [RESOLVIDO] Como fazer um objeto ter a mesma rotação de outro
Finalmente consegui resolver:
- Código:
playerObj.transform.eulerAngles = new Vector3(this.transform.eulerAngles.x, camObj.transform.eulerAngles.y, transform.eulerAngles.z);
ruanzikaad- Mestre
- PONTOS : 3187
REPUTAÇÃO : 47
Idade : 24
Respeito as regras :
Tópicos semelhantes
» [RESOLVIDO] como fazer um objeto trocar de cor ao colidir com outro objeto
» [RESOLVIDO] Como fazer um objeto 2D rotacionar em direção a outro objeto
» Objeto ter a mesma rotação que outro em apenas um eixo
» [RESOLVIDO] Como fazer para colocar um objeto Parente do outro?
» Como mudar rotacao de um objeto em relacao a posicao do outro objeto
» [RESOLVIDO] Como fazer um objeto 2D rotacionar em direção a outro objeto
» Objeto ter a mesma rotação que outro em apenas um eixo
» [RESOLVIDO] Como fazer para colocar um objeto Parente do outro?
» Como mudar rotacao de um objeto em relacao a posicao do outro objeto
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos