开发工具:
文件大小: 171kb
下载次数: 0
上传时间: 2011-11-08
详细说明: VC++场景游戏,人物移动,学VC、编游戏中的示例,它的实现,靠的是以下知识和技术: 1.建立DirectX环境和创建工作页面的方法。 2.各种页面内容的拷贝方法。 3.GDI与DirectX图形处理方法的简单比较。 游戏测试操作方法: A、在场景内点任意点,指挥主角移动。 B、将鼠标移到场景外,可以移动地图。 C、在微缩地图上点一下,可以快速定位。 D、ESC键,退出游戏。 你可以指挥主角去打猎了。但打不死的,因为这里我们还没有加对象的生命值。 部分代码: #define MAXINT 8192 //定义一个最大整数, 地图上任意两点距离不会超过它8192 #define STACKSIZE 38536 //保存搜索节点的堆栈大小65536 #define tile_num(x,y) ((y)*map_w+(x)) //将 x,y 坐标转换为地图上块的编号 #define tile_x(n) ((n)%map_w) //由块编号得出 x,y 坐标 char map[WIDTH*SCRP/GX+2][HEIGHT*SCRP/GY+2];//地图障碍格数据 int map_w,map_h;//地图障碍格宽和高 int start_x,start_y,end_x,end_y; //起点坐标,终点坐标 PATHN pathn[500];//重组路径 int findpath();//路径寻找主函数 int stackmax;//最大值 private://私有,类内部使用 LINK queue;//保存没有处理的行走方法的节点 TREE stack[STACKSIZE]; //保存已经处理过的节点(搜索完后释放) int dis_map[WIDTH*SCRP/GX+2][HEIGHT*SCRP/GY+2];//保存搜索路径时,中间目标地最优解 void init_queue();// 初始化队列 void enter_queue(TREE node,int f);//待处理节点入队列,依靠对目的地估价距离插入排序 TREE get_from_queue(); //将离目的地估计最近的方案出队列 void freetree();//释放申请过的所有节点 int judge(int x,int y);//估价函数,估价x,y到目的地的距离,估计值必须保证比实际值小 int trytile(int x,int y,TREE father);//尝试下一步移动到x,y可行否 int zlpath(); //重组路径 ...展开收缩
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.