1
resposta

Parece que 2 zumbis estão sendo instanciados ao mesmo tempo

Ao que parece, tem 2 zumbis sendo gerados no mesmo instante, ficando um em cima do outro. É possível ver que há 2 mesh iguais sobrepondo um ao outro.

Insira aqui a descrição dessa imagem para ajudar na acessibilidadeInsira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta

Olá, Guilherme!

Isso pode acontecer se o método de instanciação está sendo chamado mais de uma vez no mesmo frame ou se a posição de instanciação não está variando como deveria.

Vou sugerir algumas verificações e ajustes que você pode fazer para resolver o problema:

  1. Verifique se o método que instancia os zumbis está sendo chamado apenas uma vez quando necessário. Se você estiver usando um loop ou chamando o método de instanciação em Update() sem um controle de tempo ou condição, isso pode causar a criação de múltiplos zumbis simultaneamente.

  2. Se você estiver usando um temporizador para controlar a criação dos zumbis (como o contadorTempo no contexto fornecido), certifique-se de que o contador está sendo reiniciado corretamente após a criação de um zumbi.

  3. Certifique-se de que a posição de instanciação dos zumbis varie a cada chamada. Se você estiver usando um ponto fixo para a criação, considere adicionar uma pequena variação aleatória na posição para evitar a sobreposição.

  4. Se você estiver usando um sistema de pooling (reutilização de objetos), verifique se os zumbis que estão sendo reutilizados não estão sendo ativados no mesmo local de outros zumbis ativos.

  5. Confira se não há algum outro script ou componente que esteja duplicando a chamada de instanciação dos zumbis.

Aqui está um exemplo de como você poderia ajustar o temporizador para instanciar um zumbi por vez, usando o contexto fornecido:

public class GeradorZumbis : MonoBehaviour {

    public GameObject Zumbi;
    float contadorTempo = 0;
    public float TempoGerarZumbi = 1;

    void Update () {
        contadorTempo += Time.deltaTime;

        if(contadorTempo >= TempoGerarZumbi)
        {
            Instantiate(Zumbi, transform.position, transform.rotation);
            contadorTempo = 0;
        }
    }
}

Neste código, um zumbi é instanciado apenas quando o contadorTempo atinge o valor de TempoGerarZumbi, e então o contador é reiniciado.

Espero que essas sugestões te ajudem a resolver o problema. Se após essas verificações o problema persistir, você pode precisar revisar mais detalhadamente o seu código e a lógica de instanciação dos zumbis.

Bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software