游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3878|回复: 8

大家觉得OGRE的matrix quaternion vector类写得怎么样

[复制链接]

18

主题

58

帖子

132

积分

注册会员

Rank: 2

积分
132
发表于 2013-9-25 20:57:52 | 显示全部楼层 |阅读模式
大家觉得写得怎么样,我怎么觉得写得一般了,而且好多地方都可以改进,比如matrix里数据成员是这样定义的 Real m[3][3];          Real m[9]; 应该要好点吧,请大家指教下,谢谢了

5

主题

35

帖子

507

积分

高级会员

Rank: 4

积分
507
发表于 2013-9-26 10:02:09 | 显示全部楼层
貌似代码清晰些 方便读

7

主题

69

帖子

263

积分

中级会员

Rank: 3Rank: 3

积分
263
发表于 2013-9-30 17:19:59 | 显示全部楼层
Real m[3][3];  可以很容易的获取第2行3列的内容。    Real m[9];你这个可以吗?

18

主题

58

帖子

132

积分

注册会员

Rank: 2

积分
132
 楼主| 发表于 2013-10-1 22:17:54 | 显示全部楼层
楼上说得对,但是读取行和列的方法,应该很少用吧

0

主题

228

帖子

285

积分

中级会员

Rank: 3Rank: 3

积分
285
发表于 2013-10-6 00:51:34 | 显示全部楼层
kyothebest 发表于 2013-10-1 22:17
楼上说得对,但是读取行和列的方法,应该很少用吧

说明你对矩阵操作完全还不熟悉

0

主题

153

帖子

409

积分

中级会员

Rank: 3Rank: 3

积分
409
发表于 2013-10-16 16:49:40 | 显示全部楼层
有时会用到

0

主题

5

帖子

108

积分

注册会员

Rank: 2

积分
108
发表于 2013-11-18 18:14:03 | 显示全部楼层
大神们能写一些代码来看看不

5

主题

84

帖子

229

积分

中级会员

Rank: 3Rank: 3

积分
229
发表于 2013-12-2 17:40:35 | 显示全部楼层
我倒是看过一个高手用 union 的方法

class CMatrix4X4
{
public:

union
{
float m[ 4 ][ 4 ];
struct
{
float m[ 16 ];
};
};
};

这样子就可以用两种方法读写行列数据了

CMatrix4X4 mat;
mat.m[ 2 ][ 3 ] = 0.1f;
mat.m[ 2 * 4 + 4 ] = 0.2f;

0

主题

35

帖子

132

积分

注册会员

Rank: 2

积分
132
发表于 2013-12-3 11:40:12 | 显示全部楼层
Ogre代码优先重视扩展性,效率是第二考虑。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-2-26 08:06

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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