使用手机陀螺仪,可以获取手机的3D姿态,这在开发中是很有用的。当然现在的手机内置的陀螺仪都是比较廉价的,精度不高,但是作为实验设备看看效果还是可以的。本文将给出调用手机陀螺仪的简单方法。

首先,我们需要在场景中添加大量方块,作为观察对象。

控制陀螺仪的脚本:

using UnityEngine;
using System.Collections;public class gyroscope : MonoBehaviour {bool draw = false;bool gyinfo;Gyroscope go;void Start(){gyinfo = SystemInfo.supportsGyroscope;go = Input.gyro;go.enabled = true;}void Update(){if (gyinfo){Vector3 a = go.attitude.eulerAngles;a = new Vector3(-a.x, -a.y, a.z); //直接使用读取的欧拉角发现不对,于是自己调整一下符号this.transform.eulerAngles = a;this.transform.Rotate(Vector3.right * 90, Space.World);        draw = false;}else{draw = true;}}void OnGUI(){if (draw){GUI.Label(new Rect(100, 100, 100, 30), "启动失败");}}}

该脚本绑定到主摄像机上,发布成apk文件,安装到带有陀螺仪的手机就可以了。运行后会看到,当手机位姿变化时,方块也会随着变化。但是手机陀螺仪会有少许漂移。当手机不动时候,场景中的方块也许会有少量移动。

效果:

Unity3D陀螺仪的使用相关推荐

  1. Unity3D中手机陀螺仪的使用

    使用手机陀螺仪,可以获取手机的3D姿态,这在开发中是很有用的.当然现在的手机内置的陀螺仪都是比较廉价的,精度不高,但是作为实验设备看看效果还是可以的.本文将给出调用手机陀螺仪的简单方法. 首先,我们需 ...

  2. 【小超_U3D】Unity3D对陀螺仪的使用

    最近在做虚拟现实的项目,一直在查找Unity里面关于陀螺仪的文章.下面这代码就是我在网上找出来,当我使用的却不能用.现在这是经过修改过后的,大家尽管复制就能使用了,非常的方便. using Unity ...

  3. Unity开发《一起来捉妖》教程 | 1.陀螺仪控制相机

    洪流学堂,让你快人几步.你好,我是郑洪智. 洪流学堂公众号回复捉妖,可以获取本教程的源码工程. 大智:"小新,你小子最近是不是谈恋爱了,怎么天天往外跑?" 小新:"嘿嘿& ...

  4. 【Unity3D插件】AVPro Video插件分享《视频播放插件》

    推荐阅读 CSDN主页 GitHub开源地址 Unity3D插件分享 简书地址 我的个人博客 QQ群:1040082875 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给 ...

  5. Unity3D for VR 学习(5): VR Gaze Input

    在VR中,最"贴切"的输入方式是眼神,即 VR Gaze Input,如盯着某UGUI UI.某GameObject,2s后触发事件–  显示ToolTip或者切换场景等. 因为这 ...

  6. Unity3D for VR 学习(7): 360°全景照片

    在VR应用中,有一个相对简单的虚拟现实体验,那就是360°全景照片浏览器, 他可以使得手机拍照的"全景"照片,  得以"恢复"当时拍照的场景全貌,  这个创意的 ...

  7. Unity Google VR Cardboard 后台挂起时陀螺仪仍然占用问题解决

    为了节省时间,先说结论: Unity集成的Google VR,cardboard应用切换到后台时,确实不会有陀螺仪占用不释放的问题.它能自动停止追踪,释放其占用的accelerometer,gyros ...

  8. Unity3D for VR 学习(1): 又一个新玩具 暴风魔镜 4(Android)

    2016年伊始,有了VR虚拟现实硬件设备:  暴风魔镜4–好奇者的新玩具 . 2015年下半年的朋友圈中各种VR.AR的新闻层次不穷,搞的我也心痒痒的:好歹咱也是职业的Unity3D程序员,高大上的O ...

  9. Unity3D知识体系

    Unity C# and Shader Tutorials UGUI 用户图形接口UGUI UGUI的核心内容 动画_2D插件Spine Unity如何使用2D骨骼动画插件Spine 动画_插件Dot ...

  10. 十二.四轮车驱动开发之五: 由浅至深理解6轴陀螺仪姿态解算算法<上>

    这是"四轮车驱动控制"系列,分多个小节来介绍: 1. 八.四轮车驱动开发之一:正/逆向运动学分析 2. 九.四轮车驱动开发之二: 配置PWM驱动直流电机 3. 十.四轮车驱动开发之 ...

最新文章

  1. 【腾讯bugly干货分享】微信Android热补丁实践演进之路
  2. FastSpeech语音合成系统技术升级,微软联合浙大提出FastSpeech2
  3. SSAS : 如何禁用SSAS的QueryLog
  4. AS升级编译报错:The SourceSet 'instrumentTest' is not recognized by the Android Gradle Plugin....
  5. JAVA15.JDK15.6 Record二次预览特性
  6. 第六周---事后分析
  7. iOS开发 - Swift实现清除缓存功能
  8. [Spring5]IOC容器_Bean管理_bean的作用域和bean的生命周期
  9. OpenXLSX 字段读取问题
  10. c语言追踪机械腿位置,基于传感器的下肢可穿戴机械腿软件系统设计与实现
  11. mysql语句事务回滚_mysql语句,事务处理回滚的问题。
  12. BIOS基础知识(上)
  13. 还想呆在公司养老?别做梦了
  14. 信息安全工程师 学习笔记 完结
  15. LAMMPS实例教程—In文件详解
  16. 在Windows中如何通过命令行创建快捷方式
  17. DHCP中继 ||| 四种通信方式(单播+组播+广播+任播)
  18. 英伟达、英特尔、AMD显卡设置,减少游戏掉帧卡顿
  19. 计算机spec分值怎么算,四级怎么算分数公式(历年四级常模均值)
  20. Windows文件系统-NTFS文件系统

热门文章

  1. css3实现缺角四边形_CSS3实现缺角矩形与折角矩形以及缺角边框代码实例
  2. 如何注册Gitlab/被墙如何注册
  3. W10系统电脑启动项文件夹路径
  4. 路由器修改html,徒手修改大麦路由器dw33d,变luci中文界面,并开启ssh
  5. PPT——快速制作图表(快速插入)
  6. matlab 以10为底的对数
  7. Axure 基础教程
  8. tableau中快速实现环比增长率计算
  9. javascript异步编程之回调函数
  10. 1223 Dice Roll Simulation