我要創建Android應用程序,通過觸摸移動X和Z線上的gameObject,gameObject必須向右,向左,向上或向下移動。我寫了這個劇本屬於遊戲對象在哪裏檢查由光線投射觸摸。unity3d通過觸摸移動
你知道的任何其他方法的觸摸移動對象?
#pragma strict
var hit = new RaycastHit();
function Start() {
}
function FixedUpdate() {
for (var i :int = 0; i < Input.touchCount; ++i) {
if (Input.GetTouch(0).phase == TouchPhase.Moved) {
var touchDeltaPosition:Vector2 = Input.GetTouch(i).deltaPosition;
var touch_pos : Vector3 = new Vector3(Input.GetTouch(i).position.x, Input.GetTouch(i).position.y , 0);
var ray : Ray = Camera.main.ScreenPointToRay (touch_pos);
Debug.DrawRay (ray.origin, ray.direction * 10, Color.yellow);
if (Physics.Raycast (ray, hit))
{
Debug.Log(hit.transform.tag);
if(hit.transform.tag == "Cubes")
{
if(Mathf.Abs(Input.GetTouch(i).deltaPosition.x) > Mathf.Abs(Input.GetTouch(i).deltaPosition.y))
{
if(Input.GetTouch(i).deltaPosition.x > 0)
{
transform.Translate(0,0,1);
// 'right';
}
else
{
transform.Translate(0,0,-1);
//GUItest.text = 'left';
}
}
else
{
if(Input.GetTouch(i).deltaPosition.y > 0)
{
transform.Translate(-1,0,0);
// 'up';
}
else
{
transform.Translate(1,0,0);
// 'dawn';
}
}
}
}
}
}
}