[TUTORIAL] Atirar objeto para a posição do MOUSE
3 participantes
Página 1 de 1
[TUTORIAL] Atirar objeto para a posição do MOUSE
Crie um script em C# com o nome " mira " e jogue este codigo nele, e jogue o script na camera do seu personagem
Agora crie uma nova share ou objeto que deva servir como bala e jogue este script nela ( o nome do script deve ser " BALA " e deve ser em C# )
Após isto, configure a velocidade de movimento da bala e transforme ela em um Prefab
Linke o prefab na variavel " Bala " que tem no script que você colocou na camera.
crie um objeto para servir de cano da arma, filie ele a sua camera e tire o colisor dele...
após isto, linke o objeto na variavel canoArma do script da sua camera, e pronto o/
OBS: SE ESTIVER UTILIZANDO A UNITY 5, TROQUE O PRIMEIRO SCRIPT POR ESTE ABAIXO...
- Código:
using UnityEngine;
using System.Collections;
public class mira : MonoBehaviour {
public GameObject bala;
public GameObject CanoArma;
public static Vector3 alvo;
void Update () {
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHit hit;
bool colisao = Physics.Raycast (ray, out hit);
if(colisao){
if(Input.GetMouseButtonDown(0)){
Vector3 screenPos = Input.mousePosition;
screenPos.z = Vector3.Distance(transform.position,hit.transform.position);
Vector3 worldPos = camera.ScreenToWorldPoint(screenPos);
Instantiate (bala,CanoArma.transform.position,Quaternion.identity);
alvo = worldPos;
}
}
}
}
Agora crie uma nova share ou objeto que deva servir como bala e jogue este script nela ( o nome do script deve ser " BALA " e deve ser em C# )
- Código:
using UnityEngine;
using System.Collections;
public class BALA : MonoBehaviour {
public float velocidade = 10;
private Vector3 velocity = Vector3.zero;
private Vector3 posicaoDestino;
void Start (){
posicaoDestino = mira.alvo;
}
void Update () {
transform.position = Vector3.SmoothDamp(transform.position, posicaoDestino, ref velocity, 1/velocidade);
}
}
Após isto, configure a velocidade de movimento da bala e transforme ela em um Prefab
Linke o prefab na variavel " Bala " que tem no script que você colocou na camera.
crie um objeto para servir de cano da arma, filie ele a sua camera e tire o colisor dele...
após isto, linke o objeto na variavel canoArma do script da sua camera, e pronto o/
OBS: SE ESTIVER UTILIZANDO A UNITY 5, TROQUE O PRIMEIRO SCRIPT POR ESTE ABAIXO...
- Código:
using UnityEngine;
using System.Collections;
public class mira : MonoBehaviour {
public GameObject bala;
public GameObject CanoArma;
public static Vector3 alvo;
void Update () {
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHit hit;
bool colisao = Physics.Raycast (ray, out hit);
if(colisao){
if(Input.GetMouseButtonDown(0)){
Vector3 screenPos = Input.mousePosition;
screenPos.z = Vector3.Distance(transform.position,hit.transform.position);
Vector3 worldPos = GetComponent<Camera>().ScreenToWorldPoint(screenPos);
Instantiate (bala,CanoArma.transform.position,Quaternion.identity);
alvo = worldPos;
}
}
}
}
Última edição por MarcosSchultz em Ter Jun 07, 2016 9:28 pm, editado 1 vez(es)
Re: [TUTORIAL] Atirar objeto para a posição do MOUSE
não deu certo !
fernando15014- Iniciante
- PONTOS : 3541
REPUTAÇÃO : 0
Respeito as regras :
Re: [TUTORIAL] Atirar objeto para a posição do MOUSE
O que exatamemte não deu certo? teria como especificar o problema ou mandar prints?
Re: [TUTORIAL] Atirar objeto para a posição do MOUSE
Marcos no meu caso tenho uma nave em terceira pessoa, com um canhão como filho. A camera é travada na nave e anda apenas no eixo z. Eu queria que o canhão atirasse e seguisse o mouse independente do movimento da nave. Como eu deveria fazer ?
WalterYong- Iniciante
- PONTOS : 3381
REPUTAÇÃO : 0
Re: [TUTORIAL] Atirar objeto para a posição do MOUSE
terá que utilizar um comando como Input.MousePosition para saber a posição do mouse e dar um lookAt com o canhão neste Input.
é bastante diferente deste script que está ai.
é bastante diferente deste script que está ai.
Re: [TUTORIAL] Atirar objeto para a posição do MOUSE
Eu não sei fazer isso hehe, vou começar vendo os seus tutoriais de C#, tem alguma outra dica de video que eu posso ver para ter mais noção sobre isso ?
Obrigado e parabéns pelo site.
Obrigado e parabéns pelo site.
WalterYong- Iniciante
- PONTOS : 3381
REPUTAÇÃO : 0
Tópicos semelhantes
» [TUTORIAL] Mover e rotacionar objeto em relação a posição do MOUSE
» AJUDA - TUTORIAL Unity 2017 - Mover e rotacionar para a POSIÇÃO do MOUSE
» Mirar e atirar na posiçao do mouse?
» [TUTORIAL] Mover Objeto para lugar do click do Mouse
» Criar objeto na posiçao do mouse
» AJUDA - TUTORIAL Unity 2017 - Mover e rotacionar para a POSIÇÃO do MOUSE
» Mirar e atirar na posiçao do mouse?
» [TUTORIAL] Mover Objeto para lugar do click do Mouse
» Criar objeto na posiçao do mouse
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos