2011-03-22 74 views
-1

我在屏幕上獲得了一個對象。開始時它位於x = 0,y = 0,z = 0之後,它移動到不同的位置。我只是想確保這個物體不會移動到用戶看不到的位置(這是玩家的主角本身,我也不希望玩家能夠從他當前的位置返回,也不會繼續跟隨他)。如何在未通過設置分辨率的屏幕分辨率上獲取Gameobject位置

你能向我解釋我需要做什麼嗎?

+0

我是sorrry對於英文不好這裏是我嘗試做喜歡的遊戲超級馬里奧,如果他提前相機跟他一起去,如果他試圖回去,然後他就可以回去,但只是屏幕和那裏沒有從他通過的地方通過 – 2011-03-22 23:31:56

+0

我想,你的意思是,你想要一個2D角色,只能到屏幕右側,他不能回到它前面訪問過的地方在屏幕的左側。是對的嗎? – 2013-08-02 15:50:55

回答

0
using UnityEngine; 
using System.Collections; 

public class NewGameScript : MonoBehaviour 
{ 
    float t=0f; 
    float v=20f; 
    float dist; 
    // Use this for initialization 
    void Start() 
    { 

    } 

    void Update() 
    { 

     if(Input.GetKeyUp("up")) 
     { 
      if(t<0.1) 
      { 
       t +=Time.deltaTime*0.07f; 
      } 
      dist=t*v*0.5f; 
      gameObject.transform.position +=transform.forward*dist;     
     } 
     else if(Input.GetKeyUp("down")) 
     { 
      if(t>-0.1) 
      { 
       t -=Time.deltaTime*0.07f; 
      } 
      dist=t*v*0.5f; 
      gameObject.transform.position +=transform.forward*dist; 
     } 
     else if(Input.GetKey("left")) 
     { 
      transform.Rotate(0,-0.9f*(dist+1), 0); 
      gameObject.transform.position +=transform.forward*0.1f*(dist+1); 
     } 
     else if(Input.GetKey("right")) 
     { 
      transform.Rotate(0,0.9f*(dist+1),0); 
      gameObject.transform.position +=transform.forward*0.1f*(dist+1); 
     } 
    } 
}