Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1674945
  • 博文数量: 311
  • 博客积分: 7778
  • 博客等级: 少将
  • 技术积分: 4186
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-09 19:59
个人简介

蓝点工坊(http://www.bluedrum.cn) 创始人,App和嵌入式产品开发。同时也做相应培训和外包工作。 详细介绍 http://pan.baidu.com/s/1y2g88

文章存档

2012年(3)

2011年(115)

2010年(170)

2009年(23)

分类:

2010-09-12 17:02:33

 Andrew Huang
 
  Tank大战的经典的红白机游戏。有人将其移植到 SDL之上。其中在pndn有 0.2和0.3版本下载,其界面效果如下.我经常拿这个做为SDL的几个基本演示程序之一
 
  其中0.3版作了源码上的整理.并支持两个游戏者。所以相对比较好处理。
 
 1. 0.3版本的编译.
 
    这个版本的Makefile有一个小BUG
 
 .c.o
     $(CC) -c   $<  -o $@ $(CFLAGS) $(INCLUDE)
 
默认规则是针对.c来编译,但实际所有源码已经改成了 .cpp因此需要修改成如下
 %.o:%.cpp
     $(CC) -c   $<  -o $@ $(CFLAGS) $(INCLUDE)
 
  make编译,在RHEL运行效果如下.
运行源码目录下的./tank 即可运行成功
 
 
 
2.0.3的扩展
 
  1.Joy Stick支持。
   0.3 不支持Joy Stick。可以在其中加入Joy Stick代码.这个将在后续加入。
 
  2.网络对战
   我的有学生将其加入网络对战,其两个游戏者分别用两台机器通讯。是数据结构非常不好分离,最后实现方面将把一台主机的内存的所有数据不断通过TCP传给另一台机器。这样传输的数据量很大,但是可以实现一部分对战功能,但是很容易造成段错误,在运行一段时间挂掉。
 
3. 0.3版本的移植
---------------------------------------------------------
Tank在ARM版移植较为困难.主要是因为地图数据高度依赖于原始图片的像素。这样在不同分辩率下的嵌入式设备无法显示完整(如果缩放图片会倒致地图不准确)
 
 强行移植的话的要修改Makefile把CC换成arm-linux-gcc 即可能性
 
 
文件: tank.zip
大小: 311KB
下载: 下载
 
阅读(1463) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~