摘要: 首先声明:此文源于本人最近学习的一本书 《游戏人工智能编程案例精粹》FSM的定义:一个有限状态机是一个设备,或是一个设备模型,具有有限数量的状态,它可以在任何给定的时间根据输入进行操作,使得从一个状态变换到另一个状态,或者是促使一个输出或者一种行为的发生。一个有限状态机在任何瞬间只能处在一种状态。FSM的实现:不要用if else语句或者switch语句实现状态机,越往后越累类讲解:EntityManager:实体对象的管理类,用来注册实体、取得实体还有移除实体,主要是为了处理消息传递,因为消息发出时要指定接收者,如何取得呢?就在这里取得BaseGameEntity:实体的基类,HandleM 阅读全文
posted @ 2013-06-19 20:36 leonbao 阅读(2317) 评论(1) 推荐(1) 编辑
摘要: 原创:请注明转载!在Cocos2d-x中使用CocosBuilder使用自定义类CocosBuilder的使用方法是通过自定义类。在CocosBuilder中选中一个对象并在属性栏中输入自定义类的类名就可以了。记住你的自定义类必须是你选中对象的一个子类(如CCLayer,CCNode等等)当加载ccbi文件时,你需要定义两个自定义类(也可以是一个)。自定义的Loader类继承自cocos2d::extension::CCLayerLoader。自定义的Layer类继承自cocos2d::extension::CCBSelectorResolvercocos2d::extension::CCBM 阅读全文
posted @ 2013-06-19 15:48 leonbao 阅读(6126) 评论(0) 推荐(0) 编辑
摘要: 今天在群里聊天又学到了一些知识。一般来说,当游戏服务器收到数据请求时,不会当时对数据进行处理工作,而只是简单地把它加入到等待队列中。然后,会有一个单独的Timer每隔一个固定的时间(10ms~200ms,视具体情况而定)从等到队列中取出待处理的数据(取出的数量也要根据具体的情况而定),然后把这些待处理的数据加入到处理队列中,然后以串行的方式对这些数据进行处理。为什么不用并行处理呢?主要是因为多线程的处理方式无法保证处理的顺序,会对游戏的逻辑结果产生影响。但是我的想法是,其实是可以把一些数据并行处理的,这主要是看本次操作是否涉及到逻辑的先后顺序,是否会返回结果,是否会对共享数据产生变化。比如,累 阅读全文
posted @ 2013-06-18 11:49 leonbao 阅读(1971) 评论(0) 推荐(1) 编辑
摘要: 我们先下载UnityVS,在下面这个网站的资源中搜索一下http://www.u3dchina.com/portal.php安装完毕后,执行以下操作1:打开你的Unity项目2:在Unity中导入UnityVS Package3:在Unity菜单中选择Unity->Open in UnityVS4:在VS2012中设置断点5:首先运行VS2012中的项目6:再运行Unity中的场景7:在游戏中触发断点 阅读全文
posted @ 2013-06-18 00:20 leonbao 阅读(4874) 评论(0) 推荐(0) 编辑
摘要: 首先看看何时用多线程,引用一篇文章http://blog.csdn.net/delacroix_xu/article/details/5928121再来详细地重新学习一遍多线程http://www.cnblogs.com/leslies2/archive/2012/02/07/2310495.htmlhttp://www.cnblogs.com/leslies2/archive/2012/02/08/2320914.html学习后注意到,其实多线程最好的方式就是异步委托+回调+传参,任何一种模式都是如此,这种方式不用轮询,不用等待。学习完毕之后,写入自己的一些补充1:分配多线程时,要注意尽量不 阅读全文
posted @ 2013-06-18 00:07 leonbao 阅读(494) 评论(1) 推荐(2) 编辑
摘要: 包括调度服务持久化服务跟踪服务首先声明两点:1、很感谢『听风且吟』(即笑煞天)的辛勤工作,前几章他已经翻译好了,我也通过阅读他的博客学到了很多东西,我只不过是继续他的工作成果继续翻译。想阅读前几章的朋友链接如下:http://www.cnblogs.com/xiaoshatian/archive/2008/03/18/818615.html2、本人英语水平有限,翻译的也比较快,如有不准确的地方请见... 阅读全文
posted @ 2008-07-21 15:05 leonbao 阅读(1287) 评论(3) 推荐(0) 编辑
摘要: 有问题的时候,我经常回来博客园寻找答案,久而久之,总结了一些东西。 妄自菲薄,请大家多指出错误,并给出意见 数据库设计三范式基本原则 关于表、视图、存储过程 关于索引 关于主键 阅读全文
posted @ 2008-03-07 11:33 leonbao 阅读(4599) 评论(28) 推荐(1) 编辑
摘要: 众所周知,经典的三层结构包括数据访问层、业务逻辑层和表示层。 当然,如果继续扩展下去,还可以分为4层、5层。。。。。。 我相信很多人都用过,很多人都写过,但是为什么要这么做,我相信一部分人是不能够说清楚的,这不是我猜想的,而是遇见过很多想分层但是分的乱七八糟的层次结构。 阅读全文
posted @ 2008-03-04 17:33 leonbao 阅读(3757) 评论(28) 推荐(1) 编辑
摘要: 查了半天,终于查到了,记录下来。<add key="hibernate.connection.provider" value="NHibernate.Connection.DriverConnectionProvider" /><add key="hibernate.connection.driver_class" value="NHibernate.Driver.OleDbDr... 阅读全文
posted @ 2005-11-18 10:25 leonbao 阅读(2125) 评论(5) 推荐(0) 编辑
摘要: 请先看一下我的分层结构DataAccess:数据访问层BusinessEntity:业务实体层BusinessRule:业务逻辑层WebUI:表示层WebUIController:表示层组件控制SystemFramework:本系统框架所遇到的问题以及解决方法我会相应地写出来1。不能把CRUD作为单独的事务处理封装在DataAccess层,因为只有BusinessRule层才有权力决定那些操作构成... 阅读全文
posted @ 2005-11-06 13:09 leonbao 阅读(2193) 评论(10) 推荐(0) 编辑