注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络游戏设计Java游戏高级编程

Java游戏高级编程

Java游戏高级编程

定 价:¥58.00

作 者: (美)David Wallace Croft著;彭晖译;彭晖译
出版社: 清华大学出版社
丛编项: 游戏开发经典丛书
标 签: Java

ISBN: 9787302110835 出版时间: 2005-08-01 包装: 平装
开本: 26cm 页数: 425 字数:  

内容简介

  本书通过丰富的示例游戏,详细讲述了Java游戏高级编程方面的知识。包括部署框架、Swing动画、动画库、高级图形技术、持久性机制、游戏体系结构以及一些通信和同步技术等。 本书针对那些具有一定编程经验、渴望将自己独特的游戏设计思想变成部署实体的Java高级开发人员。

作者简介

暂缺《Java游戏高级编程》作者简介

图书目录

第1章  配置开发环境 1
1.1  升级到Java 1.4 1
1.2  内核类 1
1.3  在线运行Demo版程序 2
1.4  深入游戏库 3
1.4.1  croftsoft目录 3
1.4.2  arc目录 4
1.4.3  bin目录 4
1.4.4  doc目录 4
1.4.5  ext目录 5
1.4.6  lib目录 5
1.4.7  lic目录 5
1.4.8  res目录 5
1.4.9  src目录 6
1.4.10  tmp目录 6
1.5  XML简介 6
1.6  使用Ant编译 7
1.7  使用开放源代码 10
1.7.1  学习版权的基本知识 10
1.7.2  选择一个许可 11
1.7.3  重命名修改后的代码 12
1.7.4  共享源代码 13
1.8  为游戏获取多媒体资源 13
1.8.1  图片资源 13
1.8.2  音频资源 14
1.9  基本示例 15
1.9.1  修改源代码 15
1.9.2  修改构建文件 26
1.10  小结 27
1.11  参考文献 27
第2章  部署框架 28
2.1  部署为applet 28
2.1.1  实现生命周期方法 28
2.1.2  管理applet动画线程 30
2.1.3  读取JAR文件 34
2.1.4  使用插件升级客户端 36
2.1.5  了解存在的限制 38
2.1.6  applet签名 38
2.1.7  缓存applet 39
2.2  部署为可执行JAR 39
2.2.1  生成清单文件 39
2.2.2  对不安全性进行保护 40
2.3  用Java Web Start进行部署 40
2.3.1  准备发布文件 41
2.3.2  访问默认浏览器 43
2.3.3  使用反射进行动态链接 46
2.4  将多个applet部署为一个applet 47
2.4.1  MultiAppletStup 48
2.4.2  MultiAppletNews 50
2.4.3  Lifecycle 54
2.4.4  LifecycleWindowListener 54
2.4.5  MultiApplet 58
2.4.6  CroftSoftCollection 65
2.5  小结 67
2.6  参考文献 68
第3章  Swing动画 69
3.1  ComponentAnimator 69
3.1.1  更新和绘制阶段 70
3.1.2  精灵的定义 70
3.1.3  ExampleAnimator 71
3.2  RepaintCollector 73
3.2.1  Swing串行化 73
3.2.2  动画的问题 73
3.2.3  RepaintCollector 75
3.2.4  SimpleRepaintCollector 75
3.2.5  BooleanRepaintCollector 77
3.2.6  CoalescingRepaintCollector 78
3.2.7  其他实现 81
3.3  LoopGovernor 81
3.3.1  固定的延迟 82
3.3.2  帧速率同步 84
3.3.3  SamplerLoopGovernor 85
3.3.4  WindowedLoopGovernor 85
3.4  AnimatedComponent 90
3.5  小结 98
3.6  参考文献 98
第4章  动画库 99
4.1  ComponentPainter实现 99
4.1.1  NullComponentPainter 99
4.1.2  ArrayComponentPainter 99
4.1.3  ColorPainter 101
4.1.4  SpacePainter 103
4.1.5  TilePainter 106
4.2  ComponentUpdater 实现 114
4.2.1  NullComponentUpdater 114
4.2.2  ArrayComponentUpdater 115
4.2.3  EdgeScrollUpdater 115
4.3  ComponentAnimator实现 120
4.3.1  NullComponentAnimator 120
4.3.2  TileAnimator 120
4.3.3  FrameRateAnimator 122
4.3.4  CursorAnimator 126
4.4  Sprite实现 131
4.4.1  Sprite 131
4.4.2  AbstractSprite 132
4.4.3  IconSprite 135
4.4.4  BounceUpdater 137
4.4.5  IconSequenceUpdater 141
4.5  小结 143
第5章  高级图形技术 144
5.1  硬件加速图像 144
5.1.1  Image 144
5.1.2  BufferedImage 145
5.1.3  VolatileImage 145
5.1.4  自动图像 146
5.1.5  兼容图像 146
5.1.6  缓存算法 149
5.2  多缓冲和多线程 150
5.3  全屏独占模式 160
5.3.1  启用全屏模式 160
5.3.2  FullScreenToggler 161
5.3.3  配置帧 165
5.3.4  改变显示模式 165
5.3.5  DisplayModeLib 166
5.3.6  GraphicsDeviceLib 166
5.3.7  消除锯齿 167
5.3.8  BufferStrategyAnimatedComponent 168
5.3.9  FullScreenDemo 170
5.3.10  使用独占模式的顾虑 177
5.4  小结 177
5.5  参考文献 177
第6章  持久数据 178
6.1  数据格式 178
6.1.1  对象串行化 178
6.1.2  属性 181
6.1.3  XML 182
6.1.4  瓦片地图图像 190
6.1.5  随机种子 193
6.2  持久性机制 195
6.2.1  JAR资源文件 196
6.2.2  用户主目录文件 197
6.2.3  JNLP持久性 200
6.2.4  applet持久性 203
6.2.5  稳固持久性 206
6.2.6  嵌入式数据库 211
6.2.7  服务器端的持久性 212
6.3  数据完整性 214
6.3.1  消息摘要 214
6.3.2  散列缓存 215
6.4  小结 217
6.5  参考文献 217
第7章  游戏体系结构 218
7.1  接口 218
7.2  继承 218
7.3  目标Mars 221
7.4  模型-视图-控制器 221
7.4.1  模型 222
7.4.2  多重接口继承 224
7.4.3  视图 234
7.4.4  控制器 240
7.5  复合MVC 243
7.5.1  复合模型 243
7.5.2  复合视图 254
7.5.3  复合控制器 260
7.5.4  将三者进行组合 260
7.6  数据驱动设计 264
7.6.1  AnimationInit 264
7.6.2  AnimatedApplet 265
7.7  小结 269
7.8  参考文献 269
第8章  A*算法 270
8.1  Cartographer 271
8.2  NodeInfo 272
8.3  AStar 273
8.4  AStarTest 279
8.5  SpaceTester 283
8.6  GridCartographer 283
8.7  GradientCartographer 286
8.8  TankConsole 289
8.9  TankOperator 290
8.10  StateSpaceNode 291
8.11  TankCartographer 292
8.12  DefaultTankOperator 293
8.13  PlayerTankOperator 297
8.14  小结 299
8.15  参考文献 300
第9章  HTTP隧道技术 301
9.1  测试示例 302
9.2  可重用的客户端代码 303
9.2.1  Encoder 304
9.2.2  Parser 304
9.2.3  StreamLib 304
9.2.4  StringCoder 305
9.2.5  HttpLib 306
9.2.6  Queue 308
9.2.7  ListQueue 309
9.2.8  Loopable 312
9.2.9  Looper 313
9.2.10  HttpMessagePusher 315
9.3  游戏特定的客户端代码 318
9.4  可重用的服务器端代码 323
9.4.1  Server 323
9.4.2  HttpGatewayServlet 324
9.5  游戏特定的服务器端代码 327
9.6  打包WAR 330
9.6.1  web.xml 330
9.6.2  build.xml 331
9.7  小结 332
9.8  参考文献 332
第10章  HTTP轮询机制 333
10.1  测试示例程序 333
10.2  可重用的客户端代码 334
10.2.1  SerializableCoder 334
10.2.2  HttpMessagePoller 335
10.2.3  Consumer 340
10.2.4  QueuePuller 340
10.2.5  HttpMessageClient 342
10.3  游戏特定的客户端代码 345
10.3.1  Request 345
10.3.2  AbstractRequest 346
10.3.3  FireRequest 346
10.3.4  MoveRequest 347
10.3.5  ViewRequest 348
10.3.6  GameData 348
10.3.7  Synchronizer 350
10.3.8  NetController 354
10.3.9  NetMain 356
10.4  可重用的服务器端代码 357
10.4.1  XmlBeanCoder 358
10.4.2  SerializableLib 359
10.5  游戏特定的服务器端代码 360
10.5.1  GameInit 360
10.5.2  Player 362
10.5.3  NetGame 363
10.5.4  MarsServer 370
10.5.5  MarsServlet 376
10.6  小结 378
10.7  参考文献 378
第11章  HTTP Pulling机制 379
11.1  测试示例 379
11.2  可重用的客户端代码 381
11.2.1  Authentication 381
11.2.2  Id 381
11.2.3  LongId 382
11.2.4  ModelId 383
11.2.5  SeriModelId 383
11.3  游戏特定的客户端代码 384
11.3.1  Request 384
11.3.2  CoalesceableRequest 384
11.3.3  ChatController 385
11.3.4  Response 386
11.3.5  CreateUserConsumer 386
11.3.6  Event 387
11.3.7  ChatClient 387
11.3.8  ChatSynchronizer 393
11.3.9  ChatPanel 395
11.3.10  ChatApplet 398
11.4  服务器端代码 400
11.4.1  User 400
11.4.2  UserStore 401
11.4.3  PullServer 402
11.4.4  MoveServer 403
11.4.5  SeriChatGame 404
11.4.6  ChatServer 409
11.5  跟踪消息 411
11.5.1  多玩家联网模式 412
11.5.2  单玩家本地模式 413
11.6  扩展示例 414
11.7  小结 414
11.8  参考文献 415
附录A  源代码索引 416
附录B  CVS简介 420
B.1  检出代码 420
B.2  创建自己的项目 421
B.3  并行程序设计 423
B.3.1  实施代码所有权 423
B.3.2  互相监视 424
B.3.3  创建分支 425
B.4  参考文献 425

本目录推荐