- 最后登录
- 2019-12-2
- 注册时间
- 2012-8-25
- 阅读权限
- 90
- 积分
- 34660
  
- 纳金币
- 38268
- 精华
- 111
|
为了方便我们对外部输入的管理,我们需要将所有的外部输入进行提取出来,制作一个外部输入管理类。方便我们以后对外部输入事件进行管理。当然了,我感觉这对于unity3d进行跨平台的开发是有益的。在对不同平台对接的时候,对于外部输入的修改时,则就只需要修改这一个地方就OK了,不需要在乱翻代码进行查找了。
当然,对于事件的传递,可能会遇到一些困扰。但是如果是挂在同一个游戏物体上的,我们可以采用SendMessage来发送消息,也可以采用BroadcastMessage方式来进行消息的传递。当然我们更可以采用C#提供给我们的委托、事件来进行传递喽。
在这里对于在同一个游戏物体上的,我采用的是SendMessage来发送的消息,对于不同的游戏物体,我采用的是国外的一个开源的Messenger插件来发送的。
Messenger使用起来还是比较简单的。只要在要接受的游戏物体上的代码里的OnEnable()方法里注册监听,在OnDisable()方法里取消监听。然后再要发送消息的地方使用Messenger.Broadcast进行广播就可以了。
|
|