自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(91)
  • 资源 (9)
  • 收藏
  • 关注

原创 Unity之自动生成预制体脚本

在Unity开发中有许许多多的UI界面,包含着不同的组件,比如Button、Image等,我们需要按正确的路径找到它们并持有它们,这个步骤在界面十分庞大的时候,会十分繁琐易错。本文介绍的自动生成代码工具就是为了解决这一困境,可以自动获取那些我们想要的组件,一键生成,希望对你有所帮助。

2023-01-31 19:20:08 3651

原创 Unity之UGUI-特效遮挡问题2.0

Unity之UGUI-特效遮挡问题2.0之前有发过一版特效遮罩问题,部分的解决了【图-特效-图 】结构式的展示问题链接。这次在git上找到一个非常好用的特效解决方案,可以支持Mask遮罩。效果图如图 使用了遮罩方案的特效可以按需求展示,未使用的在mask中是遮不住的。上面的item是使用了遮罩方案的,下面的item是未使用的。设计思路这里也就谈不上什么设计思路了,在git上找到一个特效处理方案。只需要挂载一个脚本,然后材质使用指定的shader,就可以在UGUI中按正常层级显示内容。场

2022-02-23 11:24:16 4102 2

原创 Unity之手机键盘自定义输入栏位置适配&不同手机分辨率适配

Unity之手机键盘自定义输入栏位置适配&不同手机分辨率适配效果图PC端展示手机端展示(手机是顶部带摄像头的IQOO Neo 5 )设计思路也没啥思路不思路的,就是获取键盘高度,在安卓获取安卓键盘高度,在IOS获取IOS的键盘高度,去找到对应的API即可。由于我做了屏幕适配,在有刘海的屏幕时,内容区域的大小会发生偏移,比如手机顶部有摄像头的手机肯定在顶部有一部分是非工作区域,我们在做应用的时候,通常会把底图铺满包含非工作区域,但是在实际交互界面会把这块非工作区域留出来,不是铺

2022-02-21 17:36:26 6924 10

原创 Unity之滑页效果&基于ScrollRect实现

Unity之滑页效果&基于ScrollRect实现效果图设计思路基于ScrollRect的基础功能,本身在ScrollRect下的Content内容就是可以滑动的,但是它的滑动不符合预期我们把滑动的效果设置为预期效果,那就需要获得开始滑动,滑动中,滑动结束的函数进行改造我们在开始滑动记录位置,滑动中的幅度值,滑动结束记录位置,然后滑动结束时控制滑动效果打过达到下一页的阈值,那就在让页面Lerp场景搭建代码工程项目...

2022-02-10 20:01:47 2959 1

原创 Unity之引导功能遮罩事件穿透

Unity之新手引导shader遮罩事件穿透效果图设计思路1.新手引导我们期待开发内容不影响正常的功能模块,意思就是分层,新手引导在正常功能之上2.新手引导层级用一层深色bg显示遮住正常功能层级,在需要引导的位置留出高亮区域3.在这个新手引导层做事件渗透,给指定的对象或UI做事件渗透,如果点击交互位置处于指定UI或对象范围内,让事件渗透新手引导层,到正常功能层。场景搭建搭建两个层级一个正常功能层级为Canvas下,一个新手引导层级在GuideHolder下。制作新手引导的预制体材

2022-02-10 19:53:06 5054 5

原创 Unity之红点树系统多层级高效能

Unity之红点树系统多层级高效能效果图设计思路可多层级嵌套树可显示数量可动态变更节点状态可动态注册节点或者撤销节点事件场景搭建代码参考工程项目

2022-02-10 19:45:41 2688 3

原创 Unity插件-OSA(Optimized ScrollView Adapter)

SimpleDataHelper 数据类mianexample的场景MainExampleMainSceneEntryObjectsVirtualParentOSABaseParamsBaseItemViewsHolderModelViewHolderAbstractViewsHolder

2021-07-31 12:06:49 4012 6

原创 数据结构&算法-动态规划

概念运行结果代码using System;namespace DynamicProgramming{ class Program { static void Main(string[] args) { DynamicProg dynamicProg = new DynamicProg(); int minnum = -1; int[,] cominfo = dynamicPr

2021-07-31 12:05:02 123

原创 数据结构&算法-回溯算法& 贪心算法

概念(探索与回溯法)是一种选优搜索法,又称为试探法,按选优条件向前搜索,以达到目标。但当探索到某一步时,发现原先选择并不优或达不到目标,就退回一步重新选择,这种走不通就退回再走的技术为回溯法,而满足回溯条件的某个状态的点称为“回溯点”。运行结果using System;using System.Collections.Generic;namespace BacktrackingAlgor{ class Program { static void Main(s

2021-07-31 12:04:28 202

原创 数据结构&算法-快速排序

思路运行结果代码using System;namespace QuickSort{ class Program { static void Main(string[] args) { Sort sort = new Sort(); int[] array = new int[] { 3, 4, 1, 5, 1234, 3, 12, 21412, 42314, 4, 35, 4325, 78, 89,

2021-07-31 12:02:50 115

转载 数据结构&算法-AVL平衡二叉树

概念高度平衡的二叉排序树。我们将二叉树上结点的左子树深度减去右子树深度的值成为平衡因子。平衡因子的绝对值不大于1就是平衡二叉树了。运算结果代码using System;namespace AVLBalancedBinaryTrees{ class Program { static void Main(string[] args) { Tree tree = new Tree(); tree.In

2021-07-14 21:43:43 89

原创 数据结构&算法-图最短路径

对于网图来说,最短路径,是指两顶点之间经过的边上权值之和最少路径,并且我们称路径上的第一个顶点是源点,最后一个顶点终点。 /// <summary> /// 邻接矩阵 /// </summary> class LedByMatrix { int[,] _g; int INFINITY = 65535; public int[,] G { get => _g; } /// &l

2021-07-05 20:51:06 231 1

原创 数据结构&算法-图关键路径

运行结果

2021-06-24 21:14:12 369 1

原创 数据结构&算法-线索二叉树

运行结果代码using System;namespace ThreadedBinaryTree{ class Program { static void Main(string[] args) { ThreadedBinaryTreeC threadedBinaryTreeC = new ThreadedBinaryTreeC(); string[] strarry = new string[] {

2021-06-10 21:29:22 97

原创 数据结构&算法-循环队列

概念解决假溢出的办法就是后面满了,就再从头开始,也就是头尾相接的循环。我们把队列的这种头尾相接的顺序存储结构称为循环队列。运行结果代码using System;namespace QueueCircular{ class Program { static void Main(string[] args) { QueueCircularC<int> circularC = new QueueCircularC&

2021-06-10 21:28:28 120

原创 数据结构&算法-共享栈

概念共享栈:两个栈共享同一片存储空间,这片存储空间不单独属于任何一个栈,某个栈需要的多一点,它就可能得到更多的存储空间;两个栈的栈底在这片存储空间的两端,当元素入栈时,两个栈的栈顶指针相向而行。图示运行结果代码using System;namespace SharingStack{ class Program { static void Main(string[] args) { SharingStackC&lt

2021-06-08 20:54:48 196

原创 数据结构&算法-逆波兰四则运算

从左到右遍历表达式的每个数字和符号,遇到是数字就进栈,遇到是符号,就将处于栈顶两个数字出栈,进行运算,运算结果进栈,一直到最终获得结果。

2021-06-08 10:19:40 377

原创 数据结构&算法-KMP匹配算法

using System;namespace KMPAlgorithm{ class Program { static void Main(string[] args) { string mainstr = "acdeebfgracacdacdefg"; string patternstr = "dacdef"; Console.WriteLine("=========普通匹配算.

2021-06-06 03:12:11 245 2

原创 数据结构&算法-双向链表

双向链表增删方法

2021-06-05 02:08:35 106 2

原创 数据结构&算法-时间复杂度

概念时间复杂度计算方式常见算法的时间复杂度

2021-06-03 23:21:56 153 2

原创 Unity之跑马灯抽奖效果单抽与连抽

Unity之跑马灯抽奖效果单抽与连抽效果图单次抽奖效果跳过动画抽奖效果三连抽抽奖效果设计思路点击按钮 ,根据需求(概率)计算本次抽奖获得物品模拟转动 (先加速后减速), 一段时间后停止连抽的情况下等所有奖品动画都表演完成才结束跳过动画设计,有跳过时抽奖速度直接到最大,并进入可中奖场景搭建一个按钮,一个组奖品放到一个父物体上。奖品元素,有两种状态,一种旋转状态,一种中奖状态。代码using System;using System.Collectio

2021-05-09 20:59:17 3058 20

原创 数据结构-概念

定义大白话现实生活对照事例代码思想

2021-04-24 01:08:56 82 1

原创 听课笔记-《计算机科学速成课》34-40人工智能

文章目录视频链接视频目录笔记第34集·机器学习与人工智能 - Machine Learning & Artificial Intelligence1-4课笔记5-9课笔记10-14课笔记15-17课笔记-计算机发展18-21课笔记22-27课笔记-计算机交互视频链接视频目录1 - 早期的计算 - Early Computing2 - 电子计算 - Electronic Computing3 - 布尔逻辑与逻辑电路 - Boolean Logic & Logic Gates4 -

2021-04-21 20:41:11 684

原创 听课笔记-《计算机科学速成课》28-33网络与安全

文章目录视频链接视频目录笔记第28集·计算机网络 - Computer Networks1-4课笔记5-9课笔记10-14课笔记视频链接视频目录1 - 早期的计算 - Early Computing2 - 电子计算 - Electronic Computing3 - 布尔逻辑与逻辑电路 - Boolean Logic & Logic Gates4 - 二进制 - Representing Numbers and Letters with Binary5 - 算术逻辑单元 - How C

2021-04-21 20:39:36 388

原创 听课笔记-《计算机科学速成课》22-27计算机交互

文章目录视频链接视频目录笔记第22集·命令行界面 - Keyboards & Command Line Interfaces第23集·屏幕 & 2D 图形显示 - Screens & 2D Graphics1-4课笔记5-9课笔记10-14课笔记视频链接视频目录1 - 早期的计算 - Early Computing2 - 电子计算 - Electronic Computing3 - 布尔逻辑与逻辑电路 - Boolean Logic & Logic Gates4

2021-04-15 00:33:24 433

原创 听课笔记-《计算机科学速成课》18-21操作系统

文章目录视频链接视频目录笔记第18集·操作系统 - Operating Systems第19集·内存 & 储存介质 - Memory & Storage第20集·文件系统 - Files & File Systems1-4课笔记5-9课笔记10-14课笔记视频链接视频目录1 - 早期的计算 - Early Computing2 - 电子计算 - Electronic Computing3 - 布尔逻辑与逻辑电路 - Boolean Logic & Logic Gat

2021-04-12 20:25:58 377 1

原创 听课笔记-《计算机科学速成课》15-17计算机发展

文章目录视频链接视频目录笔记第15集·阿兰·图灵 - Alan Turing1-4课笔记5-9课笔记视频链接视频目录1 - 早期的计算 - Early Computing2 - 电子计算 - Electronic Computing3 - 布尔逻辑与逻辑电路 - Boolean Logic & Logic Gates4 - 二进制 - Representing Numbers and Letters with Binary5 - 算术逻辑单元 - How Computers Calcu

2021-04-12 10:11:57 367

原创 听课笔记-《计算机科学速成课》10-14 编程基础

文章目录视频链接视频目录笔记第10集·编程史话第11集·编程语言第12集·编程原理:语句和函数1-4课笔记5-9课笔记视频链接视频目录1 - 早期的计算 - Early Computing2 - 电子计算 - Electronic Computing3 - 布尔逻辑与逻辑电路 - Boolean Logic & Logic Gates4 - 二进制 - Representing Numbers and Letters with Binary5 - 算术逻辑单元 - How Comput

2021-04-07 13:34:35 519 1

原创 听课笔记-《计算机科学速成课》5-9计算机硬件

文章目录视频链接视频目录笔记第5集·算术逻辑单元 - How Computers Calculate - the ALU半加器全加器浮点数表示第6集·寄存器 & 内存 - Registers and RAM1-4课笔记视频链接视频目录1 - 早期的计算 - Early Computing2 - 电子计算 - Electronic Computing3 - 布尔逻辑与逻辑电路 - Boolean Logic & Logic Gates4 - 二进制 - Representing N

2021-03-30 22:46:51 550

原创 听课笔记-《计算机科学速成课》1-4计算机历史

本人非计算机专业转行做游戏程序,愈发觉得自己计算机专业知识匮乏,机缘巧合发现了这门课程,CRASH COURSE 出品的 COMPUTER SCIENCE,想要快速的系统的了解计算机相关知识,这门课真是太适合不过了。本篇只针对课程中不易理解的难点和重点进行梳理介绍。下方为哔站该课程视频链接。视频链接视频目录1 - 早期的计算 - Early Computing2 - 电子计算 - Electronic Computing3 - 布尔逻辑与逻辑电路 - Boolean Logic & L.

2021-03-24 23:15:13 701

原创 12个球找其中一个不同

有 12 个球,外形相同,其中一个小球的质量与其他 11 个不同,给一个天平,用3次把这个小球找出来并且求出这个小球是比其他的轻还是重。12个球分A、B、C三组 ,每组各4个,为: A1、A2、A3、A4 B1、B2、B3、B4 C1 、C2 、C3 、C4第一步将A组和B组放到天平两端,会有三种情况,一.相等 二.A组重 三.A组轻。第一种情况相等说明有问题的在C组,A组B组都正常,在C组挑选3个球假设就是C1、C2、C3,在A组随意选一个假设是A1, 第二步将A1和C1放在

2021-02-08 00:26:38 746 6

原创 Unity之项目优化-精度优化

文章目录前言一、优化前二、优化1.思路2.代码3.操作三、优化后总结前言随着工程项目的推进,项目资源性能优化提上日程,其中有一项是动画资源精度过高的问题,导致占用内存过大。我们需要将浮点数的精调小至2位小数,或者更少或更多。一、优化前打开anim的文本如下接下来我们就要对此进行优化,将所有小数精确保留到两位小数。二、优化1.思路怎么优化呢?我们要先获取anim文件,将anim文件转为文件流,然后对此进行操作,检索里面的内容,如果内容中含有小数的情况,就把该小数精确到2位,然后覆盖到原

2021-02-02 22:10:01 1360

原创 Unity之加载与生命周期时机问题

文章目录背景案例展示1.场景资源搭建2.编写代码总结背景开发中有时发现,使用GameObject go = Instantiate<GameObject>(Prefab, panel);加载出来的对象,获取其挂载的脚本,然后调用里面的方法,发现报错空引用。查找问题发现加载和获取调用的方法都没问题。唯其父物体是隐藏的,运行前将父物体先显示出来,就没有这个问题。案例展示结论:加载出来的对象,其脚本的生命周期函数要在对象显示后才执行。1.场景资源搭建2.编写代码/// <s.

2021-01-28 23:16:16 368

原创 Unity之TMP_InputField-输入字符数限制

文章目录前言思路代码工程项目前言我们在开发过程中遇到需要使用输入框的情况,输入框要做字符数限制,很便捷的InputField检视面板会有公开的字符数限制调节。但是你会发现,无论是英文字符还是中文字符,它都是一视同仁的,这就很难受了,因为从展示上,中英文的位宽是不一样的,我们需要英文字符数显示的多一些,中文字符数少一些。下面就来解决这个问题。思路我们知道英文字符在UTF-8的模式下只占1个字符,中文占2-5个字符,还有其它各类字符,我们这里主要考虑中英文, 通常来讲,我们可以限制一下输入内容的总字

2021-01-28 23:06:24 5877

原创 Unity之UGUI-特效遮挡问题

一.问题背景在项目开发过程中,美术和特效时常会给你出一些难题,比如在一张Image上展示一层特效,然后又在这层特效上展示一张Image,这一坨为一个独立元素,还得在滚动框里滑动,滚动的时候,遮挡逻辑依旧有效。 上图二.解决方案 动画效果预览三.代码四.工程项目参考:Unity 使用 Spine 动画spine unity官方文档...

2021-01-10 00:44:59 5133

原创 热更新之Lua语法基础

lua与C#不同,它是解析型语言,弱类型数据一.HelloWorld与注释演示-- 分号可写可不写-- 用于打印Lua内容的语法print("Hello world!")-- 这是Lua的单行注释--[[ 多行注释不可嵌套 这是Lua的多行注释]]--[[ 这也是Lua的多行注释 为了好看--]]对比书写C#Lua函数关系有明确的所属类一个独立的方法, 无明确的所属类代码结尾必须以;结尾,否则语法错误不需要结尾符号,或者以;号结.

2020-08-20 16:52:00 393

原创 Unity获取手机设备唯一标识-方案探讨

讲解当前环境下 获取安卓手机设备唯一标识的可行方案, 分析优劣势以及容易踩的坑.前言公司开发的游戏需要对用户设备进行标识,获得一个稳定可靠并且唯一的识别码,来作游客登录。并考虑后续玩家从游客换成账户登录数据要同步过来。虽然Android系统中提供了这样设备识别码,但是由于Android系统版本、厂商定制系统中的Bug等限制,稳定性和唯一性并不理想。而通过其他硬件信息标识也因为系统版本、手机硬件等限制存在不同程度的问题。下面汇总了一些能作为设备唯一标识的方案。方案方案大致分为三个方向安卓系统原生

2020-07-18 10:59:47 4408 1

原创 Unity之网络模式&网络通信(HTTP & TCP/Socket)

TCP编程方法(C#)连接(三次握手)断开(四次挥手)监听绑定(服务器开发) unity运行时跑的是C++代码接收发送数据包处理实现聊天室主机要开启IP端口,数据从这些开启的端口进入,HTTP协议 默认端口 80端口,HTTPS协议 默认端口443端口. 分入端口和出端口. IP协议实现主机的网络定位,操作系统端口实现数据的流入和流出.套接字就是将IP地址与主机端口号合并在一起...

2020-04-10 21:33:37 4078

原创 《生存之战》经验整理总结

开发思想任何一款游戏的开发都有一个过程,这个过程不管是简单的还是复杂的,都会有一定的流程和顺序。作为还未熟练掌握游戏开发框架的人员来说开发中具备拆解和迭代思想就显得格外重要。要知道整个大型项目分割为若干个大的功能模块,大的功能模块再细分为针对性的子模块,子模块细分为具体的功能类,然后从最小的功能类一步一步实现整个项目。模块划分没有标准答案明知要划分合理,方便开发,就是好的划分,功能开发不是一次...

2020-03-06 16:35:01 360 1

原创 Unity异步加载小心得

背景一般体量的游戏都会有多个场景,其中主场景资源会相对较多,假如使用直接加载的方式加载主场景,就会出现卡顿的现象,这对玩家来说不是好的体验.由此加载该类场景最好使用异步加载,通过异步加载给出加载进度提示,优化场景过渡的体验.先上效果可以看出来,异步加载提示进度,同步加载直接卡在哪里.上代码using System.Collections;using System.Collection...

2020-02-29 18:04:47 996 1

Android2Unity.zip

当下获得安卓设备唯一标识符近乎完美的方案.Android_id,IMEI,android.os.Build

2020-07-17

ProtoGenTool.zip

将PB文件批量转换成C#文件工具,方便实用,妈妈再也不用担心我一次次的转了.ProtoBuf: Protocol Buffers 。google开发的数据描述语言,可用于数据存储,通信协议,不依赖第三方平台。 该语言在游戏中使用比较多,为什么不用XML,不用Json,ProtoBuf是一种二进制的格式,效率更高.

2020-04-16

unity_with_android-masterCarol.zip

Unity开发过程中,自身提供的API或方案无法满足需求时,就需要Android工程交互通信。网络上交互方案很多,通常为jar包和aar包,经过对比本人采用aar包来实现,过程相对简单。 Unity自带的手机震动API, `Handheld.Vibrate();` 可见简单的实现手机震动,但是手机震动时长是固定的1次0.5秒。无法控制震动的时长和次数。

2019-12-23

Demigiant.zip

游戏开发中会遇到需要做好看的动画效果,DOTween是个不错的工具游戏开发中会遇到需要做好看的动画效果,DOTween是个不错的工具

2019-08-21

LitJson.zip

开发过程中会需要将数据导入到游戏里面,比如 有10个道具,每个道具的 名称、属性、价格 各不相同,如果是在C#中直接声明相应的对象和属性,会很麻烦,而且不易于修改和维护。用LitJson就能较好的解决这个问题,只需要将相关物品对应属性列在Excel中转成 SCV格式,再转成 Json格式即可。

2019-08-21

Demigiant.7z

unity开发中,需要用到好看的UI动画效果或是Postion动画,使用 DOTween是非常方便的

2019-08-21

LitJson.7z

开发过程中会需要将数据导入到游戏里面,比如 有10个道具,每个道具的 名称、属性、价格 各不相同,如果是在C#中直接声明相应的对象和属性,会很麻烦,而且不易于修改和维护。用LitJson就能较好的解决这个问题,只需要将相关物品对应属性列在Excel中转成 SCV格式,再转成 Json格式即可。

2019-08-21

Excel表读取插件.zip

在开发中时常会遇到很多数据要处理,如果每个数据都在代码中声明字段,显得很繁琐,而且修改起来也不方.故可将数据用excel列好,然后一键生成unity程序数据,减轻数据的处理量,以及后续需要修改的重复工作在excel中修改后,重新导入一遍就好了. 需要用到工具ExcelDataReader.DataSet.dll /ExcelDataReader.dll /ICSharpCode.SharpZipLib.dll

2019-08-20

登录背包.7z

完整的登录系统源代码及文件,涉及网络请求,接收发送,适合新手学习,完整的项目及源代码

2019-08-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除