## 実現したいこと
立方体をクリックしてドラックしたとき、クリックしたところを掴んで回転させたい。
今はどこをドラックしても同じように回転してしまうので少しつがいがってが悪いです。
方法や参考になるサイトを知っている方がいらっしゃったら、ご教授ください。
当該のソースコード
C#
1using UnityEngine; 2 3public class CubeRotate : MonoBehaviour 4{ 5 public GameObject obj; //回転させるもの 6 private Vector2 sPos; 7 private Quaternion sRot; 8 private float wid, hei; 9 private float tx, ty; 10 11 void Start() 12 { 13 wid = Screen.width; 14 hei = Screen.height; 15 } 16 17 void Update() 18 { 19 if (Input.touchCount == 1) 20 { 21 Touch touch = Input.GetTouch(0); 22 if (touch.phase == TouchPhase.Began) 23 { 24 sPos = touch.position; 25 sRot = obj.transform.rotation; 26 } 27 else if (touch.phase == TouchPhase.Moved || touch.phase == TouchPhase.Stationary) 28 { 29 tx = (touch.position.x - sPos.x) / wid; 30 ty = (touch.position.y - sPos.y) / hei; 31 obj.transform.rotation = sRot; 32 Vector3 vec = new Vector3(90 * ty, -90 * tx, 0); 33 obj.transform.Rotate(vec, Space.World); 34 } 35 } 36 } 37}
環境
unity 2020.3.15f2
macOS
実際はAndroid用にビルドしてスマホでも使えるようにしたい
あなたの回答
tips
プレビュー