大��好,欢迎来到Android游戏开发的世界。你阅读本书是为了学习Android游戏开发,希望我们能帮你实现这一目标。
我们将一起探讨许多游戏开发的思想和主题,包括Android基础知识、音频与图形编程、少量的数学或物理知识以及让人头疼的OpenGL
ES编程。基于以上内容,我们将开发三款不同的游戏,并且其中一款为3D游戏。
如果你知道自己在做什么,游戏编程就会变得很容易。因此本书不仅提供了你可以重用的代码片段,同时也会让你知道游戏开发的方向。了解游戏开发的基本原理是进行日益复杂的游戏开发的关键。这样,你不仅可以写出类似于本书开发的各种游戏,而且还有足够的能力从网上或书店里吸取知识,甚至开创出你自己的游戏开发新天地。
本书读者对象
本书主要面向Android游戏编程的初学者。你不需要具备任何游戏开发的经验,因为本书将介绍Android游戏开发的所有基础知识。但是你必须具备一点Java基础知识。如果你对此觉得有些生疏,建议在线阅读Bruce
Eckel撰写的Thinking in Java一书(Prentice
Hall,2006),该书是学习Java编程语言的**入门书籍。除此之外,你不需要具备其他知识,包括Android或Eclipse。
该书同时也面向那些希望涉足Android
的中级游戏开发人员。可能有些内容对他们来说已不是什么新知识,但仍有很多技巧和提示值得体会。如果说Android是一只奇怪的野兽,那么该书将是你向它吹响战斗号角的指南。
本书组织结构
本书将以循序渐进的方式逐步展示从基础到硬件加速等各种深度游戏开发的过程。在各章节中,我们创建了可重用的代码库,所以建议按顺序阅读本书各章。当然,有经验的读者可以跳过某些有把握的章节,但是要浏览一下跳过的章节中的程序清单,这样可以知道在后续章节中如何使用它们的类和接口。
本书的源代码
本书是完全独立的,包括运行本书的示例和游戏所需要的全部代码。但是,将本书代码复制到Eclipse开发环境时很容易出错。因为游戏应用程序不仅包含代码,它还需要其他一些无法从书中复制的资源。而且,复制本书的代码文本到Eclipse开发环境的过程中可能会引入一些错误。虽然Robert(本书的技术编辑)和我做出了很大的努力来确保书中的程序清单少出错误,但我们知道仍有些地方还不尽如人意。
为了帮助你顺利学习,我们创建了一个Google Code 项目,提供以下内容:
完整的源代码和资源遵循GPL 3.0版本,可通过该项目的Subversion存储库得到整个内容。
一个快速入门指南,让你知道如何以文本形式将项目导入到Eclipse开发环境,同时提供一个视频演示。
问题追踪系统,你可以提交任何发现的错误,包括书本身和书中附带的代码错误。一旦你向系统提交一个问题,我们就可以在Subversion存储库中修复。这样你就总能得到本书一份*新的、(希望)没有错误的源代码,当然其他读者也能从中受益。
一个讨论组,任何人都可以免费参加并讨论本书的内容,当然我也会参与讨论。
包含代码的每一章在Subversion存储库下都有一个对应的Eclipse项目。每个项目都是相对独立的,不依赖于其他项目,因为在本书进行的过程中,将逐渐改进其中的一些框架类。例如,第5章、第6章的代码就位于ch06-mmom项目中。
访问网址http://code.google.com/p/beginning-android-games可以找到Google
Code项目。