zoukankan      html  css  js  c++  java
  • Unity陀螺仪

    using UnityEngine;
    using System.Collections;
    using UnityEngine.UI;
    //摄像机  陀螺仪转动
    public class TGyro : MonoBehaviour
    {
    	
    	//bool gyroBool;
    	Gyroscope gyro;
    	Quaternion quatMult;
    	Quaternion quatMap;
    	//UILabel ul;
    	public GameObject player;
    	public GameObject camParent;
    	void Awake()
    	{
    		//player = GameObject.Find("Player");
    		// find the current parent of the camera's transform
    		Transform currentParent = transform.parent;
    		// instantiate a new transform
    		camParent = new GameObject("camParent");
    		// match the transform to the camera position
    		camParent.transform.position = transform.position;
    		// make the new transform the parent of the camera transform
    		transform.parent = camParent.transform;
    		// make the original parent the grandparent of the camera transform
    		//camParent.transform.parent = currentParent;-
    		// instantiate a new transform
    		GameObject camGrandparent = new GameObject("camGrandParent");
    		// match the transform to the camera position
    		camGrandparent.transform.position = transform.position;
    		// make the new transform the parent of the camera transform
    		camParent.transform.parent = camGrandparent.transform;
    		// make the original parent the grandparent of the camera transform
    		camGrandparent.transform.parent = currentParent;
    		
    		//gyroBool = true;
    		//if (gyroBool) {
    		gyro = Input.gyro;
    		//ul = GameObject.Find("Rotation").GetComponent<UILabel>();
    		
    		gyro.enabled = true;
    		camParent.transform.eulerAngles = new Vector3(0,0, 0);
    		quatMult = new Quaternion(0, 0, 1, 0);//猜测陀螺仪默认是向下的,这里是沿z轴转180度
    		
    	}
    	
    	void Update()
    	{
    		
    		quatMap = new Quaternion(gyro.attitude.x, gyro.attitude.y, gyro.attitude.z, gyro.attitude.w);
    		Quaternion qt=quatMap * quatMult;
    		
    		transform.localRotation =qt;
    		
    		
    		//ul.text = "Rotation:" + transform.localRotation + "player" + player.transform.localRotation;
    		
    		
    	}
    	
    }
    


     

  • 相关阅读:
    关于let 和 var 的作用域问题
    ES6数组新增方法总结
    Javascript中的async await
    Promise个人笔记---【Promise的前世今生】
    KEIL, MDK 关于C99结构体变量初始化
    C89,C99: C数组&结构体&联合体快速初始化
    13. DMA
    GPIO, AFIO
    27. USART, Universal synchronous asynchronous receiver transmitter
    中断控制及basepri 与 basepri_max
  • 原文地址:https://www.cnblogs.com/nafio/p/9137455.html
Copyright © 2011-2022 走看看