Description

Reported in SF [Link Removed]

Twinmotion will crash when clicking on any of the Landscape Edit tools after replacing the Landscape and performing an undo operation

This only appears to occur in the same session that the swap and undo operation occurred in. Saving and reloading the scene should avoid the problem.

Steps to Reproduce
  1. Open a scene in TM 2026.2 Preview
  2. Add a landscape asset
  3. Swap the landscape asset with another to replace it
  4. Undo (Ctrl+Z)
  5. Move any object or asset
  6. Select the Landscape asset and clickon any of the Sculpt tools

Result: Twinmotion will crash

Workaround
Reloading the file seems to avoid the issue
Callstack
TwinmotionCookedEditor-Win64-Shipping!UModeTerrainEdit::createLandscapeEditor(UResourceLandscape *,ETerrainEditMode) [ModeTerrainEdit.cpp:172]
TwinmotionCookedEditor-Win64-Shipping!UFunction::Invoke(UObject *,FFrame &,void * const) [Class.cpp:7570]
TwinmotionCookedEditor-Win64-Shipping!UObject::ProcessEvent(UFunction *,void *) [ScriptCore.cpp:2194]
TwinmotionCookedEditor-Win64-Shipping!UModeManager::instantiateModeFromId(EMode,FModeArgs *) [ModeManager.cpp:643]
TwinmotionCookedEditor-Win64-Shipping!UModeManager::setCurrent [ModeManager.cpp:303]
TwinmotionCookedEditor-Win64-Shipping!UModeManager::unrollModes() [ModeManager.cpp:325]
TwinmotionCookedEditor-Win64-Shipping!UModeManager::setNext [ModeManager.cpp:279]
TwinmotionCookedEditor-Win64-Shipping!UModeManager::set(EMode) [ModeManager.cpp:82]
TwinmotionCookedEditor-Win64-Shipping!UFunction::Invoke(UObject *,FFrame &,void * const) [Class.cpp:7570]
TwinmotionCookedEditor-Win64-Shipping!UObject::CallFunction(FFrame &,void * const,UFunction *) [ScriptCore.cpp:1159]
TwinmotionCookedEditor-Win64-Shipping!UObject::ProcessContextOpcode(FFrame &,void * const,bool) [ScriptCore.cpp:3141]
TwinmotionCookedEditor-Win64-Shipping!ProcessLocalScriptFunction(UObject *,FFrame &,void * const) [ScriptCore.cpp:1225]
TwinmotionCookedEditor-Win64-Shipping!UObject::ProcessInternal(UObject *,FFrame &,void * const) [ScriptCore.cpp:1348]
TwinmotionCookedEditor-Win64-Shipping!UFunction::Invoke(UObject *,FFrame &,void * const) [Class.cpp:7570]
TwinmotionCookedEditor-Win64-Shipping!UObject::ProcessEvent(UFunction *,void *) [ScriptCore.cpp:2194]
TwinmotionCookedEditor-Win64-Shipping!TMulticastScriptDelegate<FNotThreadSafeDelegateMode>::ProcessMulticastDelegate<UObject>(void *) [ScriptDelegates.h:929]
TwinmotionCookedEditor-Win64-Shipping!UUIButtonControl::onButtonClicked() [UIButtonControl.cpp:239]
TwinmotionCookedEditor-Win64-Shipping!UFunction::Invoke(UObject *,FFrame &,void * const) [Class.cpp:7570]
TwinmotionCookedEditor-Win64-Shipping!UObject::ProcessEvent(UFunction *,void *) [ScriptCore.cpp:2194]
TwinmotionCookedEditor-Win64-Shipping!TMulticastScriptDelegate<FNotThreadSafeDelegateMode>::ProcessMulticastDelegate<UObject>(void *) [ScriptDelegates.h:929]
TwinmotionCookedEditor-Win64-Shipping!UButton::SlateHandleClicked() [Button.cpp:282]
TwinmotionCookedEditor-Win64-Shipping!TBaseUObjectMethodDelegateInstance<0,UButton,FReply (void) [DelegateInstancesImpl.h:697]
TwinmotionCookedEditor-Win64-Shipping!SButton::ExecuteOnClick() [SButton.cpp:574]
TwinmotionCookedEditor-Win64-Shipping!SButton::OnMouseButtonUp(FGeometry const &,FPointerEvent const &) [SButton.cpp:442]
TwinmotionCookedEditor-Win64-Shipping!static class FReply FEventRouter::Route<FReply,FEventRouter::FToLeafmostPolicy,FPointerEvent,`FSlateApplication::RoutePointerUpEvent'::`8'::<lambda_1> >(class FSlateApplication *, class FEventRouter::FToLeafmostPolicy, struct FPointerEvent, const class FSlateApplication::RoutePointerUpEvent::__l8::<lambda_1> & const, ESlateDebuggingInputEvent) [SlateApplication.cpp:459]
TwinmotionCookedEditor-Win64-Shipping!FSlateApplication::RoutePointerUpEvent(FWidgetPath const &,FPointerEvent const &) [SlateApplication.cpp:5469]
TwinmotionCookedEditor-Win64-Shipping!FSlateApplication::ProcessMouseButtonUpEvent(FPointerEvent const &) [SlateApplication.cpp:6054]
TwinmotionCookedEditor-Win64-Shipping!FSlateApplication::OnMouseUp(EMouseButtons::Type,UE::Math::TVector2<double>) [SlateApplication.cpp:6010]
TwinmotionCookedEditor-Win64-Shipping!FWindowsApplication::ProcessDeferredMessage(FDeferredWindowsMessage const &) [WindowsApplication.cpp:3423]
TwinmotionCookedEditor-Win64-Shipping!FWindowsApplication::DeferMessage(TSharedPtr<FWindowsWindow,1> &,HWND__ *,unsigned int,unsigned __int64,__int64,int,int,unsigned int) [WindowsApplication.cpp:4120]
TwinmotionCookedEditor-Win64-Shipping!FWindowsApplication::ProcessMessage(HWND__ *,unsigned int,unsigned __int64,__int64) [WindowsApplication.cpp:2355]
TwinmotionCookedEditor-Win64-Shipping!FWindowsApplication::AppWndProc(HWND__ *,unsigned int,unsigned __int64,__int64) [WindowsApplication.cpp:2148]
USER32!0x00007ff898ac0000+152c6
USER32!0x00007ff898ac0000+15d9d
TwinmotionCookedEditor-Win64-Shipping!FWindowsPlatformApplicationMisc::PumpMessages(bool) [WindowsPlatformApplicationMisc.cpp:155]
TwinmotionCookedEditor-Win64-Shipping!FEngineLoop::Tick() [LaunchEngineLoop.cpp:5788]
TwinmotionCookedEditor-Win64-Shipping!GuardedMain(wchar_t const *) [Launch.cpp:190]
TwinmotionCookedEditor-Win64-Shipping!GuardedMainWrapper(wchar_t const *) [LaunchWindows.cpp:123]
TwinmotionCookedEditor-Win64-Shipping!LaunchWindowsStartup(HINSTANCE__ *,HINSTANCE__ *,char *,int,wchar_t const *) [LaunchWindows.cpp:277]
TwinmotionCookedEditor-Win64-Shipping!WinMain [LaunchWindows.cpp:335]
TwinmotionCookedEditor-Win64-Shipping!static int __scrt_common_main_seh() [exe_common.inl:288]
KERNEL32!0x00007ff898530000+2cd87
ntdll!0x00007ff89a7a0000+acaec

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention TM-23790 in the post.

0
Login to Vote

Unresolved
ComponentTM - Core
Affects Versionstwinmotion 2026.2 preview
CreatedOct 16, 2026
UpdatedOct 16, 2026
View Jira Issue