11 2022 档案

摘要:Lua是动态类型语言,变量不需要类型定义。 数据类型 | 数据类型 | 描述 | | : : | : : | | nil | 空(在条件表达式中相当于false) | | Boolean | 布尔值:true / false | | number | 浮点数(Lua中整数浮点数不做区分) | | s 阅读全文
posted @ 2022-11-28 12:56 坞中客 阅读(845) 评论(0) 推荐(0) 编辑
摘要:什么是AB包:它是一个存在于硬盘上的文件,可以称为压缩包,这个压缩包可以是一个文件夹。 AB包的作用:将资源放到服务器上,当客户端需要的时候从服务器中获取,程序不需要重新安装。 AB包定义:Unity资源压缩包。 AB包依赖的资源:图片,文本,音频,视频,模型,动画,预制体,场景资源,脚本,可编辑脚 阅读全文
posted @ 2022-11-20 17:11 坞中客 阅读(126) 评论(0) 推荐(0) 编辑
摘要:快速添加盒型碰撞器 批量设置字体 查询信息 记录历史记录,清除记录 using System.Collections.Generic; using UnityEngine; using UnityEditor; using System; using UnityEngine.UI; public c 阅读全文
posted @ 2022-11-19 11:53 坞中客 阅读(34) 评论(0) 推荐(0) 编辑
摘要:被观察者 using UnityEngine; // 声明一个委托 public delegate void Tesk(); // 老板 public class Boss : MonoBehaviour { // 创建一个委托 public static Tesk ReleaseTask; voi 阅读全文
posted @ 2022-11-17 23:03 坞中客 阅读(22) 评论(0) 推荐(0) 编辑
摘要:单例模板 public abstract class Singleton<T> where T : new() { private static T instance; public static T Instance { get { if (instance == null) instance = 阅读全文
posted @ 2022-11-17 22:53 坞中客 阅读(34) 评论(0) 推荐(0) 编辑
摘要:单例模板 public class Singleton<T> where T : new() { private static T instance; public static T Instance { get { if (instance == null) instance = new T(); 阅读全文
posted @ 2022-11-17 21:56 坞中客 阅读(26) 评论(0) 推荐(0) 编辑
摘要:Json序列化反序列化工具 ProtoBuffer生成解析类工具 解析库 RedDotSystem 案例 IDEA编辑器开发环境配置 阅读全文
posted @ 2022-11-17 18:50 坞中客 阅读(28) 评论(0) 推荐(0) 编辑
摘要:消息头:消息唯一标识,用来区分当前网络请求的类型。登陆就做账号验证,聊天就做消息群发。 一般使用数字表示,字符串比较耗内存。1byte范围为0 ~ 255,2byte范围为0 ~ 65535,消息头一般情况2byte就够了。 消息体:真正传输的数据。 假设1001为登陆请求,1004为聊天功能。 / 阅读全文
posted @ 2022-11-17 18:42 坞中客 阅读(72) 评论(0) 推荐(0) 编辑
摘要:Socket 通讯可以用到Unity中。 Unity支持多线程,但若是涉及到UI或UnityAPI时不支持。 单独开启一个线程接收数据,但主线程的无法和其数据进行交互,可以使用消息队列机制解决。 消息队列机制:在接收数据的线程和主线程中设置一个队列,接收数据的线程负责向队列中存放数据,主线程负责从队 阅读全文
posted @ 2022-11-16 23:37 坞中客 阅读(47) 评论(0) 推荐(0) 编辑
摘要:socket是在应用层和传输层之间的一个抽象层,可以理解为在协议上实现的一个功能,socket本质是编程接口,TCP/IP实际上是一个协议栈,必须要具体实现,同时还要提供对外的操作接口,这就是socket接口。 Socket通讯模型 Server服务器创建Socket,等待接收请求。 Client客 阅读全文
posted @ 2022-11-14 20:24 坞中客 阅读(202) 评论(0) 推荐(0) 编辑
摘要:Queue 先进先出,相当于做核酸排队。 // 创建队列 Queue<string> 排队做核酸 = new Queue<string>(); // 入队 排队做核酸.Enqueue("张三"); 排队做核酸.Enqueue("李四"); 排队做核酸.Enqueue("王五"); // 出队 排队做 阅读全文
posted @ 2022-11-14 13:32 坞中客 阅读(16) 评论(0) 推荐(0) 编辑
摘要:JSON 是一种轻量级的数据交换格式。 简洁和清晰的层次结构使得JSON成为理想的数据交换语言,易于人阅读和编写,同时也易于机器解析和生成,并有效地提供网络传输效率。 json大体结果分为两大部分json数组,json数据。 json数组 是以[]包裹,数组内可以出现多个json数据。 json数据 阅读全文
posted @ 2022-11-13 18:37 坞中客 阅读(19) 评论(0) 推荐(0) 编辑
摘要:网络协议 网络协议是一种网络通讯语言,为连接不同操作系统和不同硬件体系结构的互联网提供通信支持。 开发者一般使用最上层应用层的协议来进行网络数据传输,数据会从上层协议逐渐向下层传输,逐渐进行数据加工,添加底层传输必备的通讯数据来进行交互。到达对方通讯节点后从下层到上层依次拆解数据包,对方就可收到对应 阅读全文
posted @ 2022-11-13 18:34 坞中客 阅读(99) 评论(0) 推荐(0) 编辑
摘要:深拷贝浅拷贝 int num1 = 10; // 这里是将num1对应的值赋给num2 int num2 = num1; // num2自增10,num2变成20,但num1还是10,这里使用的是深拷贝 num2 +=10; 深拷贝:拿到的是对应的值。 int[] list1 = { 1, 2, 3 阅读全文
posted @ 2022-11-13 00:20 坞中客 阅读(28) 评论(0) 推荐(0) 编辑
摘要:public partial class People : MonoBehaviour { } public partial class People { } 对一个类进行拆分,用于并行开发,但定义的参数和函数名不能重复。 阅读全文
posted @ 2022-11-12 12:55 坞中客 阅读(20) 评论(0) 推荐(0) 编辑
摘要:void Start() { // 作为可变参数进行产地 Debug.Log(Sum(1, 2, 3)); // 作为数组进行传递 Debug.Log(Sum1(new int[] { 1, 2, 3 })); } // 可变参数 public int Sum(params int[] a) { i 阅读全文
posted @ 2022-11-12 12:54 坞中客 阅读(21) 评论(0) 推荐(0) 编辑
摘要:值传递:把数值传进入,自己不进去。 引用传递:把自己传到函数内存去。 void Start() { int a = 0; Add(ref a); Sub(out a); } void Add(ref int a) { } void Sub(out int a) { a = 0; } ref和out的 阅读全文
posted @ 2022-11-12 12:52 坞中客 阅读(31) 评论(0) 推荐(0) 编辑
摘要:在不修改原始代码的情况下添加新的成员方法(只能添加成员方法) 如:给数组添加一个求和功能 public static class ExtArray { public static double Sum(this Array o) { double sum = 0; foreach (var item 阅读全文
posted @ 2022-11-12 12:51 坞中客 阅读(23) 评论(0) 推荐(0) 编辑
摘要:进程 进程是计算机中的程序关于某数据集合上的一次运动活动,是系统进行资源分配和调度的基本单元,是操作系统结构的基础。 // 打开指定程序 Process p = Process.Start(@"C:\Program Files\Google\Chrome\Application\chrome.exe 阅读全文
posted @ 2022-11-06 18:56 坞中客 阅读(106) 评论(0) 推荐(0) 编辑
摘要:一个文件是一个存储在磁盘中带有指定名称和目录的数据集合,当打开文件进行读写时,它变成了一个流。 从根本上说,流是通过通信路径传递的字节序列,有两个主要的流,输入流和输出流。输入流用于从文件读取数据,输出流用于向文件写入数据。 Directory.CreateDirectory(@"D:\函数创建的文 阅读全文
posted @ 2022-11-06 16:09 坞中客 阅读(24) 评论(0) 推荐(0) 编辑
摘要:字符串-引用类型 可以理解为一个存储字符的数组 关于字符串的常用方法 static void Main(string[] args) { string str = "Hello World"; // 字符串长度 Console.WriteLine(str.Length); // 批量访问每一个字符 阅读全文
posted @ 2022-11-05 21:19 坞中客 阅读(22) 评论(0) 推荐(0) 编辑
摘要:委托 delegate关键词 event关键字,添加后将委托封装成事件。 事件和委托区别:事件相对于委托来说更加安全。 四种类型委托 // 自定义无参无返回值 public delegate void ActionX(); // 自定义有参无返回值 public delegate void Acti 阅读全文
posted @ 2022-11-05 21:10 坞中客 阅读(24) 评论(0) 推荐(0) 编辑
摘要:解决拆装箱问题,使逻辑更加的严谨。 此前使用到的地方:游戏物体查找添加对象。 泛型类 我们可以定义一个类中出现的类型,类型事先不需要写死我们使用T来表示,这使得类的扩展性大大增加,可以应用于更多的场合。 class Program { static void Main(string[] args) 阅读全文
posted @ 2022-11-05 17:39 坞中客 阅读(23) 评论(0) 推荐(0) 编辑
摘要:泛型数组 using System.Collections.Generic; 为了解决动态数组的拆装箱问题,故引入泛型数组。 // 创建一个int类型的泛型数组 List<int> list = new List<int>(); // 数据添加 list.Add(1); list.Add(2); l 阅读全文
posted @ 2022-11-05 17:31 坞中客 阅读(38) 评论(0) 推荐(0) 编辑
摘要:结构体 结构体为值类型和类的用法很像 结构体中也可以存成员变量和以及成员方法 结构体不需要构造方法,因为是值类型存储咋栈中 不使用New也是可以使用 自定义结构体本身可以继承接口不能继承类,也不能被继承 只是存储数据建议使用结构体,有复杂逻辑建议使用类。 struct关键词 using System 阅读全文
posted @ 2022-11-05 17:26 坞中客 阅读(30) 评论(0) 推荐(0) 编辑
摘要:interface关键词 using System; namespace Test { class Program { static void Main(string[] args) { // 只能调用鸟类的功能 Bird a1 = new WildGoose(); // 可以调用鸟的功能,也可以调 阅读全文
posted @ 2022-11-04 17:55 坞中客 阅读(17) 评论(0) 推荐(0) 编辑
摘要:多态 静态多态性,重载 ==重载:同一个方法中有多个相同名称的方法,但参数不一样。== 在编译阶段(程序未运行的时候),函数之间就产生了一对一的关系。 减少函数的命名,多个相同的函数可以使用相同的命名。 Mathf f = new Mathf(); f.Add(10001); class Mathf 阅读全文
posted @ 2022-11-03 20:49 坞中客 阅读(26) 评论(0) 推荐(0) 编辑
摘要:using UnityEngine; using UnityEngine.SceneManagement; public class ScenesJumpMgr : MonoBehaviour { void Start() { // 场景跳转不删除当前游戏物体 DontDestroyOnLoad(g 阅读全文
posted @ 2022-11-03 18:07 坞中客 阅读(21) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示