ue4-ida寻找Gworld
关于Gworld和Uworld
在虚幻引擎(UE)中,GWorld是全局变量,指向当前激活的 UWorld 实例。UWorld代表游戏世界,是游戏的核心容器,负责管理关卡、对象生命周期、物理行为、光照渲染及逻辑执行。
GWorld的作用
GWorld通过指针直接关联到当前活跃的UWorld实例,主要用于存储和切换游戏世界的上下文。在引擎代码中,GWorld通常在初始化时被设置为新加载的游戏世界实例,并负责协调不同世界实例之间的资源管理和状态更新。
与UWorld的关系
UWorld是游戏世界的核心类,包含多个关卡、动态元素(如Actor)的管理以及物理渲染逻辑。GWorld作为全局指针,指向当前正在运行或编辑的UWorld实例,支持多世界并存(如编辑器模式下的主场景、PIE实例等)。
在ida寻找Gworld
ue的版本号为4.26.2
https://github.com/EpicGames/UnrealEngine/
dump出来的文件,函数窗口搜索
Anullobject
f5进,这里的qword_7FF62294D5E0就是Gworld
右上角编辑»段»重新设置基址,拿到当前基址
当前基址-Gworld的地址即可得到Gworld的偏移
从Gworld到Uworld
地址跳转 按 G → 输入函数地址(如截图中的 sub_7FF61EBDC840) 直接跳转到 .text 段的函数代码得到
.text:00007FF61EBDC87F 48 89 05 52 0D D7 03 mov cs:qword_7FF62294D5D8, rax
这里的mov cs:qword_7FF62294D5E0, rax就是我们要找的Uworld
地址7FF61EBDC87F就是Uworld的偏移




