- 博客(10)
- 收藏
- 关注
原创 PE 文件详解
在实际解析 PE 文件时,一个常见的操作是将 RVA 转换为文件偏移量,因为原始数据是在文件中存储的。加载器会遍历这些条目,并根据新的实际加载基地址计算出正确的偏移量,然后修改这些地址。Windows 操作系统中的加载器是一个复杂而高效的组件,负责将 PE 文件从磁盘加载到内存并使其可执行。一旦依赖的 DLL 被加载到内存,加载器会解析这些 DLL 的导出表,找到当前 PE 文件所导入的函数或变量的实际内存地址。:数据在 PE 文件内部的物理位置,从文件开头(0x0)计算的字节偏移量。
2025-07-02 10:44:06
1486
原创 揭秘 Unity IL2CPP:底层原理、性能与实际应用深度解析
IL2CPP(Intermediate Language To C++)是 Unity 引擎中一个至关重要的脚本后端,它在现代 Unity 开发中扮演着核心角色。其主要功能是将 C# 编写的中间语言(IL)代码转换为 C++ 代码,然后编译为原生机器码。这种转换机制为 Unity 应用程序带来了显著的优势,包括提升运行时性能、增强知识产权保护的安全性以及拓宽跨平台部署的能力。本报告将深入探讨 IL2CPP 的底层原理、其与 Mono 后端的根本区别、内部工作机制、性能优化策略、调试方法,以及在实际应用中可能
2025-06-26 09:49:31
930
原创 Unity Scriptable Build Pipeline (SBP) 详解
Unity 的可编程构建管线(Scriptable Build Pipeline, SBP)标志着引擎构建架构的一次关键转变,它从不透明的 C++ 实现转向了灵活、可扩展的 C# 框架。SBP 旨在满足现代游戏开发日益增长的需求,通过改进增量处理和高效缓存机制显著提升了构建性能。它赋予开发者对内容构建过程前所未有的控制力,从而能够针对特定项目需求进行深度定制。尽管 SBP 是 Unity 推荐的 Addressables 系统的重要基础层,但理解其核心组件、构建流程和高级功能对于优化大型项目、简化 CI/C
2025-06-24 14:21:40
888
原创 UGUI源码解析三:EventData
EventData主要是用来封装事件系统中的数据。主要以下类组成:1.AbstractEventData:事件数据的抽象基类,主要用于判断事件数据是否使用2.BaseEventData:事件数据基类,继承自AbstractEventData,主要封装了几个事件系统角色的引用3.AxisEventData:轴事件数据类,继承自BaseEventData,主要封装了与轴事件相关的数据,手柄和键盘中控制轴向相关时主要用这个类型。
2023-01-08 22:46:14
736
原创 网格(Mesh)基础
Mesh概念:Mesh是模型的网格,通过点构成线,再由线构成三角形,最后由三角形构成面,然后通过材质来进行网格表面的表达,如阴影,贴图等。Unity除了ui的mesh,其他都需要MeshFilter来确定网格形状,通过Material以及MeshRenderer来进行网格渲染。
2022-11-21 14:43:08
5705
原创 .NET基础
.NET是一个微软搭造的开发者平台,主要包括:1.支持(面向)该平台的编程语言(如C#、Visual Basic、C++/CLI、F#、IronPython、IronRuby...)2.用于该平台下开发人员的技术框架体系(.NET Framework、.NET Core、Mono、UWP等)定义了通用类型系统,庞大的CTS体系用于支撑.NET下的语言运行时的环境:CLRNET体系技术的框架库FCL3.用于支持开发人员开发的软件工具(即SDK,如VS2017、VS Code等)
2022-11-13 00:02:28
944
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人