游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3574|回复: 9

这些日子使用DDraw的感受

[复制链接]

89

主题

822

帖子

847

积分

高级会员

Rank: 4

积分
847
发表于 2007-10-2 12:18:00 | 显示全部楼层 |阅读模式
因为一些需要,最近研究了几天DDraw。发现了下面几个问题:

1、ddraw的Blt并不如想象的那么高效,800 * 600下32位我的机器只能有800帧。
2、传统使用MMX的alpha-blend正受到其他方式的挑战。
3、对于画面的需求,制作对美工的要求难度更高。

总之一点就是我将使用3D技术来处理2D,放弃ddraw

5

主题

686

帖子

697

积分

高级会员

Rank: 4

积分
697
QQ
发表于 2007-10-2 12:44:00 | 显示全部楼层

Re:这些日子使用DDraw的感受

用3D来处理2D也有很多麻烦的事,主要是硬件上的限制

2万

主题

2万

帖子

6万

积分

论坛元老

Rank: 8Rank: 8

积分
66489
QQ
发表于 2007-10-2 15:05:00 | 显示全部楼层

Re:这些日子使用DDraw的感受

blt从内存到显存,本身就不快。你每屏都那么干当然不行。

一般的做法是将图片全部放在显存,在显存之间blt。

要么是在内存创建一个和屏幕一样大的区域,在上面绘图,每一帧再整个bltfast到真实屏幕上。

45

主题

1163

帖子

1165

积分

金牌会员

Rank: 6Rank: 6

积分
1165
发表于 2007-10-2 19:39:00 | 显示全部楼层

Re:这些日子使用DDraw的感受

D3D,要经过渲染管道,而DDRAW的,只要贴图上去,那为什么DDRAW反而慢?

89

主题

822

帖子

847

积分

高级会员

Rank: 4

积分
847
 楼主| 发表于 2007-10-2 20:53:00 | 显示全部楼层

Re: 这些日子使用DDraw的感受

blt从内存到显存,本身就不快。你每屏都那么干当然不行。

一般的做法是将图片全部放在显存,在显存之间blt。

要么是在内存创建一个和屏幕一样大的区域,在上面绘图,每一帧再整个bltfast到真实屏幕上。


那你是不是至少每一帧要调用一次bltfast(如果是窗口模式你还只能用Blt),另外不是所有的后备表面都能建立在显存里的。

我换个说法应该比较容易理解了吧

也就是说在我的机器上每一秒钟只能调用800次Blt把一幅800 * 600的32位色深的图片从一个离屏表面拷贝到主表面

5

主题

686

帖子

697

积分

高级会员

Rank: 4

积分
697
QQ
发表于 2007-10-2 22:30:00 | 显示全部楼层

Re: Re:这些日子使用DDraw的感受

小小C: Re:这些日子使用DDraw的感受

D3D,要经过渲染管道,而DDRAW的,只要贴图上去,那为什么DDRAW反而慢?


D3D的数据流是显存->显存,而DDRAW的数据流是内存->显存,所以要慢得多

0

主题

769

帖子

1052

积分

金牌会员

Rank: 6Rank: 6

积分
1052
发表于 2007-10-2 22:42:00 | 显示全部楼层

Re:这些日子使用DDraw的感受

DDRAW?- -#好像都快进坟墓的东西了哦~~~
老掉牙了,研究没什么好处

89

主题

822

帖子

847

积分

高级会员

Rank: 4

积分
847
 楼主| 发表于 2007-10-3 17:42:00 | 显示全部楼层

Re:这些日子使用DDraw的感受

D3D9的UpdateSurface就更慢了,800 * 600 32位的图像每秒只有300帧不到。而且UpdateSurface只支持从内存到default,不支持内存到内存,也不支持defualt到default。

不过有个好处是他支持

89

主题

822

帖子

847

积分

高级会员

Rank: 4

积分
847
 楼主| 发表于 2007-10-3 17:43:00 | 显示全部楼层

Re:这些日子使用DDraw的感受

alpha-blend

0

主题

769

帖子

1052

积分

金牌会员

Rank: 6Rank: 6

积分
1052
发表于 2007-10-4 11:50:00 | 显示全部楼层

Re:这些日子使用DDraw的感受

LZ可以试下用D3D画一个四方形+纹理来实现2D效果
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-6-20 19:33

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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