java坦克大战毕业设计

java坦克大战毕业设计
java坦克大战毕业设计

java坦克大战毕业设计

篇一:Java版坦克大战游戏毕业设计

1 引言

1.1 开发背景

随着人们精神文化生活的日益丰富,为了让我们在闲暇的时间多方面发展个人的兴趣爱好,为了更好地开发个人智力,游戏成为人们生活中不可缺少的一部分。游戏产业促动高科技技术不断升级,作为经济增长的一大支撑点,已经成为经济腾飞的“第四产业”。作为休闲游戏的起源应该追溯到早期的俄罗斯方块和坦克大战,坦克大战是童年经常玩的游戏,也是一款经典游戏。《坦克大战》游戏几乎家喻户晓,对我们80后90后而言,是童年最珍贵的回忆。此款游戏是一款以红白机为平台操作射击游戏[1],玩家可以控制自己的坦克,以歼灭对方的坦克,其操作方式及其简单,是一款男女老少皆宜的游戏。为了满足人们的个性化需求,使玩家在游戏的过程中,更能体验游戏本身的乐趣,也为了满足更好的用户体验,市场上逐渐出现了《墨水坦克大战[2]》,它是经典坦克大战的姊妹游戏,只有手机版,没有PC版,所以决定在自己大学毕业之时,开发一个PC版的《墨水坦克大战》。

1.2 国内外单机游戏的研究现状

近年来,由于经济的迅速发展,科技日新月异的变化,

越来越多的人会把电脑作为一种娱乐工具,而不仅仅是用它来工作,单机游戏又凭借自身操作简单,价格低廉,对电脑的配置要求低,有利于各个阶层各个行业人士使用,并且有益于身心健康,在琳琅满目的游戏中脱颖而出。但是,对于我国国内单机游戏而言,还处于起步阶段,有着较大的商业潜力,但是也存在着正版维护意识不强,从而使得盗版有机可乘,影响市场的健全发展,还需要得到进一步的更健全的发展[3]。

1.3 研究意义

单机游戏由于其不必联入互联网也可以进行游戏,从而摆脱了很多限制,只要有一台电脑即可体验游戏带来的欢乐,现在许多的单机游戏都是

精工细致而成的,更能呈现出友好的界面,流畅的画面,悦耳的背景音乐,良好的游戏性。《墨水坦克大战》只有手机版,使得手机屏幕小或者配置低的用户很难体验到《墨水坦克大战》的妙趣横生,开发PC版的《墨水坦克大战》势在必行。开发这一游戏,不仅能够满足更多人的需要,同时,通过开发这一完整项目,使得自己能更好的巩固大学所学的知识,使理论与实践相结合,增强动手能力,进一步了解软件开发的流程,

并且在这一过程中提升自己的编程能力。在遇到问题的时候,通过查阅资料,自己解决,或者请教老师,增强了自

学的能力,增加了师生的感情。这一项目是俩人合作完成的,除了能学习到技术方面的知识,我也深刻的体会到合作的重要意义。这也使得这次毕业设计有很重要的意义。

2 开发环境及相关技术的介绍

2.1 开发环境

此系统是在Microsoft Windows 7操作系统下完成的,用Java语言编写的,用Eclipse工具开发的。

2.2 Java语言的特点

Java是Sun公司推出的新一代面向对象程序设计语言[4]。

首先,作为一种程序设计语言,它简单、面向对象、不依赖于机器的结构、具有可移植性鲁棒性、安全性、并且提供了并发机制、具有很高的性能。其次,它最大限度地利用了网Java的小应用程序可在网络上运行而不受CPU和环境的限制。另外,Java还提供了丰富的类库,使程序设计者可以很方便地利用已有的封装好的类,迅速的建立自己的系统[5]。

1

Java语言是一种比C++还面向对象的编程语言,Java略去了运算符重载、多重继承等模糊的概念,并且通过实现自动垃圾回收,大大简化了程序设计者的内存管理工作[6]。Java抛弃了指针的概念。由于java拥有着这些新特性,使

得开发人员更容易写出“无错代码”。

2

在很多面向对象的语言里,Java才是一门纯粹的面向对象语言,Java中面向对象的思想主要体现在三大特点,即封装,继承和多态[7]。它提供了简单的类机制以及动态的接口模型。对象中封装了它的属性以及对应的方法行为,实现了模块化和信息隐藏,而类则提供了一类对象的原型,并且通过继承机制,子类可以使用父类所提供的方法,大大的提高了代码的复用率。

3

一门语言的健壮性就体现在它对常见错误的预防能力,Java语言就很好的体现了这一点[8]。Java在编译和运行程序时,都要对可能出现的问题进行检查,以消除错误的产生。它提供自动垃圾收集来进行内存管理,防止程序员在管理内存时容易产生的错误。

4

网络的快速发展,给人们的生活工作带来了很大的便利,但是于此同时,使得用户的信息不再透明化。Java对指针进行了屏蔽,从而不能直接对内存进行操作,进而大大的提高了内存的安全性[9]。

5

Java解释器生成与体系结构无关的字节码指令只要安

装了Java运行时系统,Java程序就可在任意的处理器上运行。这些字节码指令对应于Java虚拟机中的表示,Java解释器得到字节码后,对它进行转换使之能够在不同的平台运行[10]。

Java除了具有以上一些优点外,还有分布式、可移植性、多线程以及动态性。

2.3 关于Eclipse

Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境[11]。幸运的是Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools ,JDT )。

Eclipse 还包括插件开发环境(Plug-in Development Environment,PDE),这个组件主要针对希望扩展 Eclipse 的软件开发人员,因为它允许他们构建与 Eclipse 环境无缝集成的工具。由于 Eclipse 中的每样东西都是插件,对于给 Eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。这种平等和一致性并不仅限于 Java 开发工具。尽管Eclipse 是使用 Java 语言开发的,但它的用途并不限于Java 语言,例如,支持诸如 C/C++、COBOL 和 Eiffel 等编程语言的插件已经可用或将来会推出。Eclipse 框架还可

用来作为与软件开发无关的其他应用程序类型的基础。

Eclipse最初由OTI和IBM两家公司的IDE产品开发组创建,起始于1999年4月。IBM提供了最初的Eclipse代码基础,包括Platform、JDT和PDE[12]。目前由IBM牵头,围绕着Eclipse项目已经发展成为了一个庞大的Eclipse联盟,有150多家软件公司参与到Eclipse项目中,其中包括Borland、Rational Software、Red Hat及Sybase等。

由于其开放源码,任何人都可以免费得到,并可以在此基础上开发各自的插件,因此越来越受人们关注。近期,还有包括Oracle在内的许多大公司也纷纷加入了该项目,并宣称Eclipse将来能成为可进行任何语言开发的IDE集大成者,使用者只需下载各种语言的插件即可。

2.4 GUI技术简介

图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面。Java的图形用户界面由各种组件(xxponent)构成,在java.awt包和javax.swing包中定义了多种用于创建图形界面的组件类。

GUI 是一种结合计算机科学、美学、心理学、行为学,及各商业领域需求分析的人机系统工程,强调人—机—环境三者作为一个系统进行总体设计。这种面向客户的系统工程设计其目的是优化产品的性能,使操作更人性化,减轻使用

者的认知负担,使其更适合用户的操作需求,直接提升产品的市场竞争力。GUI即人机交互图形化用户界面设计。纵观国际相关产业在图形化用户界面设计方面的发展现状,许多国际知名公司早已意识到GUI在产品方面产生的强大增值功能,以及带动的巨大市场价值,因此在公司内部设立了相关部门专门从事 GUI的研究与设计,同业间也成立了若干机构,以互相交流GUI设计理论与经验为目的。随着中国IT 产业,移动通讯产业,家电产业的迅猛发展,在产品的人机交互界面设计水平发展上日显滞后,这对于提高产业综合素质,提升与国际同等业者的竞争能力等等方面无疑起了制约的作用。

GUI的广泛应用是当今计算机发展的重大成就之一,他极大地方便了非专业用户的使用。人们从此不再需要死记硬背大量的命令,取而代之的是可以通过窗口、菜单、按键等方式来方便地进行操作。而嵌入式GUI具有下面几个方面的基本要求:轻型、占用资源少、高性能、高可靠性、便于移植、可配置等特点。

2.5本章小结

本章介绍了Java语言的特点、本程序的开发环境及其相关的开发工具的原理和使用。

篇二:坦克大战毕业设计

石家庄科技信息职业学院

毕业论文

题目:基于J2SE的坦克大战

学号: 090124017

姓名:李世阳

专业班级:软件技术(游戏方向)09-24 班

指导教师:刘永伟

完成日期: 20XX-12-18

基于Java的网络版坦克大战游戏设计

摘要:本设计采用面向对象的设计模式,对游戏中的所有物体赋予对象的概念和属性。运行程序后允许用户选择执行选项菜单。在开始游戏后,启动服务器和客户端,对背景的所有物体进行绘图。在主程序运行的线程中,画面刷新将以一定的频率采用双缓冲技术对屏幕重绘,实时反映整个游戏的进行状态。用户控制的坦克运行在主线程中,随屏幕刷新的频率而移动。坦克将在游戏开始时进行初始化,然后将坦克绘制在地图的上层。本设计主要实现的功能是让坦克移动并能够智能的打出炮弹,躲避子弹,炸毁对方坦克。能够支持网络对战和单机对战两种模式。

关键词:面向对象;坦克大战;网络游戏;Java;Socket 类

Java-based Web version of Battle City Game Design

【Abstract】The design of object-oriented design

patterns, all the objects on in the game to give the concept of objects and attributes. After running the program allows the user to select the implementation of the Options menu. At the beginning of the game, start the server and client, all objects on the background graphics. Thread running in the main program, the screen refresh frequency will be some double buffer technology to redraw the screen in real time to reflect the state of the game. User-controlled tanks to run in the main thread, with the screen refresh frequency of the movement. Tank will start to initialize the game, and then draw the map of the upper tank. Designed to achieve the main function is to allow tanks to move and be able to play smart bombs, dodge bullets, to blow up other tanks. To support online play and single play against two modes.

Key words: Object-oriented; Battle City; online games; Java; Socket class

摘要 ................................................ .. (1)

第1章前

言 (4)

1.1 游戏设计的需求分析 (4)

1.1.1 本系统的现实意义 (4)

1.1.2 本系统和其他开发游戏区别 (4)

1.2 开发技术概述 (5)

1.2.1 JAVA、C语言、C++三种主流编程技术比较 (5)

1.3 本章小结 (5)

第2章相关技术理论 (5)

2.1 系统运行环境 (5)

2.1.1 系统运行的软件环境 (5)

2.1.2 系统运行的硬件环境 (6)

2.2 相关理

论 (6)

2.2.1 关于ECLIPSE的介绍 (6)

2.2.2 J2SE框架 (6)

2.2.3 联机通信机制 (7)

2.2.4 JAVA图形编程 (8)

2.3 本章小结 (9)

第3章系统设计 (9)

3.1 系统功能设计 (9)

3.1.1 坦克大战总体功能设计 (9)

3.1.2 TANKCLIENT类基本功能分析 (10)

3.1.3 TANK类基本功能分析 (11)

3.1.4 MISSILE类基本功能分

析 (12)

3.1.5 EXPLODE类基本功能分析 (13)

3.1.6 服务器类基本功能分析 (13)

3.1.7 信息传送类基本功能分析 (14)

3.2本章小结 (14)

第4章系统实现 (14)

4.1 游戏主窗体实现 (14)

4.2 单机游戏的实现 (16)

4.3 联机功能实现 (17)

4.4 本章小结 (22)

第5章总结与展望 (22)

5.1 总

结 (22)

5.2 设计中的不足之处 (23)

5.3 展望 (23)

致谢 ................................................ (24)

第1章前言

人类进入21世纪,全球一体化,互联网就起到重要的作用,而且随着互联网的不断发展,信息技术逐渐发展壮大,将成为网络经济的核心。其中计算机、网络通信的发展最为迅速。在现今电子信息高速发展的时代,网络游戏已经深入到人们的日常生活中,成为老少皆宜的娱乐方式。

1.1 游戏设计的需求分析

1.1.1 本系统的现实意义

游戏本身是一种娱乐方式,能带给人们无尽的乐趣,而且游戏行业的发展还将会带动众多周边产业,如五金、塑料、机械、电子、显像管,高端机型甚至使用了40英寸以上的大屏幕背投、液晶显示器等,这些显像设备不但要依赖国内众多显像管生产企业提供支持,更要针对游戏的内容进行深入开发和优化,以适应游戏内容的飞速发展和变化,大大突

破了传统家电类显像设备的限制,对国内显像管制造企业的发展、创新具有极大的推动作用,大型游戏机的外部框体制造涉及工业设计、模具加工、五金加工、塑料成形、特殊印刷等工艺流程,由此带动了一大批相关的零部件生产制造企业,而这些企业均为生产密集型企业,大幅度增加了劳动就业的需求。

1.1.2 本系统和其他开发游戏区别

本系统的坦克大战是基于Java语言设计开发的,具有高超的人工智能,精美的图形处理,支持单机运行和网络对战的坦克射击游戏。比之前网络上实现的游戏更加方便,快捷,智能。游戏基本玩法较简单,游戏可一人电脑作战,每次电脑方有坦克10辆,游戏以消灭全部敌方坦克过关为目的。在这过程中,坦克有机会得到血块来添加生命值,从而变得更加强大,也能利用各种有利地形来阻击敌人。游戏设置了墙面,电脑方坦克不能穿越墙面射击玩家坦克,而玩家坦克可随意穿越墙面打击电脑方坦克,这一游戏特权。还有给玩家坦克设置超级炮弹,当电脑方坦克数量过多时,玩家坦克可以发射超级炮弹打击敌方。主要新增的功能简单罗列如下:

1、屏幕左上方显示游戏状态,当玩家方坦克数全为零时则游戏结束;

2、一般坦克只可在空地中或草丛中行走,不可通过墙

面等障碍物;

篇三:基于JAVA的坦克大战设计与实现_代码

JISHOU UNIVERSITY

本科生毕业设计

题目:

作者:学号:所属学院:专业年级:指导教师:完成时间:

基于JAVA的坦克大战设计与实现职称: 20XX年5月7日

吉首大学

基于JAVA的坦克大战设计与实现

摘要

J2SE是近年来随着各种不同技术的发展,尤其是编程语言飞速发展而诞生的一项新的开发语言。随着信息技术的飞速发展,计算机的使用也日渐普及,本文从实际应用出发,向大家介绍坦克大战游戏的设计与实现。本文所介绍的坦克大战游戏是基于JAVA平台,用Eclipse开发的一款休闲类游戏。玩家可以控制坦克保护自己的基地,获取小道具,歼灭敌人坦克来获胜。论文中介绍了游戏的总体设计思路和开发游戏的多线程、低级图形界面的使用。本论文介绍了坦克大战的历史、java的相关技术及本程序的结构分析和具体功能的实现。

关键词: JAVA平台;游戏;坦克大战;网络对战The Design and Development of Tank Battle Based on JAVA

Platform

Abstract

J2SE is in recent years with various technical development, especially the rapid development of programming language and the birth of a new development language. With the rapid development of information technology, the use of xxputers is also bexxing increasingly xxmon, in this paper, introduce the Tank Wars game design and implementation. This game is based on the JAVA platform, Eclipse developed a leisure game. Game player can control the tank to defend your base, to obtain small props, annihilating the enemy tanks to win. The paper introduced the game of the design idea and development of game of multithreading, low-level graphics interface use. This paper introduces the tank war history, Java technology and the procedures for structural analysis and specific function of the realization of.

Key words: JAVA; Game; Tank battle; Network war

目录

第一章

1.1

1.2

1.3

第二章

2.1

2.2

2.3

第三章

3.1 绪论................................................. ................................................... ...................1 开发背景................................................. ................................................... ............1 国内外研究现状 ................................................ ................................................... ..1 游戏设计目标................................................. ...................................................

.....2 相关技术................................................. ................................................... ............2 开发环境................................................. ................................................... ............2 JAVA语言的特点 ................................................ ...................................................

2 关于Eclipse ........................................... ................................................... .............5 系统设计................................................. ................................................... ............6 系统可行性分析 ................................................ ................................................... ..6

3.1.1

3.1.2

3.1.3

3.2 技术可行性................................................. . (6)

经济可行性................................................. . (6)

操作可行性................................................. . (6)

系统需求分析................................................. ................................................... .. (6)

3.2.1 单机模式下实现的功能 ................................................ .. (6)

3.2.2 网络对战模式下实现的功能 ................................................ . (7)

坦克大战总体功能设计 ................................................ .. (7)

客户端TankClient 设计 ................................................ . (7)

坦克类设计................................................. . (8)

子弹类设计................................................. . (9)

地图类设计................................................. . (9)

爆炸类设计................................................. .. (10)

加载声音和图片类设计 ................................................ (10)

网络对战模式设计 ................................................ ..................................... 10 系统总体设计.................................................

韩顺平java坦克大战1.0版本_源代码

/**画坦克1.0 */ import java.awt.Color; import java.awt.Graphics; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.event.MouseMotionListener; import java.awt.event.WindowEvent; import java.awt.event.WindowListener; import javax.swing.JFrame; import javax.swing.JPanel; public class MyTankGame extends JFrame { MyPanel mp=null; public static void main(String[] args) { MyTankGame mtk=new MyTankGame(); } public MyTankGame() { mp=new MyPanel(); this.add(mp);//把面板加入窗体 //注册监听 this.addMouseListener(mp); this.addKeyListener(mp); this.addMouseMotionListener(mp); this.addWindowListener(mp); this.setTitle("坦克大战");//窗体标题 this.setSize(600,400);//大小,宽,高(像素) this.setLocation(300,300);//显示位置。左边距,上边距 //禁止用户改变窗口大小 this.setResizable(false); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true);//显示 } } //我的面板 class MyPanel extends JPanel implements

项目坦克大战设计报告

《JA V A程序开发课程设计》项目设计 项目名称:TankWar 软件 专业:软件工程班级:13软工1班姓名:毛晨光学号:24 一、需求分析: 基本功能: 1.玩家控制的坦克能够四处移动并且打击敌方坦克; 2.敌方坦克能够随机四处移动并且打击玩家控制的坦克; 3.玩家控制的坦克拥有血量,而敌方坦克没有; 4.坦克受到攻击时血条会缩短; 5.敌方坦克被消灭完之后,提示游戏胜利; 6.用户方坦克被消灭后提示游戏结束; 特色功能: 1.坦克具有图片,不单单只是个圈圈。 2.增加了血包功能,地图上会随机出现一个血包,我方坦克开过会增加 血量。 二、系统设计: 类:实现游戏界面地图的初始化。 类:绘制和重绘功能。 :监听用户的键盘输入。 类:实现坦克的初始化,绘制,移动,发射等功能。 :实现敌方坦克的初始化,绘制,移动,发射等功能。 类:实现炮弹的初始化,绘制,移动,攻击功能。 类:实现爆炸的初始化。绘制功能,爆炸效果由绘制半径从小到大再到小的圆实现。 类:包含枚举。 类:用于实现血包的功能。 三、功能实现。 一.绘制地图功能: public class TankMap extends Frame{ tart(); }

制坦克功能:public class Tank { 方坦克的绘制方法 public class EnemyTank extends Tank{ 弹绘制方法public class Shell { ntersects())){

ntersects())){ "hittanks"); (false); =false; Explor ex=new Explor(x-3,y-3,; return true; } } return true; } }

Java语言坦克大战游戏设计(附有代码和图片)

JISHOU UNIVERSITY 本科生毕业设计 题目:基于java语言坦克大战游戏开发作者: 学号: 所属学院:信息科学与工程学院 专业年级: 指导教师:职称: 完成时间: 吉首大学教务处制

目录 基于java语言坦克大战游戏开发 (1) 摘要 (1) Based on the development of Java language Tank Wars Game (2) 第一章游戏简要说明 (3) 第二章开发环境介绍 (4) 2.1 开发环境 (4) 2.2 java语言特点简介 (4) 2.3 Eclipse开发工具的简介 (5) 第三章系统总体设计 (6) 3.1程序功能的总和 (6) 3.2主体模块 (6) 3.3子弹模块 (6) 3.4坦克模块 (7) 3.5 墙模块 (7) 3.6血液模块 (7) 3.7爆炸模块 (8) 第四章游戏详细设计过程 (9) 4.1创建游戏窗口 (9) 4.2改变游戏背景颜色。 (11) 4.3创建坦克 (11) 4.4 让坦克动起来 (12) 4.5改变窗口的大小 (13) 4.6让坦克受控制 (14) 4.7创建一个Tank类 (15) 4.8让坦克向8个方向移动 (16)

4.9修改4.8中所设计的不足 (18) 4.10添加子弹类 (19) 4.11根据己方坦克的位置,打出子弹 (21) 4.12修改坦克停下来不能打出子弹的问题 (21) 4.13让坦克能够打出多发子弹 (23) 4.14解决炮弹不消亡和坦克出界的问题 (23) 4.15增加敌方坦克 (24) 4.16击毙出现的敌方坦克 (25) 4.17加入爆炸效果 (26) 4.18添加多辆敌方坦克 (27) 4.19让敌方坦克智能化 (29) 4.20建立游戏障碍物 (31) 4.21阻止坦克互相穿越 (32) 4.22为我方坦克添加大招和血条 (33) 4.23添加血块 (34) 4.24重新载入敌军或我军坦克 (35) 4.25加入图片 (35) 第五章游戏的可行性测试 (37) 5.1游戏界面介绍 (37) 5.2游戏运行测试 (40) 第六章总结 (43) 参考文献 (44)

funcode C++课程设计坦克大战

课程设计一坦克大战 一、游戏介绍 相信大部分同学都玩过或看过“坦克大战”这款经典游戏。现在,就由我们自己动手来开发它。只要大家具备了C++语言和面向对象的基础知识,然后按照实验指南的指导一步一步进行下去,相信我们每个同学都能把这款经典游戏做出来。 二、实验目标 综合运用C++及其面向对象的知识开发一款小游戏。 三、实验内容 在一个战场上,玩家控制坦克,消灭敌方坦克,并防止敌方坦克摧毁我方基地。游戏的具体要求如下: 1、游戏有一个初始页面,如下图。 2、按下任意键开始游戏,玩家控制坦克在战场上穿梭,碰到墙时,不能通过。 3、敌方坦克自由移动,每隔2秒改变一个方向,每隔3秒发射一发子弹。 4、敌方坦克每隔5秒出现一辆,从屏幕上方的左、中、右三个位置依次出现。 5、当玩家被消灭或者我方基地被摧毁或者游戏时间大于30秒的时候,游戏结束。 游戏开始前 进入游戏

四、游戏的整体框架 五、实验指南 实验准备 打开FunCode,创建一个新的C++项目。注意:项目名称必须为英文和数字,且不能有空格。 点击“项目”→“导入地图模板”,从对话框中选取名称为TankWar的模板导入。导入成功后,界面如下: 实验一游戏开始 【实验内容】 1、设置游戏标题 2、按空格键,提示图片消失,游戏进入开始状态. 【实验运行结果】 游戏开始前 按下空格键后 【实验思路】

按下空格键是键盘按下事件,可在CSystem::OnKeyDown函数中编写响应代码。为了保证程序结构的清晰、一致,更好的办法是在CGameMain类中添加一个相应的键盘按下事件处理函数,然后在CSystem::OnMouseClick函数中进行调用。 g_GameMain是CGameMain类的对象,它是全局变量,在程序运行时最先被创建。【实验指导】 1、C++程序的执行入口是主函数。FunCode的主函数名称叫WinMain,写在Main.cpp 文件中。CSystem::SetWindowTitle是设置程序运行窗口标题的函数,修改如下:CSystem::SetWindowTitle("坦克大战"); 2、参考CSystem::OnKeyDown函数,为CGameMain类创建一个OnKeyDown函数。 CGameMain类的头文件是LessonX.h文件,实现代码写在LessonX.cpp文件中。因此,先在LessonX.h文件对函数进行声明。函数的返回值和参数列表都与 CSystem::OnKeyDown函数保持一致。访问权限应该是public。代码如下: voidOnKeyDown(constintiKey,constboolbAltPress,constboolbShiftPress,cons tboolbCtrlPress); 3、接着,在Lesson.cpp文件中对该函数进行定义: voidCGameMain::OnKeyDown(constintiKey,constboolbAltPress,constboolbShif tPress,constboolbCtrlPress) { }

java开发坦克大战

j a v a开发坦克大战 IMB standardization office【IMB 5AB- IMBK 08- IMB 2C】

坦克大战游戏演示为什么选择这个项目 1、好玩 2、涉及到java各个方面的技术 1、java面向对象编程; 2、界面编程; 3、绘图技术; 4、多线程; 5、文件i/o操作; 6、数据库 3、巩固旧知识,学习新知识 java绘图坐标体系 绘图坐标本系--介绍 坐标原点位于左上角,以像素为单位。像素是计算机屏幕上最小的显示单位。在java的坐标系中,第一个是X坐标,表示当前位置为水平方向,距离坐标原点X个像素;第二个是Y坐标,表示当前位置为垂直方向,距离坐标原点Y个像素。 坐标体系--像素 计算机在屏幕上显示的内容都是由屏幕上的每一个像素组成的。例如,计算机显示器的分辨率是800×600,表示计算机屏幕上的每一行由800个点组成,共有600行,整个计算机屏幕共有480000个像素。现在的计算机可以支持更高的分辨率,也就是说,屏幕上可以显示更多的像素。因此,像素是一个密度单位,而厘米是长度单位,两者无法比较。 绘图原理(1)[] Component类提供了两个和绘图相关最重要的方法: 1、paint(Graphicsg)绘制组件的外观 2、repaint()刷新组件的外观

当组件第一次在屏幕显示的时候,程序会自动的调用paint()方法来绘制组件 .*; .*; publicclassWindow013extendsJFrame{ ; 7、画字符串drawString(Stringstr,intx,inty); 8、设置画笔的字体setFont(Fontfont); 9、设置画笔的颜色setColor(Colorc); ; .*; publicclassWindow014extendsJFrame{ ; .*; publicclassWindow015extendsJFrame{ ; .*; import publicclassWindow016extendsJFrameimplementsActionListener{ quals("黑色")){ 点击了黑色按钮"); ; }elseif().equals("红色")){ 点击了红色按钮"); ; }else{ 不知道"); } } } classCatimplementsActionListener{ publicvoidactionPerformed(ActionEventarg0){ if().equals("黑色")){ 也知道你按下了黑色按钮");

java坦克大战毕业设计论文

基于J2SE的网络版坦克大战游戏设计 摘要 [摘要]:J2SE (Java 2 Standard Edition)就是Java2的标准版,主要用于桌面应用软件的编程,是伴随着计算机技术的飞速发展而诞生的一项新的开发技术。随着个人电脑的日益普及、Java 功能在个人电脑上的实现,Java应用程序产生的单机增值服务逐渐体现出其影响力,对丰富人们的生活内容、愉悦身心、开发智力等起着不可忽视的作用。该论文通过总结和分析JA V A 游戏的开发流程和代码框架的设计,开发了一款基于J2SE架构的游戏——坦克大战。本设计采用面向对象的设计模式,对游戏中的所有物体赋予对象的概念和属性。运行程序后允许用户选择执行选项菜单。在开始游戏后,启动服务器和客户端,对背景的所有物体进行绘图。在主程序运行的线程中,画面刷新将以一定的频率采用双缓冲技术对屏幕重绘,实时反映整个游戏的进行状态。用户控制的坦克运行在主线程中,随屏幕刷新的频率而移动。坦克将在游戏开始时进行初始化,然后将坦克绘制在地图的上层。本设计主要实现的功能是让坦克能向八个方向移动,并且打出炮弹,子弹击中敌人坦克,子弹和敌人坦克同时消失,产生爆炸,CPU坦克能智能的移动并且打出炮弹。能够支持网络对战和单机对战两种模式。 Java良好的跨平台特性在软件的开发中显示出了巨大的威力,“一次编写,随处运行”,java 系统可以运行在不同的操作系统和硬件上。随着linux的持续增长以及MacOSX完全支持java 技术,跨平台的特性变得越来越有分量。 由于免费、跨平台、java语言本身技术先进,在高校中,java已经成为许多学科研究、课程和计算的首选语言,用java做上机作业,一般都是鼓励的。据我所知,北大、清华许多院系的研究生入学考试都可以用java语言答题。实际上,用java来完成这些工作,大多数情况下要比用C或其他语言简洁得多,你可以把注意力集中在算法等核心部分,从而获得更高分数。 [关键词] 面向对象坦克大战游戏J2SE Socket

java开发坦克大战

坦克大战游戏演示 为什么选择这个项目 1、好玩 2、涉及到java各个方面的技术 1、java面向对象编程; 2、界面编程; 3、绘图技术; 4、多线程; 5、文件i/o操作; 6、数据库 3、巩固旧知识,学习新知识 java绘图坐标体系 绘图坐标本系--介绍 坐标原点位于左上角,以像素为单位。像素是计算机屏幕上最小的显示单位。在java 的坐标系中,第一个是X坐标,表示当前位置为水平方向,距离坐标原点X个像素;第二个是Y坐标,表示当前位置为垂直方向,距离坐标原点Y个像素。 坐标体系--像素 计算机在屏幕上显示的内容都是由屏幕上的每一个像素组成的。例如,计算机显示器的分辨率是800×600,表示计算机屏幕上的每一行由800个点组成,共有600行,整个计算机屏幕共有480000个像素。现在的计算机可以支持更高的分辨率,也就是说,屏幕上可以显示更多的像素。因此,像素是一个密度单位,而厘米是长度单位,两者无法比较。 绘图原理(1)[Window013.java] Component类提供了两个和绘图相关最重要的方法: 1、paint(Graphics g)绘制组件的外观 2、repaint()刷新组件的外观 当组件第一次在屏幕显示的时候,程序会自动的调用paint()方法来绘制组件 import java.awt.*; import javax.swing.*; public class Window013 extends JFrame{ //定义组件 MyPanel mp=null; public static void main(String[] args) { Window013 th=new Window013();

坦克大战课程设计论文

坦克大战游戏设计 1.课程设计的目的 随着手机的日益普及,java功能在移动设备上的实现及java 应用程序产生的影响力,对丰富人们的生活内容,提供便捷的咨询起着不可忽视的作用。本项目介绍了坦克大战的基本构建方法、java的相关技术及本程序的结构分析和具体功能的实现。游戏是在Eclipse3.2环境下编程。本项目重点运用了图形化用户界面GUI,Thread多线程的有关知识,其中涉及了绘图工具的运用,事件处理操作以及图形的碰撞检测等知识点。通过此课程设计,使学生巩固所学知识、培养学生动手能力,了解Java的面向对象的体系结构。学生用Java语言设计一个完整的应用程序,综合应用所学知识完成软件的分析、设计、调试和总结,提高学生对Java语言的综合应用能力和解决问题的能力。 2.设计方案论证 2.1设计思路 本项目介绍了坦克大战的基本构建方法、java的相关技术及本程序的结构分析和具体功能的实现。游戏是在Eclipse3.2环境下编程。 一、游戏基本元素:坦克,炮管,子弹,墙壁,地雷 二、它的主要功能: (1)能够朝四个方向移动:上、下、左、右键。 (2) 按下鼠标左键发射普通子弹;按下鼠标右键发射散弹;子 弹爆炸的效果,普通子弹和炮弹的效果 (3)敌人能够移动

(4)能够模拟爆炸 (5)能够产生障碍 (6)能够增长生命 玩家控制主坦克(上方有血条的)的移动以及炮弹的发射。若玩家将敌方坦克全部打掉则玩家胜;若期间由玩家控制的主坦克被打掉则视为玩家失败。游戏中只有普通墙作为障碍物,玩家无法穿越它们并且普通子弹不能将墙打穿 ;但是玩家可以用炮弹将普通墙打掉。桃心可以将坦克的血加满。 2.2简要的设计流程: 键盘监听器 2.2设计方法 2.2.1构建游戏主类

毕业设计论文 基于J2ME的Java游戏--坦克大战的开发

目录 摘要 ................................................................................................................... - I - Abstract .................................................................................................................... - I - 引言 ...................................................................................................................... II 第一章绪论 .................................................................................................... - 1 - 1.1 手机软件现状.......................................................................................... - 1 - 1.2 游戏业务及J2ME概况............................................................................ - 1 - 1.3 任天堂(Nintendo)的8位FC机器和Battle City背景介绍............ - 3 - 1.4 本章小结.................................................................................................. - 3 - 第二章开发环境及相关技术的介绍 ................................................................ - 5 - 2.1 开发环境.................................................................................................. - 5 - 2.2 Java语言的特点..................................................................................... - 5 - 2.3 关于JBuilder9....................................................................................... - 5 - 2.4 关于Wireless Tool Kit....................................................................... - 6 - 2.5 Java Appication Manager.................................................................... - 6 - 2.6 本章小结.................................................................................................. - 6 - 第三章程序结构、思想和相关技术 ................................................................ - 7 - 3.1 本程序需解决的有关技术问题.............................................................. - 7 - 3.2 程序流程.................................................................................................. - 8 - 3.3 绘图与MIDP2.0新增的GameCanvas包.............................................. - 10 - 3.3.1 提供低级绘制的Canvas类....................................................... - 10 - 3.3.2 Graphics类................................................................................ - 10 - 3.3.3 PNG格式...................................................................................... - 10 - 3.3.4 Game包中的新功能.................................................................... - 11 - 3.3.5 有关绘图的一些技术................................................................. - 12 - 3.4 坦克的控制和敌方的智能运行............................................................ - 12 - 3.5 子弹的运行和控制................................................................................ - 13 - 3.6 RMS数据库系统..................................................................................... - 14 - 3.7 内存使用的最佳化................................................................................ - 15 - 3.8 混淆器(Obfuscator)的使用................................................................ - 16 - 3.9 模拟器的相关调试................................................................................ - 16 - 3.10 本章小结.............................................................................................. - 17 - 第四章程序分析和具体实现 .............................................................................. - 18 - 4.1 游戏进入前的选择................................................................................ - 18 - 4.2 主游戏逻辑及其涉及到的若干类........................................................ - 19 - 4.3 坦克的共同行为.................................................................................... - 21 - 4.4 玩家坦克的功能属性............................................................................ - 22 - 4.5 敌人坦克的功能属性............................................................................ - 22 - 4.6 子弹的运行和控制................................................................................ - 24 - 4.7 记分系统................................................................................................ - 25 -

项目-坦克大战-设计报告

《JAVA程序开发课程设计》项目设计 项目名称:TankWar 软件 专业:软件工程班级:13软工1班姓名:毛晨光学号:1322120124 一、需求分析: 基本功能: 1.玩家控制的坦克能够四处移动并且打击敌方坦克; 2.敌方坦克能够随机四处移动并且打击玩家控制的坦克; 3.玩家控制的坦克拥有血量,而敌方坦克没有; 4.坦克受到攻击时血条会缩短; 5.敌方坦克被消灭完之后,提示游戏胜利; 6.用户方坦克被消灭后提示游戏结束; 特色功能: 1.坦克具有图片,不单单只是个圈圈。 2.增加了血包功能,地图上会随机出现一个血包,我方坦克开过会增加 血量。 二、系统设计: 1.TankMap类:实现游戏界面地图的初始化。 2.PainTread类:绘制和重绘功能。 3.DirectionHandler:监听用户的键盘输入。

4.Tank类:实现坦克的初始化,绘制,移动,发射等功能。 5.EnemyTank:实现敌方坦克的初始化,绘制,移动,发射等功能。 6.Shell类:实现炮弹的初始化,绘制,移动,攻击功能。 7.Explor类:实现爆炸的初始化。绘制功能,爆炸效果由绘制半径从小到 大再到小的圆实现。 8.Direction类:包含枚举。 9.Blood类:用于实现血包的功能。 三、功能实现。 一.绘制地图功能: public class TankMap extends Frame{ //定义地图的尺寸。 public static final int MAPWIDTH=800; public static final int MAPHEIGHT=600; //我方坦克 Tank t=null; //定义随机出现的血包 Random r=new Random(); Image bufferImage=null; public static java.util.Listshells=new ArrayList(); //地方坦克集合 public static java.util.List-> enemys=new ArrayList();

基于Java的网络版坦克大战游戏设计_毕业设计

伊犁师范学院 本科生毕业论文(设计) 论文题目:基于Java的网络版坦克大战游戏设计

基于Java的网络版坦克大战游戏设计 (伊犁师范学院计算机科学系06-2班,新疆伊宁市 835000) 摘要:本设计采用面向对象的设计模式,对游戏中的所有物体赋予对象的概念和属性。运行程序后允许用户选择执行选项菜单。在开始游戏后,启动服务器和客户端,对背景的所有物体进行绘图。在主程序运行的线程中,画面刷新将以一定的频率采用双缓冲技术对屏幕重绘,实时反映整个游戏的进行状态。用户控制的坦克运行在主线程中,随屏幕刷新的频率而移动。坦克将在游戏开始时进行初始化,然后将坦克绘制在地图的上层。本设计主要实现的功能是让坦克移动并能够智能的打出炮弹,躲避子弹,炸毁对方坦克。能够支持网络对战和单机对战两种模式。 关键词:面向对象;坦克大战;网络游戏;Java;Socket 类 中图分类号:TP311.1 目录

摘要 ......................................................................... 第1章前言.. (1) 1.1游戏设计的需求分析 (1) 1.1.1国内外电子网络游戏的现状 (1) 1.1.2本系统的现实意义 (1) 1.1.3本系统和其他开发游戏区别 (2) 1.2开发技术概述 (2) 1.2.1J AVA、C语言、C++三种主流编程技术比较 (2) 1.3本章小结 (2) 第2章相关技术理论 (3) 2.1系统运行环境 (3) 2.1.1系统运行的软件环境 (3) 2.1.2系统运行的硬件环境 (3) 2.2相关理论 (3) 2.2.1关于E CLIPSE的介绍 (3) 2.2.2J2SE框架 (3) 2.2.3联机通信机制 (4) 2.2.4J AVA图形编程 (5) 2.3本章小结 (5) 第3章系统设计 (5) 3.1系统可行性分析 (6) 3.1.1技术可行性 (6) 3.1.2经济可行性 (6) 3.1.3操作可行性 (6) 3.2系统需求分析 (6) 3.2.1在人机对战模式下实现的功能 (6) 3.2.2在网络对战模式下实现的功能 (6) 3.3系统功能设计 (6) 3.3.1坦克大战总体功能设计 (7)

坦克大战java源代码

有些图片路径会出错要注意package com.tankgame; import java.util.Vector; //坦克类 class Tank { int x=0; int y=0; int color=0; int speed=1; int direct=0; boolean isLive=true; public Tank(int x,int y) { this.x=x; this.y=y; } public int getX() { return x; } public void setX(int x) { this.x = x; } public int getY() { return y; } public void setY(int y) { this.y = y; } public int getDirect() { return direct; } public void setDirect(int direct) { this.direct = direct;

} public int getColor() { return color; } public void setColor(int color) { this.color = color; } } //我的坦克 class Hero extends Tank { Shot shot=null; Vector shotm=new V ector(); public Hero(int x,int y) { super(x,y); this.color=5; } //坦克具有一个打击敌人的方法 public void shotenemy(int x,int y,int direct) { switch(direct) { case 0: shot=new Shot(this.x+10,this.y,0); shotm.add(shot); break; case 1: shot=new Shot(this.x+30,this.y+10,1); shotm.add(shot); break; case 2: shot=new Shot(this.x+10,this.y+30,2); shotm.add(shot); break; case 3: shot=new Shot(this.x,this.y+10,3); shotm.add(shot);

坦克大战游戏程序课程设计

《程序设计应用基础》课程设计计划书

坦克大战游戏 1引言 学习了C语言程序设计之后,我们粗略的掌握了程序设计的基本思路和要求,为了更加熟练的掌握这门计算机语言,我们选择编译一个经典小游戏——坦克大战。通过课程设计提高我们的动手能力,把理论知识运用到实践当中。在课程设计中,C语言的语法和逻辑严谨,对于初学者而言,有时忘记一个逗号或者分号整个程序便运行不了,经过了反复的调试,修改,最终形成可执行的程序。在这个过程中,通过不断的练习,我们对C语言的掌握程度有明显的提高,同时,也锻炼了我们的头脑,使我们的思维更加科学严谨。 2设计方案 2.1设计思路 坦克大战游戏,一共两关。不同的关卡,游戏地图、敌方坦克出现的种类不一样。敌方坦克地图上最多存在4辆,击杀后会出现新坦克直至补足4个,当击杀坦克一定数值则敌方新坦克不会再增加。击杀完所有坦克则胜利过关。己方坦克也有复活次数,用完则失败。另地图正下方有己方老家,若被敌方坦克攻破则游戏失败。 3程序设计与实施 3.1程序的主要模块 整个程序分为里表两大部分。 里部分由41*41的int地图数组组成,每个元素代表了该以该数组元素行列下标为地图坐标y,x那个单元的情况,不同的地图障碍物在该数组有不同的值,坦克在地图上占3*3个单元,在地图数组内相应坐标的3*3个元素内也对应特殊的值。由地图数组值可以读出该坦克信息。 表部分则是根据里部分的地图数组通过gotoxy和printf函数在命令行界面打印出相应字符以构成游戏界面的。 程序中的每个函数操作都是通过里部分(地图数组)判定,然后对里部分(地图数组)操作,再由里部改变外部,由gotoxy和printf函数将可视化界面呈现给玩家。也就是游戏主体函数内里表部分是一起操作的,不分开。 对于函数分类,程序又可分为三大类。一类游戏辅助函数。一个子弹系统,一个坦克系统。子弹和坦克分别都是独立运作的系统,有少量信息交换。 3.2 主函数及其流程图 主函数包括打印地图,实现游戏内置调节游戏速度的功能,判断坦克类型,判断敌我坦克是否存活,判断游戏胜负。 3

坦克大战设计与实现

目录 1 绪论 (1) 1.1 国内外单机游戏的研究现状 (1) 1.2 研究意义 (2) 2 开发环境和相关技术的介绍 (2) 2.1 开发环境 (2) 2.2 Java的特点 (3) 2.3 关于Eclipse (5) 3 系统的分析 (6) 3.1可行性分析 (6) 3.2需求分析 (7) 4 系统功能及相关技术 (7) 4.1 游戏功能 (7) 4.2 游戏规则 (7) 4.3 游戏界面和操作方式 (8) 4.4 本程序需解决的有关技术问题 (8) 4.5 相关技术的介绍 (9) 4.5.1 关于JFrame (9) 4.5.2 绘图技术 (9) 4.5.3 事件监听机制 (10) 4.5.4 关于多线程 (11) 5 系统的总体设计 (12)

5.1 TankWarClient.java (12) 5.2 Tank.java (12) 5.3 Bullet.java (13) 5.4 Explode.java (13) 5.5 Missile.java (13) 5.6 Wall.java (13) 5.7 Direction.java (14) 6 系统的详细设计与实现 (14) 6.1 游戏窗口与我的坦克 (14) 6.1.1 窗口 (14) 6.1.2 面板中加入坦克 (15) 6.1.3 让坦克动起来 (17) 6.2 坦克作战 (18) 6.2.1 添加子弹、超级子弹类 (18) 6.2.2 打出子弹 (19) 6.2.3 将敌人坦克击毙 (19) 6.2.4 爆炸效果 (20) 6.3 系统优化 (20) 6.4 坦克大战系统炮弹功能测试 (22) 6.4.1 按CTRL打炮弹的测试 (22) 6.4.2 功能测试图 (22) 7 总结 (23)

java写的坦克大战简易版

MyTankGame2.java package test; import javax.swing.*; import java.awt.*; import java.awt.event.*; //import java.io.*; import java.util.*; class MyTankGame2 extends JFrame implements ActionListener { MyPanel mp=null; //定义一个开始的面板 MyStartPanel msp=null; //做出我需要的菜单 JMenuBar jmb=null; //开始游戏 JMenu jm1=null; JMenuItem jmi1=null; //退出系统 JMenuItem jmi2=null; //存盘退出 JMenuItem jmi3=null; JMenuItem jmi4=null; public static void main(String[] args) { //System.out.println("Hello World!"); MyTankGame2 mtg=new MyTankGame2(); } //构造方法 public MyTankGame2() { //创建菜单及菜单选项 jmb=new JMenuBar(); jm1=new JMenu("游戏(G)"); //设置助记符 jm1.setMnemonic('G'); jmi1=new JMenuItem("开始新游戏(N)"); jmi2=new JMenuItem("退出游戏(E)"); jmi3=new JMenuItem("存盘退出游戏"); jmi4=new JMenuItem("继续上局游戏"); jmi4.addActionListener(this);

程序设计实训坦克大战实验报告材料

程序设计实训报告 坦克大战 专业班级:装控1401 实习时间:2015年7月10日至7月14日实习地点:微401 成员 1:赵振华 成员 2:许晨欢 成员 3:蒋绪涛

一、作品概述 1.1 创新点: 1、自定义并命名树林和钢板精灵,设置树林属性为不接受碰撞可以自由穿梭,钢板为接受任何碰撞但不做任何处理(即子弹和坦克均不能摧毁钢板)。 2、添加坦克发炮、击中目标和坦克移动的特殊声效。 1.2 概述: 这款游戏是我们QWER小组以经典90版坦克大战为背景制作的坦克大战的改编款,玩家通过控制坦克摧毁敌方坦克来保卫主基地不被摧毁。当敌我双方坦克相碰或己方基地被子弹摧毁时游戏结束(敌我双方子弹均可摧毁基地),每隔3秒钟出现一辆敌方坦克,游戏最大时长为100秒。此款游戏与经典90版坦克大战较为相似,操作简单,能唤起我们对童年的回忆。 二、功能设计 玩家坦克与敌方坦克在街道中进行巷战,玩家坦克被击中或与敌方坦克相撞、玩家指挥部被击中或游戏时间到,一局游戏结束。 按下空格键后游戏开始,“空格开始”消失,载入地图,100秒倒计时开始,并把玩家坦克设置在指挥部左侧。 游戏时间到,玩家坦克被敌方坦克摧毁,与敌方坦克相撞,或者玩家指挥部被摧毁,一局游戏结束,游戏回到初始界面,并显示上一局的分数。 玩家用W、A、S、D键控制坦克上、下、左、右运行,按J键开炮。坦克行进过程中有特殊声效,坦克发射或击中目标都有相应的声效。玩家坦克碰到墙和钢板就停下来,需要调转方向才能继续前进。玩家坦克开炮,一炮就能摧毁一块墙或者一辆敌方坦克,但不能摧毁钢板,玩家可穿梭于树林中。玩家每摧毁一辆敌方坦克,加1分。 玩家指挥部被坦克或者炮弹(不管玩家还是敌方)碰上,都会被摧毁。 每隔3秒钟,就会产生一辆敌方坦克。敌方坦克每隔一段时间,就自动开炮。敌方坦克遇到墙就会停下来。停下来的坦克,前方的墙如果被摧毁了,又能继续前进。每隔几秒钟,敌方坦克就会顺时针变换一个方向前进。每局最大时长为100秒。

坦克大战开发毕业设计(论文)

毕业设计(论文) 坦克大战开发

摘要 进入新世纪以来,计算机游戏业蓬勃发展,已成为新世纪最热门的专业。坦克大战是一款非常经典。风靡全球,经久不衰的游戏。1985年推出的坦克大战(Battle City)由13×13大小的地图组成,地形包括砖墙、海水、钢板、森林、地板5种,玩家作为坦克军团仅存的一支精锐部队的指挥官,为了保卫基地不被摧毁而展开战斗。游戏以其出色的游戏性感染的一代又一代的玩家。本程序主要由C#编写。本文的坦克大战有完整的界面,能够实现人机大战,。而且坦克大战剧情非常简单,游戏的主角在保护好城堡的前提下,消灭所有的敌人,所以非常容易上手。 本论文第一章是介绍国内外的游戏发展状况,第二章介绍坦克大战的总体设计,第三章是游戏涉及的技术问题,最后总结。 关键词:坦克大战;游戏;技术;代码

第一章游戏的背景 相信喜欢玩游戏的朋友都是从玩最初的“小霸王”,超级玛丽,坦克大战,等等一系列经典的小游戏开始,然后就是三国志之类的大型一点的,到现在的电脑游戏,单机游戏,到网络游戏,这么一个过程,游戏其实已经不知不觉的进入了我们的生活。 电脑游戏在当今,已经十分普遍了,游戏玩家也比较多。特别是网络游戏,因为其剧情的有趣性,游戏画面的美观,招式的华丽,等一系列原因,吸引了不少游戏玩家,特别是3D网游的推出,使得网络游戏发展进入了一个新时期。游戏是怎么发展起来的?国内外游戏的发展情况是什么样的呢?下面将会给你答案。 真正的电子游戏机产生于20世纪70年代。1971年麻省理工学院的学生Nolan Bushnell设计了世界上第一个业务用游戏机(俗名街机),叫做《电脑空间》(Computer Space)。《电脑空间》的主题是两个玩家各自控制一艘太空战舰围绕这具有强大引力的星球向对方发射导弹进行攻击。两艘战舰在战斗的同时还必须注意克服引力,无论是被对方的导弹击中还是没有成功摆脱引力,飞船都会坠毁。这台游戏机用一台黑白电视作为显示屏,用一个控制柄作为操作器,不过由于市场因素这款游戏以失败告终。 虽然初次尝试失败,但Nolan Bushnell仍然坚信电子游戏发展前景。他在《电脑空间》推出的次年,和朋友Ted用500美金注册成立了自己的公司Atari(雅达利)。他们获得了成功,世界上第一台被接受在业务用机就是Atari推出的乒乓球为题材的游戏。 1976年10月,Atari发行了名为《夜晚驾驶者》的模拟业务机游戏,这个游戏为黑白屏幕,自带了相关操作器(方向盘、油门、刹车等)。在这个游戏里,玩家需要扮演一个黑夜里驾驶在告诉公路上狂奔的疯狂车手。这是游戏历史上第一个3D游戏,它用简单的透视效果,专业术语是LOD(Level of Detail,层次细节)来表现汽车的前进和道路景物的后退。这款游戏成为3D游戏的始祖。除此之外,它还是历史上第一个主视角(First personal view)的游戏。 雅达利公司在开发街机市场之后又把目光转向了家用机市场。1977年,雅达利公司推出了Atari2600型游戏主机,这是世界上第一台家用专业游戏机。同年Bushnell把自己的公司以2800万美元的

相关文档
最新文档