GLSL 内置函数
inverse()
返回可逆方阵的逆矩阵。
示例版本:GLSL ES 3.00 / WebGL 2示例阶段:片段
函数签名
mat inverse(mat m)参数
- m
- 签名中给出的输入量,类型和尺寸必须匹配
返回值
与 m 相乘得到单位矩阵的方阵;输入奇异或病态时结果未定义。
在线示例
修改右侧代码,左侧预览会实时更新。
inverse 做什么
返回可逆方阵的逆矩阵。
看懂预览
inverse(mat2(1.0,0.5,0.0,1.0)) 用与原矩阵相反的方向错切坐标网格。把 0.5 改为 0.0,网格会恢复为横平竖直。
核心调用
inverse(mat2(1.0,0.5,0.0,1.0))*vec2(x,y);
奇异或病态矩阵的结果未定义,不能用来稳健地补救坏变换。
修改实验
把这个非对角元素 0.5 改成 -0.5。斜线会向另一侧倾斜,行列式仍为 1,因此新矩阵依旧可逆。