- 博客(71)
- 收藏
- 关注
原创 Unity开发——Destory延迟销毁导致异常的处理
Unity开发——Destory延迟销毁导致异常的处理一、简单介绍Destory二、使用Destory注意事项三、Destory延迟销毁导致异常的处理方法1、DestroyImmediate();强制立即销毁;(编辑器下推荐使用)2、GameObject = null;强制置空,跳过等待删除;(推荐使用)3、其他方式
2025-03-31 11:00:00
809
原创 C#基础:类的三大特性 之 多态
一、封装、继承、多态关系说明二、什么是多态三、两种多态1、编译时的多态(1)方法重载;(2)运算符重载;(3)隐藏方法2、运行时的多态(1)虚函数;(2)抽象方法;(3)接口实现四、类的继承关系来实现多态1、虚函数(运行时多态);2、抽象函数(运行时多态);3、隐藏方法(也叫重载,编译时多态)五、接口中多态的实现1、多重继承;2、多个类继承同一个接口;3、接口和接口之间可以进行继承 ;4、继承条件
2025-03-21 12:00:00
622
原创 Unity开发——点击事件/射线检测
Unity开发——点击事件/射线检测一、IPointerClickHandler接口二、IsPointerOverGameObject()方法三、RaycastAll()方法四、EventTrigger组件
2025-03-16 00:00:00
1382
原创 大白话理解lua热更原理
因为表面我们写代码,定义变量是啥类型,用到那个库,而底层有个元数据的东西,有记录各个对象的数据信息,反射就是读这个元数据,跨程序集,找到这是啥玩意,然后来告诉你。由于语言特性,lua就跳过中间编译解析处理过程,在执行语句时,根据fix标签这种,插入到对应位置,替换执行的功能逻辑,进而实现功能热更。运行时,根据程序执行不同脚本,同个方法执行不同效果功能,运行时根据执行到哪里,来确定变量的类型,不需要写lua时确定变量的类型。lua是解释性语言,就没有打包编译解析的过程,就直接丢给机器,机器就能直接读懂运行。
2025-03-13 01:15:00
430
原创 Unity开发——Xml文件使用
(2)standalone表示该xml是不是独立的,如果是yes,则表示这个XML文档是独立的,不能引用外部的DTD规范文件;如果是no,则该XML文档不是独立的,表示可以用外部的DTD规范文档。3、从XmlElement里获取指定名称的数据:这里获取ID为例。1、关于 XML 头声明和standalone 的解释。先记一部分,下回再整理记录剩下的。在C#文件IO接口加载文件。1、获取根节点下的所有子节点的List。四、Xml文件转其他格式文件。五、其他格式文件转Xml文件。
2025-03-10 10:15:00
327
原创 Unity开发——CanvasGroup组件介绍和应用
1、常用属性介绍2、CanvasGroup的alpha和UI自身的alpha的异同3、CanvasGroup的alpha和UI的visible的异同4、CanvasGroup的blocksRaycasts和interactable之间的异同,及其应用
2025-03-08 23:23:21
812
原创 c#开发——多条件排序
实现多条件下对列表元素进行排序,这里提供两种方法:一、使用LINQ的扩展方法:OrderBy()和ThenBy();二、使用C#List的Sort()及其重载方法;
2025-02-16 20:30:00
216
原创 数据结构与算法——快速排序
1、选一个基准元素,2、两个指针往中间遍历,比基准值小的移到一边,比基准值大的移到另一边,一轮遍历后,指针相交位置就是基准值应该放置的位置,同时数组也以基准值分成左右两部分;3、对两边各自进行递归快排,直到整个数组有序;
2025-02-15 19:33:21
260
原创 Git使用——常见报错及其解决方法
Git使用——常见报错及其解决方法一、报错关键词:OpenSSL、10054 fatal二、报错关键词:git prune三、报错关键词:Logon failed四、报错关键词:encountered、发送请求出错五、Github的Token生成方法
2024-08-22 10:15:00
1614
原创 Git使用——将GitHub设置成Token
Git使用——将GitHub设置成TokenGitHub提供了一种授权方式,使用Token来代替用户名和密码进行身份验证;一、登录GitHub账户二、进入“Personal access tokens”页面三、 创建Token四、 备份和保存Token五、 使用Token
2024-08-22 00:37:41
5365
原创 Unity功能——资源、文件的AES加密解密
Unity功能——资源、文件的AES加密解密一、AES1、简单介绍说明2、AES加密解密脚本二、AES加密方法1、自定义AES加密方法2、AES加密使用三、AES解密方式1、两种解密方法2、AES解密使用3、两种解密方式比较
2024-08-17 20:30:00
1663
原创 Unity热更——ILRuntime安装接入
Unity热更——ILRuntime安装接入一、ILRuntime相关地址二、ILRuntime调试下载安装三、ILRuntime下载导入四、导入后可能存在的Bug和解决方法
2024-08-05 08:15:00
1654
原创 Git使用——首次创建本地仓库、配置、初始化、关联远程仓库
Git使用——首次创建本地仓库、配置、初始化、关联远程仓库1、安装 Git软件2、配置本地仓库(1)初始化本地仓库:git init(2)设置用户信息配置(3)生成SSH Key公钥3、在代码托管平台上添加本地仓库SSH公钥(1)复制本地公钥(2)进入远程仓库平台(3)添加仓库公钥4、关联本地与远程仓库(1)方法1:git push(2)方法2:git clone5、结束
2024-07-02 21:00:00
20984
原创 Unity开发——编辑器打包、3种方式加载AssetBundle资源
一、创建ab资源Unity资源设置ab格式,编辑器工具栏打包,C#生成ab包的脚本二、3种ab包加载方式直接本地加载LoadFromFile。本地异步加载LoadFromFileAsync。服务器异步加载UnityWebRequest。三、补充说明及相关报错解决UnityWebRequest获取不同资源数据使用方法会不同;重新再次加载ab包,出现报错及其解决方法;大部分是忘记卸载加载过的ab包,然后又再次加载。
2024-05-31 14:39:33
4294
1
原创 Unity热更——获取服务器xLua文件,并保存到本地使用
一、将xlua文件放到服务器上搭建服务器环境;设置文件路径、地址二、异步协程获取服务器lua文件并把内容复制到本地文件中获取服务器数据;数据写入本地;使用服务器获取数据说明;三、特别说明:普通数据获取与AB包资源获取;异步请求两者等待方式区别;
2024-05-30 20:15:00
1021
原创 Unity功能——通过按键设置物体朝左/右旋转(含C#转xlua版)
Unity功能——通过按键设置物体朝左/右旋转(含C#转xlua版)博文简介:1、监测按键触发2、设置物体旋转3、完整功能代码
2024-05-27 09:00:00
1063
原创 Unity功能——物体随鼠标朝左/右旋转(带角度限制)
Unity功能——物体随鼠标朝左/右旋转(带角度限制)功能简介:unity的3d场景中,设置3d物体和2dUI,随鼠标移动,向左/右旋转,带角度限制;1、获取鼠标位置2、设置物体的左右朝向3、限制物体角度 (1)3d场景中,限制Y (2)UI场景中,限制Z4、完整功能代码
2024-05-26 08:45:00
1389
原创 Unity开发——好用的数值概率公式
1、血量、伤害两个因素作用,击杀目标2、血量、伤害、以及随机成功概率三个因素作用,概率性击杀目标3、物体的位置,抖动系数确定震动随机范围,实现自然的随机震动
2024-05-24 20:00:00
604
原创 Unity热更——XLua热更新之Hotfix配置(包含xlua获取与导入)
Unity热更——XLua热更新之Hotfix配置(包含xlua获取与导入)一、Git上获取xlua ;二、Unity添加xlua;三、hotfix环境配置1、添加/打开使用Hotfix实现修复与补丁的宏2、初始可能存在的报错的解决方案(1)Hotfix项目时报no field错误(2)执行Hotfix Inject In Editor,报please install Tools(3)执行Hotfix Inject In Editor操作时,出现WARNING提示
2024-05-22 21:15:00
1912
原创 Unity功能——设置Camera,实现玩家被攻击后晃动效果
摘要:通过调整相机移动,视觉感觉玩家面板剧烈晃动,实现被boss攻击时的震动效果。游戏案例:捕鱼达人中被boss撞击后产生的震动晃动效果。核心语句:随机数设置:andom.Range(0f, 振动系数) - 振动系数* 0.5f;
2024-05-21 22:15:00
1200
1
原创 Unity功能——设置场景加载进度条
Unity功能——设置场景加载进度条1、使用异步加载场景2、用协程更新进度条3、进度条加载优化4、完整功能代码
2024-05-17 20:00:00
1644
原创 Unity功能——设置图片随时间自动渐显渐掩
两种方式:本质都是 根据时间修改图片透明度 达到显示或掩藏图片的效果1、监测图片透明度,根据图片透明度值来显示或掩藏图片;2、监测时间,根据时间长短来显示或掩藏图片;
2024-05-17 10:00:00
620
原创 C#API——三种String函数及其重载,删除字符
String.Substring();String.Trim();String.Remove();
2022-07-13 20:15:00
15787
原创 Unity开发——FindIndex方法,查找获取List里目标对象
List的FindIndex 方法,结合匿名方法,非For,Foreach方法实现根据名称获取列表里的目标元素。找到列表里匹配对像后,会返回对应的索引值;
2022-06-16 17:53:47
579
原创 Unity开发——3种Json插件及其使用简单介绍
Unity开发——3种Json插件及其使用简单介绍LitJson插件、Newtonsoft.Json、JsonUtility及其实现的读档存档解析服务器数据的功能方法
2022-06-15 11:32:38
2163
原创 unity功能——处理string格式的Time,并判断时间先后
处理string格式的Time(年月日),并判断时间先后一、处理时间格式输入时间,string格式:“2021/12/30 17:59:25”;输出数字串,List格式:“[2021,12,30,17,59,25]”;二、比较List里的同下标的数字大小,判断时间先后1、越靠近列表前面的数字越大,越接近最近时间/时间最新/最晚;2、这里精确到秒,判断时间先后时,基本不担心会有重复相同的。三、相关方法:正则表达法处理空格,字符串判断是否为空、字符串与数字类型转化等;
2022-05-23 21:15:00
2193
2
原创 unity——长时间不操作检测
unity——长时间不操作检测一、协程控制无操作监测(StartCoroutine("AutoCheck");)二、最简洁的控制无操作监测(仅Update())三、某个外部操作控制开启或取消无操作监测(if(Input.GetKey(KeyCode.J)))
2022-05-18 21:15:00
2520
原创 unity插件——Vectrosity绘制线段
一、绘制二维坐标下线段:VectorLine.SetLine();line.Draw();二、绘制三维坐标下画线段:line3D.Draw3D(); line3D.Draw3DAuto();三、其他图形;网格,射线等等;
2022-04-27 22:15:00
1936
原创 Unity开发——判断UI是否在摄像机视野内
物体坐标转化到相机窗口坐标,物体的x,y坐标不在(0,1)内,则在视野外;以相机方向为正方向,将物体和相机的坐标单位化后点积,得到的值大于0,则在相机前方,反之在相机背后;
2022-04-25 20:45:00
484
原创 Unity功能——3d世界坐标和2d画布/屏幕坐标转换
1、世界坐标转屏幕坐标;2、三维位置实时映射到二维画布上;三维地图上某位置坐标,映射到屏幕画布上显示,在画布上的位置随三维沙盘移动而动;3、二维画布坐标转三维沙盘坐标4、鼠标点击屏幕的点/鼠标位置转换为世界坐标(1)射线检测;(2)直接转换;
2022-04-23 22:30:00
1817
原创 Unity开发——多相机场景下,物体显示的常用设置
Unity多相机场景下,物体显示常用设置一、子相机与主相机协同显示;二、不同相机参数设置,以及渲染目标的设置;RenderType(相机类型)、FieldOfView和ClippingPanels(相机渲染范围)、Culling Mask(可被渲染的物体Layer值)三、相机叠加显示效果。
2022-04-20 23:00:00
7218
原创 Unity功能——实现根据关键词(可以非数值类型)进行排序与搜索
摘要:排序:根据最新更新的时间进行排序;搜索:根据关键词搜索,(1)只要有关键词就是搜索结果之一(非全字匹配);(2)全字匹配关键词,并根据和关键词匹配程度,排序搜索结果;关键词匹配程度规则:相似度: +/- [(X.Y)+1];(1)X表示匹配词里关键词前面字符的个数;(2)Y表示匹配词里关键词后面字符和个数;(3)区分大小写,相似度为(1+X.Y),完全匹配,则为1;(4)不区分大小写,相似度为-(1+X.Y),完全匹配,则为-1;等等
2022-03-27 17:15:00
743
Unity开发-AES加密解密打包加载资源
2024-08-18
Unity开发-生成加载AssetBundle
2024-05-31
完整的带详细用法说明的Lua入门语法资料
2024-05-31
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人