<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      Unity 使用 陀螺儀 實現(xiàn) 《王者榮耀》 登入界面 背景動態(tài)效果

      在 《王者榮耀》 登入界面

      左右上下晃動手機(有些手機不支持)可以看到背景在變化

      我使用的是iPhone SE 效果如下:

      對比兩張圖片的左下角 可以看到差異

       

      至于為什么要這么做:

      1.使用貼圖資源實現(xiàn)一個簡單動畫效果

      2.有點3D感覺

      3.可能策劃閑的沒事做

       

       

      反正策劃需求要實現(xiàn)《王者榮耀》的效果

       

      苦逼的程序開始填坑之路

       

      實現(xiàn)這個功能 我用了2天 具體的坑就不一一說明了

       

      上代碼

      using UnityEngine;
      using System.Collections;
      
      public class GravityAnimation : MonoBehaviour
      {
          //方向是否反向移動
          public bool isReverseX = false;
          public bool isReverseY = false;
      
          //貼圖移動極限值
          public float maxX;
          public float minX;
          public float maxY;
          public float minY;
      
          //范圍(防止畫面抖動)
          public float range = 0.01f;
      
          //區(qū)間(陀螺儀的值改變多少區(qū)間 完成整個移動)
          public float section = 0.3f;
      
      
      
      
      
      
      
          //上一幀陀螺儀的值
          Vector3 lastAttitude = Vector3.zero;
      
          //移動平均值
          float meanX;
          float meanY;
      
      
      
      
      
         
          void Start()
          {
              Input.gyro.enabled = true;
          }
      
          // Update is called once per frame
          void Update()
          {
              if (transform == null)
              {
                  return;
              }
      
      
              //獲取陀螺儀的值
              Vector3 attitude = new Vector3(Input.gyro.attitude.x, Input.gyro.attitude.y, 0);
      
      
              //使安全范圍內(nèi) - 1之1
              attitude.x = Tool(attitude.x, 1, -1);
              attitude.y = Tool(attitude.y, 1, -1);
      
      
      
      
              float x = transform.localPosition.x;
              float y = transform.localPosition.y;
      
      
      
      
              //如果這幀變化不大 則使用上幀的值   防止抖動;
              if (System.Math.Abs(lastAttitude.x - attitude.x) >= range)
              {
                  //這幀的偏移量
                  float direction = attitude.x - lastAttitude.x;
      
                  meanX = (maxX - minX) / section;
      
                  //偏移量對于的實際坐標位移
                  float Position = direction * meanX;
      
      
                  if (isReverseX)
                  {
                      x = Tool(transform.localPosition.x + Position, maxX, minX);
                  }
                  else
                  {
                      x = Tool(transform.localPosition.x - Position, maxX, minX);
                  }
              }
      
      
      
              //如果這幀變化不大 則使用上幀的值   防止抖動;
              if (System.Math.Abs(lastAttitude.y - attitude.y) >= range)
              {
                  //這幀的偏移量
                  float direction = attitude.y - lastAttitude.y;
      
      
                  meanY = (maxY - minY) / section;
                  //偏移量對于的實際坐標位移
                  float Position = direction * meanY;
      
                  if (isReverseY)
                  {
                      y = Tool(transform.localPosition.y + Position, maxY, minY);
                  }
                  else
                  {
                      y = Tool(transform.localPosition.y - Position, maxY, minY);
                  }
              }
      
      
      
      
              transform.localPosition = new Vector3(x, y, transform.localPosition.z);
      
              //保存值
              lastAttitude = attitude;
      
          }
      
      
      
      
      
          //使第origin的值在界限之內(nèi)
          float Tool(float origin, float max, float min)
          {
              float retrun = origin;
      
              if (retrun >= max)
              {
                  retrun = max;
              }
              else if (retrun <= min)
              {
                  retrun = min;
              }
      
              return retrun;
          }
      
      
      }
      View Code

       

       

       

      上Demo鏈接

      鏈接:http://pan.baidu.com/s/1o7AoPg2 密碼:qmsr

       

       

      我總覺得本文章的實現(xiàn)方法可能有問題

      如果你有更好的方法

      跪求

       

      posted @ 2017-10-16 19:32  鄒強  閱讀(4801)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 欧美人与动交视频在线观看| 爱性久久久久久久久| 99久久无色码中文字幕| 精品久久久久国产免费| 天堂www在线中文| 在线a亚洲v天堂网2018| 亚洲WWW永久成人网站| 日韩亚洲国产中文字幕欧美| 国产精品亚洲欧美大片在线看 | 国产精品国产三级国产试看| 国产毛片子一区二区三区| 韩国免费A级毛片久久| 亚洲国产精品久久久久婷婷老年| 亚在线观看免费视频入口| 国产熟女精品一区二区三区| 久久精品国产亚洲av久| 无码一区二区波多野结衣播放搜索| 人妻内射视频麻豆| 污网站在线观看视频| 国内精品伊人久久久久av| 看全色黄大黄大色免费久久| 国产在线线精品宅男网址| 中文字幕有码无码AV| 国产成人精品一区二区不卡| 欧美一区二区三区欧美日韩亚洲| 自偷自拍亚洲综合精品| 99久久国产一区二区三区| 免费看视频的网站| 一亚洲一区二区中文字幕| 亚洲一区二区三区av激情| 亚洲精品理论电影在线观看| 无码全黄毛片免费看| 亚洲一区中文字幕人妻| 四虎精品视频永久免费| 日韩中文字幕免费在线观看| 在线 国产 欧美 专区| 福利视频在线一区二区| 国产乱精品一区二区三区| 久久精品亚洲精品国产色婷| 久久国产乱子精品免费女| 亚洲av成人网人人蜜臀|