[Unity3D]手机3D游戏开发:如何使用Unity3D中自带的重力感应

来源:互联网 发布:全球肥胖死亡数据报道 编辑:程序博客网 时间:2024/05/02 02:08

学习Unity脚本推荐:Unity3D官网索引


重力感应在手机游戏的开发中非常常见。Unity3D本身集合了重力感应的相关内容。

一个简单的JS脚本示范一下重力感应的使用。

CSDNGravity.js:

//物体的贴图  var round : Texture2D;      //物体在屏幕中显示的X Y坐标  var x = 0;  var y = 0;    //物体屏幕显示的最大 X Y 范围  var cross_x = 0;  var cross_y = 0;      function Start(){      //初始化赋值      cross_x = Screen.width -  round.width;        cross_y = Screen.height -  round.height;      }    function OnGUI () {        //整体显示 x y z 重力感应的重力分量      GUI.Label(Rect(0,0,480,100),"position is " + Input.acceleration);            //绘制物体      GUI.DrawTexture(Rect(x,y,256,256),round);     }    function Update(){            //根据重力分量修改物体的位置这里乘以30的意思是让物体移动的快一些      x += Input.acceleration.x * 30;      y += -Input.acceleration.y * 30;                      //避免物体超出屏幕      if(x < 0){            x = 0;        }else if(x > cross_x){            x = cross_x;        }                if(y < 0){            y = 0;        }else if(y > cross_y){            y = cross_y;        }    } 


这里的Input是指Unity中的输入,acceleration便是其重力了,x和y分别代表其重力分量。

创建完毕之后只需要添加纹理图片即可:


CTRL+B创建并且运行,就可以在真机上看到重力感应的效果了。


原创粉丝点击