游戏开发论坛

 找回密码
 立即注册
搜索
12
返回列表 发新帖
楼主: zyfu0000

游戏引擎为什么要有自己的数学库?有什么好处?

[复制链接]

45

主题

126

帖子

126

积分

注册会员

Rank: 2

积分
126
 楼主| 发表于 2009-5-30 11:00:00 | 显示全部楼层

Re: Re:游戏引擎为什么要有自己的数学库?有什么好处?

sjinny: Re:游戏引擎为什么要有自己的数学库?有什么好处?

也许有时只是为了和自己的接口风格相一致……

就像一楼说的,如果SetWorldTransfom()函数设置D3DXMATRIX,如果你自己在程序中用自己的Matrix类,你不是还要先转换到D3DXMATRIX吗?这样不就浪费操作了吗?
随便问一下,这样对程序的速度影响有多大?

ixnehc: Re:游戏引擎为什么要有自己的数学库?有什么好处?
数学库不一定在渲染模块中使用,你不能要求逻辑模块也去链接dx的库

不是很明白。

59

主题

984

帖子

1200

积分

金牌会员

Rank: 6Rank: 6

积分
1200
发表于 2009-5-30 16:59:00 | 显示全部楼层

Re: Re:游戏引擎为什么要有自己的数学库?有什么好处?

ixnehc: Re:游戏引擎为什么要有自己的数学库?有什么好处?

1.自己实现的数学库可以内联编译
2.自己写的数学库可以自己扩充,而使用dx带的,你不能保证永远都满足要求,到那时候你就要面对使用两个数学库的窘境了.
3.数学库不一定在渲染模块中使用,你不能要求逻辑模块也去链接dx的库


有多少人看过dx中最新的xna lib了,跨pc和xbox平台,全内联, VMX128 Vector(xbox)或者SSE/SSE2(pc)指令优化,并且独立于dx中的其他库。

如果有额外的需求,我只会选择扩展缺少的功能,而不是重现实现整个库。

19

主题

638

帖子

638

积分

高级会员

Rank: 4

积分
638
发表于 2009-5-30 18:16:00 | 显示全部楼层

Re:游戏引擎为什么要有自己的数学库?有什么好处?

xna math太变态了,几乎全内联,而是全是SIMD指令,不愧是从XBox的API移植过来的。
可C#用不了啊,怨念中……

4

主题

8

帖子

12

积分

新手上路

Rank: 1

积分
12
发表于 2009-5-30 21:20:00 | 显示全部楼层

Re:游戏引擎为什么要有自己的数学库?有什么好处?

比如D3DXVec3Trans,最终返回的是D3DXVECTOR4,如果你想要D3DXVECTOR3,又想有效率,就只有自己实现了。。。。。。。

8

主题

111

帖子

163

积分

注册会员

Rank: 2

积分
163
发表于 2009-5-30 22:41:00 | 显示全部楼层

Re:游戏引擎为什么要有自己的数学库?有什么好处?

12楼,受教了,xna lib还真不太了解,下一个看看.

0

主题

10

帖子

10

积分

新手上路

Rank: 1

积分
10
发表于 2009-5-31 11:47:00 | 显示全部楼层

Re:游戏引擎为什么要有自己的数学库?有什么好处?

一般的引擎都自己有,比较同意ixnehc的说法,还是一个设计结构上的考虑.

36

主题

1047

帖子

1147

积分

金牌会员

Rank: 6Rank: 6

积分
1147
发表于 2009-6-1 23:28:00 | 显示全部楼层

Re:游戏引擎为什么要有自己的数学库?有什么好处?

没有什么为什么,也无所谓好处坏处,做引擎如果连数学库都想偷懒,还做什么引擎?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-12-20 04:36

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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