游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3391|回复: 4

如何用DirectX实现一个在桌面上乱跑的小宠物模型?

[复制链接]

1

主题

2

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2004-3-22 12:08:00 | 显示全部楼层 |阅读模式
我原来用的是API里的函数SetWindowRgn(...),但是在镂空时象素扫描太慢了,而且占用很大的CPU资源(视一副图片的大小而定)。
现在想用DireckDraw实现,但是初次使用DerictX,不熟门路,看了很久游戏开发的例子,都是全屏模式,有没有哪位DX使用DerictX开发过小宠物的,请不吝赐教。

鞠躬感谢!

13

主题

49

帖子

49

积分

注册会员

Rank: 2

积分
49
QQ
发表于 2004-3-23 21:03:00 | 显示全部楼层

Re:如何用DirectX实现一个在桌面上乱跑的小宠物模型?

关注中,俺也需要学习!

5

主题

21

帖子

21

积分

注册会员

Rank: 2

积分
21
发表于 2004-3-25 23:59:00 | 显示全部楼层

Re:如何用DirectX实现一个在桌面上乱跑的小宠物模型?

不清楚,不过我试过一个例子里出现过这种情况的现象,不过是个错误。
在 window模式下,不知道怎么搞的,窗口没显示出来。不过bit的图却显示在桌面上了。是在屏幕的0,0位置而不是窗口里。用对图片操作是没有反映的。不过在图片的下方一个看不出异常的区域倒是可以拖动的,图片也跟着一起动。(看来只是窗口没被画出来,其实它也是存在的)不过只能向下拖动,反向会非法操作。换了好几台机器,都这样。还是比较有意思的。哈。我也没找出原因就从头开始了,以后没有出现过。我想可以把窗口位置设到屏幕的最下面看不到的地方。哈。这样也算是个解决办法。
不过很遗憾,那段失败的源码被我定点清除了。老兄,你就照错误试吧。哈,有万分之一的机会能出现。。。。(还是个概率问题)
同时也请高手给说一下,这是为什么。

30

主题

298

帖子

299

积分

中级会员

Rank: 3Rank: 3

积分
299
QQ
发表于 2004-3-26 18:30:00 | 显示全部楼层

Re:如何用DirectX实现一个在桌面上乱跑的小宠物模型?

我的办法是在窗口创建的时候就把所有要用到的区域对象全部创建好,程序运行时只需要根据情况选择要使用的RGN对象来调用SetWindowRgn(),但是速度仍然不会太快,只是可以接受而已。

1

主题

2

帖子

0

积分

新手上路

Rank: 1

积分
0
 楼主| 发表于 2004-3-27 14:27:00 | 显示全部楼层

Re: Re:如何用DirectX实现一个在桌面上乱跑的小宠物模型?

hmhm: Re:如何用DirectX实现一个在桌面上乱跑的小宠物模型?

我的办法是在窗口创建的时候就把所有要用到的区域对象全部创建好,程序运行时只需要根据情况选择要使用的RGN对象来调用SetWindowRgn(),但是速度仍然不会太快,只是可以接受而已。

您的这个方法我也试过了,CPU消耗是能降下来,但是速度的确不快。
因为想将调用的图片文件通过动态配置的方式实现,所以初始化RGN应该不可行。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-5-16 11:44

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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