Unity 2d实例化鼠标位置故障,请指教

时间:2015-02-10 07:15:16

标签: java javascript 2d unityscript

好的,我已经在网上寻找解决方案,我可能只是视而不见,但如果有人可以帮助我,那就太棒了。

我写的脚本应该放置鼠标点击的预制件。这应该发生在另一个物体,相机跟着倒下。问题不在于预制件的克隆,而在于克隆它的位置。它产生的坐标从一开始就是错误的,当物体进一步下降时,如果我不移动我的鼠标,球会在同一个地方产卵。为了清楚起见,我希望预制件在鼠标所在的游戏X,Y坐标上产生。

var Xpos : float;
var Ypos : float;
var object : GameObject;

function Update ()
{ 
    if (Input.GetMouseButtonDown(0)) 
    {
        //debugging
        Xpos = Input.mousePosition.x;
        Ypos = Input.mousePosition.y;
        Instantiate(object, Vector3(Input.mousePosition.x,Input.mousePosition.y), Quaternion.identity);
    }
}

1 个答案:

答案 0 :(得分:1)

也许您需要使用Camera.ScreenToWorldPoint

var Xpos : float;    
var Ypos : float;    
var object : GameObject;

function Update ()  
{    
   if (Input.GetMouseButtonDown(0))  
   {  
      //debugging
      Xpos = Input.mousePosition.x;
      Ypos = Input.mousePosition.y;

      //Get mouse input and convert screen position to Unity World position
      var position : Vector3 = Camera.ScreenToWorldPoint(Input.mousePosition);
      Instantiate(object,position,Quaternion.identity); 
   }
}