游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3704|回复: 7

菜鸟 d3d8 Sprite 2d 游戏问题

[复制链接]

22

主题

128

帖子

134

积分

注册会员

Rank: 2

积分
134
发表于 2006-5-27 20:47:00 | 显示全部楼层 |阅读模式
  我想把我的仿传奇单机版改成 D3D的,所以今天决定学习D3D的2D游戏开发。今天看了一个 Sprite 的原码,在把1/2无用和绕弯的垃圾代码去除后(网上例子原代码的通病,作者就不想让你很容易看懂),研究了一下。用 Sprite  可以方便、高速的对贴图进行旋转、缩放、和透明混合处理。但不知道如何将图象上的“某部分”贴到屏幕上?就是能完成像 ddraw 的bit 功能?望老师们指点一下我这个初学着,我在这里先谢过了。

22

主题

128

帖子

134

积分

注册会员

Rank: 2

积分
134
 楼主| 发表于 2006-5-27 22:04:00 | 显示全部楼层

Re:菜鸟 d3d8 Sprite 2d 游戏问题

明白了
哎,我下的这个代码直接无话可说了

22

主题

128

帖子

134

积分

注册会员

Rank: 2

积分
134
 楼主| 发表于 2006-5-28 01:10:00 | 显示全部楼层

Re:菜鸟 d3d8 Sprite 2d 游戏问题

不过又发现新问题

    Dim rc As RECT
    rc.Left = 0
    rc.Top = 0
    rc.Right = 100
    rc.bottom = 100
        
    Sprite.Draw Tex1, rc, sc, rt, Rot1, tl, cColor

    rc.left 和 rc.top 都不能超过1024 ?为什么啊?
   
    比如我要把源图的
    rc.left=1200
    rc.top =0
    rc.right=1300
    rc.bottom=100
    这个区域绘到屏幕上就不行,rc.left 超过1024就出错,怎么解决?还望高手赐教
   
   
    怎么解决?

50

主题

382

帖子

392

积分

中级会员

Rank: 3Rank: 3

积分
392
发表于 2006-5-28 10:50:00 | 显示全部楼层

Re:菜鸟 d3d8 Sprite 2d 游戏问题

这是因为显卡的限制。

另外你应当感谢放出代码的那位仁兄,无论怎么他都帮到了你!

41

主题

242

帖子

273

积分

中级会员

Rank: 3Rank: 3

积分
273
发表于 2006-5-28 19:19:00 | 显示全部楼层

Re:菜鸟 d3d8 Sprite 2d 游戏问题

dx8sdk有个列子能检测出自己显卡的可用Texture最大范围
我现在用的方法是动态读取,大小都为256*2048(我的最大的是2048*2048),用完就set  tex =nothing了,用的时候再读。
这种问题都被你发现了,搂主高手阿!

32

主题

1583

帖子

1589

积分

金牌会员

Rank: 6Rank: 6

积分
1589
发表于 2006-5-28 19:40:00 | 显示全部楼层

Re:菜鸟 d3d8 Sprite 2d 游戏问题

哈哈,楼主似乎在批评我呢。

确实啊,当初写这个示例的时候是有点匆忙,代码比较乱。
只是由于当时这里有人急着要,加上时间问题,没有怎么整理就传上来了,可能给阅读者造成了一些不便,在此我表示歉意。

不过我想这里不至于有1/2的垃圾代码吧?我想我写代码的习惯不至于那么坏吧,呵呵。

关于你的问题,那是因为显卡的缘故,所以在制作游戏时,要尽量节约显存资源。

楼主正在改自己的游戏吗?加油!支持一下。

22

主题

128

帖子

134

积分

注册会员

Rank: 2

积分
134
 楼主| 发表于 2006-5-28 22:38:00 | 显示全部楼层

Re:菜鸟 d3d8 Sprite 2d 游戏问题

首先感谢各位的解答

  我下的代码是从网上乱找的,都忘了是从哪里下载的了,肯定不是楼上的。我下的那个代码很多地方在故意绕弯。示例中就用了一张图,他创建个Texture都要用数组,创建字体也用数组,而且写了一些可有可无的自定义类型,反正只要能捅上点代码的地方他基本都没含糊。

  看来要把我的仿传奇改成 d3d  Sprite的要重写很多的代码啊,地图编辑器也要重做,想想头疼啊。不过好处也大大地,更快的速度,方便的半透明、单色化、旋转等效果,有点后悔当初没有用d3d  Sprite,但是ddraw确实比d3d要简单、容易理解,这对一个初学者来说太重要了。但是网上能找到的VB的相关教程太少了,全是C的。其实用VB业余做2D游戏是最好的选择,开发速度绝对快。

0

主题

62

帖子

62

积分

注册会员

Rank: 2

积分
62
发表于 2007-4-4 20:10:00 | 显示全部楼层

Re:菜鸟 d3d8 Sprite 2d 游戏问题

是啊,VB的资料不好找
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-4-12 15:56

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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