游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3905|回复: 11

问个幼稚的问题,现在游戏画每一帧的是不是都重画全屏?

[复制链接]

60

主题

1319

帖子

1319

积分

金牌会员

Rank: 6Rank: 6

积分
1319
发表于 2004-9-5 08:46:00 | 显示全部楼层 |阅读模式
我写的时候都是重画全屏的。不变的地方我也都重画。
不知道这么做是不是很影响效率。

4

主题

24

帖子

24

积分

注册会员

Rank: 2

积分
24
发表于 2004-9-5 08:52:00 | 显示全部楼层

Re:问个幼稚的问题,现在游戏画每一帧的是不是都重画全

如果是3D由硬件完成擦除,如果用2D我想最好能只擦除改变的地方,这样对效率很有帮助

18

主题

69

帖子

69

积分

注册会员

Rank: 2

积分
69
QQ
发表于 2004-9-5 09:19:00 | 显示全部楼层

Re:问个幼稚的问题,现在游戏画每一帧的是不是都重画全

我还以为是调用DX呢?
居然是这样…………

1

主题

14

帖子

14

积分

新手上路

Rank: 1

积分
14
发表于 2004-9-5 11:13:00 | 显示全部楼层

Re:问个幼稚的问题,现在游戏画每一帧的是不是都重画全

当然是调用DX,你以为它自己就能做?

32

主题

377

帖子

378

积分

中级会员

Rank: 3Rank: 3

积分
378
发表于 2004-9-5 11:54:00 | 显示全部楼层

Re:问个幼稚的问题,现在游戏画每一帧的是不是都重画全

我认为:2d画面的游戏,即便是用全屏重画的方式,达到要求的效率也是可以的,所以无需作更为复杂的处理……

而且,我要问的是:2d游戏刷新如果只改变部分区域,不是很麻烦?比如一个人在动,那么当前帧人在x,y位置,而下一帧他在x1,y1位置。那么,如果采取只改变区域的做法,不是要先保存x,y处背景被挡的部分,并在下一帧还原?(windows就是这样处理一个窗口的移动的)

68

主题

710

帖子

719

积分

高级会员

Rank: 4

积分
719
QQ
发表于 2004-9-5 12:02:00 | 显示全部楼层

Re:问个幼稚的问题,现在游戏画每一帧的是不是都重画全

直接刷全屏吧!放心的刷!
现在的电脑都已经够快了至少2d没问题

32

主题

1583

帖子

1589

积分

金牌会员

Rank: 6Rank: 6

积分
1589
发表于 2004-9-5 13:44:00 | 显示全部楼层

Re:问个幼稚的问题,现在游戏画每一帧的是不是都重画全

直接刷全屏!
对于在一个移动物体和一个背景之类的最简单的情况可以考虑只画改变部分,但如果改变区域太多,效率反而不如直接刷全屏。

比如你想编一个类似打击者1945之类的飞机游戏,由于屏幕中改变的矩形区域太多,直接重画整个屏幕比分别重画每个矩形效率要高,而且处理过程简单,代码量少。

60

主题

1319

帖子

1319

积分

金牌会员

Rank: 6Rank: 6

积分
1319
 楼主| 发表于 2004-9-5 13:50:00 | 显示全部楼层

Re:问个幼稚的问题,现在游戏画每一帧的是不是都重画全

我问的也是用DX的时候,不是用GDI.
我以后就放心的刷全屏了,我就是觉得部分刷新那种做法太麻烦了。想都不愿去想。

139

主题

2005

帖子

2057

积分

金牌会员

Rank: 6Rank: 6

积分
2057
QQ
发表于 2004-9-5 14:16:00 | 显示全部楼层

Re:问个幼稚的问题,现在游戏画每一帧的是不是都重画全

一般来说是每一帧重画,但是你可以根据自己的要求优化。OPENGL就提供了这样的方法,不知道DX如何

82

主题

331

帖子

340

积分

中级会员

Rank: 3Rank: 3

积分
340
QQ
发表于 2004-9-5 16:41:00 | 显示全部楼层

Re:问个幼稚的问题,现在游戏画每一帧的是不是都重画全

这个问题一点都不幼稚,Starcraft 中我无意发现了他们就是在这上面做功夫。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-8-18 01:55

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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