[RESOLVIDO]Movimentação 2D em personagem 3D
2 participantes
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
[RESOLVIDO]Movimentação 2D em personagem 3D
Boa tarde pessoal, estou criando um jogo para o meu TCC da faculdade, a ideia seria um jogo side scrolling onde as batalhas aconteceriam em uma arena 3D. Estou usando um script de movimentação que encontrei em um pacote de assets na própria unity, porém, não estou conseguindo implementar a movimentação 2D do personagem, o jeito que eu dei até agora foi travar a constraint de X enquanto o personagem está em uma área 2D e habilitar ela quando ele entrasse na arena e travando de novo quando sair, mas desse jeito preciso setar o personagem no eixo x=0 quando volta pro caminho pra ele correr em cima dele. Gostaria de saber como consigo fazer um script de movimentação 2D em um personagem 3D pra que eu possa trabalhar com 2 scripts ao invés de um só com um mcgayver nele.
Script de alteração entre 2D e 3D:
Script de alteração entre 2D e 3D:
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Trigger : MonoBehaviour {
public Rigidbody rbPlayer;
void Start(){
rbPlayer = GetComponent<Rigidbody> ();
}
void OnTriggerEnter (Collider col){
switch (col.tag) {
case "2d-to-3d":
//desbloqueia a constraint X
rbPlayer.constraints = RigidbodyConstraints.FreezeRotationX | RigidbodyConstraints.FreezeRotationZ;
break;
case "3d-to-2d":
//bloqueia a constrant X
rbPlayer.constraints = RigidbodyConstraints.FreezePositionX | RigidbodyConstraints.FreezeRotationX | RigidbodyConstraints.FreezeRotationZ;
//centraliza o personagem na plataforma
rbPlayer.transform.SetPositionAndRotation(new Vector3 (0, 0, rbPlayer.position.z), new Quaternion (0, 0, 0, 0));
break;
}
}
}
MrMattD- Iniciante
- PONTOS : 2466
REPUTAÇÃO : 1
Respeito as regras :
Re: [RESOLVIDO]Movimentação 2D em personagem 3D
Talvez você pode usar tudo em 3D, mas a movimentação da câmera fosse 2D. Aliás, não entendi o problema.
NKKF- ProgramadorMaster
- PONTOS : 4818
REPUTAÇÃO : 574
Idade : 20
Áreas de atuação : Desenvolvedor na Unity, NodeJS, React, ReactJS, React Native, MongoDB e Firebase.
Respeito as regras :
Re: [RESOLVIDO]Movimentação 2D em personagem 3D
Acho que expliquei bem mal o problema querendo contextualizar tudo.
Não estou conseguindo fazer a movimentação 2D, sou bem iniciante mas sei bem de programação.
O fato é que, todo tutorial que eu acho ensina a fazer tudo com rigidbody 2D e as coisas assim, tentei simplesmente adaptar os códigos, mas o personagem ficou "girando" sozinho. Tem uma maneira de fazer o script de movimentação 2D utilizando modelos 3D?
Não estou conseguindo fazer a movimentação 2D, sou bem iniciante mas sei bem de programação.
O fato é que, todo tutorial que eu acho ensina a fazer tudo com rigidbody 2D e as coisas assim, tentei simplesmente adaptar os códigos, mas o personagem ficou "girando" sozinho. Tem uma maneira de fazer o script de movimentação 2D utilizando modelos 3D?
MrMattD- Iniciante
- PONTOS : 2466
REPUTAÇÃO : 1
Respeito as regras :
Re: [RESOLVIDO]Movimentação 2D em personagem 3D
Sim, você pode, é só mudar onde você vai aplicar a velocidade, acredito que não haja necessidade de usar Coliders 2D, apenas 3D já é o suficiente.
NKKF- ProgramadorMaster
- PONTOS : 4818
REPUTAÇÃO : 574
Idade : 20
Áreas de atuação : Desenvolvedor na Unity, NodeJS, React, ReactJS, React Native, MongoDB e Firebase.
Respeito as regras :
Re: [RESOLVIDO]Movimentação 2D em personagem 3D
Foi o que eu fiz, porem o personagem começou a girar no próprio eixo, ele andava pra frente e quando parava começava a girar ou então ele girava aos poucos até começar a correr em direção a parede, não consegui remover isso dele.Souris escreveu:Sim, você pode, é só mudar onde você vai aplicar a velocidade, acredito que não haja necessidade de usar Coliders 2D, apenas 3D já é o suficiente.
MrMattD- Iniciante
- PONTOS : 2466
REPUTAÇÃO : 1
Respeito as regras :
Re: [RESOLVIDO]Movimentação 2D em personagem 3D
Já tentou congelar os eixos dele?
NKKF- ProgramadorMaster
- PONTOS : 4818
REPUTAÇÃO : 574
Idade : 20
Áreas de atuação : Desenvolvedor na Unity, NodeJS, React, ReactJS, React Native, MongoDB e Firebase.
Respeito as regras :
Re: [RESOLVIDO]Movimentação 2D em personagem 3D
Consegui resolver, na verdade já faz um tempo, o que eu fiz foi remover a movimentação no eixo vertical e não travar a rotação, assim o personagem gira no eixo para virar pra trás e não trava enquanto faz isso, também fiz algumas alterações no produto final que impactaram pra funcionar assim, muito obrigado pela ajuda.
MrMattD- Iniciante
- PONTOS : 2466
REPUTAÇÃO : 1
Respeito as regras :
Tópicos semelhantes
» [RESOLVIDO] Movimentação personagem 3 pessoa unity 3D Mobile
» Movimentação do Personagem
» Movimentaçao de personagem 3d
» Movimentação de personagem (2D)
» Movimentação de Personagem No Unity 3D
» Movimentação do Personagem
» Movimentaçao de personagem 3d
» Movimentação de personagem (2D)
» Movimentação de Personagem No Unity 3D
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos