unity 矩阵探究

public void MatrixTest1(){

///Matrix4x4 是列矩阵,就是一个vector4表示一列,所以在c#中矩阵和Vector4只能矩阵右乘坐标。但是在shader中是矩阵左乘坐标,所以在shader中是行矩阵

Matrix4x4 moveMatrix1 = new Matrix4x4(new Vector4(1,0,0,0),new Vector4(0,1,0,0),new Vector4(0,0,1,0),new Vector4(1,1,1,1));//列矩阵,xyz 各位移一个单位

Matrix4x4 matrix4X4 = new Matrix4x4(new Vector4(1,0,0,1),new Vector4(0,1,0,1),new Vector4(0,0,1,1),new Vector4(0,0,0,1));//如果是行矩阵(这里只是演示),xyz各位移一个单位

Matrix4x4 moveMatrix2 = new Matrix4x4(new Vector4(1,0,0,0),new Vector4(0,1,0,0),new Vector4(0,0,1,0),new Vector4(2,2,2,1));

// Matrix4x4 resultMatrix = moveMatrix1 * moveMatrix2;

var posMatrix = new Vector4(transform.localPosition.x,transform.localPosition.y,transform.localPosition.z,1);

Vector3 pos1 = moveMatrix1 * posMatrix ;

Vector3 pos2 = moveMatrix1 *( moveMatrix2 * posMatrix);

Debug.Log($"pos1 is {pos1} pos2 is {pos2}");

}

以上只是做个记录,怕忘记了,如果错,后面再来改

相关推荐
优梦创客5 小时前
《黑神话悟空》开发框架与战斗系统解析
unity·游戏开发·黑神话悟空·战斗系统·解包
dot.Net安全矩阵7 小时前
.NET内网实战:通过命令行解密Web.config
前端·学习·安全·web安全·矩阵·.net
sweetheart7-77 小时前
LeetCode54. 螺旋矩阵(2024秋季每日一题 21)
线性代数·矩阵·力扣·数组·每日一题
zero_one_Machel8 小时前
leetcode73矩阵置零
算法·leetcode·矩阵
奈斯。zs8 小时前
yjs08——矩阵、数组的运算
人工智能·python·线性代数·矩阵·numpy
仙魁XAN10 小时前
Unity 设计模式 之 创造型模式-【工厂方法模式】【抽象工厂模式】
unity·设计模式·工厂方法模式·抽象工厂模式
我要吐泡泡了哦12 小时前
GAMES104:15 游戏引擎的玩法系统基础-学习笔记
笔记·学习·游戏引擎
躺下睡觉~20 小时前
Unity-Transform类-父子关系
java·unity·游戏引擎
躺下睡觉~20 小时前
Unity-Transform类-缩放和看向
unity·游戏引擎
君莫愁。1 天前
【Unity】检测鼠标点击位置是否有2D对象
unity·c#·游戏引擎