查看: 2360|回复: 6
打印 上一主题 下一主题

[经验分享] 重力感应操控(unity iphone)

[复制链接]

711

主题

10

听众

5805

积分

高级设计师

Rank: 6Rank: 6

纳金币
2954
精华
3

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

跳转到指定楼层
楼主
发表于 2014-5-26 03:37:41 |只看该作者 |倒序浏览
方案一:speed
  1. public var simulateAccelerometer:boolean = false;
  2. var speed = 10.0;
  3. function Update () {
  4.     var dir : Vector3 = Vector3.zero;
  5.     if (simulateAccelerometer)
  6.     {
  7.         dir.x = Input.GetAxis("Horizontal");
  8.         dir.y = Input.GetAxis("Vertical");
  9.     }
  10.     else
  11.     {
  12.         dir.x = Input.acceleration.x;
  13.         dir.y = Input.acceleration.y;
  14.      
  15.         // clamp acceleration vector to unit sphere
  16.         if (dir.sqrMagnitude > 1)
  17.             dir.Normalize();
  18.         // Make it move 10 meters per second instead of 10 meters per frame...
  19.     }
  20.     dir *= Time.deltaTime;
  21.     // Move object
  22.     transform.Translate (dir * speed);
  23. }
复制代码
也可以把速度换成力

方案二:Force
  1. public var force:float = 1.0;
  2. public var simulateAccelerometer:boolean = false;

  3. function FixedUpdate () {
  4.     var dir : Vector3 = Vector3.zero;

  5.     if (simulateAccelerometer)
  6.     {
  7.         // using joystick input instead of iPhone accelerometer
  8.         dir.x = Input.GetAxis("Horizontal");
  9.         dir.y = Input.GetAxis("Vertical");
  10.     }
  11.     else
  12.     {
  13.         // we assume that device is held parallel to the ground
  14.         // and Home button is in the right hand
  15.          
  16.         // remap device acceleration axis to game coordinates
  17.         // 1) XY plane of the device is mapped onto XZ plane
  18.         // 2) rotated 90 degrees around Y axis
  19.         dir.x = Input.acceleration.y;
  20.         dir.y = Input.acceleration.x;
  21.          
  22.         // clamp acceleration vector to unit sphere
  23.         if (dir.sqrMagnitude > 1)
  24.             dir.Normalize();
  25.     }
  26.      
  27.     rigidbody.AddForce(dir * force);
  28. }
复制代码
个人感觉方案一操控起来比较灵活,反应灵敏。方案二操控起来具有惯性,缓冲明显。
分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

hyui    

1

主题

2

听众

6671

积分

高级设计师

Rank: 6Rank: 6

纳金币
2715
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

沙发
发表于 2014-5-26 04:17:07 |只看该作者
I like learn from somebody's code!
回复

使用道具 举报

无效楼层,该帖已经被删除
wucnj    

1

主题

1

听众

3160

积分

中级设计师

Rank: 5Rank: 5

纳金币
1065
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

地板
发表于 2014-5-26 10:14:54 |只看该作者
感谢分享!!!
回复

使用道具 举报

115

主题

3

听众

5676

积分

高级设计师

Rank: 6Rank: 6

纳金币
7268
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

5#
发表于 2014-5-26 10:33:59 |只看该作者
感谢分享!
回复

使用道具 举报

0

主题

0

听众

305

积分

设计实习生

Rank: 2

纳金币
21
精华
0

最佳新人

6#
发表于 2014-5-28 10:08:10 |只看该作者
谢谢分享
回复

使用道具 举报

0

主题

1

听众

126

积分

设计实习生

Rank: 2

纳金币
27
精华
0

最佳新人

7#
发表于 2014-6-3 17:33:50 |只看该作者
这个可以!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2024-11-26 06:02 , Processed in 0.092771 second(s), 32 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部