
内存优化
ChiLi_Lin
卧槽!卧槽!!卧槽!!!!!
展开
-
Unity 对象池(Object Pooling)理解与简单应用
Unity 对象池理解与简单应用 参考Unity官方教程 : Object Pooling 对象池用于减少内存开销,其原理就是把可能用到到的对象,先存在一个地方(池),要用的时候就调出来,不用就放回去。而不是要用的时候创建,不用的时候销毁。 举个例子: 我有个飞机,射击子弹,按传统的方法就是,创建子弹,子弹击中目标或出界等销毁子弹。就是不断的创建与销毁,要知道创建和销毁是要消耗许原创 2017-05-11 10:38:34 · 26104 阅读 · 7 评论 -
Unity 使用物理射线(Physics.Raycast),实现扇形区域碰撞检测三种方法
Unity 使用物理射线(Physics.Raycast),实现扇形(Fan-Shaped)区域碰撞检测。 参考之前的制作简单UI: Unity 有限状态机(Finite State Machine)的理解 与 实现简单的可插拔(Pluggable)AI脚本对象。 Github项目:GentleTank 网上已经很多实现扇形检测的方法。大部分都是用MeshCollider实现的。而据说原创 2017-06-14 18:27:25 · 30720 阅读 · 10 评论 -
Unity 封装 倒计时(计时器,CountDownTimer),实现周期更新、技能冷却等功能
Unity 封装 倒计时(计时器,CountDownTimer),实现周期更新、技能冷却等功能 在做游戏时,时常会用到计时器,例如技能冷却,物体一定时间后Inactive,还有周期更新(如一些连网请求,比较耗性能,不需要每一帧请求)等。网上也有不少关于这个计时器的文章,但基本都是需要配合Mono的(即需要绑定到MonoBehaviour组件上,需要Update(),或者协程来更新)。这里就实现基本原创 2017-08-25 13:05:14 · 6055 阅读 · 0 评论 -
Unity 实现出生点(Spawn Points)的Scriptable封装
Unity 实现出生点(Spawn Points)的Scriptable封装 详细代码见 Github : Points 传统设置游戏出生点是在场景中创建一堆GameObject并使用其Transform作为出生点位置。这是有点大材小用了。如果能封装出来到一个列表里面(Scriptable Object),需要使用的时候调用这个列表就不仅让层级列表少了一堆多余的GameObject,还可以实原创 2017-07-10 11:34:27 · 5661 阅读 · 0 评论