- 博客(43)
- 收藏
- 关注
原创 lua语法——基础知识总结
string.gsub()三个参数,第一个参数,所传字符串,第二个参数,修改的字符,第三个参数, 修改成什么。Student:Up(),冒号的意思是默认把调用者传入方法中。table.remove() 移除的是最后一个。ASCII码转字符:string.char()(注:满足条件就跳出,c#中,满足条件就进入)反转字符串:sting.reverse()转ASCII码:string.byte()小写转大写:string.upper()重复打印两次:string.rep()
2026-03-11 15:12:11
224
原创 Unity(二)——场景异步切换
同步切换的缺点:Unity会删除当前场景的所有对象,所以在切换的时候会非常耗时,会让玩家感到卡顿。协程异步加载后面再进行逻辑操作不会执行,因为之前的场景已经被删除。
2026-01-29 18:08:30
58
原创 Unity(二)——Resources资源动态加载
作用:需要通过Resources相关的API,该文件夹下的所有文件都会被打包出去,打包时Unity会对其压缩加密,该文件夹打包后只读,只能通过Resources相关API加载。作用:打包出去不会被压缩加密,移动平台只读,PC端可读可写,可以放入一些需要自定义动态加载的初始资源。通过代码动态加兹安Resources文件夹下指定路径资源,避免繁琐的拖曳动作。注意:预设体对象加载需要实例化,其他资源加一般直接用。1.通过异步加载中的完成事件监听,使用加载的资源。后面是在Resources文件下的文件路径。
2026-01-27 17:33:07
878
原创 Unity(二)——3D数学
四元数Q=[cos(β/2),sin(β/2)*n](一个标量和三个向量,表示绕着n轴旋转β度)欧拉角会出现万向节死锁,所以在界面上改数值是会产生死锁的,所以要用四元数来解决。Mathf是Unity中封装好的方法,是一个结构体。Math是c#中的数学方法,是一个静态类。假设绕n轴旋转β度,n轴为(x,y,z)左下角为(0,0)右上角为(1,1)Math中有的,Mathf中都有。两向量的点乘,结果判断大于小于0。算x向量 x行不看,从上到下,是A向量和B向量平面的法向量。点乘=0两向量夹角为直角。
2026-01-11 21:06:30
583
原创 网络协议——传输层协议
第四次挥手:C——S发送关闭状态 ACK。第一次挥手:C——S表示要关闭连接 FIN。第二次握手:S——C同意连接 SYN+ACK。第三次握手:C——S再次确认 ACK。第三次挥手:S——C表示自己进入关闭状态 FIN。第二次挥手:S——C表示自己进入关闭等待状态 ACK。
2025-12-23 13:40:13
269
原创 网络协议——网络层协议
由于不同链路的MTU(最大传输单元)不同,发送方路由器会将其分片为若干个小数据包,每个分片包含独立的分片标识标志位和片偏移量。生存时间 / 协议 / 首部检验。版本 / 首部长度 / 区分服务 / 总长度。每一行4个字节最少20个字节最多40字节。ipv4中主机号全0表网络地址。2.IP v4与IP v6。32位 128位。主机号全1表广播地址。
2025-12-22 15:03:29
236
原创 网络协议——数据链路层协议
假设主机a跟主机b通信,若主机a中没有主机b的端口,那么开启一个ARP协议,包含主机a和主机b的IP地址,主机a的端口和一个未知目标的端口,然后发送到局域网中与b对接,最后b把自己的端口发送给a。1.PAP密码认证协议:两次握手认证过程简单,但安全性低。主机a是路由器,路由器中存储的是自己的IP-MAC映射。NCP网络控制协议(支持一种不同的网络层协议如IP)以太网最短帧长:争用期×带宽=512b(64B)2.CHAP挑战握手认证协议:三次握手安全性高。特点:封装成帧,透明传输,差错监测。
2025-12-22 13:17:38
261
原创 Uinty(一)核心系统(2)
压缩方式:PCM(高质量)Vorbis(压缩的更小)ADPCM(包含噪音,如碰撞声)加载类型:不压缩,压缩,压缩到极致(性能换内存)Priority:优先级。2.如何检测音效播放完毕。Volume:音量大小。2,音频文件属性设置。1.代码控制播放停止。
2025-12-10 15:30:27
136
原创 Unity(一)核心系统(1)
Minimum两个摩擦值的最小值。Multiple相乘。Is Trigger触发器,会进行碰撞,但只会穿过,不会产生物理效果。//给物体一个瞬间的力,与物体的质量有关,忽略时间(默认为1)//给物体添加一个瞬时速度,忽略质量,忽略时间(都默认为1)Dynamic Friction移动时的摩擦力(0~1)Environment Lighting环境光设置。产生碰撞的条件 两个物体都需要有碰撞器,至少一个有刚体。力的模式有四种,区别就是计算方式不同,速度就不同。//给物体一个持续的力,忽略其质量(默认为1)
2025-12-07 14:32:21
670
1
原创 Unity(一)重要组件和Api(3)
Unity中 Edit—>Project Setting—>Input Manner。Orthographic正交摄像机(一般是2d游戏)是否启用剔除遮挡(被挡住的不被渲染,默认勾选就可以)Don'tClear 不移除,覆盖渲染(一般不用)裁剪平面距离(就是最近能看多近,最远能看多远)Solid Color颜色填充(2d游戏)渲染纹理 把摄像 机画面渲染到一张图上。skybox天空盒(做3d游戏)渲染顺序,数字越小越先被渲染。输入相关写在Update中。更方便的方法控制键盘鼠标。1.鼠标在屏幕上的位置。
2025-11-27 10:27:26
253
原创 Unity(一)重要组件和Api(2)
就是让一个对象的面朝向 可以一直看向某一个点或者某一个对象。1.世界坐标系转换为本地坐标系。2.本地坐标系转世界坐标系。1.Vector3基础。路程=方向*速度*时间。计算要在Update里。4.儿子可以进行的操作。1.获取和设置父对象。
2025-11-25 13:07:06
114
原创 Unity(一)Unity重要组件和Api(1)
从开始到现在游戏跑了多少帧(跑了多少次循环)主要是为了计算位移,路程=时间*速度。3.实例化对象(克隆)的方法。最近的一帧用了多长时间。一般不用,做demo用。
2025-11-21 13:43:48
321
原创 Unity(一)生命周期函数/Inspector窗口可编辑变量/Mono中的重要内容
Unity底层已经实现了死循环,是固定名字的函数,Unity来调用。时间间隔可以在Project setting中的Time里设置。用于物理更新,每一帧都执行(但是和游戏的帧是不一样的帧)晚于Update的函数,一般用来处理摄像机相关内容。就在上面写一个[SerializeFiled]特性。2.OnEnable(每次对象激活的时候调用)和Onable是对应关系,失活时调用。2.如果想要让私有和保护的显示出来。1.私有和保护无法显示编辑。4.公共的但不让他显示编辑。3.公共的可以显示编辑。
2025-11-19 16:21:56
303
原创 Unity(一) 脚本基本规则
不继承的不能挂在在GameObject上,一般是单例模式的类或者数据结构类。继承了之后不能new只能挂,所以就不能写构造函数。创建的脚本默认继承MonoBehavior。3.不继承MonoBehavior的类。2.MonoBehavior基类。先执行Test再执行Test2。注意类名和脚本名字必须一致。没有特殊需求不用管命名空间。建议不要使用中文命名。不要在VS里创建脚本。
2025-11-18 20:21:25
121
原创 Unity网络开发知识(1)
基本概念:是不同应用程序在该设备上的门牌号,一台设备上不同的应用程序进行通讯就必须对应一个端口号。是一种特殊的C/S模型使用HTTP超文本传送协议通信,一般就是某种浏览器,客户端就不需要开发。IP地址是IP协议提供的一种同一的地址格式,IP地址是设备在网络中的具体地址。私网IP,也称局域网IP,是不能上网的,只用于局域网通信。与服务端相对应,用户在设备上运行使用的应用程序就是客户端应用程序,简称客户端。分为A类B类C类D类E类。就是分散式和集中式综合体现,数据存储集中式,对数据的处理,是分布式。
2025-11-18 10:07:51
276
原创 c# 迭代器 特殊语法
关键接口:IEnumerable , IEnumerable。注意:不能出现在类里,只能在函数里,而且必须初始化。值类型无法为空,但是int前面加?迭代器iterator有时又称光标cursor。可以用foreach遍历的类,都是实现了迭代器。如果左边为null就返回右边值 否则返回左边值。申明对象时,可以直接用大括号去初始化。关键接口:IEnumerable。var可以表示任意类型的变量。如何遍历这个私有的list。直接简单化 增加程序可读性。如何打印list里的内容。$,构造字符串来拼接。
2025-11-06 19:03:28
170
原创 c#反射和特性_特性
就是在特性上加特性,再申明一个特性AttributeTargets:特性能够用在哪些地方AllowMultiple:是否允许多个特性实例用在同一个目标上Inherited:特性是否能够被派生类和重写成员继承。
2025-11-05 20:50:26
164
原创 c# 预处理器指令 反射
将原语言程序翻译为目标语言程序原语言:c#,c++,Java目标语言:二进制数表示的伪机器代码指导编译器 在实际编译开始之前对信息进行预处理1.就是写的代码集合,写的所有代码最终都会被编译器翻译一个程序集让别人使用2.比如代码库文件.dll 可执行文件.exe。
2025-11-04 21:19:31
386
原创 c# List排序 协变逆变 多线程
要继承排序接口为了使大数排在后面接口里要实现的方法int,foat,double等等这种系统自带的直接就可以Sort自定义类排序有两种方法1、继承接口2、委托函数1.协变:和谐的变化 自然的变化比如:string变object,子类变父类out2.逆变:逆常规的变化 不正常的变化比如:object变string ,父类变子类in3.协变和逆变是用来修饰泛型的1.操作系统可以进行运算调度的最小单位2.被包含在进程当中的,进程运行中的实际运行单位。
2025-11-04 10:05:04
238
原创 c# 委托和事件_Lambad表达式
这里就形成了闭包,当构造函数执行完毕后,存的这个10没有被释放,被存起来了。由于事件的行为是无法在外部调用,就用类再封装一下。这个Lambad使用的函数是外层的这个构造函数。闭包最后存在里面的值,是外部临时变量的最终值。1.内层函数可以引用包含在他外层的函数变量。就是匿名函数的简写,和匿名函数用法一样。一、什么是Lambad表达式。二、Lambad表达式语法。三、Lambad的使用。2.即使外层已经终止。
2025-11-03 11:18:05
145
原创 c# 委托和事件_匿名函数
就是没有名字的函数,配合委托和事件一起使用。添加到委托或事件容器中后 不记录,delegate(参数列表)一般是按下面这么方式用。
2025-11-03 09:34:59
138
原创 c#委托和事件_事件
事件就是特殊的委托,事件不能在外部使用赋值,只能加减,然后也不能在外部使用。不能在类外面调用(只能作为成员在类和接口以及结构体中)2.事件是委托的安全包裹,让委托的使用更具有安全性。访问修饰符 event 委托类型 事件名;3.事件是一种特殊的变量类型。委托怎么用 事件就怎么用。事件不能作为函数的临时变量。1、事件是基于委托的存在。3.事件和委托的区别。
2025-11-03 08:38:05
147
原创 c# 委托和事件_委托
使用的时候,函数格式要跟委托格式一样,比如:无参无返回的委托,来装无参无返回的函数。1.Action 无参无返回值的委托(也有泛型委托,可以写16个,直接用)2.Func<> 泛型委托,可以装任何类型返回值的函数。访问修饰符 delegate 返回值 委托名(参数列表)2.就是表示函数的变量类型,用来存储被传递函数。2.其实就是函数前面加个delegate。1、关键字:delegate。五、委托变量可以存储多个函数。1.委托是函数的容器。六、系统定义好的委托。
2025-10-30 19:03:28
114
原创 c# 顺序存储和链式存储
数组,Stack,Queue,List,Arraylist。(用一组任意的存储单元存储线性表中的各个数据元素)2.就是人定义的存储数据和表示数据直接的规则而已。1、增,链式优与顺序,中间查不需要移动位置。数组,栈,队列,链表,树,图,堆,散列表。3.查,顺序优与链式,链式需要遍历。1.是计算机存储,组织数据的方式。单向链表,双向链表,循环链表。四、自己实现一个单向链表。五、顺序和链式的优缺点。(大学课堂都学过的)2.删,链式优与顺序。4.改,顺序优与链式。
2025-10-30 15:38:57
206
原创 c#_泛型数据结构类_Dictionary
可以将Dictionary理解为拥有泛型的Hashtable。具体跟Hashtable是一致的可以去那里举一反三。
2025-10-29 16:41:47
197
原创 c# 泛型约束
值类型 where 泛型字母:struct。引用类型 where 泛型字母:class。另一个泛型类型本身或者派生类型 where 泛型字母:另一个泛型字母。某个接口的派生类型 where泛型字母:接口名。某个类本身或者其派生类 where泛型字母:类名。where 泛型字母:(约束类型)1.让泛型的类型有一定的限制。2.关键字:where。
2025-10-29 15:20:03
113
原创 c# 泛型
interface 接口名<泛型占位字母>2.通过类型参数化来实现同一份代码上操作多种类型。基本语法 函数名<泛型占位字母>(参数列表)1.泛型实现了类型参数化,达到代码重用的目的。基本语法 class 类名<泛型占位字母>1.不同类型对象的相同逻辑处理就可以选择泛型。2.使用泛型可以一定程度避免装箱拆箱。得到值的类型用default。尖括号里可以写多个占位符。1.泛型类和泛型接口。
2025-10-29 08:51:09
191
原创 c# 数据结构_Hashtable(哈希表)
1.是基于键的哈希代码组织起来的 键/值。2.主要作用是提高数据查询的效率。一、Hashtable的本质。
2025-10-29 08:16:31
224
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅