码迷,mamicode.com
首页 > 编程语言 > 详细

Unity中的Matrix4x4类

时间:2016-05-11 23:33:44      阅读:661      评论:0      收藏:0      [点我收藏+]

标签:

     物体平移旋转一般变换底层都是用矩阵来表示的,一般不会用到这个类。有时候需要一些世界坐标与局部坐标转换的时候,可能就要用到了。

 1 //创建平移 旋转 缩放矩阵 可以理解为一个坐标系(不知道对不对。。)
 2         Matrix4x4 mat = Matrix4x4.TRS(new Vector3(1,1,1),Quaternion.Euler(0,90,0),Vector3.one);
 3         //得到在这个坐标系点(2,2,2)在世界坐标系的坐标
 4         print(mat.MultiplyPoint(new Vector3(2,2,2)));
 5         //在世界坐标系点(2,2,2)在mat变换下的坐标
 6         //局部坐标*mat = 世界坐标
 7         //世界坐标*mat的逆 = 局部坐标
 8         print(mat.inverse.MultiplyPoint(new Vector3(2,2,2)));
 9         //MultiplyVector方法 感觉没啥用
10         //把方向向量dir 做了一个旋转
11         Vector3 dir = new Vector3(3,2,3);
12         print (mat.MultiplyVector (dir) == Quaternion.Euler (0, 90, 0) * dir);

    又一个大雾霾天.....

Unity中的Matrix4x4类

标签:

原文地址:http://www.cnblogs.com/naix-x/p/5483910.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!