- 博客(216)
- 资源 (9)
- 收藏
- 关注
原创 0.专栏首页
1.Unity经验:移动游戏常见的分辨率2.Unity经验:随文字个数变化的聊天气泡3.Unity经验:三维物体的拖拽和移动4.Unity经验:Unity3d中查找一个脚本被挂在哪些预设上面5.Unity经验:AssetBundle打包6.Unity经验:Unity2019程序化动画绑定(Animation Rigging系统)7.Unity经验:Unity编辑器拓展参考代码8.Unity经验:TimeLine 制作过场动画9.Unity经验:Unity缓存本地......
2021-06-11 19:28:40 1348 2
原创 Share书籍
博主以前是在博客园上面混的,后来因为一些原因(暂不说明)而转战到CSDN。在这里放上博客园的链接https://www.cnblogs.com/kerven/同时放上我的GitHub链接https://github.com/getker个人简介:博主是一个专注游戏开发的开发者,目前专注于Unity开发,图形学,Shader编程等。(2019.09.02更新)............
2019-09-02 09:49:50 912
原创 C#面向对象(OOPs)中的多态性
面向对象编程中的多态性包括编译时和运行时行为。编译时多态性涉及方法和运算符重载,允许基于参数和运算符的多种行为。通过方法重写实现的运行时多态性使子类能够提供自己的超类方法实现。其他形式包括具有泛型的参数多态性、通过方法覆盖和接口的子类型多态性,以及用于隐式类型转换的强制多态性。这些概念有助于提高软件开发中的代码灵活性、可重用性和适应性。
2024-03-08 20:30:44 959
原创 OOPs是什么?
OOPs在编程中代表面向对象编程(Object-Oriented Programming)。面向对象编程是一种编程范式,它将数据和操作封装在对象中,通过对象之间的交互来实现程序的功能。面向对象编程的优点包括代码重用性、可维护性、灵活性和扩展性等,使得程序更易于理解和设计。许多现代编程语言(如Java、C++、C#等)都支持面向对象编程范式,因此掌握面向对象编程的概念和实践是编程中的重要技能之一。
2024-03-08 20:27:02 150
原创 强制Unity崩溃的两个方法
这个方法也是用于强制使应用程序崩溃,但是使用了ForcedCrashCategory枚举来指定崩溃的类型。在这种情况下,指定了AccessViolation作为强制崩溃的类型,与上面的方法类似,会导致应用程序崩溃并显示“Access violation”错误信息。总的来说,这两种方法都可以用于模拟应用程序崩溃的情况,但是第二种方法提供了更多的灵活性,可以指定不同类型的崩溃。请注意,在实际应用中,强制使应用程序崩溃可能会导致数据丢失或其他不良影响,因此请谨慎使用这些方法。
2024-03-08 11:05:48 295
原创 Unity引擎中光源都有哪几种,都有什么作用
3. 聚光灯(Spotlights):聚光灯有明确的位置,同时也有明确的照亮方向,发出的光束内的物体会被照亮,发出的光束外的物体则不会被照亮。Unity 引擎为了实现游戏场景的明暗和光影效果,提供了四种类型的光源,分别是方向光(Directional Lights)、点光源(Point Lights)、聚光灯(Spotlights)以及区域光(Area Light)。对于 Unity 中的灯光,可以设置颜色、强度、照射角度等各种参数,同时可以应用在物理材质上,更为真实地模拟出现实中的光照条件。
2024-03-02 18:09:07 627
原创 C#入门:简单数据类型和强制类型转换
(长整型,占 8 字节, 表示 64 位有符号整数,范围大约 -(10 的 19) 次方 到 10 的 19 次方)(整型,占 4 字节,表示 32 位整数,范围 -2,147,483,648 到 2,147,483,647)(无符号整型,占 4 字节,表示 32 位无符号整数,范围 0 ~ 4,294,967,295)(无符号短整型,占 2 字节,表示 16 位无符号整数,范围 0 ~ 65,535)(短整型,占 2 字节,表示 16 位整数,范围 -32,768 ~ 32,767)
2024-03-02 18:03:01 695
原创 Unity 游戏设计模式:单例模式
全局访问点:单例模式确保只有一个类的实例存在,并提供一个全局的访问点,这样在整个游戏中的任何地方都可以访问该实例。在 C# 游戏设计中,单例模式是一种常见的设计模式,它的主要目的是确保一个类只有一个实例,并提供一个全局访问点。总的来说,单例模式在游戏设计中提供了一种有效的方式来管理全局状态和共享资源,使得代码更容易维护和扩展。上面的属性访问器不是线程安全的,因为没加锁,下面的是线程安全的,但也就仅是创建时安全。比如使用了类的静态成员,但是静态成员又和实例对象无关,然后就创建了实例对象浪费资源。
2024-03-02 17:31:04 589
原创 Unity 游戏设计模式:观察者模式
上面的代码的表示是这些相关系统在观察玩家是否死亡,一旦死亡,就会触发注册的事件,跟在玩家死亡后面执行。在 unity 游戏设计中,观察者模式(Observer Pattern)有着重要的作用,它主要用于实现对象之间的一对多的依赖关系,当一个对象的状态发生变化时,所有依赖于它的对象都得到通知并自动更新。通过观察者模式,可以实现游戏中对象之间的松耦合关系,提高代码的可维护性和扩展性。如果需要添加新的观察者或改变观察者的行为,可以做到不影响主题的实现,从而降低了代码的复杂性。一个代码里耦合了多个系统。
2024-03-02 15:02:46 650
原创 Unity中C#的 == 和 Equals 的区别是什么
在示例代码中,我们重写了 Person 类的 Equals 方法,并在 GetHashCode() 方法中使用了 HashCode.Combine() 方法来生成哈希码。重写 GetHashCode() 方法的目的是让两个相等的对象具有相同的哈希码,以确保它们能够被正确地放置在哈希表中的同一个桶中,并在需要时能够高效地进行查找和比较操作。如果我们自定义一个类,并且没有重写 Equals 方法,那么该类的对象在使用 Equals 方法进行比较时,默认情况下会比较它们的引用,而不是内容。
2024-03-01 16:14:17 1009
原创 Unity 游戏设计模式:工厂模式
抽象工厂模式是工厂方法模式的加强版,抽象工厂模式与工厂方法模式最大的区别在于,工厂方法模式针对一个产品对应一个工厂类,而抽象工厂模式面对多个产品对应一个工厂类,一个工厂角色可以负责多个不同产品等级结构中的产品对象的创建。单工厂模式将对象的创建过程放在一个单独的工厂类中,使得客户端代码不直接依赖于具体的类实现。这相当于是把原本会随着业务扩展而庞大的简单工厂类,拆分成了一个个的具体产品工厂类,这样代码就不会都耦合在同一个类里。如果需要添加新的游戏元素或功能,只需要修改工厂类,而不需要修改客户端代码。
2024-02-29 21:31:58 659
原创 C# 中的装箱(boxing)和拆箱(unboxing)
在 C# 中,装箱(boxing)和拆箱(unboxing)是用来在值类型(如 int、double 等)和引用类型(如 object)之间进行转换的过程。需要注意的是,装箱和拆箱会引入一定的性能开销,因为它们涉及到数据类型的转换和内存的重新分配。装箱是指将值类型转换为引用类型的过程。当将值类型的数据赋值给一个 object 类型的变量时,就会发生装箱操作。当从 object 类型的变量中取出值类型的数据时,就会发生拆箱操作。// 发生拆箱,将引用类型转换为值类型。// 发生装箱,将值类型转换为引用类型。
2024-02-27 11:35:34 337
原创 Unity中的浮点数
在 C#中,float 是 32 位的,能够精确到 7 位,而 double 是 64 位的,能精确到 15 位。这些都是不完全准确的,因为这些类型在内部是以二进制的形式存储的,只有某些十进制小数可以精确地转换为二进制小数。如果要比较两个浮点数是否相等,通常的做法是检查它们是否 “足够接近”,也就是它们之间的差的绝对值是否小于一个很小的正数。这些小数在计算机中可以被精确表示。,对于这样的无限小数,计算机无法精确存储,会在一定的位数后进行截断或者四舍五入,这样就会产生精度误差,这是由浮点数的表示方法决定的。
2024-02-26 19:30:48 831
转载 Lua实现面向对象的原理
实际上是当访问一个表的元素时,如果该元素为空(nil),那么就转去访问该表元表的 __index 元方法。这样,只需要通过将父类设置为子类的元表,那么当访问子类的方法或变量为 nil 时,就可以返回父类相应的方法或变量。可以看到,Lua 中的面向对象编程更接近于原型编程,使用表和元表来实现面向对象中我们熟悉的对象、类和继承功能。所有的键都是唯一的,并且可以是任何类型,除了 nil,包括函数和表。Lua 并没有内建的面向对象系统,但我们可以使用其表和元表的特性来实现对象、类以及继承等面向对象编程的功能。
2024-02-05 10:04:39 37
原创 修改UnityEngine dll
{editor_install_dir}/Editor/Data/PlaybackEngines/{platform}/Variations/il2cpp(iOS平台为iOSSupport\Variations\il2cpp\Releasearm64_managed)而dnspy只能在Win下运行,故哪怕是mac版本dll, 你也得先将相应dll复制到Win下后再修改。目录下, 请根据自己需要打包的平台,替换每个平台下的相关dll。由于有些版本的dll与热重载并不兼容,需要小幅修改代码。
2024-02-04 11:29:44 422
原创 Visual Studio 2022 查看类关系图
右键要查看的项目 -“查看”-“查看类图”原文地址步骤1:勾选扩展开发步骤2: 勾选类设计器。
2024-02-02 23:21:51 447
原创 使用IEEE754标准转换过程
IEEE 754标准是一种用于浮点数表示和计算的标准。对于给定的浮点数,IEEE 754标准定义了如何表示它以及如何执行基本的算术运算。
2024-01-19 17:54:59 399
原创 Unity 如何查看编译的耗时?
回到静态构成函数里面,当编译开始的时候,我们注册一下 compilationStarted 方法,这里我们可以看到这个方法,它需要一个 object 类型的参数,这里我就不使用快捷键来创建这个方法了。紧接着我们来注册一下编译结束时的方法。我们有了这个工具之后,我们可以实时了解项目编译时间的变化,如果突然发现编译的时间显著的增加了,这可能是一个不好的迹象,那表明我们在项目中加入了一些影响性能的东西。有了具体的编译时间的数据,我们可以更有针对性的讨论哪些项目的变动导致了编译时间的变化,从而采取相应的优化策略。
2023-11-07 15:29:01 209
原创 在Unity中如何设置设备的高、中、低配
在开发游戏或应用程序时,考虑到不同设备的性能差异是至关重要的。Unity作为一种流行的游戏开发引擎,提供了一些方法来区分设备的高、中、低配,并相应地调整游戏的性能要求和图形质量。
2023-10-24 20:15:12 605
转载 URP 系列教程 | URP 中的延迟渲染技术
延迟渲染技术其本质是通过将几何通道与光照通道分离,能够以比标准多通道前向渲染器更低的成本渲染更多的灯光。Unity在URP 12.0以及以上版本中添加了对延迟渲染路径的支持。我们目前可以在Unity 2021.2及以上版本中进行体验这个功能。我在 2021 年 Unity 深圳 Openday 的 URP 演讲中,提到过延迟渲染是海量灯光的解决方案,会后就收到许多小伙伴私信希望可以详细讲解下,所以本期教程的内容就是关于 URP 延迟渲染的。延迟着色是三十多年前发明的一种渲染技术。
2023-10-09 17:31:05 355
转载 URP 系列教程 | 如何在 URP 中实现自定义全屏后处理效果
后处理(Post-processing)是现代游戏中必不可少的技术之一,是提升最终画面呈现品质的重要渲染技术。后处理渲染技术的好坏,往往决定了游戏画面是否能够达到令人惊艳的效果。虽然URP中已经为我们内置了近20种后处理效果,并且URP团队也在继续迭代添加更多的效果。不过如何在URP中创建自定义的后处理效果并不容易。幸运的是URP团队在URP14.x中为开发者内置了FullScreen Pass Renderer Feature 与 FullScreen Blit 功能,
2023-10-09 15:07:34 882
转载 URP系列教程 | 如何使用URP 中内置的后处理效果提升画面质量
本篇教程将教大家使用URP Post-processing中的Global Volume 与Local Volume,会主要介绍后期处理的一些效果调节如 Bloom、Vignette、Channel Mixer、Color Adjustments 等等。我们来一起看下吧!!!*若对本课程有任何疑问、建议或反馈,欢迎加入微社区与作者本人交流:https://fanbook.mobi/W897PFJdURP 使用 Volume 框架进行后期处理效果。
2023-10-09 10:01:19 446
转载 轻松上传超过100M的文件至GitHub
首先下载 git-lfs(https://github.com/git-lfs/git-lfs),安装好后进入本地仓库目录,执行下面的命令。需要注意的是,通过 git-lfs 上传文件是有空间限制的,免费用户如果上传的文件超过了 1G,账号就会被冻结,所以大家在。"文件,文件内记录了我们要上传文件的信息。点击自己的头像,进入 “Settings”,选择 Billing" 就可以看到自己还剩多少空间。工作日一般几个小时就会帮你把账号解封,解封后就可以继续上传大文件啦~是需要上传的大文件。
2023-05-12 20:21:26 950
原创 Unity加速编译小技巧
所以,我们自然会考虑到,将这个文件进行分拆,将不经常修改的代码放到一个单独的地方,从而减少不必要的文件编译。这个比较常见的使用情况,一个Editor所使用的dll会依赖相应的Runtime dll。然而,这个语法糖不是免费的。在我们编译到IL2CPP之后,我们会发现,这类模板函数会根据参数的不同排列组合,展开为一个个独立的函数。当我们有大量的模板展开之后,必然会使我们的代码文件快速膨胀,从而增加IL2CPP最终的编译速度。所以,大家在使用模板的时候,一定要留心其参数的排列组合数量,控制好整体的代码大小。
2023-05-12 19:42:45 263
原创 unity解决android9.0 http请求会被拦截
unity 发布的apk,在android 9.0手机上http请求会发送不过去.原因:Android 9.0开始 系统会限制http明文网络请求,也就是https和http的区别。解决:通过配置文件允许系统使用明文传输。
2023-03-30 09:29:45 661
原创 C#重现Unity源码:欧拉角转四元素
注意,这里不是调用Unity的方法,而是用C#实现和源码一样的效果。这里是使用C#+Unity来实现"欧拉角转四元素"。
2022-11-10 11:20:56 1488
转载 四元素定义、运算、插值、与欧拉角之间的转换
单位四元素通过旋转轴和绕该轴旋转的角度可以构造一个四元数:其中是绕旋转轴旋转的角度,为旋转轴在 x,y,z 方向的分量(由此确定了旋转轴)。欧拉证明了 一个旋转序列等价于单个旋转。想象一下,你有一根木棒,其中一端固定在一个地方,通过任意移动木棒,可以达到任意的角度。四元素的一般形式:w== 木棒的长度,(i,j,k)相当于三维空间的坐标。
2022-11-10 09:45:16 2095
原创 免费的电子书搜索引擎-FreeMbook
随着接触的越来越多,涉及到的书籍会很多,所以会买很多书,以前我喜欢看纸质书,但是很多书在看完后就到角落里吃灰了,从那以后,我买的书都是理论性质的书籍,工具性质的书籍只会在网站找一些免费的电子书供自己翻阅查看。所以这时候就需要一个免费的而且资源要很全的电子书网站,这样查找书籍的效率会高一些。经过我长期的寻找和实测,最近发现了一个免费的电子书搜索引擎,成功访问以上链接之后,浏览器会收到一个响应,这就代表我们已经保存到了我们自己的百度网盘,文件的存储路径就是网盘的根目录。就可以搜索到你想要的资源了。
2022-11-08 09:39:08 6661
原创 Python抓取我的CSDN粉丝数,白嫖GithubAction自动抓取
Python抓取我的CSDN粉丝数,白嫖GithubAction自动抓取。
2022-10-31 20:39:50 3628
原创 【左程云Java算法】Chapter1-5:用一个栈实现另一个栈的排序
Chapter1-5:用一个栈实现另一个栈的排序【题目】用一个栈实现另一个栈的排序【要求】一个栈中元素的类型为整型,现在想将该栈从顶到底按从大到小的顺序排序,只许申请一个栈。除此之外,可以申请新的变量,但不能申请额外的数据结构。如何完成排序?【难度】士★☆☆☆【解答】将要排序的栈记为stack,申请的辅助栈记为help。在stack上执行pop操作,弹出的元素记为cur。如果cur小于或等于help的栈顶元素,则将cur直接压入help;
2022-10-27 09:45:22 2592
原创 【左程云Java算法】Chapter1-4:猫狗队列
Chapter1-4:猫狗队列【题目】【要求】实现一种狗猫队列的结构,要求如下:用户可以调用add方法将cat类或dog类的实例放入队列中;用户可以调用pollAll方法,将队列中所有的实例按照进队列的先后顺序依次弹出;用户可以调用pollDog方法,将队列中dog类的实例按照进队列的先后顺序依次弹出;用户可以调用pollCat方法,将队列中cat类的实例按照进队列的先后顺序依次弹出;用户可以调用isEmpty方法,检查队列中是否还有dog或cat的实例;
2022-10-25 16:07:01 1499
data-recovery Window数据恢复工具
2022-10-31
Editor Console Pro.unitypackage Version 3.971
2022-09-14
Mobile Tools Complete Game.unitypackage Version 1.4.24
2022-09-14
Octave3D-Level Design.unitypackage 2.4.3.5
2022-09-14
NodeCanvas.unitypackage NodeCanvas.unitypackage
2022-09-14
Character Pack Free Sample.unitypackage
2022-09-14
Odin Inspector and Serializer.unitypackage
2022-09-14
Remote Inspector - Android & iOS.unityPackage Version 1.6
2022-09-14
CustomShaderGUI.unitypackage
2021-06-30
Editor Console Pro 3.952.7z
2021-04-01
Dynamic+Bone+v1.1.5
2020-12-07
TOLUA热更新.pdf
2019-07-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人