04 2024 档案

UE如何存储PAK文件的AES密码
摘要:Intro UE的大部分content资产都放在了.PAK文件中,为了避免资产被破解,最好对文件进行加密。由于pak文件在运行时需要解密,所以运行时必然需要知道明文密码。或许是出于效率考虑,Unreal使用的是AES这种对称加密,也就是加密和解密使用的是相同的key。 如果把密码以明文的形式存储在文 阅读全文

posted @ 2024-04-28 17:20 tsecer 阅读(1081) 评论(0) 推荐(0) 编辑

从REPLACEMENT_OPERATOR_NEW_AND_DELETE看UE的堆内存管理及gcc相关实现
摘要:观察 为了让庞大代码库看起来更简洁一些,UE使用了不少C/C++黑魔法:宏。把一些重复或者繁琐的实现细节隐藏在了宏里面(例如最为常见且繁琐的GENERATED_BODY宏),尽管代码看起来更简洁,但也隐藏了一些(重要的)细节。 在看UE插件实现时,意外的看到IMPLEMENT_MODULE宏定义中, 阅读全文

posted @ 2024-04-26 12:19 tsecer 阅读(129) 评论(0) 推荐(0) 编辑

YouCompleteMe completer及插件模型
摘要:问题 尽管VS Code提供了在windows下通过ssh访问linux机器的各种便利,但是使用vim在linux环境下开发可以方便的使用从Unix系统中继承的强大工具集(例如grep命令),并且构建、部署也更加方便。加上vim丝滑的操作流,使得linux环境下vim开发依然有着很大的吸引力。 但是 阅读全文

posted @ 2024-04-24 20:23 tsecer 阅读(41) 评论(0) 推荐(0) 编辑

C++和lua关于lambda/closure的实现对比
摘要:closure lexical scope 这篇文章虽然不长,但是厘清了一些基本的概念: 闭包的直观效果就是可以捕捉所在环境中的变量。 Closures are special functions that can capture the environment, i.e. variables wi 阅读全文

posted @ 2024-04-10 14:31 tsecer 阅读(62) 评论(0) 推荐(0) 编辑

从Super类型看UHT功能
摘要:问题 在UE的代码中,经常可以看到对于父类类型的引用,因为很多情况下都要先调用父类的同名函数。例如随便看下UE的部分代码,在实现自己序列化函数的时候先调用基类的序列化函数。 但是,尽管Super是一个非常顺数的功能(在行为树库behaviac数中也有super定义),但是C++并没有实现这种功能。这 阅读全文

posted @ 2024-04-02 21:51 tsecer 阅读(46) 评论(0) 推荐(0) 编辑

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示