回 帖 发 新 帖 刷新版面

主题:***看出我程序设计缺陷的必加30分!***

试着做了个斜45度角的2D地图,大家帮忙看看在[b]程序的架构、类的设计[/b]等方面有何问题。先谢谢大家了!回贴必加分!
制作工具:
      VC++6.0和Directx8.0
功能:
      1.用DirectxDraw实现2D斜视角贴图操作
      2.用DirDirectxInput实现响应键盘和鼠标
      3.背景的无缝卷动

下载:
[url]http://upload.programfan.com/upfile/200702261130667.rar[/url]

回复列表 (共8个回复)

沙发

嘿嘿....
我最近也在研究
不过我是用qb4.5
在screen 13下......这个模式里的显示速度还勉强能让人接受..虽然只有320x200
根据网上找来的资料,地图倒是画出来了..但要响应鼠标..呵呵....鼠标倒是找到了..就是还没看懂人家的程序不知道如何判断.

可惜,可惜,,,你说的俺都不会

板凳

首先要想好你的一个TILE有多大.我做的地图,一个TILE是64宽,32高的。
然后计算你的一个地图中需要多少个TILE,比如是800*600的地图,每一行最要12。5个,每一排要18。25个。而这些TILE,有些是只用画一半的,有些是要画全的,这就要
你如何移动地图,每一次移动的单位是多少。
画地图时,首先找到你要画地图的左上角的第一个TILE,然后一排一排的画。

我的地图是先画头两排,因为头两排有可能不全,然后再画下面的,最下面的几排我没有画出来,而是用个UI挡住了,呵呵,算是偷懒吧。

总之。我的方法不一定是好方法,你自己找本本子,一把尺子,一支铅笔,静下心来,好好的想一想,应该不难的。

3 楼

小小C啊,你可能误解了我的意思,我是说[b]在帖子里不会贴图片[/b],程序我已经做出来了,帮个忙下载一下我的斜角地图程序看看[b]程序的架构和类的设计[/b]等所存在的问题啊!谢谢!

4 楼

学业繁重,时间紧迫。。。。。。

5 楼

大家都看不出我的程序设计缺陷吧!
哈哈,看来我是这里的高手!!!
[em1][em1][em1][em1][em1][em1][em1][em1][em1][em1][em1]

6 楼

其实姑且不论这样的45度的游戏是否还有市场,我一直感觉这样的45度游戏不自然,还不如想“炮炮堂”那样的2D舒服。

7 楼

呵呵`同意6楼的观点`我个人比较喜欢平板的2D游戏`

8 楼

[quote]大家都看不出我的程序设计缺陷吧!
哈哈,看来我是这里的高手!!!
[em1][em1][em1][em1][em1][em1][em1][em1][em1][em1][em1][/quote]
那我就给你指出一些个人认为应该注意的问题:
1:程序顺序关联性太大。如:
ddraw.SetColorKey(0);
ddraw.LoadBmp();
ddraw.BitToHdc();
ddraw.Render();
一个好的类库实现的函数,外露的接口很少,一个调用可以解决很多问题。万一你的用户没有正确的顺序调用呢?
2:程序根本没有探测错误。一个程序的返回值要给出程序出现错误的原因。
3:一些细节的地方需要注意,比如wcApp.lpszClassName =szAppName;
一个是TCHAR,一个是char,有问题
4:没有固定的好的命名方法。如果有好的命名方法程序可以省略注释。MS的代码中注释基本都是给使用者看的,内部开发几乎没有注释。至少ATC是如此。
5:很多操作没有探测,比如:
    pDD7->Release();
    pPSur->Release();
    pOPla->Release();
这些出问题的原因有:万一这些都没有创建成功,那这个是不是就漂移了,指针。
有几个文件我没有看到。仅仅是个人意见。

我来回复

您尚未登录,请登录后再回复。点此登录或注册