- 博客(9)
- 收藏
- 关注
原创 设计模式——状态模式
状态模式状态模式是对有限状态机的一种简化 有限状态机学习链接(http://blog.csdn.net/scl_unity3d/article/details/78785334)在状态模式(State Pattern)中,类的行为是基于它的状态改变的。这种类型的设计模式属于行为型模式。在状态模式中,我们创建表示各种状态的对象和一个行为随着状态对象改变而改变的 State
2017-12-17 10:33:21
944
原创 设计模式——单例模式(最常用)
单例模式:单利模式是最长用的设计模式:在它的核心结构中只包含一个被称为单例类的特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统资源。如果希望在系统中某个类的对象只能存在一个,单例模式是最好的解决方案。显然单例模式的要点有三个:一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。public
2017-12-16 12:39:13
917
原创 设计模式——享元模式
享元模式:该模式是比较简单的模式 其作用是把某一单元(比如怪物的熟悉啊,装备的属性)等拥有共同的信息的东西共享给需要使用的人 也就是 多人共享一个属性(这里的属性必须是不可变的属性 比如:名字,最大生命等)这样,在敌人比较多的时候(或者其他属性相同的对象)就可以节省出来很多内存。所以在游戏内存优化的时候还是有必要使用的。下面我们看下该模式的设计图:这样 所有敌人都 持有敌人
2017-12-16 11:34:26
1481
原创 有限状态机的构造和详细解析
有限状态机:关于有限状态机的定义是状态机在状态发生改变的时候 下一状态不仅和当前状态有关 还输入(在下面我们将的里面就是当前状态里的判断要转换的方法里面所执行的判断)有关。在游戏中 有限状态机的应用很广泛,不仅实用于所有的角色,怪物中,甚至UI,场景都可以使用有限状态机来进行管理;有限状态机的设计核心:有限制状态机设计的时候最核心的原则就是 单一职责原则 和里氏替换原则【不
2017-12-12 19:47:14
2815
原创 浅谈游戏中的位置判断——点乘+叉乘
首先我们先看下什么是点乘和叉乘点乘,也叫向量的内积、数量积。顾名思义,求下来的结果是一个数。向量a·向量b=|a||b|cos由于|a|和|b|都是正数,所以结果的正负是由于cos这部分决定的 由上图可以看出当角度在0-π/2之间时cos正值 在π/2-π之间是正值;所以由此我们可以根据这个结果判断物体之间的相对位置当像个向量的点乘结果为正的时
2017-12-11 22:04:19
3036
2
原创 浅谈对象池技术在游戏中的应用
说到做游戏,游戏的优化就至关重要,今天所说的就是关于游戏优化的一种方式——对象池技术。对象池技术的主要应用于游戏中反复利用的游戏资源(比如:子弹,技能特效,怪物等等)对象池的具体思想:将使用过的资源(会反复利用的)存储到池子中,下次需要的时候直接去池子中取出来。第一步:构建对象池using System.Collections;using System.Colle
2017-12-10 11:18:17
2301
原创 快速排序 从理解到掌握
首先我们先来看下快速排序算法的原理:【1】从数组中取得一个“标志数字”(没有要求,可以随便取,一般取第一个);定义两个位置变量 “i” ,“j” ;“i” 左边找大于等于“标志数字”的数 ,“i”从右边找小于等于“标志数字”的数;找到后两者交换位置【2】直到以该数字为标志, 实现该数字的左边都是小于等于该数字的数,右边都是大于等于该数字的数【3】然后对该标志位左边和右边的部分
2017-12-09 11:25:32
1068
原创 关于A*寻路在Unity3D里面的简单应用
这是A Star寻路算法在Unity中的一个简单的小应用 运行注意: 在运行测试的时候 请将Cube的Scale设置成(0.9,0.9,0.9) 在运行的时候 行列尽量设置的小点 不要超过35 (我设置40*40(1600个盒子)已经报出内存缓存不够的错误)
2017-12-07 17:30:58
1259
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅