[Dúvida] Erro com função raycast (.point)
Página 1 de 1 • Compartilhe •
[Dúvida] Erro com função raycast (.point)
Gente estava dando erro nesse script mais nao dou conta de arrumar
ERROS; error CS1502:The best overloaded method match for UnityEngine.Object,UnityEngine.Vector3,UnityEngine,Quaternion
e Error CS1503: Argument 2 cannot convert UnityEngine.RaycastHit expression to type UnityEngine.Vector3
- Código:
using UnityEngine;
using System.Collections;
public class Plantar : MonoBehaviour {
public GameObject Planta;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
RaycastHit PontoDeColisao;
Physics.Raycast (transform.position, transform.forward, out PontoDeColisao, 100);
if (Vector3.Distance (transform.position, PontoDeColisao.point) <= 5) {
if(Input.GetKeyDown("f")){
Instantiate (Planta, PontoDeColisao, transform.rotation);
}
}
}
}
ERROS; error CS1502:The best overloaded method match for UnityEngine.Object,UnityEngine.Vector3,UnityEngine,Quaternion
e Error CS1503: Argument 2 cannot convert UnityEngine.RaycastHit expression to type UnityEngine.Vector3
Última edição por santiago52 em Sex Jul 24, 2015 7:24 pm, editado 1 vez(es)
Santiago Furtado- MembroAvançado
-
PONTOS : 1336
REPUTAÇÃO : 15
Idade : 16
Respeito as regras :
Re: [Dúvida] Erro com função raycast (.point)
o erro está aqui:
"PontoDeColisao" é o hit e não o ponto da colisão em si.
o ponto da colisão é:
- Código:
Instantiate (Planta, PontoDeColisao, transform.rotation);
"PontoDeColisao" é o hit e não o ponto da colisão em si.
o ponto da colisão é:
- Código:
PontoDeColisao.point
MarcosSchultz- Administrador
-
PONTOS : 10377
REPUTAÇÃO : 1834
Idade : 21
Áreas de atuação : Administrador do fórum
Respeito as regras :
Re: [Dúvida] Erro com função raycast (.point)
Marcos Agora nao instancia ao apertar F
- Código:
using UnityEngine;
using System.Collections;
public class Plantar : MonoBehaviour {
public GameObject Planta;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
RaycastHit PontoDeColisao;
Physics.Raycast (transform.position, transform.forward, out PontoDeColisao, 100);
if (Vector3.Distance (transform.position, PontoDeColisao.point) <= 5) {
if(Input.GetKeyDown("f")){
Instantiate (Planta, PontoDeColisao.point, transform.rotation);
}
}
}
}
Santiago Furtado- MembroAvançado
-
PONTOS : 1336
REPUTAÇÃO : 15
Idade : 16
Respeito as regras :
Re: [Dúvida] Erro com função raycast (.point)
usei o seu script:
linkei um prefab na variavel, joguei o script na camera e funcionou 100%
qualquer coisa que eu mire e esjeta mais perto do que 5 unidades eu consigo instanciar
- Código:
using UnityEngine;
using System.Collections;
public class Plantar : MonoBehaviour {
public GameObject Planta;
void Update () {
RaycastHit PontoDeColisao;
Physics.Raycast (transform.position, transform.forward, out PontoDeColisao, 100);
if (Vector3.Distance (transform.position, PontoDeColisao.point) <= 5) {
if(Input.GetKeyDown("f")){
Instantiate (Planta, PontoDeColisao.point, transform.rotation);
}
}
}
}
linkei um prefab na variavel, joguei o script na camera e funcionou 100%
qualquer coisa que eu mire e esjeta mais perto do que 5 unidades eu consigo instanciar
MarcosSchultz- Administrador
-
PONTOS : 10377
REPUTAÇÃO : 1834
Idade : 21
Áreas de atuação : Administrador do fórum
Respeito as regras :
Re: [Dúvida] Erro com função raycast (.point)
Aqui nao quer funcionar vou ver aqui
Santiago Furtado- MembroAvançado
-
PONTOS : 1336
REPUTAÇÃO : 15
Idade : 16
Respeito as regras :
Re: [Dúvida] Erro com função raycast (.point)
não está confundindo os inputs?
testa este script aqui: coloquei distância ajustavel e mudei o input para o click do mouse:
testa este script aqui: coloquei distância ajustavel e mudei o input para o click do mouse:
- Código:
using UnityEngine;
using System.Collections;
public class Plantar : MonoBehaviour {
public GameObject Planta;
public float distancia = 5;
void Update () {
RaycastHit PontoDeColisao;
Physics.Raycast (transform.position, transform.forward, out PontoDeColisao, 100);
Debug.DrawLine (transform.position, PontoDeColisao.point);
if (Vector3.Distance (transform.position, PontoDeColisao.point) <= distancia) {
if(Input.GetMouseButtonDown(0)){
Instantiate (Planta, PontoDeColisao.point, transform.rotation);
}
}
}
}
MarcosSchultz- Administrador
-
PONTOS : 10377
REPUTAÇÃO : 1834
Idade : 21
Áreas de atuação : Administrador do fórum
Respeito as regras :
Re: [Dúvida] Erro com função raycast (.point)
Agora funcionou,Obrigado
Santiago Furtado- MembroAvançado
-
PONTOS : 1336
REPUTAÇÃO : 15
Idade : 16
Respeito as regras :
Página 1 de 1
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum