Live Coding vs Hot Reload for structural C++ changes
0 reputation · 13 Jan 2025, 11:36 UTC
When iterating on C++ base classes in Unreal Engine, choosing between Live Coding and Hot Reload impacts how the engine handles memory state. While both methods aim to update logic without a full editor restart, their internal mechanisms for binary-swapping differ significantly.
Live Coding utilizes a separate compilation process to patch functions in the running memory, which generally preserves the current state of the game world. However, it struggles with structural shifts such as deleting virtual functions or modifying the class hierarchy. Hot Reload attempts to swap binaries within the editor process but is frequently associated with memory corruption when header file structures are altered.
The trade-off becomes critical when a project requires moving beyond simple function body updates to changes that affect the class's layout.
- What specific types of header modifications, such as deleting virtual functions or adding members, will Live Coding fail to resolve without a manual editor restart?
- To what extent does Hot Reload provide better stability for structural changes compared to Live Coding during iterative development?