游戏开发论坛

 找回密码
 立即注册
搜索
查看: 10813|回复: 25

BITBLT+WINDOWS API和DIRECTX API写的游戏到底能差多少?

[复制链接]

12

主题

51

帖子

57

积分

注册会员

Rank: 2

积分
57
发表于 2007-4-24 20:53:00 | 显示全部楼层 |阅读模式
BITBLT+WIN API和DIRECTX写的游戏到底能差多少?

我现在还不太会用DIRECTX,从DIRECT SOUND就不会用.里面的渲染更别提了.

我现在用BITBLT + WIN API写的2D游戏.希望大牛人们说说DIRECTX的好处,还有如何入门.

写DIRECTX游戏不一定要用C吧? VB的效率如何?

270

主题

6442

帖子

6446

积分

论坛元老

Rank: 8Rank: 8

积分
6446
发表于 2007-4-24 21:40:00 | 显示全部楼层

Re:BITBLT+WINDOWS API和DIRECTX API写的游戏到底能差多少?

综合运行速度差3-10倍,这是我测试的结果,尤其是游戏里角色多的时候。

26

主题

537

帖子

537

积分

高级会员

Rank: 4

积分
537
发表于 2007-4-25 09:39:00 | 显示全部楼层

Re:BITBLT+WINDOWS API和DIRECTX API写的游戏到底能差多少?

要看你做的游戏类型,游戏类型决定了你可能采用怎样的地图规格以及地图上需要同时渲染多少个元素,需要渲染的东西越多,对效率要求越高。

DIRECTX理论上肯定比WINDOWS API快一些,但多一层封装怎么也不至于相差3-10倍,我只用.Net做过最基本的循环绘图试验,CGI+对DirectDraw,发现多数时候连1倍都差不到。不过如果要用全屏幕模式,只能建议选择DIRECTX了。

事实上很多时候效率的把握并不在于绘图这一步,而在于你如何能最高效地提供合适的内容交给电脑去绘制。在2D领域里只要把握住这一点,一般很少存在什么东西非DIRECTX不可。

至于DIRECTX游戏用C和用VB的效率问题,其实和前一个问题差不多,不少对象支持VB时又多封装了一层,但一般不该需要因此而考虑效率问题,否则只有两种可能:1、对项目效率要求高到了用汇编更合适;2、在提交绘制前你还有大量的自身代码优化工作没完成。

12

主题

51

帖子

57

积分

注册会员

Rank: 2

积分
57
 楼主| 发表于 2007-4-25 09:41:00 | 显示全部楼层

Re:BITBLT+WINDOWS API和DIRECTX API写的游戏到底能差多少?

象.net的GDI+循环绘图,你用什么执行循环呢?

26

主题

537

帖子

537

积分

高级会员

Rank: 4

积分
537
发表于 2007-4-25 10:06:00 | 显示全部楼层

Re:BITBLT+WINDOWS API和DIRECTX API写的游戏到底能差多少?

我的试验只是用一个for循环连绘一批图做比较,这与游戏循环无关

270

主题

6442

帖子

6446

积分

论坛元老

Rank: 8Rank: 8

积分
6446
发表于 2007-4-25 10:39:00 | 显示全部楼层

Re:BITBLT+WINDOWS API和DIRECTX API写的游戏到底能差多少?

我的作品1940III(API+GDI)个和重返中途岛(DX8+TV3D)就是个很好的对比.

32

主题

1583

帖子

1589

积分

金牌会员

Rank: 6Rank: 6

积分
1589
发表于 2007-4-25 13:04:00 | 显示全部楼层

Re:BITBLT+WINDOWS API和DIRECTX API写的游戏到底能差多少?

做一般的2D游戏,GDI是绝对足够的。

楼上的别再什么对比了,不然这里又会乱的。

32

主题

1583

帖子

1589

积分

金牌会员

Rank: 6Rank: 6

积分
1589
发表于 2007-4-25 13:06:00 | 显示全部楼层

Re:BITBLT+WINDOWS API和DIRECTX API写的游戏到底能差多少?

http://bbs.gameres.com/showthread.asp?threadid=60707

我以前做的GDI演示,我认为一般小游戏完全够用了。

DDraw的绘图效率在很多时候体现的不是很明显的。

12

主题

51

帖子

57

积分

注册会员

Rank: 2

积分
57
 楼主| 发表于 2007-4-25 13:28:00 | 显示全部楼层

Re:BITBLT+WINDOWS API和DIRECTX API写的游戏到底能差多少?

弱弱的问下,BITBLT属于GDI是吧?

26

主题

537

帖子

537

积分

高级会员

Rank: 4

积分
537
发表于 2007-4-25 15:09:00 | 显示全部楼层

Re:BITBLT+WINDOWS API和DIRECTX API写的游戏到底能差多少?

确切说,GDI规范中少不了用到BITBLT方法,而到了最底层,操作则与DirectX一样,都是去写缓存
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-2-23 01:28

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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