因为很多编程类课程的服务对象都是一些初步接触编程的低基础学习者。battleship这个游戏,一是程序结构较为简单,编程量较小。二是游戏程序的代表性和典型性较突出,涉及了很多初学者接触的简单代码,很适合学员熟悉运用。所以很多编程类课程都要做battleship这个游戏。

如何学习游戏编程

题主问怎样系统学习游戏编程想必是对游戏编程感兴趣,正所谓兴趣是最好的老师,和题主分享一些系统学习知识。

现在游戏的种类越来越多样,想要学习游戏编程知识,就要先全面了解一下游戏编程然后找到自己的学习方法来系统全面学习。游戏编程指利用计算机编程语言,如C编程语言、C++编程语言、汇编等,编制计算机、手机或游戏机上的游戏。

给题主推荐一本书《游戏引擎架构》。《游戏引擎架构》同时涵盖游戏引擎软件开发的理论及实践,并对多方面的题目进行探讨。本书讨论到的概念及技巧实际应用于现实中的游戏工作室,如艺电及顽皮狗。虽然书中采用的例子通常依据一些专门的技术,但是讨论范围远超于某个引擎或API。文中的参考及引用也非常有用,可让读者继续深入游戏开发过程的任何特定方向。

《游戏引擎架构》为一个大学程度的游戏编程课程而编写,但也适合软件工程师、业余爱好者、自学游戏程序员,以及游戏产业的从业人员。通过阅读《游戏引擎架构》,资历较浅的游戏工程师可以巩固他们所学的游戏技术及引擎架构的知识,专注某一领域的资深程序员也能从本书更为全面的介绍中获益。

通过分类的系统学习会对题主有很大的帮助:

游戏开发中的大规模C++软件架构

游戏编程所需的数学

供调试、源代码控制及性能剖析的游戏开发工具

引擎基础系统、渲染、碰撞、物理、角色动画、游戏世界对象模型等