(前回の質問が丸投げな内容になってしまったため、改めて質問を投稿します。)
実装したいこと
GameObjectであるobject1をクリックすると、
カメラがobject1の位置に、滑らかに移動するようにしたい。
問題点
クリックしたとき、僅かにだけしか、動かない。(指定した位置には向かっている様子)
Debug.Log(nextPos);で確認したところ、noneが常に吐き出されているようでした。
(クリックしてから、object1もずっと吐き出ています。(正常))
C#
1//GameObject:Object1にアタッチするスクリプト 2 3using System.Collections; 4using System.Collections.Generic; 5using UnityEngine; 6 7public class CameraMove : MonoBehaviour { 8 9 public GameObject camera;//インスペクタ側でカメラをアタッチ 10 private string nextPos = "none"; 11 private Vector3 nowPos; 12 private float speed = 5f; 13 14 private void OnMouseDown(){ 15 nextPos = "object1"; 16 nowPos = camera.transform.position; 17 } 18 19 private void Update(){ 20 Debug.Log(nextPos); 21 if(nextPos == "object1"){ 22 //カメラのposition移動 23 Vector3 targetPos = new Vector3(3f,1f,0f); 24 camera.transform.position = Vector3.Lerp(nowPos, targetPos, speed*Time.deltaTime); 25 } 26 } 27} 28
なぜ、noneが常に吐き出されてしまうのでしょうか?
none→object1に書き換えられることが、理想です。
すみませんが、回答宜しくお願い致します。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/11/09 09:57