Unity3D教程:手游如何使用Unity3D自带的重力感应

Unity3D教程:手游如何使用Unity3D自带的重力感应?重力感应在手机游戏的开发中非常常见。Unity3D本身集合了重力感应的相关内容。简单的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分别代表其重力分量。创建完毕之后只需添加纹理图片即可:

Unity3D教程:手游如何使用Unity3D自带的重力感应

 

你可能感兴趣的:(Unity3D教程:手游如何使用Unity3D自带的重力感应)