游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2144|回复: 4

请问这个矩阵代表的是什么意思,谢谢!

[复制链接]

1

主题

2

帖子

6

积分

新手上路

Rank: 1

积分
6
发表于 2010-4-7 09:53:00 | 显示全部楼层 |阅读模式
最近看到一段代码如下,一直没理解

GLfloat m[16];
        memset(m,0,sizeof(m));
        m[10] = 1;
        m[15] = 1;
        m[0] = 1;
        m[5] = 1;
        m[3] = -f;
        m[0] = 1-fabs(f);

我的理解是先是单位矩阵,之后m0设置为拉伸和旋转之类的,现在就是m3这个值为什么设置了,我查了一些资料一般m3都应该是设置为0啊,实际效果是设置m3之后物体(假设是平面)旋转了,比直接调用glRotatef视觉效果要好很多,用glRotatef感觉平面旋转的怪怪的,旋转的时候就像平面被截掉一半似的,如果设置m3,感觉有纵深感

4

主题

9

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2010-4-7 13:51:00 | 显示全部楼层

Re:请问这个矩阵代表的是什么意思,谢谢!

说得很对哈。。。。

2

主题

429

帖子

435

积分

中级会员

Rank: 3Rank: 3

积分
435
发表于 2010-4-7 23:26:00 | 显示全部楼层

Re:请问这个矩阵代表的是什么意思,谢谢!

猜想应该是针对齐次坐标,后期归一化时对投影有影响。

假设有一顶点,乘以当前这个矩阵(行向量表示)。

            {1,0,0,1}
[1,0,0,0] * {0,1,0,0} = [1,0,0,1]
            {0,0,1,0}
            {0,0,0,1}

具体算法应该是基于某个公式的简化。确切作用及原理不太清楚。帮顶。

1

主题

2

帖子

6

积分

新手上路

Rank: 1

积分
6
 楼主| 发表于 2010-4-8 09:20:00 | 显示全部楼层

Re:请问这个矩阵代表的是什么意思,谢谢!

谢谢2楼,一直在找资料,都是正常的矩阵的介绍,继续顶!

0

主题

2

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2010-4-8 12:36:00 | 显示全部楼层

Re:请问这个矩阵代表的是什么意思,谢谢!

学习
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-6-10 06:49

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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