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 小时前
UE/Unity/Webgl云渲染推流网址,如何与外部网页嵌套和交互?
unity·webgl·webgl云渲染网页交互·点量云流
ynxw5 小时前
Unity AR 实现模型交互
android·unity·ar·交互
AgilityBaby10 小时前
在Unreal Engine 5(UE5)中,Get PlayerPawn和Get PlayerController的区别以及如何计算玩家和目标之间的距离。
笔记·ue5·游戏引擎·蓝图
还债大湿兄15 小时前
游戏引擎学习路径与技术栈指南
学习·游戏引擎
西西弗Sisyphus2 天前
低秩分解的本质是通过基矩阵和系数矩阵的线性组合,以最小的存储和计算代价近似表示复杂矩阵
线性代数·算法·矩阵
远方16092 天前
40-Oracle 23 ai Bigfile~Smallfile-Basicfile~Securefile矩阵对比
数据库·人工智能·sql·oracle·矩阵·database
Magnum Lehar2 天前
wpf3d游戏引擎EditorColors.xaml实现
ui·游戏引擎·wpf
Magnum Lehar3 天前
vscode游戏引擎的build-clean配置
ide·vscode·游戏引擎
Magnum Lehar3 天前
vscode游戏引擎的build-all全局配置
ide·vscode·游戏引擎
龚子亦3 天前
【Shader学习】完整光照效果
unity·技术美术·shader