I wanted to know why this script works fine in C # and not in javascript. The purpose is to instantiate an object in space to the click of the mouse in the same position. (The script is connected to the main camera)
C#
using UnityEngine;
using System.Collections;
public class rotto : MonoBehaviour {
public GameObject bum; //prefab da istanziare
private Vector3 mousePos; //Posizione mouse
private Vector3 position; //posizione del nuovo oggetto istanziato
void Update () {
if(Input.GetMouseButtonUp(0)){ // premuto e rilasciato tasto sinistro del mouse
mousePos = Input.mousePosition; //Posizione del mouse (valori 'x' e 'y' espressi in pixel, 'z' è sempre 0)
mousePos.z = 100; //senza di questo l'oggetto viene creato SULLA camera attiva, lo sposto in avanti di 100 unità
position = Camera.main.ScreenToWorldPoint(mousePos); //posizione dove creare l'oggetto
Instantiate(bum,position,Quaternion.identity);
}
}
}
Javascript
#pragma strict
var oggetto : GameObject;
private var mousePos : Vector3;
private var posizione : Vector3;
function Start () {
}
function Update () {
if(Input.GetMouseButtonUp(0)){
mousePos = Input.mousePosition;
mousePos.z = 11;
posizione = Camera.main.ScreenToWorldPoint(mousePos);
Instantiate(oggetto, transform.position, Quaternion.identity);
}
}