Unity 记录对象旋转参数并赋值

最近在项目记录 对象的 旋转参数,遇到了一个坑,记录一下,直接上代码看图说话:

1.定义参数,本人之前用的四元素记录

public class Data {

	public Quaternion q_rota;   //四元素

	public Vector3 v_rota;     //v3
}

2.分别记录旋转值(对象有重力)

样式:

Unity 记录对象旋转参数并赋值_第1张图片

		List infolist = new List ();

		//记录对象旋转值
		for (int i = 0; i < obj.Count; i++) {

			Data info = new Data ();

        
			info.q_rota = obj[i].transform.rotation;    //记录四元素值

			info.v_rota = obj[i].transform.rotation.eulerAngles;    //记录欧拉角绝对值

			infolist.Add (info);

		}

Unity 记录对象旋转参数并赋值_第2张图片

3.分别重新生成实例 

   3.1   读取四元素:

	go.transform.rotation = infolist [i].q_rota;//四元素赋值
	Debug.Log ("加载 四元素 旋转:" + go.transform.rotation);

Unity 记录对象旋转参数并赋值_第3张图片

   3.2    读取 v3:

	go.transform.rotation = Quaternion.Euler(infolist [i].v_rota);//v3赋值
	Debug.Log ("加载 V3 旋转:" + go.transform.rotation);

Unity 记录对象旋转参数并赋值_第4张图片

 

4.使用什么记录旋转并赋值,很明显!

 

5.来瓶 HEYTEA 压压惊

你可能感兴趣的:(Unity日常笔记)