2016-09-08 5 views
0

メインカメラをボタンで移動したい。その私のゲームプレイ:ボタンを一体化してカメラを動かす

enter image description here

その私のシーン:

enter image description here

がしたいときボタンでクリックし、別のPICで右にメインカメラの動き。 これは、ボタンの私のスクリプトです:スクリプトで

public void Uss(GameObject camera) { 

    Vector3 temp = transform.position; 
    temp.x += 0.1f; 
    camera.transform.position = temp; 

} 
+0

「変換」は、カメラではなくボタンの変換です。代わりにメインカメラの 'GameObject'を動かす必要があります。 – zwcloud

+0

私のコードを編集してもまだ動作していません – erfan

+0

答えが編集されています。 – zwcloud

答えて

0

、ボタンはカメラではなく、移動されます。代わりにメインカメラのゲームオブジェクトを移動する必要があります。

Transform cameraTransform; 
void Start() 
{ 
    cameraTransform = Camera.main.gameObject.transform; 
} 
public void Update() 
{ 
    cameraTransform.Translate(7, 0, 0); 
} 

しかし、私はあなたが以下のようなボタンのonClickハンドラでロジックを記述お勧めします。

は、ステップ値は、あなたの写真のサイズに依存しているGameObject

float step = 100;//find a proper value for this 
void Start() 
{ 
    Button b = gameObject.GetComponent<Button>(); 
    b.onClick.AddListener(
     ()=> 
     { 
      Camera.main.gameObject.transform.Translate(step, 0, 0); 
     } 
    ); 
} 

ボタンにスクリプトを添付します。

私はスクリプトをテストしていませんが、そのように動作するはずです。

+0

返信ありがとう、私の投稿の表記を編集する – erfan

+0

ボタンをクリックしたときに、カメラがpick1から2を選んでゆっくりと動くようにするには?私はできますか?次のようにします:Vector3 pos = transform.position; \t \t pos.x + = 1; \t \t pos.x = Mathf.Clamp(pos.x、0F、300F); \t \t transform.position = pos;しかし、私は新しくて、このコードを組み合わせることができません – erfan

+0

いいとゆっくりですか? [this post](http://answers.unity3d.com/questions/29751/gradually-moving-an-object-up-to-speed-rather-then.html)を参照してください。 – zwcloud

関連する問題