自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【Unity面试必考100讲之6】C# 反射:开启代码的“上帝视角”与“透视眼”

用官方的话说:反射提供了封装程序集、模块和类型的对象(Type类型)。可以使用反射动态创建类型的实例,将类型绑定到现有对象,或从现有对象获取类型并调用其方法或访问其字段和属性。(听完这段话,是不是已经想关网页了?别急,看人话版。平常写代码,我们是**“上帝造人”——你知道你要造个Person类,有鼻子有眼。反射则是“法医验尸”**——给你一个黑盒子对象,你在运行的时候,通过技术手段,分析出它是个男是女,有几个鼻子,甚至可以强行让它开口说话。好了,关于C#反射的“扒皮抽筋”之旅就到这里。

2025-12-30 12:08:24 522

原创 【Unity面试必考100讲之5】C# 委托与事件:从“傻傻分不清楚”到“掌控雷电”

本文深入浅出地讲解了C#中委托(Delegate)和事件(Event)的核心概念与区别。委托作为方法的"代言人",可以实现方法的多播调用,但存在安全性问题;事件则作为委托的"安全外壳",通过封装保护委托不被随意调用或清空。文章通过生动比喻和代码示例,阐述了二者的本质关系:事件之于委托如同属性之于字段。最后介绍了现代C#中的Action和Func简化写法,并提供了面试回答技巧。全文以幽默风格呈现技术内容,帮助读者轻松理解这两个重要概念。

2025-12-30 10:27:49 356

原创 【Unity面试必考100讲之4】深度解析面向对象三大特性:封装、继承与多态的底层原理

本文深入解析面向对象编程(OOP)的三大特性在C#中的实现与应用。首先阐述了封装的核心价值在于降低耦合度,通过C#属性、访问修饰符等实现数据保护和逻辑控制。其次探讨继承的利弊,强调"组合优于继承"原则,并演示抽象类和接口的使用。重点剖析多态机制,包括编译时和运行时多态,揭示其底层通过虚方法表(V-Table)实现动态分派的原理。文章不仅提供代码示例,还从设计哲学角度分析各特性的适用场景,帮助开发者深入理解OOP精髓,写出更健壮、可维护的代码。

2025-12-29 11:02:16 746

原创 【Unity面试必考100讲之3】深度解析值类型与引用类型:从内存原理到性能优化

本文深入探讨C#中值类型与引用类型的核心区别,从内存布局(栈/堆)、赋值行为、装箱拆箱到性能优化等方面进行系统分析。文章指出值类型并不总在栈上,可能随引用类型存储在堆中,并通过代码示例展示两者不同的复制行为。重点解析了装箱拆箱的性能陷阱,推荐使用泛型集合优化性能。最后提供类型选型指南,强调理解这些概念对开发高性能系统的重要性。全文旨在帮助开发者掌握底层机制,提升代码质量与性能。

2025-12-29 10:55:00 661

原创 【Unity面试必考100讲之2】Struct 和 Class 到底有什么区别?别再只背“值类型”和“引用类型”了!

本文深入剖析了C#中结构体(struct)和类(class)的核心区别。结构体是值类型,通常存储在栈上,赋值时进行全量拷贝,GC压力小但不支持继承;类是引用类型,存储在堆上,赋值仅拷贝引用地址,支持继承但GC压力大。文章还揭示了性能陷阱:大结构体拷贝成本高,装箱操作会抵消优势。最佳实践建议:仅当数据小于16字节、表示单一值、不可变且不频繁装箱时才使用结构体。通过对比赋值行为、内存管理、继承能力等五大关键区别,帮助开发者合理选择类型,优化性能。

2025-12-26 10:28:09 949

原创 【Unity 面试必考100讲之1】Array、ArrayList 和 List<T> 到底有什么区别?硬核图解性能陷阱

本文深入对比C#中Array、ArrayList和List<T>三大容器的特性差异。Array作为基础结构,内存连续但长度固定;ArrayList虽支持动态扩容但存在类型不安全、频繁装箱拆箱的性能问题;List<T>结合泛型优势,既保证类型安全又避免了装箱拆箱开销。性能测试显示,List<T>在处理千万级数据时效率远超ArrayList。结论指出ArrayList已过时,List<T>适用于95%的场景,仅特殊性能需求时才使用Array。文章还揭示了List&

2025-12-26 10:17:13 835

原创 【游戏开发】拒绝呆板 AI!Unity C# 深度剖析 Boids 群聚算法

本文介绍了如何利用Boids算法实现群体自然移动效果。通过Craig Reynolds提出的三个核心规则(分离、对齐、凝聚),结合向量操纵理论,可以在Unity中模拟鸟群、鱼群等群体行为。文章提供了完整的C#实现方案,包含Boid类(处理个体移动逻辑)和FlockManager类(管理全局参数),通过简单规则组合产生复杂的"涌现"现象,为RTS游戏和自然模拟提供高效解决方案。

2025-12-25 15:26:13 907

原创 【硬核干货】游戏 AI 的大脑:蒙特卡洛树搜索 (MCTS) 深度解析

蒙特卡洛树搜索(MCTS)是一种不依赖领域知识的博弈决策算法,通过随机模拟评估局面优劣。相比传统极大极小算法,MCTS无需预定义评估函数,而是通过选择、扩展、模拟和回溯四个步骤构建搜索树:1)使用UCB1公式平衡探索与利用;2)扩展未探索节点;3)随机走子至终局;4)反向传播胜负结果更新节点统计。C#实现展示了通用框架,通过迭代模拟最终选择访问次数最多的动作。该算法是AlphaGo等游戏AI的核心技术,特别适合状态空间庞大的博弈问题。

2025-12-25 13:49:50 862

原创 【Unity 进阶】拒绝卡顿!手把手教你写一个高可用的“通用对象池 (Object Pool)”系统

在 Unity 开发中,频繁的 Instantiate 和 Destroy 是导致游戏卡顿(GC 峰值)的头号杀手。本文将带你从零实现一个泛型、易扩展、支持自动回收的通用对象池系统。附完整 C# 源码,拿来即用!

2025-12-23 18:16:36 407

原创 【算法实战】手把手带你用 C# 实现 A* (A-Star) 寻路算法

本文详细介绍了A寻路算法在游戏开发中的应用。A算法结合了Dijkstra算法的最短路径保证和贪婪算法的效率优势,通过F=G+H公式评估节点价值,其中G为实际移动成本,H为启发式预估成本。文章讲解了曼哈顿距离和欧几里得距离两种常用启发函数,并给出算法流程:维护开启列表和关闭列表,循环查找F值最小的节点,直至找到终点。最后提供了C#实现代码,使用PriorityQueue优化性能,包含节点定义、启发函数计算和路径搜索的核心逻辑。该算法是游戏自动寻路系统的关键技术,兼顾路径最优性和计算效率。

2025-12-22 18:29:05 838

原创 【Unity/C# 基础算法】从入门到进阶:线性、插值与斐波那契查找深度解析

算法数据要求平均复杂度适用 Unity 场景线性查找无序OnO(n)On简单的 UI 列表、小型动态数组插值查找有序且分布均匀Olog⁡log⁡nOloglogn))大型静态数值配置表(如等级经验表)斐波那契查找有序Olog⁡nO(\log n)Ologn底层性能优化、避免除法开销的系统博主寄语我是 [小郎君],我们下期见!

2025-12-18 19:48:18 646

原创 【设计模式】装饰者模式

角色和buff进行解释。

2024-10-12 15:33:59 435 1

原创 【Unity 100个实用小技巧】 UI分辨率适配

学习实际项目中,分辨率适配的方案,基础版本。以下适配以720*1680为基准适配。

2024-10-12 11:57:48 605

原创 【Unity100个实用小技巧】Unity接入微信SDK

为了实现Unity接入微信排行榜

2024-04-29 20:42:03 1491

原创 【Unity100个实用小技巧】如何保存MP3音乐到本地(wav格式)

如何保存MP3音乐到本地(wav格式)

2023-08-11 16:17:05 957

原创 【Unity100个实用小技巧】如何动态生成图片的Mipmap

动态生成Mipmap

2023-07-27 11:50:57 874

原创 【每日算法】【226. 翻转二叉树】

【每日算法】【226. 翻转二叉树】

2023-07-13 15:17:47 610

原创 【每日算法】【219. 存在重复元素 II】

219. 存在重复元素 II

2023-07-08 17:06:51 736

原创 【每日算法】【27. 移除元素】

27. 移除元素

2023-06-28 21:34:39 316

原创 【每日算法】【205. 同构字符串】

同构字符串

2023-06-19 18:28:52 1068

原创 【每日算法】【203. 移除链表元素】

203. 移除链表元素

2023-06-19 14:26:14 978

原创 【每日算法】【202. 快乐数】

【每日算法】【160. 快乐数】

2023-06-14 17:14:27 1585

原创 【每日算法】【160. 相交链表】

【每日算法】【160. 相交链表】

2023-06-13 11:24:30 1156

原创 【每日算法】【168. Excel表列名称】

每日算法,Excel表列名称

2023-06-08 15:23:01 914

原创 【每日算法】【171. Excel 表列序号】

171. Excel 表列序号

2023-06-05 17:43:17 548

原创 【MD5知识详解】【面试知识】

MD5知识详解

2023-06-05 14:47:33 1382 1

原创 【Unity100个实用小技巧】Git报错:error: some local refs could not be updated;

Git报错,Unity100个实用小技巧

2023-06-04 19:33:56 1136

原创 【我是小狼君】【Unity学习路径】【一篇就够】

【我是小狼君】【Unity学习路径】【一篇就够】

2023-06-02 16:13:27 290

原创 【UnityShader入门精要】【总结记录】【第二章-2】

【UnityShader入门精要】【总结记录】【第二章-2】

2023-06-01 22:46:37 715

原创 【UnityShader入门精要】【总结记录】【第二章-1】

《Unity Shader入门精要精简》

2023-06-01 22:39:42 934

原创 【Unity100个实用小技巧】屏幕后处理实现渐隐渐现

屏幕后处理实现渐隐渐现,效果丝滑

2023-05-31 17:56:48 963

原创 【简单实用框架】【十大排序算法直接调用】【可移植】

九个排序静态算法,工程中直接取用

2023-05-30 16:41:50 1073 1

原创 【Unity100个实用小技巧】C# 实现深拷贝的五种方式

【简单实用框架】【AddressablesMgr】【可移植】

2023-05-30 16:28:24 2563

原创 【Unity100个实用小技巧】同一个Canvas下的UI顺序通过代码如何修改

同一个Canvas下的UI顺序通过代码如何修改

2023-05-29 18:46:48 1181 1

原创 【Unity100个实用小技巧】如何修改UI上材质的Shader

如何修改UI上材质的Shader

2023-05-27 20:47:18 2325

原创 【Unity100个实用小技巧】世界Canvas自动隐藏,包含子物体

世界Canvas自动隐藏,包含子物体

2023-05-27 20:03:56 1069

原创 【Unity100个实用小技巧】一行代码解决天空盒接缝问题

【Unity100个实用小技巧】一行代码解决天空盒接缝问题

2023-05-26 17:07:40 922

原创 【Unity100个实用小技巧】保证原图片的情况下,动态扩展图片尺寸

📆 未来很长,值得我们全力奔赴更美好的生活✨------------------❤️分割线❤️-------------------------Unity。

2023-05-18 22:49:42 472

原创 【Unity100个实用小技巧】读写Json篇

Unity100个实用小技巧

2023-05-05 09:45:18 348

原创 【Unity100个实用小技巧】Http请求篇章

Unity100个实用小技巧

2023-05-05 09:39:12 416

空空如也

空空如也

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

TA关注的人

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