游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4063|回复: 13

求助:dx游戏编程相关!

[复制链接]

25

主题

82

帖子

82

积分

注册会员

Rank: 2

积分
82
发表于 2005-2-8 23:32:00 | 显示全部楼层 |阅读模式
先祝大家新年快乐,万事如意哈!我是菜鸟,今后还请大家多多关照啊

请问:
   directx中directdraw部分,在窗口模式下,创建的主表面大小是整个屏幕大小还是你所创建的窗口客户区大小??

  离屏表面的大小呢?
谢谢哈!

25

主题

82

帖子

82

积分

注册会员

Rank: 2

积分
82
 楼主| 发表于 2005-2-9 04:03:00 | 显示全部楼层

Re:求助:dx游戏编程相关!

恩,主表面是代表整个屏幕,离屏表面自定,后备屏面我到现在还没弄清楚。

又有问题了:

A:我用directdraw创建了一个窗口,窗口内容是一张图片,然后我把窗口拖到屏幕外后再拖回来,图像已经不完整了,我买的那本参考书上说用“裁剪器”专门避免这种现象,可是我加了裁剪器后也不行啊。。。。裁剪器究竟拿来对付什么的?那个现象该怎么解决?

B:我发现我对windows的消息机制不熟悉,所以在理解程序上有一定困难,各位有没有关于windows消息机制的资料啊?谢谢


祝大家天天开心,天天进步!!!

25

主题

82

帖子

82

积分

注册会员

Rank: 2

积分
82
 楼主| 发表于 2005-2-9 12:17:00 | 显示全部楼层

Re:求助:dx游戏编程相关!

没人帮我么?

24

主题

229

帖子

229

积分

中级会员

Rank: 3Rank: 3

积分
229
发表于 2005-2-9 18:21:00 | 显示全部楼层

Re:求助:dx游戏编程相关!

A:图像恢复一下不就可以了。这是正常现象。
     裁减器是用来做裁减的,不能解决这个问题。

B:看来你没看过《windows程序设计》,买本看看就明白了。

我的理解。

32

主题

1583

帖子

1589

积分

金牌会员

Rank: 6Rank: 6

积分
1589
发表于 2005-2-9 18:37:00 | 显示全部楼层

Re:求助:dx游戏编程相关!

除了裁减器之外,还得经常刷新你的主表面。要使绘制的东西一直保留在窗口上随窗口一起移动就得使用GetWindowRect。

25

主题

82

帖子

82

积分

注册会员

Rank: 2

积分
82
 楼主| 发表于 2005-2-9 19:39:00 | 显示全部楼层

Re:求助:dx游戏编程相关!

主表面的页面恢复语句我写了的,跟Blt(。。。)函数一起组成一个函数。。。


创建出来的窗口可以最小化,可以让其他窗口在它上面随意移动,它自己也可以移动,就是不能移出屏幕,一旦移出,图像就不正常显示。。。

32

主题

1583

帖子

1589

积分

金牌会员

Rank: 6Rank: 6

积分
1589
发表于 2005-2-9 21:57:00 | 显示全部楼层

Re:求助:dx游戏编程相关!

我说了使用GetWindowRect获得窗口的Rect,然后Blt的时候让它Blt在窗口还在屏幕内部的地方就行了。

25

主题

82

帖子

82

积分

注册会员

Rank: 2

积分
82
 楼主| 发表于 2005-2-9 23:33:00 | 显示全部楼层

Re:求助:dx游戏编程相关!

好像不行。。。我原来用的GetClientRect()。。。


窗口的客户区是指什么啊?怎么我用GetClientRect()和用GetWindowRect()的效果一样呢?

25

主题

82

帖子

82

积分

注册会员

Rank: 2

积分
82
 楼主| 发表于 2005-2-10 00:11:00 | 显示全部楼层

Re:求助:dx游戏编程相关!

窗口移出屏幕后,移出部分图像消失,然后将窗口最小化,再恢复窗口,图像又可以恢复,我真的糊涂了。。。。

窗口被移出屏幕外,windows是不是有什么特殊的消息啊?

17

主题

165

帖子

167

积分

注册会员

Rank: 2

积分
167
发表于 2005-2-10 14:19:00 | 显示全部楼层

Re:求助:dx游戏编程相关!

有种方法可解,不过效果不好,就是你一直跟踪WM_MOVE(好象是这个,如果不是就是WM_MOVING)再用GetWindowRect取RECT,用Blt画,就好了。
不过更好一点是在每画一针前用GetWindowRect取RECT,效果好一点,速度也可接受。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-12-24 08:16

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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