游戏开发论坛

 找回密码
 立即注册
搜索
查看: 7876|回复: 12

问一个数学问题,关于逆转置矩阵,不解!

[复制链接]

119

主题

1367

帖子

1393

积分

金牌会员

Rank: 6Rank: 6

积分
1393
发表于 2007-6-27 10:27:00 | 显示全部楼层 |阅读模式
最近在搞shader,看到一些例子里面的法线需要变换,可是变换手法比较奇特,是用法线去乘逆转置矩阵, 找了一些相关文档,应该和这个有关

Transforming a Plane
Lengyel shows in Mathematics for 3D Game Programming & Computer
Graphics that we can transform a plane (n, d) by treating it as a 4D vector
and multiplying it by the inverse-transpose of the desired transformation
matrix. Note that the plane’s normal vector must be normalized
first.


Lengyel 在他的书Mathematics for 3D Game Programing & Computer Graphics中提到过平面(n,d)可以被当作一个4D向量一样转换,将这个4D向量乘以期望的转换矩阵的逆转置矩阵就可以完成平面的转换。但是千万要注意,在转换之前一定要将平面的法线向量标准化。

不太理解, 请赐教!

119

主题

1367

帖子

1393

积分

金牌会员

Rank: 6Rank: 6

积分
1393
 楼主| 发表于 2007-6-27 16:09:00 | 显示全部楼层

Re:问一个数学问题,关于逆转置矩阵,不解!

没有人碰到过这个问题吗?法线在shader里面的变换,何解?
自己顶一个

59

主题

1104

帖子

1199

积分

金牌会员

Rank: 6Rank: 6

积分
1199
发表于 2007-6-27 16:49:00 | 显示全部楼层

Re:问一个数学问题,关于逆转置矩阵,不解!

3*3旋转的inverse等于它的transpose,所以先inverse再transpose之后,就可以移除掉translation.
如果你的矩阵没有translation的话,直接乘m也可以.

119

主题

1367

帖子

1393

积分

金牌会员

Rank: 6Rank: 6

积分
1393
 楼主| 发表于 2007-6-27 17:08:00 | 显示全部楼层

Re:问一个数学问题,关于逆转置矩阵,不解!

也就是说如果没有平移的话直接乘worldmatrix就可以了?
只有旋转的确 先inverse再transpose就是原来的worldmatrix。

先inverse再transpose之后,就可以移除掉translation,还要消化消化



0

主题

9

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2007-6-27 17:47:00 | 显示全部楼层

Re:问一个数学问题,关于逆转置矩阵,不解!

你可以研究一下,放大一个对象,看看对象上的法线怎么变化,是不是直接乘缩放矩阵就可以。

119

主题

1367

帖子

1393

积分

金牌会员

Rank: 6Rank: 6

积分
1393
 楼主| 发表于 2007-6-28 09:31:00 | 显示全部楼层

Re:问一个数学问题,关于逆转置矩阵,不解!

逆转置的几何意义是什么?
还是没想明白
实在不行还得去看线性代数,很不喜欢看那些书

2

主题

141

帖子

141

积分

注册会员

Rank: 2

积分
141
发表于 2007-6-28 10:12:00 | 显示全部楼层

Re:问一个数学问题,关于逆转置矩阵,不解!

1.如果传输模型位置的仅仅是rotation 或 translation,
      可以用该Matrix直接作用于法线,获得最终的法线.
2.如果传输模型的Matrix 是同比例scale,
      用该matrix作用法线后,获得的新法线需要重新normalize
3.如果非同比例scale的matrix
      必须用该matrix的inverse后,再transpose来作用于该法线

具体内容可参考:  Real-Time Shader Programming 82-83页

119

主题

1367

帖子

1393

积分

金牌会员

Rank: 6Rank: 6

积分
1393
 楼主| 发表于 2007-6-28 10:28:00 | 显示全部楼层

Re:问一个数学问题,关于逆转置矩阵,不解!

谢谢楼上的道友
最需要的就是这样的解答!!!

0

主题

228

帖子

285

积分

中级会员

Rank: 3Rank: 3

积分
285
发表于 2007-6-28 11:49:00 | 显示全部楼层

Re:问一个数学问题,关于逆转置矩阵,不解!

学习了

5

主题

26

帖子

57

积分

注册会员

Rank: 2

积分
57
发表于 2007-6-29 17:04:00 | 显示全部楼层

Re:问一个数学问题,关于逆转置矩阵,不解!

用woldmatrix的逆的转置变换法线的原因不是要变换法线,其意义是变换一个平面,变换结果为到它变换后顶点的一致空间.你反推导一下透视矩阵的原理,你就能明白原理了.
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-6-16 05:42

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表