前提・実現したいこと
Unity 3Dで、スワイプ量に応じて、オブジェクトを移動させる方法を教えていただきたいです。
指の動きに対して、オブジェクトが同期して動くようにしたいです。
ご教示お願い致します。
試したこと
こちらのサイトで、タッチ位置そのものにオブジェクトを追従する方法はわかりました。
試したこと
C#
1public class InputManager : MonoBehaviour { 2 float distance; 3 GameObject cube; 4 // Use this for initialization 5 void Start () { 6 cube = GameObject.Find("Cube"); 7 } 8 9 // Update is called once per frame 10 void Update () { 11 Vector3 position = Input.mousePosition; 12 position.z = 10f; 13 Vector3 worldposition = Camera.main.ScreenToWorldPoint(position); 14 if(Input.GetMouseButtonDown(0)){ 15 distance = Vector3.Distance(worldposition, cube.transform.position); 16 }else if(Input.GetMouseButton(0)){ 17 cube.transform.position = worldposition + distance; 18 } 19 } 20}
cube.transform.position = worldposition + distance; でエラーになります。
あと、このままだとオブジェクトが画面からはみ出てしまうこともあるので、
画面内に納まる制限をつけた動きにする(オブジェクトが画面外に、はみ出ようとするとそれ以上動かないようにする)ことを、
コードで組みたいのですが、どうすればよいでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2018/06/04 13:04
2018/06/07 01:19
退会済みユーザー
2018/06/08 07:45