Instanciar objeto onde cricar com mouse ou touch
2 participantes
Página 1 de 1
Instanciar objeto onde cricar com mouse ou touch
Ola pessoal venho com uma duvida, que é o seguinte.
estou tentando instanciar um objeto ou partícula (ainda estou testando a melhor a ser usada), porem quando tento instanciar usando o script que fiz ele so faz a instancia no centro.
Se tento usar uns scripts que achei em fóruns ele da erro de referencia
estou usando esse para teste, coloquei tanto em um Gamescontroller como na MainCamera
erro obtido , eu já anexei o meu prefab nele porem nada
NullReferenceException: Object reference not set to an instance of an object
PlayerController.Update () (at Assets/Game/Scripts/PlayerController.cs:31)
Alguém pode me ajudar?
Grato.
estou tentando instanciar um objeto ou partícula (ainda estou testando a melhor a ser usada), porem quando tento instanciar usando o script que fiz ele so faz a instancia no centro.
Se tento usar uns scripts que achei em fóruns ele da erro de referencia
estou usando esse para teste, coloquei tanto em um Gamescontroller como na MainCamera
erro obtido , eu já anexei o meu prefab nele porem nada
NullReferenceException: Object reference not set to an instance of an object
PlayerController.Update () (at Assets/Game/Scripts/PlayerController.cs:31)
- Código:
[SerializeField]
GameObject _marretaPlefab; // prefab para estanciar
RaycastHit hit;
// Use this for initialization
void Start () {
http://ur.SetCursor(cursorTexture, Vector3.zero, CursorMode.Auto);
}
// Update is called once per frame
void Update () {
if (Input.touchCount > 0 || Input.GetButtonDown("Fire1"))
{
print(Input.touchCount);
// GameObject projetil = Instantiate(_marretaPlefab, transform.position, transform.rotation) as GameObject;
// projetil.GetComponent<Rigidbody>().AddForce(transform.forward * forcaDaBala, ForceMode.Impulse);
// Destroy(projetil, 2.0f;
Vector3 mousePos = Input.mousePosition;
mousePos.z = 2.0f;
var objectPos = Camera.current.ScreenToWorldPoint(mousePos);
var myObject = Instantiate(_marretaPlefab, objectPos, Quaternion.identity);
// Instantiate(_marretaPlefab, mousePosition, Quaternion.identity);
//Instantiate(_marretaPlefab, , transform.localRotation);
}
}
Alguém pode me ajudar?
Grato.
Jmspp- Avançado
- PONTOS : 2826
REPUTAÇÃO : 6
Idade : 37
Respeito as regras :
Re: Instanciar objeto onde cricar com mouse ou touch
O seu jogo é 2D ou 3D? Pelo que vi, um simples código para 'instanciar na posição do mouse' já resolve tudo, já que a unity converte o MouseInput em Input.Touches[0]
Tente dar uma olhada neste tutorial: https://www.schultzgames.com/t95-tutorial-mover-objeto-para-lugar-do-click-do-mouse?highlight=posi%C3%A7%C3%A3o+do+mouse
Tente dar uma olhada neste tutorial: https://www.schultzgames.com/t95-tutorial-mover-objeto-para-lugar-do-click-do-mouse?highlight=posi%C3%A7%C3%A3o+do+mouse
Re: Instanciar objeto onde cricar com mouse ou touch
Opa Marcos. respondendo as perguntas, é 3D, câmera vai ficar parada a primeiro momento veja como esta Imagem, e onde clicar ele vai instanciar.
O link que mando olhei mais não conseguir coloquei ele no GameObeject vazio e quando clico no game ele da erro de referencia também
O link que mando olhei mais não conseguir coloquei ele no GameObeject vazio e quando clico no game ele da erro de referencia também
Jmspp- Avançado
- PONTOS : 2826
REPUTAÇÃO : 6
Idade : 37
Respeito as regras :
Re: Instanciar objeto onde cricar com mouse ou touch
Pelo que você está dizendo, algo simples assim já resolveria:
Este código vai na Câmera (lembrando, a câmera deve ter a tag "MainCamera")
Ai basta jogar o objeto que você quer instanciar na variável do código e pronto.
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class InstanciarObjetos : MonoBehaviour { //este codigo vai na sua camera
public GameObject objetoParaInstanciar;
RaycastHit hit;
void Update () {
if (Input.GetMouseButtonDown (0)) {
if (Physics.Raycast (Camera.main.ScreenPointToRay (Input.mousePosition), out hit, 100)) {
Instantiate (objetoParaInstanciar, hit.point, Quaternion.identity);
}
}
}
}
Este código vai na Câmera (lembrando, a câmera deve ter a tag "MainCamera")
Ai basta jogar o objeto que você quer instanciar na variável do código e pronto.
Tópicos semelhantes
» Olhar para onde o mouse aponta
» [Unity 5] Instanciar objetos onde mouse mira
» Atirar o player na direção onde esta o mouse
» controle 2D com touch ou clique do mouse
» [TUTORIAL] Adicionar força a um Rigidbody na direção onde o mouse está
» [Unity 5] Instanciar objetos onde mouse mira
» Atirar o player na direção onde esta o mouse
» controle 2D com touch ou clique do mouse
» [TUTORIAL] Adicionar força a um Rigidbody na direção onde o mouse está
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos