- 博客(10)
- 资源 (1)
- 收藏
- 关注
原创 [Unity 代码写法整理]接口Interface的使用
1.作为委托去使用。 Java中没有委托,只有接口。所以接口能代替委托的功能。 interface IActionCallback { void Callback(); } 约等于委托 Action Callback 为什么是约等于,是因为委托有个特性是可以+=和-=,但是接口只能用=号去赋值。可以认为委托是接口的封装,还有一个List列表去维护需要执行的函数,也就是用类似于...
2019-05-03 08:21:49
5765
原创 [Unity 代码写法整理]两种单例模式
Unity里有两种单例模式,一种是不继承自Monobehaviour的普通单例模式,一种是继承自Monobehaviour的Unity专属的单例模式。 使用情况: 当所需要创建的单例不需要使用Unity的生命周期时,使用普通单例模式。 当所需要创建的单例模式需要Unity的生命函数时,使用Unity单例模式。 ============================== 普通的抽象单例模...
2019-04-20 10:37:38
1814
原创 [Unity 代码写法整理]状态模式(二)
1.状态抽象类AbstractState public abstract class AbstractState { public abstract void OnChangeState(); } 为了简单 只写一个抽象方法,在状态改变时触发 ============================== 2.状态实现类IdleState public class IdleSt...
2019-04-09 19:00:39
452
原创 [Unity 代码写法整理]状态模式(一)
状态模式的作用: 将一个对象的多种状态封装为类,避免一个类中代码量过大,逻辑混乱。 ============================== 状态模式的使用时机: 1.AI,比如怪物自由走动,寻找玩家,攻击玩家。 2.玩家,因为玩家一般都需要有用户输入,所以状态的切换一般由用户控制。 3.UI框架,一般的UI框架都是状态模式,一般以Stack数据结构存储Window,每一个Wind...
2019-03-31 18:25:43
853
原创 [Unity 代码写法整理]嵌套判断问题(二)
4.前面三种都是需要if else switch case去判断的,现在写一种不需要条件判断的。思想是以多数服从少数,多数包含少数的实现,少数调用。文字上难以理解,直接上代码比较好。还是防具和武器播放不同动画的栗子,这里假如武器种类多,防具数目比较少,也就是武器是多数,防具是少数。 public class ArmorBase { public virtual void PlayAni...
2019-03-17 14:23:54
560
原创 [Unity 代码写法整理]嵌套判断问题(一)
代码中,我们都会把一些可扩展的类抽象出来一层抽象类、基类、接口。子类去重写或者实现这些方法。比方不同平台连接wifi,安卓设备,苹果设备,PC...我们可能会设计一个抽象接口,IConnector,内部写个函数ConnectWifi,然后再写三个类,AndroidConnector,iOSConnector,PCConnector。这样的栗子举到胳膊断了都举不完,这些栗子的 共同点是,他们都是由一...
2019-03-09 21:36:26
597
原创 [Unity 代码写法整理]消息机制(三)
实现第二种即时的消息机制,写法的话跟第一种几乎一样,只是去掉了Queue并且在消息发出时执行Handler ============================== 1.消息体 AbstractMessage: public abstract class AbstractMessage { public string messageName; } 同第一种 ...
2019-03-02 16:56:00
572
原创 [Unity 代码写法整理]消息机制(二)
首先先实现第一种可以跨线程的队列消息机制: ============================== 1.消息体AbstractMessage: public abstract class AbstractMessage { public string messageName; } ============================== 2.消息队列...
2019-02-24 17:29:15
465
原创 [Unity 代码写法整理]消息机制(一)
消息机制的作用: 1.广播,当需要通知给多个对象或者模块的时候,类似于安卓的广播一样。比如一个即时战略游戏,里面有很多单位,当接收到游戏结束的消息时,所有的兵种Idle静止。 2.跨线程调用,Unity只能在UI线程调用UnityEngine相关函数(少部分除外),当跨线程调用时,很多时候都需要UI给用户一个反馈,比如使用IO操作读取文件、连接数据库读取数据、Socket的Accept和Rec...
2019-02-17 18:53:21
584
原创 [Unity Shader 技术整理]边缘检测的使用(一)
先上一张Gif效果图,屋里的衣柜来一张~ 用到的 : 边缘检测Shader + UV移动 + 渐变图遮罩 + 双Pass + EasyAR 完整代码 : C# Code 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 ...
2017-08-17 21:12:23
4758
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅