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:
Baixe grátis modelos 3D! Hospital animado + 2 personagens animados com ossos!
[ENQUETE] Modelo com normal map e diferença - Aula de Bake
Perde vida e CheckPoint?
Script para cubo aparecer
[Alpha Android] - Night Hunter DevLog - Action RPG (25 de julho de 2017) Baixe!
Como posso fazer para que o braço do meu personagem siga a minha câmera?
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
Opiniões para carregar prefabs pesados: Resources, Asset Bundles ou cenas?
Inimigo Em C# Seguir e Atacar o Player !
Como coloco video do youtube
Audio Player C#
Algum tutorial sobre multiplayer simples é em portugues???
Meu jogo: Cuboid (v0.1.0)
Instanciar Objeto em Distancia Certa!
VSync ??
Quanto custa $$$ ?
[dúvida] Editar um material individual.
Duvida com o Terrain da Unity5
[TUTORIAL] Unity 5 - Botão contínuo usando UI (Manter pressionado)
clicar com o botão direito do mouse em um BOTÃO
Vagas para o Naufrágio, um jogo sobrevivência que estou desenvolvendo
Ajuda para desenvolvimentos dos jogos de vocês
Como criar a mira de armas em personagens em terceira pessoa
Sistema de Trafego de Carros e Pedestres!
[RESOLVIDO] Braço esta desaparecendo alguem pode me dizer? vejam o video
[TUTORIAL] Barra de VIDA / HP contínua
inimigo atirar no player
Update desenvolvimento do meu jogo Epic Survival (Re Survival :D)
Como retornar "false" se um objeto não existir?
Como usar o script da unity "MouseLook" em outros scripts ?
Opinião sobre modelo feito no Blender
Como faz a geração de terreno aleatório???
[TUTORIAL] Camera orbital com zoom (scroll)
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
[DUVIDA]Como usar o setActive no photon
como reconhecer a ''face'' de uma mesh da agua
Diminuir a velocidade do veiculo Ativa um setActive
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
Ajuda em Script de colisao na unity
Dúvida de Botões mobile, no c#???
[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
Script para Câmera em primeira pessoa.
[TUTORIAL] Luz Principal,Luz de Freio,Piscas para Carro,Moto,Caminhão,Ônibus,Etc...
Bug Unity ?
Criar Cidade Para Game
(DUVIDA)PlayerPrefs
[TUTORIAL] Suspensão de carro com SLIDER
[TUTORIAL] Script de arma automatica
[_____CRONOGRAMA DO CANAL_____]
Pulo 2D
Procurar um Índice em uma lista
Alguem me recomenda uma versao estavel e atualizada da unity :C
[dúvida] Comando tranform.rotatante.x não funcionando direito.
[tutorial]Teleporte com tempo.
Laser 2D
Procuro equipe para criar jogo multiplayer online de sobrevivência.
[TUTORIAL] Unity 5 - Sistema Completo de PORTAS E CHAVES
Script não detecta certos comandos como "Input" e "GetKeyDown"
Duvida com Transform.position
Rotação apontando para um Objeto.
MS Vehicles Free em vídeo de melhores assets
Marcos Elias Proton Bus Simulator AJUDA COM SISTEMA DE MAPA CONTÍNUO
Desativar Terrain
Sistema de corrida
[____APOIE O FÓRUM E O CANAL E GANHE RECOMPENSAS____]
Como resolver
[TUTORIAL] Inteligência artificial, inimigo e AIPoints
Dúvidas Script
problemas com rb.velocity e gravidade
[TUTORIAL] Script de pulo para jogos 3D em geral (Unity - C#)
3D, Player gruda na parede
Como puxar várias animações ao mesmo tempo
[TUTORIAL] Camera orbital para android (TOUCH)
[DÚVIDA] SITE DE MODELOS 3D PARA USO GRATUITO
[TUTORIAL] C# .NET | Visual Studio - conexão com banco de dados MySQL
COMO FAZER UM SISTEMA DE VIAGEM IGUAL (No Man's Sky)
Gerador de mesh procedual
Nova atualização do meu rpg De açao Opinioes
[TUTORIAL] Sistema de escolha de personagens
[TUTORIAL] C# .NET | Launcher simples que acessa um site.
[TUTORIAL] - Como fazer download da OBB do jogo, in-game! (Android)
Variavel UI
Apk Google Play
[DICA] - Traduzir o assistente de downloads do "Google Play OBB Downloader"
Duvidas sobre programação em C#
Problema ao renderizar dois lado de uma malha (blender)
Hoje à(s) 1:55 pm
Hoje à(s) 1:48 pm
Hoje à(s) 1:12 pm
Hoje à(s) 12:34 pm
Hoje à(s) 11:59 am
Hoje à(s) 10:51 am
Hoje à(s) 10:12 am
Hoje à(s) 9:26 am
Hoje à(s) 8:27 am
Hoje à(s) 6:38 am
Hoje à(s) 2:42 am
Hoje à(s) 2:19 am
Ontem à(s) 11:25 pm
Ontem à(s) 11:00 pm
Ontem à(s) 10:51 pm
Ontem à(s) 10:49 pm
Ontem à(s) 10:04 pm
Ontem à(s) 9:53 pm
Ontem à(s) 9:28 pm
Ontem à(s) 9:09 pm
Ontem à(s) 9:00 pm
Ontem à(s) 8:54 pm
Ontem à(s) 8:12 pm
Ontem à(s) 8:11 pm
Ontem à(s) 5:04 pm
Ontem à(s) 4:50 pm
Ontem à(s) 2:20 pm
Ontem à(s) 2:09 pm
Ontem à(s) 12:54 pm
Ontem à(s) 11:15 am
Ontem à(s) 9:18 am
Dom Jul 23, 2017 10:16 pm
Dom Jul 23, 2017 9:02 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 12:00 pm
Dom Jul 23, 2017 10:51 am
Dom Jul 23, 2017 10:42 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 11:48 pm
Sab Jul 22, 2017 11:30 pm
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 12:54 pm
Sab Jul 22, 2017 11:10 am
Sab Jul 22, 2017 10:49 am
Sab Jul 22, 2017 9:53 am
Sab Jul 22, 2017 8:48 am
Sab Jul 22, 2017 6:19 am
Sab Jul 22, 2017 6:17 am
Sab Jul 22, 2017 3:51 am
Sab Jul 22, 2017 1:45 am
Sex Jul 21, 2017 11:57 pm
Sex Jul 21, 2017 11:33 pm
Sex Jul 21, 2017 10:37 pm
Sex Jul 21, 2017 10:33 pm
Sex Jul 21, 2017 10:24 pm
Sex Jul 21, 2017 9:29 pm
Sex Jul 21, 2017 9:27 pm
Sex Jul 21, 2017 9:25 pm
Sex Jul 21, 2017 9:17 pm
Sex Jul 21, 2017 9:15 pm
Sex Jul 21, 2017 9:08 pm
Sex Jul 21, 2017 9:07 pm
Sex Jul 21, 2017 9:00 pm
Sex Jul 21, 2017 8:57 pm
Sex Jul 21, 2017 8:52 pm
Sex Jul 21, 2017 8:49 pm
Sex Jul 21, 2017 8:47 pm
Sex Jul 21, 2017 8:38 pm
Sex Jul 21, 2017 8:29 pm
Sex Jul 21, 2017 8:24 pm
Sex Jul 21, 2017 8:23 pm
Sex Jul 21, 2017 8:03 pm
Sex Jul 21, 2017 7:19 pm
Sex Jul 21, 2017 7:05 pm
Sex Jul 21, 2017 5:42 pm
Sex Jul 21, 2017 3:56 pm
Sex Jul 21, 2017 10:25 am
Sex Jul 21, 2017 7:35 am
Qui Jul 20, 2017 11:48 pm
Qui Jul 20, 2017 7:32 pm
Qui Jul 20, 2017 7:26 pm
Qui Jul 20, 2017 6:36 pm
Qui Jul 20, 2017 4:45 pm
Qui Jul 20, 2017 4:43 pm
Qui Jul 20, 2017 4:36 pm
Qui Jul 20, 2017 4:26 pm
joabr
Yagogomes
Callyde Jr
Madness
marcos4503
GamersBR
glauco
marcos4503
Lyexe
Madness
thiagograssi
fecirineu
cody0033
Duarte
Extreme Craft
julioou
Extreme Craft
marcos4503
Madness
Joaopm1
Onagro
arthearthutr
Willian Wii
Duarte
glauco
misael pinheiro
deikson
zMicael
Joaopm1
Gaimo
dstaroski
Madness
Gregory2017
Yagogomes
IanLuan
IanLuan
rafaelllsd
ManoTrevor
fecirineu
thzin
thzin
vermelhinho
vermelhinho
vermelhinho
dimmuo
Weverton Borges da Silva
hamerom
Extreme Craft
marcos4503
marcos4503
Diego Felix
Robinsandi
marcos4503
IanLuan
Gaimo
bitgames
sidney1234
Duarte
Zecandy
Gabriel César O
Gabriel César O
Joaopm1
roger224
Joaopm1
marcos4503
arthearthutr
arthearthutr
roger224
Gaimo
MarcosSchultz
xXGianlucksXx
MarcosSchultz
Annko
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
thzin
Gabriel César O
Gabriel César O
weslleyFx
ManoTrevor
Madness
dstaroski
PauloFR
Mateus2583
ubroly
marcos4503
marcos4503
marcos4503
poyser
hetrodo_gamer

[TUTORIAL] IA Simples

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

TUTORIAL [TUTORIAL] IA Simples

Mensagem por Matrirxp em Qua Mar 22, 2017 12:17 am

Eae galera.
Resolvi fazer um tutorial bem simples e rápido aqui para vocês.
Como ja esta no titulo vou ensinar a fazer uma ia simples de um inimigo. 
Então Vamos la:

Primeira passo:
Vamos criar um terreno,depois coloque um FirstPersonalControler (Nosso Player) e crie um inimigo no meu caso o inimigo vai ser um cubo.


Segundo passo:
Crie uma script C#, essa é a script do inimigo IA.

Vamos criar 3 variáveis 

Código:
using UnityEngine;
using System.Collections;

public class Inimigo : MonoBehaviour {

public float vida;//Vida do inimigo
public  float dano;//Dano do inimigo
public  float velo;//Velocidade do inimigo


 // Use this for initialization
 void Start () {
 
 }
 
 // Update is called once per frame
 void Update () {
 
 }
}


Primeira coisa a fazer e setar um alvo para o inimigo e fazer ele mirar na direção dele;
Vamos usar um Quaternion para isso:

Crie uma variável tipo Transform com o nome alvo e uma tipo Quaternion:

Código:
public Transform alvo;//Mira
Quaternion alvoroteition;
agora no nosso Void update coloque:

Código:
void Update () {

alvoroteition = Quaternion.LookRotation(alvo.position - transform.position, Vector3.up);

transform.rotation = Quaternion.Slerp(transform.rotation, alvoroteition , Time.deltaTime * 4);
  
}

Isso vai fazer nosso inimigo mirar no nosso player, mas ficaria melhor se agente limita-se o campo de visão dele, vamos fazer assim:

Crie uma variável: float campo;   

Código:
void Update () {

campo = Vector3.Distance (transform.position, alvo.transform.position);

//O inimigo vai atras do player se a distancia entre eles for menor que 10 e maior que 2
if(campo > 2 & campo < 10){

alvoroteition = Quaternion.LookRotation(alvo.position - transform.position, Vector3.up);
transform.rotation = Quaternion.Slerp(transform.rotation, alvoroteition , Time.deltaTime * 4);

    }  

}


Proto agora nosso inimigo só vai mirar no player se a distancia entre eles for menor que 10.

Terceiro passo:
Seguir o player.
vamos usar um AddRelativeForce, assim:

Crie uma variável: Rigidbody rb;

No Void Start vamos pegar o componente Rigidbody:

Código:
Rigidbody rb;

void Start(){
rb = GetComponent<Rigidbody> ();
}

Dentro do nosso Void Update:


Código:
void Update () {

 campo = Vector3.Distance (transform.position, alvo.transform.position);

 //O inimigo vai atras do player se a distancia entre eles for menor que 10 e maior que 2
 if(campo > 2 & campo < 10){
 alvoroteition = Quaternion.LookRotation(alvo.position - transform.position, Vector3.up);
 transform.rotation = Quaternion.Slerp(transform.rotation, alvoroteition , Time.deltaTime * 4);

 //isso vai fazer ele seguir o player
 rb.AddRelativeForce(Vector3.forward * velo);

 }  

 }
 
Script inteira:

Código:
using UnityEngine;
using System.Collections;

public class Inimigo : MonoBehaviour {

   public float vida;//Vida do inimigo
   public float dano;//Dano do inimigo
   public float velo;//Velocidade do inimigo
   public Transform alvo;
   Rigidbody rb;
   Quaternion alvoroteition;
   float campo;

   // Use this for initialization
   void Start () {
      rb = GetComponent<Rigidbody> ();
   }
   
   // Update is called once per frame
   void Update () {

      campo = Vector3.Distance (transform.position, alvo.transform.position);

      //O inimigo vai atras do player se a distancia entre eles for menor que 10 e maior que 2
      if(campo > 2 & campo < 10){
         alvoroteition = Quaternion.LookRotation(alvo.position - transform.position, Vector3.up);
         transform.rotation = Quaternion.Slerp(transform.rotation, alvoroteition , Time.deltaTime * 4);

         //isso vai fazer ele seguir o player
         rb.AddRelativeForce(Vector3.forward * velo);

      }  

   }


}



Nossa IA ja pode mirar e seguir o player mas na segunda parte desse tutorial vamos fazer ela atirar também.
É isso galera espero que tenham gostado.

Referencias:


https://docs.unity3d.com/ScriptReference/Rigidbody.AddRelativeForce.html
https://docs.unity3d.com/ScriptReference/Rigidbody.html
https://docs.unity3d.com/ScriptReference/Quaternion.html
https://docs.unity3d.com/ScriptReference/Vector3.html
https://docs.unity3d.com/ScriptReference/Transform.html
avatar
Matrirxp
Programador

Masculino PONTOS : 582
REPUTAÇÃO : 58
Idade : 15
Áreas de atuação : Unity: Programação JavaScript e C#.
Programação: Python, C++, Java, HTML .

Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] IA Simples

Mensagem por Zecandy em Qua Mar 22, 2017 1:50 pm

Parabéns cara, pelo tutorial e pela iniciativa me ajudou aqui abss.
avatar
Zecandy
MembroAvançado

Masculino PONTOS : 437
REPUTAÇÃO : 51
Idade : 35
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] IA Simples

Mensagem por zZAndersonZz em Qua Mar 22, 2017 3:53 pm

Muito bem explicado, dá pra entender bem o que cada linha faz. Vou acompanhar e ver como usar no meu no meu jogo.
avatar
zZAndersonZz
Avançado
Avançado

Masculino PONTOS : 417
REPUTAÇÃO : 87
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] IA Simples

Mensagem por Gabriel César O em Qua Mar 22, 2017 7:47 pm

Matrirxp escreveu:Eae galera.
Resolvi fazer um tutorial bem simples e rápido aqui para vocês.
Como ja esta no titulo vou ensinar a fazer uma ia simples de um inimigo. 
Então Vamos la:

Primeira passo:
Vamos criar um terreno,depois coloque um FirstPersonalControler (Nosso Player) e crie um inimigo no meu caso o inimigo vai ser um cubo.


Segundo passo:
Crie uma script C#, essa é a script do inimigo IA.

Vamos criar 3 variáveis 

Código:
using UnityEngine;
using System.Collections;

public class Inimigo : MonoBehaviour {

public float vida;//Vida do inimigo
public  float dano;//Dano do inimigo
public  float velo;//Velocidade do inimigo


 // Use this for initialization
 void Start () {
 
 }
 
 // Update is called once per frame
 void Update () {
 
 }
}


Primeira coisa a fazer e setar um alvo para o inimigo e fazer ele mirar na direção dele;
Vamos usar um Quaternion para isso:

Crie uma variável tipo Transform com o nome alvo e uma tipo Quaternion:

Código:
public Transform alvo;//Mira
Quaternion alvoroteition;
agora no nosso Void update coloque:

Código:
void Update () {

alvoroteition = Quaternion.LookRotation(alvo.position - transform.position, Vector3.up);

transform.rotation = Quaternion.Slerp(transform.rotation, alvoroteition , Time.deltaTime * 4);
  
}

Isso vai fazer nosso inimigo mirar no nosso player, mas ficaria melhor se agente limita-se o campo de visão dele, vamos fazer assim:

Crie uma variável: float campo;   

Código:
void Update () {

campo = Vector3.Distance (transform.position, alvo.transform.position);

//O inimigo vai atras do player se a distancia entre eles for menor que 10 e maior que 2
if(campo > 2 & campo < 10){

alvoroteition = Quaternion.LookRotation(alvo.position - transform.position, Vector3.up);
transform.rotation = Quaternion.Slerp(transform.rotation, alvoroteition , Time.deltaTime * 4);

    }  

}


Proto agora nosso inimigo só vai mirar no player se a distancia entre eles for menor que 10.

Terceiro passo:
Seguir o player.
vamos usar um AddRelativeForce, assim:

Crie uma variável: Rigidbody rb;

No Void Start vamos pegar o componente Rigidbody:

Código:
Rigidbody rb;

void Start(){
rb = GetComponent<Rigidbody> ();
}

Dentro do nosso Void Update:


Código:
void Update () {

 campo = Vector3.Distance (transform.position, alvo.transform.position);

 //O inimigo vai atras do player se a distancia entre eles for menor que 10 e maior que 2
 if(campo > 2 & campo < 10){
 alvoroteition = Quaternion.LookRotation(alvo.position - transform.position, Vector3.up);
 transform.rotation = Quaternion.Slerp(transform.rotation, alvoroteition , Time.deltaTime * 4);

 //isso vai fazer ele seguir o player
 rb.AddRelativeForce(Vector3.forward * velo);

 }  

 }
 
Script inteira:

Código:
using UnityEngine;
using System.Collections;

public class Inimigo : MonoBehaviour {

 public float vida;//Vida do inimigo
 public float dano;//Dano do inimigo
 public float velo;//Velocidade do inimigo
 public Transform alvo;
 Rigidbody rb;
 Quaternion alvoroteition;
 float campo;

 // Use this for initialization
 void Start () {
 rb = GetComponent<Rigidbody> ();
 }
 
 // Update is called once per frame
 void Update () {

 campo = Vector3.Distance (transform.position, alvo.transform.position);

 //O inimigo vai atras do player se a distancia entre eles for menor que 10 e maior que 2
 if(campo > 2 & campo < 10){
 alvoroteition = Quaternion.LookRotation(alvo.position - transform.position, Vector3.up);
 transform.rotation = Quaternion.Slerp(transform.rotation, alvoroteition , Time.deltaTime * 4);

 //isso vai fazer ele seguir o player
 rb.AddRelativeForce(Vector3.forward * velo);

 }  

 }


}



Nossa IA ja pode mirar e seguir o player mas na segunda parte desse tutorial vamos fazer ela atirar também.
É isso galera espero que tenham gostado.

Referencias:


https://docs.unity3d.com/ScriptReference/Rigidbody.AddRelativeForce.html
https://docs.unity3d.com/ScriptReference/Rigidbody.html
https://docs.unity3d.com/ScriptReference/Quaternion.html
https://docs.unity3d.com/ScriptReference/Vector3.html
https://docs.unity3d.com/ScriptReference/Transform.html
também tem esse vídeo!
avatar
Gabriel César O
Programador

Masculino PONTOS : 1285
REPUTAÇÃO : 191
Idade : 15
Áreas de atuação : (ESTUDANDO SEGUNDO GRAU), (FUÇANDO NO UNITY)){
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