SchultzGames
Para tirar dúvidas, crie um tópico especifico na área "Dúvidas em Geral" e aguarde ser respondido. Evite comentar em tópicos não relacionados a sua dúvida Very Happy
TÓPICOS RECENTES:
Tópico:
Postado em:
Postado por:
Como manter um valor salvo na cena1 e zera-lo na outra cena para uma nova pontuação???
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
DUVIDA MENSAGEM APARECER NA TELA
Instanciar Objeto em Distancia Certa!
Perde vida e CheckPoint?
alguem pode me ajuda?
[ENQUETE] Modelo com normal map e diferença - Aula de Bake
KIT de Tiro em 3° Pessoa
Porta com Códicos para abri-la
Tunagem de veiculos
VENHAM CONTEMPLAR CUBOID! E entrem para a equipe!
Precisamos de Modeladores e Animadores 3D
Ajuda em Script de colisao na unity
Como separar um audio na unity ?
Sistema de Localization " Multi Idiomas para jogos"
[Game] World Adventure (Nova Beta)
Esvaziar GridLayoutGroup.
Duvida Com Tiro LineCast Jogo 2D
Cursos Para Areá da Informatica
Scale do objeto conforme resolução de tela
Ignorar Objetos anteriores da Lista
Minha textura não aparece
Formação de equipa para o Jogo Until the last
[Alpha Android] - Night Hunter DevLog - Action RPG (25 de julho de 2017) Baixe!
Dúvida de Botões mobile, no c#???
[DEVLOG] Projeto - Girl Blade
[TUTORIAL] Unity 5 - Sistema Completo de PORTAS E CHAVES
Quanto custa $$$ ?
Resolução De Tela x 2D Mobile Game
Load e Save?
(DUVIDA)PlayerPrefs
[TUTORIAL] Android - Sistema de controle third person shooter, Joystick + Swipe camera
Visual Stuido Duvida SIMPLES !! ME AJUDEM !! HELP
Duvida com o visual studio
Tutorial de Fps Multiplayer
[____ASSET____] MS Vehicle System (FREE VERSION)
Eu não consigo abrir o monodevelop
Erro ao alterar variável em tempo de execução !???
Como posso fazer para que o braço do meu personagem siga a minha câmera?
Inimigo Em C# Seguir e Atacar o Player !
Editar um material individual.
[TUTORIAL] Unity 5 - Botão contínuo usando UI (Manter pressionado)
clicar com o botão direito do mouse em um BOTÃO
Como criar a mira de armas em personagens em terceira pessoa
Como usar o script da unity "MouseLook" em outros scripts ?
[TUTORIAL] Camera orbital com zoom (scroll)
[DUVIDA]Como usar o setActive no photon
Diminuir a velocidade do veiculo Ativa um setActive
[____ADMINISTRAÇÃO____] PRECISO DE AJUDA [DICA PARA SER AJUDADO]
Script para Câmera em primeira pessoa.
[TUTORIAL] Luz Principal,Luz de Freio,Piscas para Carro,Moto,Caminhão,Ônibus,Etc...
[____APOIE O FÓRUM E O CANAL E GANHE RECOMPENSAS____]
[_____CRONOGRAMA DO CANAL_____]
Pulo 2D
Rotação apontando para um Objeto.
Baixe grátis modelos 3D - Hospital + objetos e personagens equipados com ossos
Controlar luz de fundo no Android
[RESOLVIDO] Script para cubo aparecer
Criar SplashScreen entre duas cenas
Modelagem do braço personagem
Duvida com Animacoes
(Avaliem) Menu interativo simples
Gerador de mesh procedual
Opiniões para carregar prefabs pesados: Resources, Asset Bundles ou cenas?
Como coloco video do youtube
Audio Player C#
Algum tutorial sobre multiplayer simples é em portugues???
Meu jogo: Cuboid (v0.1.0)
VSync ??
Duvida com o Terrain da Unity5
Vagas para o Naufrágio, um jogo sobrevivência que estou desenvolvendo
Ajuda para desenvolvimentos dos jogos de vocês
Sistema de Trafego de Carros e Pedestres!
[RESOLVIDO] Braço esta desaparecendo alguem pode me dizer? vejam o video
inimigo atirar no player
Update desenvolvimento do meu jogo Epic Survival (Re Survival :D)
Como retornar "false" se um objeto não existir?
Opinião sobre modelo feito no Blender
Como faz a geração de terreno aleatório???
Bugs na textura
O que voces esperam em um jogo onde voce e um peixe???
[Equipe] Equipe para jogo tower defense low poly
COMO FAZER UM SISTEMA DE PARKOUR (SEM ANIMACAO) IDEIAS
Arrastar um botão ao manter o mouse pressionado
como reconhecer a ''face'' de uma mesh da agua
Oque acham dessa Meia Historia para meu jogo de sobrevivencia!
PESSOAL PRA VOCÊS OQUE TEM QUE TER EM UM JOGO DE SOBREVIVENCIA?
Duvidas sobre a criação de jogos para celular
Grupo de desenvolvimento no Discord
[RESOLVIDO] jogo buga a textura (manchas azuis e vermelhas)
ROTACIONAR NO ÂNGULO DO GAMEOBJECT
dúvida sobre resolução para mobile
[RESOLVIDO] CAMERA NÃO VISUALIZA LENS FLARE
Ajuda com scripts de inimigo e player'' interação de zumbi e player''
como abrir o app de email a partir de um jogo unity ?
[DÚVIDA] [2D] ALTERAR SPRITE SEM PRECISAR IMPORTAR DE NOVO
Bug Unity ?
Criar Cidade Para Game
[TUTORIAL] Suspensão de carro com SLIDER
Hoje à(s) 9:48 pm
Hoje à(s) 9:36 pm
Hoje à(s) 9:35 pm
Hoje à(s) 9:33 pm
Hoje à(s) 7:21 pm
Hoje à(s) 7:02 pm
Hoje à(s) 6:40 pm
Hoje à(s) 5:10 pm
Hoje à(s) 5:06 pm
Hoje à(s) 5:03 pm
Hoje à(s) 4:04 pm
Hoje à(s) 3:54 pm
Hoje à(s) 3:11 pm
Hoje à(s) 1:33 pm
Hoje à(s) 11:46 am
Hoje à(s) 10:26 am
Hoje à(s) 9:56 am
Hoje à(s) 8:59 am
Ontem à(s) 11:41 pm
Ontem à(s) 11:24 pm
Ontem à(s) 11:16 pm
Ontem à(s) 10:37 pm
Ontem à(s) 9:52 pm
Ontem à(s) 9:42 pm
Ontem à(s) 8:52 pm
Ontem à(s) 8:19 pm
Ontem à(s) 7:59 pm
Ontem à(s) 6:58 pm
Ontem à(s) 6:50 pm
Ontem à(s) 6:45 pm
Ontem à(s) 6:35 pm
Ontem à(s) 5:29 pm
Ontem à(s) 5:20 pm
Ontem à(s) 5:17 pm
Ontem à(s) 4:12 pm
Ontem à(s) 4:03 pm
Ontem à(s) 3:47 pm
Ontem à(s) 3:43 pm
Ontem à(s) 3:29 pm
Ontem à(s) 3:26 pm
Ontem à(s) 3:22 pm
Ontem à(s) 3:20 pm
Ontem à(s) 3:19 pm
Ontem à(s) 3:17 pm
Ontem à(s) 3:13 pm
Ontem à(s) 3:12 pm
Ontem à(s) 3:08 pm
Ontem à(s) 3:05 pm
Ontem à(s) 2:41 pm
Ontem à(s) 2:28 pm
Ontem à(s) 2:27 pm
Ontem à(s) 2:22 pm
Ontem à(s) 1:55 pm
Ontem à(s) 1:54 pm
Ontem à(s) 1:50 pm
Ontem à(s) 12:35 pm
Ontem à(s) 11:43 am
Ontem à(s) 9:42 am
Ontem à(s) 9:22 am
Ontem à(s) 8:05 am
Ontem à(s) 1:58 am
Ter Jul 25, 2017 9:37 pm
Ter Jul 25, 2017 3:58 pm
Ter Jul 25, 2017 9:26 am
Ter Jul 25, 2017 6:38 am
Ter Jul 25, 2017 2:42 am
Ter Jul 25, 2017 2:19 am
Seg Jul 24, 2017 11:25 pm
Seg Jul 24, 2017 10:51 pm
Seg Jul 24, 2017 9:53 pm
Seg Jul 24, 2017 9:00 pm
Seg Jul 24, 2017 8:54 pm
Seg Jul 24, 2017 8:11 pm
Seg Jul 24, 2017 5:04 pm
Seg Jul 24, 2017 2:20 pm
Seg Jul 24, 2017 2:09 pm
Seg Jul 24, 2017 12:54 pm
Seg Jul 24, 2017 9:18 am
Dom Jul 23, 2017 10:16 pm
Dom Jul 23, 2017 7:53 pm
Dom Jul 23, 2017 5:36 pm
Dom Jul 23, 2017 5:34 pm
Dom Jul 23, 2017 4:14 pm
Dom Jul 23, 2017 2:52 pm
Dom Jul 23, 2017 10:51 am
Dom Jul 23, 2017 5:35 am
Dom Jul 23, 2017 5:32 am
Dom Jul 23, 2017 5:30 am
Dom Jul 23, 2017 1:56 am
Sab Jul 22, 2017 9:42 pm
Sab Jul 22, 2017 8:31 pm
Sab Jul 22, 2017 7:30 pm
Sab Jul 22, 2017 7:19 pm
Sab Jul 22, 2017 4:05 pm
Sab Jul 22, 2017 3:04 pm
Sab Jul 22, 2017 2:35 pm
Sab Jul 22, 2017 10:49 am
Sab Jul 22, 2017 9:53 am
Sab Jul 22, 2017 6:19 am
Duarte
Nyland
Diego Felix
Duarte
Callyde Jr
wandelguina
MonsaM
tom ramber
Zecandy
thiagograssi
NyanHeavyBR
EDTV
giocanhestro98
ManoTrevor
IanLuan
Mateus2583
Gilliard
roger224
Duarte
mathalx
Duarte
Psyvamp
xXGianlucksXx
IanLuan
thiagograssi
dstaroski
nilsonnolasco
mathalx
mathalx
Callyde Jr
Zecandy
thiagograssi
ManoTrevor
ManoTrevor
Rodz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
joabr
MarcosSchultz
MarcosSchultz
dstaroski
MarcosSchultz
MarcosSchultz
MarcosSchultz
joabr
dstaroski
glauco
edfisicaweb
dstaroski
rafaelllsd
zMicael
Huser
marcos4503
Madness
thiagograssi
fecirineu
cody0033
Extreme Craft
marcos4503
Onagro
arthearthutr
Duarte
glauco
deikson
zMicael
Joaopm1
dstaroski
Madness
Yagogomes
IanLuan
IanLuan
rafaelllsd
ManoTrevor
thzin
vermelhinho
vermelhinho
vermelhinho
dimmuo
Extreme Craft
marcos4503
marcos4503
Diego Felix
Robinsandi
marcos4503
IanLuan
sidney1234
Duarte
Gabriel César O

IA para jogo 2d

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Resolvido IA para jogo 2d

Mensagem por joaogabrielfer em Qua Set 07, 2016 10:48 pm

Bom, estava procurando uma IA para o meu jogo, que é top down, mas não encontrei nada, apenas para jogos plataforma. Pelo que vi, para fazer uma ia simples para jogos 3d se usa o pathfinding, mas não encontrei nada sobre pathfinding 2d. Alguem sabe como fazer uma ia para jogos top down 2d?
avatar
joaogabrielfer
Membro
Membro

Masculino PONTOS : 424
REPUTAÇÃO : 1
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por MarcosSchultz em Qui Set 08, 2016 11:12 pm

Cara, é que existe um problema bem grande neste sentido... a NavMesh da Unity é feita apenas para terrenos em 3D, mas não tem nada para 2D, sendo necessário que você crie o seu próprio pathfinding.

Mas este bixo é um algoritmo extremamente complexo e chato de se fazer, então, você pode procurar algumas fugas, como por exemplo, AIPoints... dê uma olhada:

http://www.schultzgames.com/t101-tutorial-inteligencia-artificial-inimigo-e-aipoints
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9338
REPUTAÇÃO : 1570
Idade : 20
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por joaogabrielfer em Qui Set 08, 2016 11:49 pm

Hm, pelo que parece, usando ai points o inimigo não consegue seguir o player corretamente, fica batendo nas paredes, problema.
avatar
joaogabrielfer
Membro
Membro

Masculino PONTOS : 424
REPUTAÇÃO : 1
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por MarcosSchultz em Qui Set 08, 2016 11:52 pm

Para resolver isto, só utilizando NavMesh em 3D e usar uma camera ortográfica para ver o jogo de cima, ou fazer o próprio pathfinding
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9338
REPUTAÇÃO : 1570
Idade : 20
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por joaogabrielfer em Sex Set 09, 2016 12:51 am

Sim, vou fazer o teste, so mais uma coisa, tem coisa usar o NavMesh num objeto 3d sem o mesh renderer? Por que ai eu colocava um quad sem o mesh renderer na fase e nos sprites um collider 3d.

EDIT : Fui testar o navmesh mas a unity não esta fazendo o bake. Eu seleciono todos os objetos(são todos cubos, apenas testando), depois vou em navigation e clico em bake mas nada acontece.
avatar
joaogabrielfer
Membro
Membro

Masculino PONTOS : 424
REPUTAÇÃO : 1
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por MarcosSchultz em Dom Set 11, 2016 11:07 pm

joaogabrielfer escreveu:Sim, vou fazer o teste, so mais uma coisa, tem coisa usar o NavMesh num objeto 3d sem o mesh renderer? Por que ai eu colocava um quad sem o mesh renderer na fase e nos sprites um collider 3d.

EDIT : Fui testar o navmesh mas a unity não esta fazendo o bake. Eu seleciono todos os objetos(são todos cubos, apenas testando), depois vou em navigation e clico em bake mas nada acontece.

quando você criou o seu projeto, você criou para a plataforma 2D? talvez possa ser isto. tente em um projeto 3D
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9338
REPUTAÇÃO : 1570
Idade : 20
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por Manawydan em Seg Set 12, 2016 9:59 am

Existem algumas soluções para Ai 2D e talz, um deles é o A*.
Voce pode usar a versao Free dele e tentar criar uma Ai, pq ela usa Waypoints para encontrar o melhor caminho:
http://arongranberg.com/astar/download
avatar
Manawydan
Moderador

PONTOS : 932
REPUTAÇÃO : 168
Idade : 20
Respeito as regras :

Ver perfil do usuário https://wad.ojooo.com/register.php?ref=ManawydanBr

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por joaogabrielfer em Qua Set 14, 2016 5:25 pm

Como faço então para que simplesmente o inimigo siga o player num campo aberto? Acho que assim da pra fazer não é?
avatar
joaogabrielfer
Membro
Membro

Masculino PONTOS : 424
REPUTAÇÃO : 1
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por joaogabrielfer em Qui Set 15, 2016 5:31 pm

Up.
avatar
joaogabrielfer
Membro
Membro

Masculino PONTOS : 424
REPUTAÇÃO : 1
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por Manawydan em Qui Set 15, 2016 5:43 pm

se o movimento for apenas pra cima/baixo e esquerda/direita voce pode fazer verificacoes e move-lo com velocity do rigidbody2D.
Se posicão do jogador for maior que do inimigo(esquerda/direita) entao inimigo vai pra direita, caso contrario vai pra esquerda
E o mesmo para cima/baixo, e com base nessas verificacoes voce faz o vector de movimento do velocity.
avatar
Manawydan
Moderador

PONTOS : 932
REPUTAÇÃO : 168
Idade : 20
Respeito as regras :

Ver perfil do usuário https://wad.ojooo.com/register.php?ref=ManawydanBr

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por joaogabrielfer em Qui Set 15, 2016 6:01 pm

Então, eu entendi, só não sei transcrever isso em forma de script.


 




E o jogo não é exatamente um top down,
ele é assim, os personagens são desenhados como se fossem de plataforma 2d.
avatar
joaogabrielfer
Membro
Membro

Masculino PONTOS : 424
REPUTAÇÃO : 1
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por Manawydan em Qui Set 15, 2016 6:55 pm

Um exemplo simples do que disse:

Script do inimigo:
Código:
using UnityEngine;
using System.Collections;

[RequireComponent(typeof(Rigidbody2D))]
public class Enemy2D : MonoBehaviour {
   private Rigidbody2D rb;
   public float speed = 2f;
   public Transform player;

   void Awake(){
      rb = GetComponent<Rigidbody2D> ();
   }

   void Update(){
      float right;

      if (player.position.x > transform.position.x)
         right = 1f;
      else
         right = -1;

      rb.velocity = new Vector2 (right,0)*speed*Time.deltaTime;

   }
}
Mas esse é um exemplo bem basico, o A star(o link que te passei) ja tem todo um sistema de pathfind feito, voce so precisa configurar a cena e adicionar o script de Seek para seu inimigo e talz.
avatar
Manawydan
Moderador

PONTOS : 932
REPUTAÇÃO : 168
Idade : 20
Respeito as regras :

Ver perfil do usuário https://wad.ojooo.com/register.php?ref=ManawydanBr

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por joaogabrielfer em Qui Set 15, 2016 8:31 pm

O script não funcionou, o inimigo se afasta do player caso o player se mova.
Cara o que eu queria era que simplesmente o inimigo seguisse o player normalmente pelo campo, so que se o player se posicionar a sua esquerda ele rotaciona para esquerda, se o player for para a direita, o inimigo rotaciona para a direita.
avatar
joaogabrielfer
Membro
Membro

Masculino PONTOS : 424
REPUTAÇÃO : 1
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por Manawydan em Qui Set 15, 2016 8:42 pm

Nesse exemplo que te passei o inimigo so vai seguir o player em x, e voce tem que deixar a gravidade do Rigidbody2D do inimigo em 0 senao ele vai cair. Testei aki e funfo. Vc linkou o player na variavel player?
Com base no valor de right voce pode usar um Flip do spriteRenderer do inimigo pra fazer ele virar pro lado certo, ou inverter a escala em x do mesmo.
avatar
Manawydan
Moderador

PONTOS : 932
REPUTAÇÃO : 168
Idade : 20
Respeito as regras :

Ver perfil do usuário https://wad.ojooo.com/register.php?ref=ManawydanBr

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por joaogabrielfer em Qui Set 15, 2016 8:50 pm

No caso o que eu queria era que o inimigo seguisse o player em x e y. Vou te mostrar um exemplo de um jogo.


e uma imagem



No caso do meu jogo, é igual ao jogo do video, o player e o inimigo se movem livremente pelo cenario.
avatar
joaogabrielfer
Membro
Membro

Masculino PONTOS : 424
REPUTAÇÃO : 1
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por Manawydan em Qui Set 15, 2016 8:52 pm

Então para um pathfind 2D adequado eu usaria o A star, se voce quiser tem um video de um gringo mostrando como usar o A star, pq faze um pathfind bem feito do zero é meio xatinho:
https://www.youtube.com/watch?v=4T7KHysRw84
avatar
Manawydan
Moderador

PONTOS : 932
REPUTAÇÃO : 168
Idade : 20
Respeito as regras :

Ver perfil do usuário https://wad.ojooo.com/register.php?ref=ManawydanBr

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por Manawydan em Qui Set 15, 2016 9:25 pm

Se for fazer algo muito simples poderia fazer isso, igual o codigo antigo so que agora ele sobe e desce e tambem vira pros lados, certifique de colocar seu inimigo olhado pra direita:
Código:
using UnityEngine;
using System.Collections;

[RequireComponent(typeof(Rigidbody2D))]
public class Enemy2D : MonoBehaviour {
   private Rigidbody2D rb;
   public float speed = 2f;
   public Transform player;
   bool isFaceRight = true;
   SpriteRenderer sr;

   void Awake(){
      rb = GetComponent<Rigidbody2D> ();
      sr = GetComponent<SpriteRenderer> ();
   }

   void Update(){
      float right;
      float up;

      if (player.position.x > transform.position.x)
         right = 1f;
      else
         right = -1;
      if (player.position.y > transform.position.y)
         up = 1f;
      else
         up = -1;

      rb.velocity = new Vector2 (right,up)*speed*Time.deltaTime;

      if(isFaceRight && right == -1f || !isFaceRight && right == 1f)
         Flip ();


   }

   void Flip(){
      sr.flipX = !sr.flipX;
      isFaceRight = !isFaceRight;
   }
}
avatar
Manawydan
Moderador

PONTOS : 932
REPUTAÇÃO : 168
Idade : 20
Respeito as regras :

Ver perfil do usuário https://wad.ojooo.com/register.php?ref=ManawydanBr

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por joaogabrielfer em Qui Set 15, 2016 9:46 pm

Isso, é bem isso, o unico problema agora é que se o inimigo ficar exatamente em cima ou em baixo do player ele buga e fica esquerda,direita,esquerda,direita...
avatar
joaogabrielfer
Membro
Membro

Masculino PONTOS : 424
REPUTAÇÃO : 1
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por Manawydan em Qui Set 15, 2016 10:28 pm

voce pode usar um Vector2.Distance para checar a distancia do inimigo e do player e pode fazer com que o inimigo pare de seguir e ataque se estiver muito perto.
avatar
Manawydan
Moderador

PONTOS : 932
REPUTAÇÃO : 168
Idade : 20
Respeito as regras :

Ver perfil do usuário https://wad.ojooo.com/register.php?ref=ManawydanBr

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por joaogabrielfer em Qui Set 15, 2016 10:56 pm

Não, o inimigo buga quando ele fica na alinhado em cima ou em baixo com o player, ai ele não sabe se rotaciona pra esquerda ou direita.
avatar
joaogabrielfer
Membro
Membro

Masculino PONTOS : 424
REPUTAÇÃO : 1
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por George Lucas Vieira em Sex Set 16, 2016 6:05 pm

Mude esta linha do código:
Código:
if (player.position.x > transform.position.x)
   right = 1f;
else
   right = -1;

if (player.position.y > transform.position.y)
   up = 1f;
else
   up = -1;



Para esta:
Código:
if (player.position.x >= transform.position.x)
   right = 1f;
else
   right = -1;

if (player.position.y >= transform.position.y)
   up = 1f;
else
   up = -1;
avatar
George Lucas Vieira
Moderador

Masculino PONTOS : 734
REPUTAÇÃO : 125
Idade : 14
Áreas de atuação : Programação, Modelagem e Animação.
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por joaogabrielfer em Sex Set 16, 2016 11:43 pm

Problema persiste.
avatar
joaogabrielfer
Membro
Membro

Masculino PONTOS : 424
REPUTAÇÃO : 1
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por MarcosSchultz em Sab Set 17, 2016 12:59 am

Por que não usa a sugestão do Manawydan?


Usa um Vector2.Distance para fazer o inimigo parar de seguir quando chegar muito perto.
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9338
REPUTAÇÃO : 1570
Idade : 20
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por joaogabrielfer em Sab Set 17, 2016 3:59 am

Acho que vocês não entenderam, o problema não é quando o inimigo encosta no player, e sim quando ele fica alinhado com o player, fica exatamente na mesma linha, seja em cima ou embaixo, ai o inimigo não sabe se vira pra esquerda ou pra direita, ai ele fica virando pros dois lados ao mesmo tempo.

avatar
joaogabrielfer
Membro
Membro

Masculino PONTOS : 424
REPUTAÇÃO : 1
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por joaogabrielfer em Dom Set 18, 2016 10:53 am

Talvez se colocar um collider gigante em um dos lados do player, direito por exemplo, ai o inimigo so vai rotacionar se ele entrar no collider. Ai deixa o collider um pouco mais para o lado. Acho que da para tentar isso ja que não apareceram soluções para o meu problema acima.
avatar
joaogabrielfer
Membro
Membro

Masculino PONTOS : 424
REPUTAÇÃO : 1
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por George Lucas Vieira em Dom Set 18, 2016 11:47 am

Poderia colocar o script do seu player completo aqui man? Preciso analisar melhor isso ai
avatar
George Lucas Vieira
Moderador

Masculino PONTOS : 734
REPUTAÇÃO : 125
Idade : 14
Áreas de atuação : Programação, Modelagem e Animação.
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por joaogabrielfer em Dom Set 18, 2016 12:15 pm

Coloquei um box collider 2d com o Is Trigger marcado ao lado do player, agora a parte do script eu não sei como fazer.

Coloquei o collider com a tag "Respawn" e fiz isso dai, acho que esta certo, mas como termino?
Código:
void OnTriggerEnter2D (Collider2D colisor)
 {
 if (colisor.gameObject.tag == "Respawn") {

 }


 }
Quais linhas do script do Manawydan eu preciso colocar dentro do if?
avatar
joaogabrielfer
Membro
Membro

Masculino PONTOS : 424
REPUTAÇÃO : 1
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por George Lucas Vieira em Dom Set 18, 2016 1:33 pm

Cara, por tópico é bem chato responder isso. Faz o seguinte: upa teu projeto pra um site e me passa o link (pode ser por privado) que vou tentar resolver seu problema diretamente no game. Depois lhe devolvo o projeto já corrigido e com explicações em .txt
avatar
George Lucas Vieira
Moderador

Masculino PONTOS : 734
REPUTAÇÃO : 125
Idade : 14
Áreas de atuação : Programação, Modelagem e Animação.
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por Manawydan em Dom Set 18, 2016 1:48 pm

Então cara se ainda continuar com a ideia que eu disse(sobre distancias) voce pode verificar se ele esta muito perto em X para que ele para de ficar indo pra esquerda,direita.
Código:
using UnityEngine;
using System.Collections;

[RequireComponent(typeof(Rigidbody2D))]
public class Enemy2D : MonoBehaviour {
   private Rigidbody2D rb;
   public float speed = 2f;
   public Transform player;
   bool isFaceRight = true;
   SpriteRenderer sr;
   public float minDistanceXToTurn = 0.5f;
   public float minDistanceYToTurn = 0.5f;
   public float distanceToStop = 1.5f;

   void Awake(){
      rb = GetComponent<Rigidbody2D> ();
      sr = GetComponent<SpriteRenderer> ();
   }

   void Update(){
      float right = 0;
      float up = 0;
      float distanceX = Vector2.Distance (new Vector2(player.transform.position.x,0),new Vector2(transform.position.x,0));
      float distanceY = Vector2.Distance (new Vector2(0,player.transform.position.y),new Vector2(0,transform.position.y));
      float distanceXY = distanceX + distanceY;

      if (distanceXY <= distanceToStop) {
         // FAZER ALGO QUANDO ESTIVER PERTO
         rb.velocity = Vector2.zero;
      }
      else
      {

         if (distanceX > minDistanceXToTurn) {
            if (player.position.x > transform.position.x)
               right = 1f;
            else
               right = -1;
         
            if (isFaceRight && right == -1f || !isFaceRight && right == 1f)
               Flip ();
         }

         if (distanceY > minDistanceYToTurn) {
            if (player.position.y > transform.position.y)
               up = 1f;
            else
               up = -1;
         }
         
         rb.velocity = new Vector2 (right, up) * speed * Time.deltaTime;
      }
   }

   void Flip(){
      sr.flipX = !sr.flipX;
      isFaceRight = !isFaceRight;
   }
}
avatar
Manawydan
Moderador

PONTOS : 932
REPUTAÇÃO : 168
Idade : 20
Respeito as regras :

Ver perfil do usuário https://wad.ojooo.com/register.php?ref=ManawydanBr

Voltar ao Topo Ir em baixo

Resolvido Re: IA para jogo 2d

Mensagem por joaogabrielfer em Dom Set 18, 2016 2:59 pm

Aaaaah agora entendi o que você falou sobre distancia, eu tinha entendido algo bem diferente, é isso mesmo, obrigado.  Valeu por responderem.
avatar
joaogabrielfer
Membro
Membro

Masculino PONTOS : 424
REPUTAÇÃO : 1
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum