纳金网

标题: 365新手教程【1】unity3d android的“摇一摇”+震动效果 [打印本页]

作者: 409655136    时间: 2016-5-30 18:23
标题: 365新手教程【1】unity3d android的“摇一摇”+震动效果

unity3d android的“摇一摇”+震动效果
分类: unity3D初步篇
       我之前看过有人用android写过“摇一摇”效果。没做这个效果之前,我对Input.acceleration的x,y,z值的范围只是[-1,1],也没想过失重和超重,而且一直用眼睛来观察值的变化,结果发现“没变”,后来有个高手提醒我失重和超重,所以我就写了两个函数检测了一下,我用力摇和抖动手机,发现x,y,z值的范围大致都在[-4,4]之间,在这个范围内,你摇的越快值变化的越大,所以我们只用求相对时间里面变化的值大于某一个值就可以达到“摇一摇”的效果了。
   注:手机的震动效果直接用iPhoneUtils.Vibrate();


[java]
1.        var old_y:float=0;   
2.        var new_y:float;   
3.        var max_y:float=0;   
4.        var min_y:float=0;   
5.        var d_y:float=0;   
6.        function Update () {     
7.           new_y=Input.acceleration.y;   
8.           d_y=new_y-old_y;   
9.           old_y=new_y;   
10.           if(Input.GetKey(KeyCode.Escape)){   
11.              Application.Quit();   
12.           }      
13.                
14.        }   
15.        var i:int;   
16.        function OnGUI(){      
17.            GUI.Label(Rect(100,100,100,100),"g:"+Input.acceleration+"d_y:"+d_y);   
18.            GUI.Label(Rect(100,210,100,100),"i:"+i);   
19.            if(d_y>2){   
20.              i++;   
21.              iPhoneUtils.Vibrate(); //手机的震动效果  
22.            }   
23.        }     


作者: eddie2005    时间: 2016-6-1 20:10
来点VR的开发教程




欢迎光临 纳金网 (http://go.narkii.com/club/) Powered by Discuz! X2.5