UE4学习
- UWorld类是游戏的游戏世界对象,我们可以从UWorld中获取Ulevel和UGameInstance
- UGameInstance是UWorld的一个属性类
- Ulevel类是UWorld的一个属性类,可以理解为游戏世界中的关卡。
- Actor类的基类是Object,游戏关卡中的每一个对象例如:摄像机,一草一木都是一个actor。
- Pawn类的基类是Actor类。
- Character类的基类是Pawn类,人物角色一般就是此类。
- Actor数组可以通过Ulevel类的得到(Ulevel类属性保存了它的地址),数组的每一个对象都是actor类或者是actor的子类。
寻找GName和GWorld
在分析使用UE4引擎的游戏时,需要借助UE4Dumper从游戏内存模块libue4.so中dump下来sdk转存信息。
而UE4Dumper需要提供GName,GWorld,UObject等对象的地址,需要从libue4.so中获取这些类对象的地址。
-
GWorld
UWorld是一个游戏的游戏世界对象,直接在export导出函数中搜索GWorld即可得到对应的偏移地址。
-
GName
GName表中包含了引擎的一些字符串信息,每一个actor都有名字,可以通过actor对象的GName ID在GName表中所索引到对应的名称。
搜索字符串GNameEntryPool然后得到其地址后+0x14即为GName的偏移地址。