AI结构中,有一种情况非常容易出现,就是程序员会非常希望有一块区域,大家可以读取,存储一些信息,并且这块区域是全局共享的。不管是写作看似丑陋的全局变量,还是有一定组织的Blackboard结构,或者作为参数一路传到底,这种结构可以被统称为共享数据(Share Data)。作用就是在不同的模块间传递变[……]
月度归档: 2011年7月
Behavior系统的思考和实现(3)
上一篇文章里说的一种基于命令的结构,这种结构的缺点主要是,没法设计行为结构,GD也没法参与其中,而且不是一种层次逻辑结构,下面这种结构在游戏界也是一种主流。
基于静态树结构的行为系统(Based on Static Tree’s Behavior System)

这种结构就是传说中的Beha[……]
Behavior系统的思考和实现(2)
上次说了AI行为的一些想法,在很多的游戏AI引擎中,都或多或少存在这样的概念,这篇文章想继续上面的话题,说说实现。在现在的项目里,我做过一些探索,并且用两种方式实现过AI行为系统,效果都还可以。
在实现前,一般有几个必须要考虑的问题,当然,这些不仅适用于游戏AI开发,也适用于其他类型的软件开发[……]
Behavior系统的思考和实现(1)
路的起点
其实,刚进游戏这个行业,也没有想过要做哪块,毕竟对游戏开发并不熟悉,一开始比较向往做3D,因为游戏给人的第一感觉就是画面,而且不少讲游戏开发的书也是以3D为主。但对一个newbie来说,3D的上手难度会比较大,需要一定时间的学习和积累,我不是计算机系毕业,在大学最多做过的程序是网络,对图形,DX基上[……]
阅读代码的一些心得(3)
【游戏篇】
0. 我的游戏引擎核阅读心得:找到Update,就找到了一切!
1. 找到游戏主循环:游戏主循环是游戏的核心所在,所以找到主循环至关重要,有几个办法,如果代码是可运行的(一些时候,代码连编都编不过),那比较简单的就是加断点(其实很多时候,都可以用加断点的方式来辅助阅读),这样[……]
阅读代码的一些心得(2)
【通用篇】
0. 我的一句话心得:“看代码有时候和阅读外文文章一样,先泛读,了解文章大意,再精读,了解单词语法。”
1. 了解代码的命名规则:代码一般都有自己的命名规范,比如cl打头表示类,E打头表示枚举,函数名前会带返回值类型等等,掌握这些命名规则,可以很方便的知道这个变量或函数的信息[……]
阅读代码的一些心得(1)
一般游戏代码的量都是相当惊人的,在开始做项目的时候,特别是porting项目,都会阅读引擎代码,所以阅读代码的能力确实不可或缺。在进公司后做的第一个项目,我看代码的能力有了很大的提高,记得第一个项目的引擎代码有180万行,我和一些新进的同事,足足研究的了3个月,收获颇丰,后来也陆陆续续的看了多种引擎[……]
