Polygon Collider - Android
3 participantes
Página 1 de 1
Polygon Collider - Android
Ola galera do forum,
Estou tendo problemas com colisores, e android, é o seguinte: É um game mobile, um infinite runner 2d, onde o char nunca se move, e sim os obstaculos vem ate ele.
Estava com problemas em questão de colisores, optei por utilizar polygons colliders, adaptei um script, onde a cada imagem de meu spritesheet, os colisores (Polygons) sejam ajustados, para que independente da imagem do spritesheet, ele sempre vai se ajustar da melhor maneira possivel, para assim ter a colisão perfeita.
O código funciona muito bem enquanto estou testando o game no PC, porem quando realizo um build dele, e instalo em meu celular, os colisores não são ativos, ao invés disso, ele cria (acredito eu) um box collider padrão (Pois no teste de celular a 1 metro da caixa ele ja esta colidindo, enquanto que no pc a colisão funciona de boa).
O codigo para a criação e manage dos colliders é este:
Poderiam me dar uma ajuda? dizer onde estou errando? seria um problema de estar utilizando a biblioteca System.Collections.Generic? estou muito de cara, funciona perfeitamente em windows e no android nada.
Agradeço a atenção desde ja.
Estou tendo problemas com colisores, e android, é o seguinte: É um game mobile, um infinite runner 2d, onde o char nunca se move, e sim os obstaculos vem ate ele.
Estava com problemas em questão de colisores, optei por utilizar polygons colliders, adaptei um script, onde a cada imagem de meu spritesheet, os colisores (Polygons) sejam ajustados, para que independente da imagem do spritesheet, ele sempre vai se ajustar da melhor maneira possivel, para assim ter a colisão perfeita.
O código funciona muito bem enquanto estou testando o game no PC, porem quando realizo um build dele, e instalo em meu celular, os colisores não são ativos, ao invés disso, ele cria (acredito eu) um box collider padrão (Pois no teste de celular a 1 metro da caixa ele ja esta colidindo, enquanto que no pc a colisão funciona de boa).
O codigo para a criação e manage dos colliders é este:
- Código:
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
public class Script : MonoBehaviour
{
public bool iStrigger ;
private SpriteRenderer spriteRenderer;
private List<Sprite> spritesList;
private Dictionary<int, PolygonCollider2D> spriteColliders;
private bool _processing ;
private int _frame ;
public int Frame {
get { return _frame; }
set {
if (value != _frame) {
if (value > -1) {
spriteColliders [_frame].enabled = false;
_frame = value;
spriteColliders [_frame].enabled = true;
} else {
_processing = true;
StartCoroutine (AddSpriteCollider (spriteRenderer.sprite));
}
}
}
}
private IEnumerator AddSpriteCollider (Sprite sprite)
{
spritesList.Add (sprite);
int index = spritesList.IndexOf (sprite);
PolygonCollider2D spriteCollider = gameObject.AddComponent<PolygonCollider2D> ();
spriteCollider.isTrigger = iStrigger;
// spriteCollider.sharedMaterial = _material;
spriteColliders.Add (index, spriteCollider);
yield return new WaitForEndOfFrame ();
Frame = index;
_processing = false;
}
}
void Awake ()
{
spriteRenderer = this.GetComponent<SpriteRenderer> ();
spritesList = new List<Sprite> ();
spriteColliders = new Dictionary<int, PolygonCollider2D> ();
Frame = spritesList.IndexOf (spriteRenderer.sprite);
}
void Start()
{
spriteColliders [Frame].enabled = true;
}
void FixedUpdate ()
{
if (!_processing)
Frame = spritesList.IndexOf (spriteRenderer.sprite);
}
void OnDisable ()
{
spriteColliders [Frame].enabled = false;
}
Poderiam me dar uma ajuda? dizer onde estou errando? seria um problema de estar utilizando a biblioteca System.Collections.Generic? estou muito de cara, funciona perfeitamente em windows e no android nada.
Agradeço a atenção desde ja.
matheusalxandre- Iniciante
- PONTOS : 2911
REPUTAÇÃO : 0
Respeito as regras :
Re: Polygon Collider - Android
Cara, você tem que fazer um debug para quando o jogo está executando no android, para ver se aparece alguma mensagem de falha, algo assim.
Não há diferenças entre os colisores para PC ou android até aonde eu sei.
Se você está desenvolvendo o seu jogo com a plataforma "Android" já selecionada, e está funcionando, teria que funcionar no android.
Tenta debugar, ver se aparece alguma mensagem. A propósito, está compilando para quais versões do android?
Não há diferenças entre os colisores para PC ou android até aonde eu sei.
Se você está desenvolvendo o seu jogo com a plataforma "Android" já selecionada, e está funcionando, teria que funcionar no android.
Tenta debugar, ver se aparece alguma mensagem. A propósito, está compilando para quais versões do android?
Re: Polygon Collider - Android
Olha mano, eu conheço um plugin MUITO daora que coloca um console no seu aplicativo pra vc debuggar, você so tem que adicionar os scripts do asset num objeto e fazer um circulo com seu dedo na tela do seu celular.
Aqui tá o link!
https://www.assetstore.unity3d.com/en/#!/content/12047 (Gratuito)
Com ele você pode ver tudo que apareceria no console do Unity no PC.
Aqui tá o link!
https://www.assetstore.unity3d.com/en/#!/content/12047 (Gratuito)
Com ele você pode ver tudo que apareceria no console do Unity no PC.
Tópicos semelhantes
» Polygon Collider anexado a sprite com areas transparentes
» Como contornar o Polygon Collider em um sprite com áreas transparentes?
» collider
» RigidBody com Box Collider Travando na Aresta de um Box Collider.
» Wheel Collider e Box Collider no Carro
» Como contornar o Polygon Collider em um sprite com áreas transparentes?
» collider
» RigidBody com Box Collider Travando na Aresta de um Box Collider.
» Wheel Collider e Box Collider no Carro
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos