Java游戏编程原理与实践教程 / 21世纪高等教育计算机规划教材
¥38.80定价
作者: 陈锐,夏敏捷等主编
出版时间:2013-03
出版社:人民邮电出版社
- 人民邮电出版社
- 9787115301345
- 1-3
- 234218
- 46211477-8
- 平装
- 16开
- 2013-03
- 465
- 276
- 工学
- 计算机科学与技术
- 程序设计
- 本科
内容简介
本书从最基本的Java图形开发开始,对游戏的原理及其Java程序实现进行了详细介绍,包括动画的实现、音效的处理、鼠标和键盘事件的处理等。本书*的特色在于以游戏开发案例为主要内容,书中涉及的游戏都是大家耳熟能详的。比如推箱子、连连看、网络中国象棋、开心农场等。使你对枯燥的语言学习充满乐趣,对于初中级的Java学习者是一份很好的参考资料。书中不仅列出了完整的游戏代码,同时对所有的源代码进行了非常详细的解释,做到了通俗易懂且图文并茂。 本书不仅可作为计算机、软件相关专业游戏开发课程的教材,同时也可供游戏编程爱好者、软件开发人员和Java语言学习者参考使用。
目录
第1章 电脑游戏开发概述1.1 电脑游戏的发展历史1.2 电脑游戏的类型1.3 电脑游戏的策划1.3.1 游戏策划的基本概念1.3.2 游戏设计的基本内容1.4 电脑游戏的程序开发工具第2章 游戏图形界面开发基础2.1 AWT简介2.2 Swing基础2.3 Swing组件2.3.1 按钮(Jbutton)2.3.2 单选按钮(JRadioButton)2.3.3 复选框(JCheckBox)2.3.4 组合框(JComboBox)2.3.5 列表(JList)2.3.6 文本框(JTextField和JPasswordField)2.3.7 面板(JPanel)2.3.8 表格(JTable)2.3.9 框架(JFrame)2.4 布局管理器2.4.1 布局管理器概述2.4.2 流布局管理器FlowLayout2.4.3 边界布局BorderLayout2.4.4 卡片布局管理器CardLayout2.4.5 网格布局管理器GridLayout2.4.6 null布局管理器2.5 常用事件处理2.5.1 动作事件处理2.5.2 鼠标事件处理2.5.3 键盘事件处理第3章 Java图形处理和Java 2D3.1 Java图形坐标系统和图形上下文3.2 Color类3.3 Font类和FontMetrics类3.3.1 Font类3.3.2 FontMetrics类3.4 常用的绘图方法3.4.1 绘制直线3.4.2 绘制矩形3.4.3 绘制椭圆3.4.4 绘制弧形3.4.5 绘制多边形和折线段3.4.6 清除绘制的图形3.5 Java 2D简介3.5.1 Java 2D API3.5.2 Graphics2D简介3.5.3 Graphics2D绘制3.5.4 Graphics2D的属性设置3.5.5 路径类3.5.6 平移、缩放或旋转图形第4章 Java游戏程序的基本框架4.1 动画的类型及帧频4.1.1 动画类型4.1.2 设置合理的帧频4.2 游戏动画的制作4.2.1 绘制动画以及动画循环4.2.2 消除动画闪烁现象——双缓冲技术4.3 使用定时器4.4 设置游戏难度4.5 游戏与玩家的交互4.6 游戏中的碰撞检测4.6.1 矩形碰撞4.6.2 圆形碰撞4.6.3 像素碰撞4.7 游戏中图像的绘制4.7.1 图像文件的装载4.7.2 图像文件的显示4.7.3 绘制卷轴型图像4.7.4 绘制砖块型图像4.8 游戏角色开发4.9 游戏声音效果的设定第5章 推箱子游戏5.1 推箱子游戏介绍5.2 程序设计的思路5.3 程序设计的步骤5.3.1 设计地图数据类(va)5.3.2 设计地图类(va)5.3.3 设计游戏面板类(va)5.3.4 播放背景音乐类(va)第6章 雷电飞机射击游戏6.1 雷电游戏介绍6.2 程序设计的思路6.2.1 游戏素材6.2.2 地图滚动的原理实现6.2.3 飞机和子弹的实现6.2.4 主角飞机子弹与敌机的碰撞检测6.3 关键技术6.3.1 多线程6.3.2 Java的Thread类和Runnable接口6.4 雷电飞机游戏设计的步骤6.4.1 设计子弹类(va)6.4.2 设计敌机类(va)6.4.3 设计游戏界面类(va)6.4.4 设计游戏窗口类(va)第7章 21点扑克牌游戏7.1 21点扑克牌游戏介绍7.2 关键技术7.2.1 扑克牌面绘制7.2.2 识别牌的点数7.2.3 Dealer(庄家)要牌的智能实现7.2.4 游戏规则的算法实现7.3 程序设计的步骤7.3.1 设计扑克牌类(va)7.3.2 设计一副扑克类(va)7.3.3 设计游戏面板类(va)7.3.4 设计游戏主窗口类(va)第8章 连连看游戏8.1 连连看游戏介绍8.2 程序设计的思路8.2.1 连连看游戏数据模型8.2.2 动物方块布局8.2.3 连通算法8.2.4 智能查找功能的实现8.3 关键技术8.3.1 动物方块图案的显示8.3.2 鼠标相关的事件8.3.3 延时功能8.4 程序设计的步骤8.4.1 设计游戏界面窗体(va)8.4.2 设计游戏面板类(va)第9章 人物拼图游戏9.1 人物拼图游戏介绍9.2 程序设计的思路9.3 关键技术9.3.1 按钮显示图片的实现9.3.2 图片按钮移动的实现9.3.3 从BufferedImage转换成ImageIcon9.4 程序设计的步骤9.4.1 设计单元图片类(va)9.4.2 枚举类型va9.4.3 游戏面板类(va)9.4.4 主窗口类(va)第10章 对对碰游戏(按钮版)10.1 对对碰游戏介绍10.2 程序设计的思路10.2.1 游戏素材10.2.2 设计思路10.3 关键技术10.3.1 动态生成8×8的按钮10.3.2 进度条组件(JProgressBar)10.3.3 定时器功能10.4 程序设计的步骤10.4.1 设计游戏窗口类(va)10.4.2 设计内部定时器类第11章 对对碰游戏(图形版)11.1 对对碰游戏介绍11.2 对对碰游戏设计思路11.2.1 游戏素材11.2.2 设计思路11.3 程序设计的步骤11.3.1 设计游戏窗口类(va)11.3.2 设计内部游戏面板类11.3.3 设计内部定时器类第12章 俄罗斯方块游戏12.1 俄罗斯方块游戏介绍12.2 程序设计的思路12.2.1 俄罗斯方块形状的设计12.2.2 俄罗斯方块游戏的面板屏幕12.2.3 俄罗斯方块游戏的运行流程12.3 俄罗斯方块设计的步骤12.3.1 设计游戏界面类(va)12.3.2 设计游戏窗口类(va)第13章 开心农场13.1 开心农场游戏介绍13.2 程序设计的思路13.2.1 游戏素材13.2.2 设计思路13.3 关键技术13.3.1 实现图形按钮13.4 开心农场设计的步骤13.4.1 设计农作物类(va)13.4.2 设计背景的面板(va)13.4.3 设计农场类(va)13.4.4 设计窗体类(va)第14章 单机版五子棋游戏14.1 单机版五子棋游戏简介14.2 五子棋设计思想14.3 关键技术14.3.1 Vector向量容器14.3.2 判断输赢的算法14.4 程序设计的步骤14.4.1 设计窗口类(va)第15章 网络五子棋游戏15.1 网络五子棋游戏简介15.2 五子棋设计思想15.2.1 界面设计15.2.2 通信协议15.3 关键技术15.3.1 Socket技术15.3.2 InetAddress类简介15.3.3 ServerSocket类15.3.4 Socket类15.4 程序设计的步骤15.4.1 设计服务器端类(va)15.4.2 设计客户端类(va)第16章 网络中国象棋16.1 中国象棋介绍16.2 关键技术16.2.1 UDP简介16.2.2 DatagramPacket类16.2.3 DatagramSocket类16.2.4 P2P知识16.3 网络中国象棋设计思路16.3.1 棋盘表示16.3.2 棋子表示16.3.3 走棋规则16.3.4 坐标转换16.3.5 通信协议设计16.3.6 网络通信传递棋子信息16.4 网络中国象棋实现的步骤16.4.1 设计棋子类(va)16.4.2 设计棋盘类(va)16.4.3 设计游戏窗体(va)第17章 RGP走迷宫游戏17.1 RGP走迷宫游戏介绍17.2 程序设计的思路17.2.1 游戏素材17.2.2 设计思路17.2.3 RGP人物的动画17.3 走迷宫游戏设计的步骤17.3.1 设计主窗体类(va)17.3.2 设计游戏面板类(va)第18章 青蛙过河游戏18.1 青蛙过河游戏介绍18.2 程序设计的思路18.2.1 游戏素材18.2.2 设计思路18.3 青蛙过河游戏设计的步骤18.3.1 设计青蛙方块类(va)18.3.2 设计游戏面板类(va)18.3.3 设计主窗体类(va)第19章 打猎游戏19.1 打猎游戏介绍19.2 程序设计的思路19.2.1 游戏素材19.2.2 设计思路19.3 关键技术19.3.1 控制动物组件的移动速度19.3.2 随机间歇产生动物组件19.3.3 玻璃面板显示19.4 打猎游戏设计的步骤19.4.1 设计小鸟类(va)19.4.2 设计野猪类(va)19.4.3 设计背景面板类(va)19.4.4 设计主窗体类(va)第20章 2.5D游戏20.1 2.5D游戏介绍20.2 2.5D游戏设计思路20.3 程序设计的步骤20.3.1 创建游戏界面类(va)20.3.2 设计游戏窗口类(va)……