Meu personagem ignora as colisoes laterais dos tilemap 2D
Página 1 de 1
Meu personagem ignora as colisoes laterais dos tilemap 2D
Estava fazendo meu projeto quando percebi q o personagem n estava colidindo nas laterais das colisões do tilemap echegando ate a atravesar o tilemap sendo que o personagem e o tilemap estão com colisão , funcionando so a superficie da colisa
Script do personagem de movimentação
Eu tenho um croundcheck pra ver se o personagem esta no ar ou se esta no chao q tb tem uma colisao mais n consigui colocar pra ele detectar colisao mais sem colidir com o cenario.
O groundcheck e um colisor redondondo para ele sobir terenos elevados mais ele esta incorporado no jogador não sei se afeta em alguma coisa
Script do personagem de movimentação
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Character : MonoBehaviour
{
public float Speed;
public float JumpForce;
public bool IsJumping;
private Rigidbody2D rig;
void Start()
{
rig = GetComponent<Rigidbody2D>();
}
void Update()
{
Move();
Jump();
}
void Move()
{
Vector3 moviment = new Vector3(Input.GetAxis("Horizontal"), 0f, 0f);
transform.position += moviment * Time.deltaTime * Speed;
float inputAxis = Input.GetAxis("Horizontal");
if(inputAxis > 0)
{
transform.eulerAngles = new Vector2(0f, 0f);
}
if (inputAxis < 0)
{
transform.eulerAngles = new Vector2(0f, 180f);
}
}
void Jump()
{
if (Input.GetButtonDown("Jump") && !IsJumping)
{
rig.AddForce(new Vector2(0f, JumpForce), ForceMode2D.Impulse);
}
}
}
Eu tenho um croundcheck pra ver se o personagem esta no ar ou se esta no chao q tb tem uma colisao mais n consigui colocar pra ele detectar colisao mais sem colidir com o cenario.
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class GroundEd : MonoBehaviour
{
Character Player;
void Start()
{
Player = gameObject.transform.parent.gameObject.GetComponent<Character>();
}
void OnCollisionEnter2D(Collision2D collisor)
{
if(collisor.gameObject.layer == 5)
{
Player.IsJumping = false;
}
}
void OnCollisionExit2D(Collision2D collisor)
{
if (collisor.gameObject.layer == 5)
{
Player.IsJumping = true;
}
}
}
O groundcheck e um colisor redondondo para ele sobir terenos elevados mais ele esta incorporado no jogador não sei se afeta em alguma coisa
Play3rAleatori0- Iniciante
- PONTOS : 1163
REPUTAÇÃO : 0
Respeito as regras :
Re: Meu personagem ignora as colisoes laterais dos tilemap 2D
Play3rAleatori0 escreveu:Estava fazendo meu projeto quando percebi q o personagem n estava colidindo nas laterais das colisões do tilemap e chegando ate a atravesar o tilemap sendo que o personagem e o tilemap estão com colisão , funcionando so a superficie da colisao
Script do personagem de movimentação
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Character : MonoBehaviour
{
public float Speed;
public float JumpForce;
public bool IsJumping;
private Rigidbody2D rig;
void Start()
{
rig = GetComponent<Rigidbody2D>();
}
void Update()
{
Move();
Jump();
}
void Move()
{
Vector3 moviment = new Vector3(Input.GetAxis("Horizontal"), 0f, 0f);
transform.position += moviment * Time.deltaTime * Speed;
float inputAxis = Input.GetAxis("Horizontal");
if(inputAxis > 0)
{
transform.eulerAngles = new Vector2(0f, 0f);
}
if (inputAxis < 0)
{
transform.eulerAngles = new Vector2(0f, 180f);
}
}
void Jump()
{
if (Input.GetButtonDown("Jump") && !IsJumping)
{
rig.AddForce(new Vector2(0f, JumpForce), ForceMode2D.Impulse);
}
}
}
Eu tenho um croundcheck pra ver se o personagem esta no ar ou se esta no chao q tb tem uma colisao mais n consigui colocar pra ele detectar colisao mais sem colidir com o cenario.
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class GroundEd : MonoBehaviour
{
Character Player;
void Start()
{
Player = gameObject.transform.parent.gameObject.GetComponent<Character>();
}
void OnCollisionEnter2D(Collision2D collisor)
{
if(collisor.gameObject.layer == 5)
{
Player.IsJumping = false;
}
}
void OnCollisionExit2D(Collision2D collisor)
{
if (collisor.gameObject.layer == 5)
{
Player.IsJumping = true;
}
}
}
O groundcheck e um colisor redondondo para ele sobir terenos elevados mais ele esta incorporado no jogador não sei se afeta em alguma coisa
Play3rAleatori0- Iniciante
- PONTOS : 1163
REPUTAÇÃO : 0
Respeito as regras :
Tópicos semelhantes
» Ignora fog em um certo objeto
» Colisoes na Unity
» AI Points SIMPLES ignora barreiras
» TileMap
» Ajuda com Colisões
» Colisoes na Unity
» AI Points SIMPLES ignora barreiras
» TileMap
» Ajuda com Colisões
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos