UnityAPI的学习——Matrix4x4类

在脚本中通常用Vector3、Quaternion、Transform等类的属性和方法来对物体进行交换,Matrix4x4类通常用在一些比较特殊的地方,如对摄像机的非标准投影变换。

Matrix4x4类实例方法

在Matrix4x4类中,涉及的实例方法有MultiplyPoint方法、MultiplyPoint3x4方法、MultiplyVector方法和SetTRS方法。

MultiplyPoint方法:投影矩阵变换

基本语法

public Vector3 MultiplyPoint(Vector3 v);

功能说明:此方法的功能是用来对点v进行投影矩阵变换。

MultiplyPoint3x4:矩阵变换

基本语法

public Vector3 MultiplyPoint3x4(Vector3 v);

功能说明
此方法的功能是用来对参数值点v进行矩阵变换

MultiplyVector方法:矩阵变换

基本语法

public Vector3 MultiplyVector(Vector3 v);

功能说明
此方法的功能是用来对方向向量v进行矩阵变换

SetTRS方法:重设Matrix4x4变换矩阵

基本语法

public void SetTRS(Vector3 pos ,Quaternion q ,Vector3 s);
其中参数pos为位置向量,参数q为旋转角,参数s为放缩向量

功能说明
此方法用来重设Matrix4x4变换矩阵

Matrix4x4类静态方法

在Matrix4x4类中,涉及的静态方法有Ortho方法、Perspective方法和TRS方法。

Ortho方法:创建正交投影矩阵

基本语法

public static Matrix4x4 Ortho(float left ,float right ,float bottom ,float top , float zNear ,float zFar);
其中参数left为正交视口左边边长,参数right为正交视口右边边长,参数bottom为正交视口下部边长,参数top为正交视口上部边长,参数zNear为近视口距离,参数zFar为远视口距离

功能说明:此方法的功能是创建一个正交投影矩阵。

Perspective方法:创建透视投影矩阵

基本语法

public static Matrix4x4 Perspective(float fov ,float aspect ,float zNear ,float zFar);
其中参数fov为视口夹角,参数aspect为视口纵横比例,参数zNear为近视口距离,参数zFar为远视口距离。

功能说明
此方法的功能是创建一个透视投影矩阵。

TRS方法:返回Matrix4x4实例

基本语法

public static Matrix4x4 TRS(Vector3 pos ,Quaternion q ,Vector3 s);
其中参数pos为位置向量,参数q为旋转角,参数s为放缩向量

功能说明:此方法使用pos、q和s作为变换参数返回一个Matrix4x4实例。

  • 8
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值