易码技术论坛

 找回密码
 加入易码
搜索
查看: 751040|回复: 19

[归档] 陋作【3DMAZE】

[复制链接]
发表于 2006-10-21 10:13:20 | 显示全部楼层
Up~代码的风格很清晰,看起来很舒服。:)
提个建议:namespace一般是用来区分一类原形(class, function, etc.)。如果只有一个class的话,改namespace就显得累赘了,毕竟它本身就代表了一类。
PS: 除非习惯看VS的ClassView..
 楼主| 发表于 2006-10-21 11:00:24 | 显示全部楼层
呵呵~其实以前一直都没怎么用过namespace的,昨天看到了shooting的连载教程,感觉加上namespace也不是什么坏事,而且用那个ClassView查看起来也很方便,所以就加上了~
发表于 2006-10-21 12:28:02 | 显示全部楼层
namespace可以有效的减少命名冲突,我觉得除非是简单的sample,否则都应该包在自己的namespace内。

这样,日后代码复用的时候省去很多麻烦,而且class view看起来也很舒服^_^bb
如果用比较朴素的IDE或者编译器的话,namespace用起来就不方便了,总得多打几个字母:)
 楼主| 发表于 2006-10-21 13:58:52 | 显示全部楼层
稍微更新了一下,加入了寻路功能。不过还是很陋...
发表于 2006-10-21 21:37:38 | 显示全部楼层
报了个错……说无法定位输入点glutInitDisplayMode 于动态链接库 glut32.dll上,这是在我把glu32.dll更名为glut32.dll后发生的,而之前的错误是没有找到glut32.dll。是不是工程里啥地方搞的不对了,或者我缺了什么东西?

不过代码不错的,过两天的话等FantasyDR完工了我们也会放一个Maze出来,不过是2d的,咱们的迷宫算法好像不太一样,有空你可以发文介绍一下。

寻路可以试试A*,过两天的东西里也会有。

至于程序总体框架,有兴趣的话可以研究一下我们的架构,当然也得等一下我们发出来。不过使用OpenGL的话他有他自己的一套框架结构,而且本来OpenGL就不是OO的,到也没有必要强求处处OO。OO只是手段,目的还是把程序写好。只要复杂度被控制住,OO不OO无所谓的:)
 楼主| 发表于 2006-10-21 21:46:12 | 显示全部楼层
汗...文件搞错了,本来要附带了一个glut32.dll的,谢谢提醒,马上更新。
因为我的OpenGL环境是设置好了的,所以发布的时候都不太清楚要带些什么,有问题我就改。

迷宫的算法我以前发过,不过帖子里面引用的图片失效了,等下我放个doc上来吧。

至于OO,虽然OpenGL不是OO的,还是可以想办法封装的,毕竟OO的复用性太强了:)

下面这个是迷宫的算法:Maze_Solution.doc
发表于 2006-10-21 23:06:50 | 显示全部楼层
不错不错,已经看到了,可以放个小老鼠进去,然后开两个口,让他从入口跑道出口……
 楼主| 发表于 2006-10-21 23:38:14 | 显示全部楼层
呵呵~那个倒想过,比如可以不用直接显示全部出路,而是每次只显示一格,过了N帧以后再显示下一格出路,和小老鼠差不多了~。
顺带更新了一下注释~
 楼主| 发表于 2006-10-22 00:20:55 | 显示全部楼层
接受shooting建议,加入一移动光标代替小老鼠,目前还没有能力作小老鼠-_-。
而且对OpenGL的融合用的不是很好,总觉得颜色有点不爽...
发表于 2006-10-22 14:12:47 | 显示全部楼层
哈哈,挺赞的~~

另外,貌似没有作透视的处理?放大了看似乎有点奇怪^_^
 楼主| 发表于 2006-10-22 14:29:32 | 显示全部楼层
木有透视,直接Ortho的。透视还有点搞不清楚...
发表于 2006-10-22 23:18:35 | 显示全部楼层
楼主是美工盲~嘿嘿
发表于 2006-10-23 01:44:33 | 显示全部楼层
技术好高
发表于 2006-10-24 11:35:07 | 显示全部楼层
呵呵我认为可以加入一些简单的纹理  这并不费劲  我感觉这样画框架很容易发晕
给他一个光源吧
 楼主| 发表于 2006-10-24 11:44:40 | 显示全部楼层
引用第12楼混乱羽翼2006-10-22 23:18发表的“”:
楼主是美工盲~嘿嘿
回LS,我也是初识OpenGL,很多技巧上的东西都不是太了解的说。
我也想做PP一点啦~让我先再学学行么...
发表于 2006-10-24 12:57:47 | 显示全部楼层
可以从HL2里找一些纹理来用 有很多还是很有价值的
 楼主| 发表于 2006-10-24 15:00:18 | 显示全部楼层
偶还不会贴纹理...
发表于 2006-10-24 15:31:56 | 显示全部楼层
帖纹理就是选入一个纹理,然后在顶点信息里面加入纹理坐标就OK了吧?
我也不懂OpenGL,反正D3D是这么干的-.-
发表于 2006-11-30 09:46:07 | 显示全部楼层
晕,你们。。。好象越来越强了,,,,天啊,我要努力再努力,
我还想参加acm呢,现在这样恐怕不行啊!!
 楼主| 发表于 2006-10-21 01:21:47 | 显示全部楼层 |阅读模式
3.gif
用C++和OpenGL做的3D迷宫DEMO,相当简陋。已经很使劲地OO了,但是最后的Application那一块还是没有OO进去,不过也没什么大碍了,有时间再改吧。
实现了一个Maze类,可以用来生成迷宫,寻路的函数还没来得及实现;以及一个DrawObj类,可以用来画平面和立方体,剩下的就是把这两个揉一起了。

左键:继续/暂停旋转
中键:生成新迷宫
右键:反向旋转

空格:显示出路

这个是VS2005和VS6工程文件、源代码和可执行文件了:点击下载此文件

PS. 迷宫的算法在6楼。
您需要登录后才可以回帖 登录 | 加入易码

本版积分规则

Archiver|手机版|小黑屋|EMAX Studio

GMT+8, 2024-4-26 08:43 , Processed in 0.014087 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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