设计模式-单例模式 1.简介单例模式是一种常用的软件设计模式,其定义是单例对象的类只能允许一个实例存在。 许多时候整个系统只需要拥有一个的全局对象,这样有利于我们协调系统整体的行为。比如在某个服务器程序中,该服务器的配置信息存放在一个文件中,这些配置数据由一个单例对象统一读取,然后服务进程中的其他对象再通过这个单例对象获取这些配置信息。这种方式简化了在复杂环境下的配置管理。 2. 特点 单例类只能有一个实例 单例类 2021-04-14 设计模式 设计模式
Socket原理 1. 什么是Socket1.1 网络中进程之间如何通信本地的进程间通信(IPC)有很多种方式,但可以总结为下面4类: 消息传递(管道、FIFO、消息队列) 同步(互斥量、条件变量、读写锁、文件和写记录锁、信号量) 共享内存(匿名的和具名的) 远程过程调用(Solaris门和Sun RPC) 但这些都不是本文的主题!我们要讨论的是网络中进程之间如何通信。 首要解决的问题是如何唯一标识一个进程,否 2021-04-07 网络 网络 Socket
Unity-输入操作 1.简介输入操作是游戏的基础操作之一。 Unity支持的操作方式: 鼠标、键盘,小键盘(PC) 手柄(主机) 触屏操作、重力传感器、手势(移动平台) VR,AR 麦克风,摄像头 2. 虚拟输入轴(Virtual axes)虚拟控制轴将不同的输入设备(比如键盘或摇杆的按键)都归纳到一个统一的虚拟控制系统中。(比如键盘的w、S键以及手柄摇杆的上下运动默认都统一映射到竖直(Verica)输入轴上)这 2021-03-25 Unity 基础 常用操作 Unity基础 总结 输入操作
设计模式-观察者模式 1.简介观察者模式是一种对象行为模式。在此种模式中,一个目标物件管理所有相依于它的观察者物件,并且在它本身的状态改变时主动发出通知。 它定义对象间的一种一对多的依赖关系:当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。主体是通知的发布者,它发出通知时并不需要知道谁是它的观察者,可以有任意数目的观察者订阅并接收通知。 观察者模式(Observer)完美的将观察者和被观察的对象分 2021-03-24 设计模式 设计模式
设计模式-策略模式 1. 简介策略模式属于对象的行为模式。其用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。 2. 设计原则 找出项目中不稳定的代码(可能需要改动的地方),把它们独立出来,不要把它们和其它稳定的代码混在一起 针对接口编程而不是针对实现编程 多用组合少用继承 3. 模式结构策略模式是对算法的包装,是把 2021-03-23 设计模式 设计模式
Unity中的标签 层级 静态物体 预制体 1. 标签1.1 简介标签(Tag)是一个可以标记在游戏物体上的记号,它一般是一个简单的单词。比如:你可以为游戏人物添加一个Player标签,并为敌人角色添加一个Encemy 标签,还可以为地图上的道具添加一个Collectable标签。 在脚本中查找和指定物体时,使用标签是一种非常好的方法。这种方法可以避免总是采用某个公开变量的方式来指定游戏物体,那样还需要通过拖曳的操作才能给变量赋初值。通过标 2021-03-21 Unity 基础 常用操作 Unity基础 总结 层级 标签 静态物体 预制体
Unity中的事件 1. 简介Unity在C#Event特性的基础上进行了改良,Event只能用于纯代码编程,而UnityEvent可以和UnityEditor配合使用提高效率。 请先学习C#事件! 2. Unity事件的改良在C#事件中我们举的例子中,可以看出.Net框架下的事件存在以下几个问题: 订阅的时机受限你必须在事件触发前完成事件的订阅事件处理程序将收不到订阅前的事件动态 不方便管理想要查看所有订阅事 2021-03-21 Unity 基础 底层机制 Unity
CSharp-委托 1. 简介委托(delegate)是一种存储函数引用的类型。委托是C#的一个语言级特性,而在Java语言中没有直接的对应,但是java利用反射即可实现委托。 委托最重要的用途在事件和事件处理时才能解释清楚,但这里也将介绍有关委托的许多内容。 委托是一种数据类型,和类是同级别的,我们可以将delegate与class类比: class里存放的是一系列方法,属性,字段,事件,索引。 delegate 2021-03-21 语言学习 C# C#高级特性 C#
CSharp-事件 1. 简介C#事件的核心思想是基于windows消息处理机制的,只是封装的更好,让开发者无须知道底层的消息处理机制,就可以开发出强大的基于事件的应用程序来。 关于事件,比较形象的比喻就是广播者和订阅者。事件执行时会广播给订阅他函数,告诉每个函数该运行了,但不管函数的实现细节。 事件类似于异常,因为它们都由对象引发(抛出),并且都可以通过我们提供的代码来处理。但它们也有个重要区别:事件并没有与tny 2021-03-21 语言学习 C# C#高级特性 C#
常用的事件函数 1. 简介Unity中的脚本组织不像传统的游戏循环,有一个持续进行的主循环并在循环体中处理游戏逻辑。 相对的,Unity 会在特定的事件发生时,调用脚本中特定的函数,然后执行逻辑的任务就交给了该脚本函数,函数执行完毕后,执行的权力重新还给Unty。 这些特定的函数通常被称为事件函数,因为是在特定事件发生时由引擎层调用的。 2.必然事件 事件函数 作用 Awake 脚本实例被创建时调用(用 2021-03-20 Unity 基础 常用类 Unity基础 转载