精华内容
下载资源
问答
  • unity重力感应资源

    2018-08-10 10:45:24
    unity重力感应unity重力感应unity重力感应unity重力感应unity重力感应unity重力感应
  • unity获取设备的重力 1.调用API Input.acceleration方法 void Update(){ Vector3 playerMoveDir=Vector3.zero; playerMoveDir.x= Input.acceleration.x; playerMoveDir.y= Input.acceleration.y; transform....

    unity获取设备的重力

    1.调用API Input.acceleration方法

    void Update(){
           Vector3 playerMoveDir=Vector3.zero;
           playerMoveDir.x= Input.acceleration.x;
           playerMoveDir.y= Input.acceleration.y;
           transform.Rotate(playerMoveDir * 70 * Time.deltaTime);
    }
    
    这样就可以实现使用重力感应来控制物体的选择

    2.初始化重力感应的方向(校正)

        private Vector3 playerMoveDir;
        //校正矩阵
        Matrix4x4 baseMatrix = Matrix4x4.identity;
    
        private Vector3 testxuanzhuan = Vector3.forward;
    
        private void FixedUpdate()
        {
                playerMoveDir.x = AdjustedAccelerometer.y;
                playerMoveDir.y = AdjustedAccelerometer.x;
                transform.Rotate(playerMoveDir * 70 * Time.deltaTime);
        }
    
        //Start函数里面调用,给矩阵赋值
        void CalibrateAcceleration()
        {
            Quaternion rotate = Quaternion.FromToRotation(new Vector3(0,0,-1), Input.acceleration);
            Matrix4x4 matrix = Matrix4x4.TRS(Vector3.zero, rotate, new Vector3(1.0f, 1.0f, 1.0f));
            this.baseMatrix = matrix.inverse;
        }
    
        //已经校正过的重力感应偏移量,用这个分量去做移动操作
        public Vector3 AdjustedAccelerometer
        {
            get
            {
                return this.baseMatrix.MultiplyVector(Input.acceleration);       
            }
        }
    
    这样就可以实现校准了
    展开全文
  • 一、引入 大家对重力感应应该都不陌生,之前玩...Unity内部的重力感应其实已经写好了,这篇文章只是讲下如何使用。Unity内部有一个Input.acceleration这个属性。下面是官方的解释 Description 描述 我们看到这个函...

    一、引入

    大家对重力感应应该都不陌生,之前玩过的王者荣耀的资源更新界面就是使用了重力感应的概念,根据手机的晃动来给实体进行晃动。下图的王者荣耀刚开始的界面其实就是使用的移动设备的重力感应。
    在这里插入图片描述

    二、介绍

    Unity内部的重力感应其实已经写好了,这篇文章只是讲下如何使用。Unity内部有一个Input.acceleration这个属性。下面是官方的解释
    在这里插入图片描述
    Description 描述
    在这里插入图片描述
    我们看到这个函数返回的是Vector3,尔Vector3有三个方向分别为下x,y,z这三个float组成的,其实只要搞明白这三个向量对应移动端的方向我们就可以做一些细节的操作。

    三、测试成果

    这里我直接把这三个向量的测试成果放在这里,我们把手机水平放在桌子上,然后俯视手机来说一下这个acceleration这个向量是如何对应的手机重力。

    X Y轴

    在这里插入图片描述

    水平方向:

    手机左边不动,抬起右边到90度,对应的Input.acceleration.x变化,变化为从0到-1.0,简单记录为:0 → -1.0
    手机右边不动,抬起左边到90度,对应的Input.acceleration.x变化,变化为从0到1.0,简单记录为:0 → 1.0

    垂直方向:

    手机下边不动,抬起上边到90度,对应的Input.acceleration.y变化,变化为从0到-1.0,简单记录为:0 → -1.0
    手机上边不动,抬起下边到90度,对应的Input.acceleration.y变化,变化为从0到1.0,简单记录为:0 → 1.0

    Z轴

    水平方向:无论从哪边开始往上抬,到90度,然后到180度,就是我们的手机的玻璃正面扣到桌面上了,对应的Input.acceleration.z变化,变化为从-1.0到0再到1.0,
    简单记录为: - 1.0→ 0 → 1.0;
    垂直方向:按照上面的操作也是一样的,对应的Input.acceleration.z变化,变化为从-1.0到0再到1.0,
    简单记录为: - 1.0→ 0 → 1.0;

    横屏的手机,如下图

    在这里插入图片描述

    竖屏的手机,如下图

    在这里插入图片描述

    移动设备游戏中经常会遇到重力感应的开发,Unity简化了重力感应的开发,通过访问Input.acceleration属性,取回加速度传感器的值。

    展开全文
  • (一)2D重力感应 (二)3D重力感应 (一)2D重力感应 public class image : MonoBehaviour { public float speed = 10.0F;//方块移动速度 void Update() { Vector2 dir = Vector2.zero;//方块移动向量 ...

    目录

     (一)2D重力感应

    (二)3D重力感应


     (一)2D重力感应

    public class image : MonoBehaviour
    {
        public float speed = 10.0F;//方块移动速度
        void Update()
        {
            Vector2  dir = Vector2.zero;//方块移动向量
    
            dir.x = Input.acceleration.x;
            dir.y = Input.acceleration.y;
    
            transform.Translate(dir * speed * Time.deltaTime);
        }
    }

    (二)3D重力感应

    public class Cube : MonoBehaviour
    {
        public float speed = 10.0F;//方块移动速度
        void Update()
        {
            Vector3 dir = Vector3.zero;//方块移动向量
    
            dir.x = Input.acceleration.x;
    
            transform.Translate(dir * speed * Time.deltaTime);
        }
    }

     

    展开全文
  • Unity 重力感应

    千次阅读 2014-02-20 20:10:23
    重力感应的三个轴相对于手机屏幕的方向,借用一下别人的图,本人的Android手机在Unity4.3中发现重力感应轴方向正是如此,但是在较低版本中的Unity中却不是这样。 不管手机怎样运动或旋转,这三个轴相对于手机的方向...

     

     

     

     

     

     

     

     

    重力感应的三个轴相对于手机屏幕的方向,借用一下别人的图,本人的Android手机在Unity4.3中发现重力感应轴方向正是如此,但是在较低版本中的Unity中却不是这样。

    不管手机怎样运动或旋转,这三个轴相对于手机的方向总是不变的。

    所以我们在旋转的过程中可以使某个轴与垂直向下的方向夹角逐渐减小,夹角越小,在该轴上的重力分量值就越大。

     

    Input.deviceOrientation设备方向,实际上也是通过测量重力感应值来判断用户手持设备的方向的

     

    注意:速度感应装置在每一帧中能够轮询多次,想访问上一帧的所有加速度样本你可以读取Input.accelerationEvents属性数组。

    展开全文
  • unity重力感应控制摄像机旋转

    千次阅读 2015-01-26 19:19:38
    有时候我们要用到重力感应,这个百度就能搜到他的解释或是原理,但具体怎么用,还需自己去实践,本人就重力感应控制摄像机旋转做一个举例:因为效果需要平板或是手机测试,所以效果图就不放了,感兴趣的朋友可以自己...
  • (一)2D重力感应 public class image : MonoBehaviour { public float speed = 10.0F;//方块移动速度 void Update() { Vector2 dir = Vector2.zero;//方块移动向量 dir.x = Input.acceleration.x; dir.y ...
  • 笔记:unity3d重力感应正确代码

    千次阅读 2017-09-15 16:12:44
    网上有许多相关代码不过或多或少不正确的说. ...用作unity3d学习的笔记OO.... using UnityEngine; using System.Collections; public class BallControl : MonoBehaviour {  private int speed = 8
  • [Unity 3D] 重力感应与罗盘(一)

    万次阅读 2012-02-19 00:39:11
    这里面的原理其实很简单,整个虚拟的天球就是游戏世界,主摄像机就在这个游戏世界的正中心点,当 iPad 屏幕正对的方位发生变化时,主摄像机根据获取到的重力感应输入和罗盘输入计算出新的朝向,并转向正确的方向。...
  • Unity之手机重力感应

    千次阅读 2015-05-02 19:56:51
    Unity重力感应游戏的时候,我们需要用到这样一个参数:Input.acceleration,这是一个Vectors3类型的一个Input的属性,它里面有三个参数分别是x,y,z。接下来给我大家贴上我画的一张图,这样大家看起来就很
  • Unity3D之平面小球重力感应详解

    千次阅读 2012-09-19 09:49:57
    重力感应应该对大多数开发者并不陌生,在新一代智能手机Android IOS WP7 很多游戏都是使用手机自带重力感应功能制作的,强大的Unity3D 游戏引擎当然对这个也是完美支持的,今天由MOMO带大家学习3D 世界中的手机...
  • Unity3D,重力感应控制小球Android版本的。
  • unity重力感应的三个轴是有默认轴向的,但是如果不以玩家当前手持方向为初始方向去做重力感应操作的话,效果就会很不理想。百度了很多,发现没有一个文章是介绍以玩家手持设备的当前方向为基准,记录重力感应的变化...
  • Unity3d 重力感应

    2013-07-16 12:59:00
    Input.acceleration 加速度 最近一次测量的设备在三维空间中的线性加速度(只读); void Update () { v3=Input.acceleration;...GUI.TextArea(new Rect(50,50,300,100)," X "+v3.x+" Y "+v3.y+" Z "+v3.z);...
  • unity3d 重力感应

    千次阅读 2012-09-19 09:44:06
    由于最近需要用到重力感应、所以想研究一下、 于是去网上搜了下资料、 但是我发现很多都是重复的、而且转载也没注明出处、 我也不知道他们有没有试试是不是对的、 直接就转载了、 我是发现有一些问题了、 对于...
  • 方案一:speed 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 public var simulateAccelerometer:boolean = false; var speed = 10.0;... var dir : Vector3 = Vector3...
  • Unity3D模型重力感应

    2014-08-11 22:46:42
    关于unity3d模型的重力感应,在这里我们使用unity引擎提供的Input.acceleration重力感应; 例如: public Transform m_round;  Transform trans;  //小球在屏幕的最大范围  float cross_x=0;  float...
  • Android 重力感应游戏-疯狂的小球
  • 雨松MOMO Unity3D 游戏开发系列博文之Unity3D 游戏引擎之平面小球重力感应详解,欢迎大家下载阅读,哇咔咔~~
  • Android开发学习之UnIty3D重力感应

    千次阅读 2013-12-09 09:31:22
    今天想和大家分享的是基于Unity3D的重力感应。首先简单地说一下Unity3D,Unity3D是一个支持Windwos、Android、ios、Mac、WII等多平台类型游戏的开发环境,具备可视化的编辑窗口,可以快捷、方便地对游戏场景进行编辑...
  • Unity3D教程:手游如何使用Unity3D自带的重力感应重力感应在手机游戏的开发中非常常见。Unity3D本身集合了重力感应的相关内容。简单的JS脚本示范一下重力感应的使用: //物体的贴图 var round : Texture2D;...
  • unity3D更多资源教程...Unity3D iphone重力感应控的两种方法: 方案一:speed。也可以把速度换成力。 脚本如下: public var simulateAccelerometer:boolean = false; var speed = 10.0; function U
  • using System.Collections; using System.Collections.Generic; using UnityEngine;... [Header("碰撞后是否停止重力感应")] public bool isCollStopAcce; [Header("限制最大倾斜角度")] public float .
  •  4:建立一个小球,并为其添加一个刚体,因为之后会通过重力感应为小球添加外部作用力,所以需要有刚体组件。     三:创建脚本  1.控制小球运动的脚本:首先要将手机的重力感应...
  • Unity自带陀螺仪功能,今天就利用陀螺仪实现一个VR相机功能。步骤如下:   打开Unity,创建一个新的C#脚本GyroController.cs,并挂在MainCamera游戏对象上,如图:   代码如下: usin...
  • 手机重力感应应该对大多数开发者并不陌生,在新一代智能手机Android IOS WP7 很多游戏都是使用手机自带重力感应功能制作的,强大的Unity3D 游戏引擎当然对这个也是完美支持的,今天由MOMO带大家学习3D 世界中的手机...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 440
精华内容 176
关键字:

unity重力感应

友情链接: PSO and GA documents.rar