📄 g1.htm
字号:
<html>
<head>
<title>游戏制作</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style type="text/css">
<!--
body { font-size: 14px}
td { font-size: 14px}
a:active { text-decoration: none}
a:link { text-decoration: none}
a:visited { color: #FFFFFF; text-decoration: none}
a:hover { text-decoration: underline}
-->
</style>
</head>
<body bgcolor="#e8ffe8">
<br>
<table width="85%" border="0" cellspacing="0" cellpadding="0" align="center">
<tr>
<td>PC游戏编程 <br>
<br>
目录 <br>
<br>
1 游戏程序理论 <br>
1.1 技术基础 <br>
1.2 游戏底层 <br>
1.3 编写规则 <br>
1.4 程序设计 <br>
1.5 制作流程 <br>
1.6 程序调式 <br>
1.7 代码优化 <br>
<br>
2 游戏实践讨论 <br>
2.1 制作概况 <br>
2.2 模块划分 <br>
2.3 游戏引擎 <br>
2.4 关键讨论 <br>
2.5 希望 <br>
<br>
<br>
1 游戏程序理论 <br>
我做游戏的历史只有三年,我所写的内容都只是我在此期间的感觉和经验,还远远谈 <br>
不上完整和正确,甚至有些内容我们自己也没有完全达到,我只是试图说明我们曾经是怎 <br>
样做的和在最近的将来打算怎样做。 <br>
我读过一些关于如何制作游戏的文章和书籍,有外国的,也有国内的。有的过于难懂 <br>
(那些专业技术有的我根本看不懂),有的过于简单,而且大都着重于程序编写技术。我在 <br>
这里希望能够提供其它方面的帮助,比如游戏中的程序设计,项目管理和与我们中国人编 <br>
写游戏相关联的一些问题。 <br>
我希望能够给那些想编写商业游戏和正在编写商业游戏的人们提供一个样本,这不是 <br>
最好的样本,而是在中国内地游戏制作业的初级阶段中一个普通产品的制作方法和经验。 <br>
如果是一个初学者,我希望给他一个编写游戏程序的完整印象,让他至少了解编游戏和玩 <br>
游戏是有区别的。 <br>
我希望阅读本文的人应该是一个程序员,熟练使用C语言和C++语言,曾经编写的单个 <br>
程序长度应该在5000行(150k)以上。因为我在这里不会介绍任何有关编程语言的语法,编 <br>
译等内容,如果你连这些内容都还没有弄清楚,请先学习一下,否则将很难与本文引起共 <br>
鸣。假如你是一位美术设计,游戏策划人员或游戏项目管理人员,虽然你无法看懂里面的 <br>
大部分内容,但是我也希望你能够了解里面的有关内容,因为如果你能够了解程序员的工 <br>
作,我们就能够更好地配合。 <br>
我更希望那些不了解游戏的人们能够看到本文,我希望他们能够了解编写游戏程序与 <br>
编写其它程序是一样艰巨和复杂的,制作游戏并不等同于玩游戏。 <br>
<br>
1.1 技术基础 <br>
1.1.1 人员 <br>
作一个商业游戏所需要的程序员的水平,可以分成三个级别:系统分析员、主模块程 <br>
序员和外围程序员。 <br>
·系统分析员: <br>
这里的系统分析员也许比不上程序员资格考试中的系统分析员,因为我们制作的游戏 <br>
程序到目前为止都属于中小型程序,长度一般在50000到200000行之间(1.5M到6M),经过 <br>
压缩之后源代码可以轻松放在一张软盘上。工作量一般在20到60人月之间。所以游戏程序 <br>
的复杂程度比一些大型应用程序要小。但是,游戏系统分析员的工作也一样是复杂繁重的 <br>
。他的主要工作是需求分析,程序设计和进度管理。 <br>
在需求分析阶段,主要是根据游戏设计制定的游戏方案确定那些内容是可以实现的, <br>
那些是不能实现的;可以实现的部分如何实现,不能实现的部分该如何修改。最后制定一 <br>
个可行的游戏程序制作方案。这个方案最后被系统分析员写在程序设计文档中。当设计定 <br>
稿后,制定开发计划,组织人力开发,监督制作成果。 <br>
·主模块程序员: <br>
过去我们的系统分析员和主模块程序员由同一人担任,但是到后来,我们发现,因为 <br>
程序的管理设计人员也要担任繁重的程序制作任务,很难面面俱到。所以我建议把主模块 <br>
程序员独立出来。由他来负责对游戏主要运行部分进行编程。这需要主模块程序员具有非 <br>
常丰富的编程经验,至少应该具有完成一个游戏的经验。但是其实每个人都是从不会到会 <br>
,从没有经验到经验丰富的,不能满足条件也没有关系,只要程序难度小一些就可以了。 <br>
<br>
·外围程序员: <br>
游戏的程序一般都会被分割程序若干个模块,如果该模块独立性比较大就可以交给其 <br>
他人员完成。这些人只要有一定编程经验就可以胜任了。 <br>
<br>
1.1.2 编程平台 <br>
任何的计算机语言都可以被用来写游戏。游戏可以被运行在任何可能的计算机硬件设 <br>
备上。但是,因为我的制作经验的局限,我无法向你们介绍用Cobal语言编写AppleII上运 <br>
行的游戏。同样,我也不会教各位如何使用Visual Basic,Pascal或Java,任何形式的 <br>
DOS程序也是我不会花时间讲解的。在我后面的讨论中将只涉及在windows95/98下的 <br>
Visual C++编程。 <br>
现在,编写游戏时不能不提到Microsoft公司的DirectX。它是一套基于Windows95/NT <br>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -