自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(55)
  • 收藏
  • 关注

原创 Unity FBSDK 接入踩坑记录

FBSDK问题踩坑

2023-06-29 13:41:20 2034

原创 Unity游戏崩溃日志查询笔记 安卓平台 关于tombstone_00

关于安卓的崩溃日志如何查询的笔记

2023-03-29 19:55:39 1679

转载 Unity 安卓 设备兼容性与应用兼容性笔记

安卓sdkversion版本兼容

2023-03-21 17:34:08 483

原创 【Unity Android Platform:关于Android权限来源(安卓)如何查找】

安卓权限来源查询方法

2023-03-09 14:25:07 441 1

原创 关于SkinnedMeshRenderer组件的换装功能

换装相关技术方案

2022-12-21 20:22:14 764

原创 Unity开发 解决TapTap隐私协议

隐私协议

2022-10-14 18:10:42 1974

原创 Unity如何快速撰写Andriod插件

Unity如何快速撰写安卓插件

2022-10-14 17:53:53 1598

原创 UGUI合批学习

UGUI合批学习

2022-10-14 17:19:28 1426

原创 关于I/O——内存与CPU与磁盘之间的关系

一句话概括什么是I/O:简单的数据Copy。内存与外部设备之间的copy就是I/O(input/output)

2022-06-22 13:15:33 2578

原创 各种同步学习笔记

同步学习

2022-06-18 23:19:27 513

原创 检测点是否在多边形内

检测点是否在多边形内

2022-06-18 21:11:42 145

原创 重构之问题代码

常见的、可重构的代码

2022-06-08 22:10:26 112

原创 读书笔记:重构之重构原则

重构的原则

2022-06-06 10:19:41 210

原创 内存学习心得

内存学习笔记内存的结构图:进程线程协程序进程享有独立虚拟内存,即进程①挂掉不会影响其他进程。线程是CPU调度的最小单位,享有独立栈内存,共享当前进程的资源。协程是用户可调度的最小单位,自由度更高。栈:存放函数,形参和局部变量,以及函数调用开辟的栈帧(call frame)函数结束返回时自动释放空间。先进后出,向地址减小方向增长(由高地址到低地址)。通过改变帧指针的偏移分割运行的步骤,%esp是栈顶指针(唯一),%ebp(每一个栈帧的开始都有一个这样的地址),%ebp通过偏移可调度当前活跃

2022-05-11 17:52:56 162

原创 Unity客户端开发中遇到的问题

1.如何获取一个List<中的一个泛型>?详细描述:我想获取List的泛型类型,然后强转List里面的实例。网上找了很久都没有找到相关的资料,不知道是不是因为我这个想法比较愚蠢,总之比较好奇能不能这么做。然后就产生了相关的问题class Human{ public virtual void Eat() { } public virtual void Sleep() { } public virtual void Study() { }}class Man :

2022-05-08 15:48:45 488

原创 AB包加载Demo

简单的异步AB加载框架简述打包流程设置资源的BundleName以及BundleVariant打包AssetBundle(将AB包上传到服务端,若放在本地则可跳过)加载AssetBundle实例化AssetBundle中的资源AssetBundle的卸载着重讲解AB包的异步加载。包与包的依赖关系:如上图所示包和包的依赖关系可能是以上图树状结构,如果我们要使用A包里面的资源,但是A包里面的资源依赖C包资源,而C包资源又依赖D包资源,所以需要根据Manefist的依赖关系去整合信息,

2021-12-16 18:07:33 604

原创 Unity批量替换材质 URP项目

批量处理预制件

2021-12-16 11:40:02 3288

原创 C#调用C++Dll库小示例

C#调用C++Dll库小示例先巩固复习语言的分类:Program Errors(程序错误)trapped errors:导致程序终止执行(程序意识到出错,使用对应的错误处理机制),如除 0,Java 中数组越界访问untrapped errors:程序出错后继续执行(其实并不一定保证继续执行,程序本身并不知道出错,也没有对应的错误处理机制),如 C 语言里的缓冲区溢出,Jmp 到错误地址Forbidden Behaviors(禁止行为)程序在设计的时候会定义一组 forbidden behav

2021-12-03 22:24:08 536

原创 再学计算机网络

计算机网络网络层——简单灵活、无连接、尽最大努力交付的数据报服务。网际协议IP:与IP协议配套使用的三个协议:1.地址解析协议ARP。2.网际控制报文协议ICMP。3.网际层管理协议IGMP。IP地址的编址三个阶段:1.分类地址。A,B,C,D,E类地址。2.子网的划分。3.构成超网。IP地址特点:1.每个IP地址由网络号和主机号两部分组成。2.IP地址标志一台主机和一条链路的接口。IP地址和硬件地址物理地址是数据链路层和物理层用的地址。IP地址是网络层和以上各层使用的地址,

2021-11-21 18:37:47 59

原创 Unity EditorWindow 使用案例

UnityEditorWindow学习笔记了解EditorWindow的生命周期:OnEnable():当打开界面的时候调用OnFocus():当该窗口被聚焦(点击该窗口)OnGUI():当渲染UI的时候调用OnSelectionChange():当选择发生更改时调用,选中的可选项(在Project和Hierarchy视图中)OnLostFocus():从该窗口离开时调用(点击非窗口外其他地方)OnInspectorUpdate():当属性界面更新时,几乎一直在更OnHierarchyCh

2021-10-19 17:43:14 2691 1

原创 个人unity学习手册

1.寻找某节点下的指定条件的子节点:Attention:采用Foreach的遍历方法会把自己算计去哦foreach (var VARIABLE in Cube.GetComponentsInChildren<Biaoji1>())//寻找挂载了Biaozhi1脚本的子节点 { Debug.Log(VARIABLE.name); }上图中Cube和Cube4,5,6没有挂载Biaoji1的脚本打印结果:通过这种迭代器遍历(暂不

2021-05-12 19:18:29 241

原创 C#关键字(长更)

C# key wordchecked: 检测运算溢出与否 报stack exceptionoverflowuncheck: 对运算不进行检测运算是否溢出**is: 1. 检查对象类型的兼容性,并返回结果true(false);2.不会抛出异常;3.如果对象为null,刚返回false;a is b返回的是true/falseas: 1.检查对象类型的兼容性,并返回转换结果,如果不兼容则返回null;2.不会抛出异常3.如果结果判断为空,则强制执行类型转换抛出NullReferenceExce

2021-03-01 16:40:42 142

原创 关于C#引用的一些坑

这几天在找项目的bug发现前辈的引用写法有些问题,导致数据不同步。所以写一篇文章记录一下:C#里面有很好用的各种容器,list dictionary等等,但是我们普通用法就是以一些值类型或者“string”来作为key,但是项目一旦大了,key可能就是一个复杂的引用类型。```csharpusing System;using System.Collections;using System.Collections.Generic;namespace test2021_2_25{ c

2021-02-25 17:57:35 234

原创 Unity AssetBundle学习

网上有很多带佬的文章,手把手教学,且代码极其牛逼,直接对编辑器进行编辑。但是我跟着网上的教程打包时,出现了一个错误我看了看代码,我想了想,我用mac对windows平台打ab包报错,但是看build settings 里面 windows、mac、linux三个平台是一个选择啊!!!!为啥会出现这个问题啊!!!!!于是我回到打包调用的那个方法,细看第三个参数:有一万个平台(夸张手法),所以我又再去看看如何操作的,看了看大家的懒人操作方法,感觉在打包的脚本里面多加几个判断就OK了。...

2020-12-03 10:36:13 84

原创 C# 关键字 where 泛型约束

**泛型约束:**顾名思义,用以约束范型。带佬文章:C# 泛型方法Where 约束-----foreverhot1019我在此就写一下自己code出来的一些案例,用于记忆,如若有错,请联系我进行更正。带佬文章写有六种约束,我暂且不这样记,我以自己的方法记忆,where就是一种约束,至于怎么约束再具体看。首先约束的 样子是 where T : ____+ keywordwhere T : class 必须是引用类型 class test_limit_class<T> wher

2020-12-02 16:07:51 379

原创 C#关于继承 派生类构造函数的问题

事出有因:今天看项目代码碰到了C# 关键字 where ,我起先想到的是跟数据库的sql语句一样的where。我搜了资料后发现该关键字和泛型约束有关,于是我又继续学习关于泛型约束的知识,然后看到关于泛型类继承的问题。于是自己就code了一些代码: class Human { //public Human() //{ //Console.WriteLine("this is from HHHHHhuman constructor!");

2020-12-02 11:42:05 316

原创 设计模式—puremvc拓展之中介模式、代理模式、观察者模式和命令模式

设计模式代理模式(静态代理/动态代理)ProxySubject是顶层接口,RealSubject是真实对象,Proxy是代理对象,代理对象持有被代理对象的引用,客户端调用代理对象的方法,同时也调用被代理对象的方法,但是在代理对象前后增加一些处理。1.interface/class:interface subject(){ void func();} or class abstract subject(){abstract void func();}2.proxy and realSu

2020-11-20 09:45:21 260

原创 Unity合理优化内存(GC)

本篇文章是结合各个大佬的文章而成1.unity内存管理简介:内存应该都是以C#作为标准,但是GC是不通的框架有不通的标准。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3ZBFRX4b-1601094331949)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20200926113537736.png)](Mark-Compact)标记压缩法1)unity内部有两个内存

2020-09-26 12:25:15 656

原创 数据结构——简单实现优先队列(维护大小堆)

class PriorityQueue { private int[] Heap = new int[20]; private int count; public void push(int num) { if (count > 19) { Console.WriteLine("堆满"); return;

2020-09-10 11:07:17 342

原创 Unity写脚本数据乱入问题

注释的那段我没有对ButtonsParent赋值,然后在其后面的MinZ和MaxZ的数据就跟着变为0。声明后初始化但未被初始化我所想要的数据。

2020-09-06 15:54:24 81

原创 C#学习日记——泛型结构体+共享栈的实现

using System;using System.Linq.Expressions;namespace stackqueue{ struct Stack<T> { public T[] Array; public int top1; public int top2; public Stack(int len, int t1 =-1,int t2=0) { Array =

2020-09-06 14:01:19 236

原创 C# 编译时多态和运行时多态

C#支持两种类型的多态性:● 编译时的多态性编译时的多态性是通过重载来实现的。对于非虚的成员来说,系统在编译时,根据传递的参数、返回的类型等信息决定实现何种操作。● 运行时的多态性运行时的多态性就是指直到系统运行时,才根据实际情况决定实现何种操作。C#中,运行时的多态性通过虚成员实现。具体的检查的流程如下:1、当调用一个对象的函数时,系统会直接去检查这个对象申明定义的类,即申明类,看所调用的函数是否为虚函数;2、如果不是虚函数,那么它就直接执行该函数。而如果有virtual关键字,也就是一个虚

2020-08-19 22:37:49 736

原创 C# 装箱与拆箱

装箱在内存上的操作:

2020-08-18 20:57:26 62

原创 C#中 “|” 和 “||” “&”和“&&”区别

在写判断语句的时候,我图方便一般都会写“|和&”的语句。但是今天写题的时候发现有问题。if(①|②|③){}if(①||②||③){}“|”:程序在判断时,即使①已经为true了,但是②,③会继续进行判断。“||”:程序在判断的时候如果①已经为true了,则停止继续对②③的判断进入下面的语句。类似python的或/且语句(貌似叫惰性)。&语句也一样。所以就会造成一些问题比如:此处判断语句中:第一个为true,第二个索引超出边界,如果使用的是 ”|“ 符号,则程序会

2020-08-01 17:43:09 2212

原创 C#深入理解-排序

当我们用泛型list存储了一系列数据,而要求以某一个字段作为排序对象时,可以用很多方法去实现。1.实现接口IComparer<*>(泛型情况)2.用委托实现3.匿名方法创建委托4.扩展方法class human:IComparer<human>{ private string name; public string Name { set { Console.WriteLine("被调用");

2020-07-21 15:35:47 113

原创 3DGameKit 源码学习-Reset用法

今天看Unity官方的3D游戏例子,发现脚本里面Reset用法很有趣。我之前知道Reset是编辑器可运行函数,但是不知道具体该怎么使用该功能,Reset顾名思义,重置的意思。默认设置是这样:但是在prefab和scene里面有很多物体,稍不注意就会搞错。这里我故意将几个参数设置为NULL。这里我Reset一次参数,则将会恢复为原来的样子。...

2020-06-24 11:45:23 589

原创 设计模式-简单工厂模式

类介绍:1.Operation类2.Operation子类OperationAdd(+)、OperationSub(-)、OperationMul(*)、OperationDiv(/)3.OperationFactory类代码using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace Model{

2020-05-23 23:12:48 60

原创 Unity 添加Click事件的几种方法总结

所有的点击事件的生效其实都是实现了接口:IPointerClickHandler 里的 OnPointClick先看看源码:接口:Button:所以其实要实现点击事件,就是要实现接口。总结了以下方法实现点击事件:Button(指组件)添加点击事件:1.Button组件仔细看看他的各个参数发现一个On Click()/鼠标单击()下面有3个选择的东西1.运行生效时间(大概),...

2020-04-28 11:41:07 23573 3

原创 Unity UGUI学习过程中遇到的坑

1.Image动态加载失败的问题:网上的格式:obj.GetComponent().sprite = Resources.Load(path, typeof(Sprite))obj.GetComponent().sprite = Resources.Load(path)as Sprite;反正我都不行,我得写成下面的格式:this.GetComponent().sprite = Reso...

2020-04-27 15:40:01 128

原创 Unity Image 组件实现接口IPointerClickHandler 无响应问题

仔细看看是不是没有勾选光阴投射目标(Raycast Target)还有一个带佬的文章,关于子父节点实现不同接口,无响应问题传送门:https://www.cnblogs.com/msxh/p/10588783.html总结带佬的关键点就是:如果一个物体没有父节点的话,那么只实IPointerClickHandler接口便是可以接收到点击事件的。如果他有父节点,父节点挂载的脚本也是只实现I...

2020-04-27 14:35:21 3251

空空如也

空空如也

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

TA关注的人

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