[Investor Relations]  |  官方微博

Unity3D培训

美国上市公司 · 亿元级外企unity3D培训企业

  • 全国服务监督电话4001118989
  • unity3d写出android的“摇一摇”+震动效果

    发布:Unity3D培训  来源:Unity3D教程  时间: 2016年01月14日

  • 我之前看过有人用android写过“摇一摇”效果,今天我用unity3d做出来看看。...

  • 我之前看过有人用android写过“摇一摇”效果,今天我用unity3d做出来看看。

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

    注:手机的震动效果直接用iPhoneUtils.Vibrate();

    [java] view plaincopyprint?

    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. }


  • 上一篇:Unity3D 3.5:寻路API教程

    下一篇:Unity3D AssetBundle的无缝地图实现

网站导航
2001-2016 达内时代科技集团有限公司 版权所有 京ICP证8000853号-56