Matrix4x4矩阵 api
Matrix4x4 矩阵api介绍
Namespace: UnityEngine
Description 描述
A standard 4×4 transformation matrix.
一个标准的4×4变换矩阵。
A transformation matrix can perform arbitrary linear 3D transformations (i.e. translation, rotation, scale, shear etc.) and perspective transformations using homogenous coordinates. You rarely use matrices in scripts; most often using Vector3s, Quaternions and functionality of Transform class is more straightforward. Plain matrices are used in special cases like setting up nonstandard camera projection.
一个变换矩阵可以表达任意的线性3D变换(例如平移,旋转,缩放,切变等)并且使用齐次坐标系进行投影变换。我们基本上不会在脚本中使用矩阵;通常都直接使用三维向量、四元数以及Transform对象的函数。在特殊的场合例如设置一个非标准化的摄像机投影时才使用纯粹的矩阵。
Consult any graphics textbook for in depth explanation of transformation matrices.
参考任意一本图形学对于变换矩阵的深入解释。
In Unity, Matrix4x4 is used by several Transform, Camera, Material and GL functions.
在Unity中,Matrix4x4对象被很多Transform,Camera,Matierial和Gl中的函数使用。
Matrices in unity are column major. Data is accessed as: row + (column*4). Matrices can be indexed like 2D arrays but in an expression like mat[a, b], a refers to the row index, while b refers to the column index (note that this is the opposite way round to Cartesian coordinates).
Unity中的矩阵使用的是列优先。数据通过行+(列*4)的方式获取。矩阵可以被索引为类似二维数组的形式,但是要以mat[a,b]这样的表达式。其中a代表行号,b代表列号(注意这正好与笛卡尔坐标系相反)。
Static Variables 静态变量
Variables 变量
| determinant | The determinant of the matrix. 矩阵的决定因素。 |
| inverse | The inverse of this matrix (Read Only). 这个矩阵的逆矩阵(只读)。 |
| isIdentity | Is this the identity matrix? 这个矩阵是单位矩阵吗? |
| this[int,int] | Access element at [row, column]. 获取[行,列]所对应的元素。 |
| transpose | Returns the transpose of this matrix (Read Only). 返回这个矩阵的转置矩阵(只读)。 |
Functions 方法
| GetColumn | Get a column of the matrix. 获取这个矩阵的一列。 |
| GetRow | Returns a row of the matrix. 返回这个矩阵的一行。 |
| MultiplyPoint | Transforms a position by this matrix (generic) 使用该矩阵对一个坐标(点)进行变换(普通) |
| MultiplyPoint3x4 | Transforms a position by this matrix (fast). 使用该矩阵对一个坐标(点)进行变换(快速) |
| MultiplyVector | Transforms a direction by this matrix. 使用该矩阵对一个方向(按方法名理解应该是向量吧,向量包含方向和大小,译者注)进行变换 |
| SetColumn | Sets a column of the matrix. 给这个矩阵的一列赋值。 |
| SetRow | Sets a row of the matrix. 给这个矩阵的以行赋值。 |
| SetTRS | Sets this matrix to a translation, rotation and scaling matrix. 把这个矩阵变为平移、旋转和缩放矩阵。 |
| ToString | Returns a nicely formatted string for this matrix. 返回一个该矩阵的漂亮的格式化字符串。 |
Static Functions 静态方法
| Ortho | Creates an orthogonal projection matrix. 创建一个正交投影矩阵。 |
| Perspective | Creates a perspective projection matrix. 创建一个透视投影矩阵。 |
| Scale | Creates a scaling matrix. 创建一个缩放矩阵。 |
| TRS | Creates a translation, rotation and scaling matrix. 创建一个平移、旋转和缩放矩阵。 |
Operators 运算符重载
| operator * | Multiplies two matrices. 两个矩阵相乘。 |
转http://wiki.ceeger.com/script/unityengine/classes/matrix4x4/matrix4x4
Matrix4x4矩阵 api的更多相关文章
- Unity手游之路<四>3d旋转-四元数,欧拉角和变幻矩阵
http://blog.csdn.net/janeky/article/details/17272625 今天我们来谈谈关于Unity中的旋转.主要有三种方式.变换矩阵,四元数和欧拉角. 定义 变换矩 ...
- Unity3D开发之Matrix4x4矩阵变换
在Unity开发中时常会用到Matrix4x4矩阵来变换场景中对象的位置.旋转和缩放.但是很多人都不太理解这儿Matrix4x4变换矩阵.通过DX中的变换矩阵我来讲一讲在unity中这个变换矩阵是怎么 ...
- ECOS- 技术问题答疑[转]
http://bbs.ec-os.net/read.php?tid=37 1.为什么我购买的是源码版,但是我的base/ego.php(或者base/ego/目录下文件)却是加密的? 答:ego 源 ...
- ecos 问题答疑(转)
1.为什么我购买的是源码版,但是我的base/ego.php(或者base/ego/目录下文件)却是加密的? 答:ego 源码商业授权文件仅用于和商派软件签订源码协议的商业用户按照甲乙的源码保护约定 ...
- 50家硅谷IT公司技术博客
分享一下 50 家硅谷优秀 IT 公司技术博客,从中可以了解企业文化,技术特色和设计语言,如果直接列出来很单调,加上点评,算吐槽版吧. 知名大厂 1. Facebook https://www.f ...
- MultiplyVector方法
该方法的功能是用来对方向向量v进行矩阵变换,当矩阵与v进行变换时,只是对v的方向进行转换.那么系统就会对参与变换的Matrix4x4矩阵M进行特殊处理. 例如:经过系统处理后就变为 其中n002 + ...
- Spark机器学习MLlib系列1(for python)--数据类型,向量,分布式矩阵,API
Spark机器学习MLlib系列1(for python)--数据类型,向量,分布式矩阵,API 关键词:Local vector,Labeled point,Local matrix,Distrib ...
- 介绍Unity中相机的投影矩阵与剪切图像、投影概念
这篇作为上一篇的补充介绍,主要讲Unity里面的投影矩阵的问题: 上篇的链接写给VR手游开发小白的教程:(三)UnityVR插件CardboardSDKForUnity解析(二) 关于Unity中的C ...
- html5 canvas常用api总结(三)--图像变换API
canvas的图像变换api,可以帮助我们更加方便的绘画出一些酷炫的效果,也可以用来制作动画.接下来将总结一下canvas的变换方法,文末有一个例子来更加深刻的了解和利用这几个api. 1.画布旋转a ...
随机推荐
- 服务器不安装Excel,实现导出Excel功能
/// <summary> /// 导出为Excel /// </summary> /// <param name="sender"></ ...
- Delphi Modbus RTU CRC16校验码
function CheckCrc16(const ABuf; ALen: Integer): Boolean;var uwTemp: WORD; i, j: BYTE; P: PByte;begin ...
- Android Server Push - MQTT推送实现tokudu
转自:http://www.juapk.com/thread-2834-1-1.html 项目说明:采用MQTT协议实现Android推送消息传输协议:IBM的MQTT协议 JAR包地址:下载服务器安 ...
- IntelliJ全家桶修改terminal字体的方法
IntelliJ IDEA 设置Terminal 窗口字体大小 我在Setting中查看了所有和Terminal字样有关的设置,都没有找到设置字体大小的方法,原来Terminal也只需要设置Conso ...
- python 实现创建文件夹和创建日志文件
一.实现创建文件夹和日志 #!/usr/bin/env python # -*- coding:utf-8 -*- # Author: nulige import os import datetime ...
- golang sync.Cond 类
众所周知,go语言在多线程方面的支持是十分完备的.在go语言sync包中提供了一个Cond类,这个类用于goroutine之间进行协作. 这个类并不复杂,只有三个函数,Broadcast() , Si ...
- 使用json-server搭建模拟api接口
转载:http://blog.csdn.net/adojayfan/article/details/55011674 作为前端和客户端开发人员,在后端还没有给出对应的api接口时,我们无法做测试. 这 ...
- Node.js 网页爬虫再进阶,cheerio助力
任务还是读取博文标题. 读取app2.js // 内置http模块,提供了http服务器和客户端功能 var http=require("http"); // cheerio模块, ...
- Android学习(五) 圆角实现(转)
设置边框圆角可以在drawable-mdpi目录里定义一个取名为corners_bg.xml <?xml version="1.0" encoding="utf-8 ...
- Laravel之视图和Blade模板引擎
一.视图 1.视图文件存放在resources/views目录2.视图载入及传参 return view('greeting', ['name' => 'James']); 还可以通过with ...