OldUnreal / UnrealTournamentPatches

Other
978 stars 29 forks source link

[469c-RC4] UnrealEd crashes after Windows starts energy save mode for screen #1076

Closed SeriousBarbie closed 6 days ago

SeriousBarbie commented 2 years ago

I opened a map in UnrealEd and probably changed some thing by accident so that this map had the status unsaved. Then I had to leave for a hour or two and when I came back, I saw the energy save mode was active for the screen and after awakening that critical error BitBlt failed. After that I was asked to continue UnrealEd in Recovery Mode. When closing UnrealEd I finally was informed that TopChunk is NULL (whatever that means). Editor.log attached at end. UnrealEd-CriticalError_after_Screensaver UnrealEd_ContinueInRecoveryMode UnrealEd_TopChunkIsNULL

Log: Log file open, 09/23/22 10:31:04 Init: Name subsystem initialized Init: Version: 469 Init: Compiled: Aug 10 2022 12:44:54 Init: Command line: Init: Base directory: D:\Programme\UT.469\System\ Init: Character set: Unicode Log: Bound to Editor.dll Log: Bound to Core.dll Log: Bound to Engine.dll Log: Bound to Window.dll Log: Bound to Render.dll Init: Object subsystem initialized Init: Detected: Microsoft Windows NT 6.2 (Build: 9200) Log: Enabling Data Executing Prevention Init: Memory total: Phys=4194303K Pagef=4194303K Virt=4194176K Init: Working set: 32000 / 159000 Init: CPU Page size=4096, Processors=4 Init: CPU Detected: Intel(R) Core(TM) i5-4670 CPU @ 3.40GHz (GenuineIntel) Init: CPU Features: INVARIANT_TSC CMov FPU RDTSC PAE MMX SSE SSE2 SSE3 SSSE3 SSE4_1 SSE4_2 AVX AVX2 Init: Timer Frequency=3392.152705 MHz - Timing Source = RDTSC Init: Unreal engine initialized Log: Bound to Cluster.dll Init: Cluster initialized. Init: Transaction tracking system initialized Init: Loading EditPackage Core... Init: Loading EditPackage Engine... Init: Loading EditPackage Editor... Init: Loading EditPackage UWindow... Init: Loading EditPackage Fire... Log: Bound to Fire.dll Init: Loading EditPackage IpDrv... Log: Bound to IpDrv.dll Init: Loading EditPackage UWeb... Log: Bound to UWeb.dll Init: Loading EditPackage UBrowser... Init: Loading EditPackage UnrealShare... Init: Loading EditPackage UnrealI... Init: Loading EditPackage UMenu... Init: Loading EditPackage IpServer... Init: Loading EditPackage Botpack... Init: Loading EditPackage UTServerAdmin... Init: Loading EditPackage UTMenu... Init: Loading EditPackage UTBrowser... Init: Loading EditPackage TarquinBrushBuilders... Init: Loading EditPackage ExtendedBuilders... Init: Loading EditPackage TarquinExtrudeBuilder... Init: Loading EditPackage DavesBrushBuilders... Init: Loading EditPackage FrameBuilder... Init: Loading EditPackage RahnemBrushBuilders... Init: Loading EditPackage UnrealEdEx... Init: Loading EditPackage MapChecker.u... Init: Loading EditPackage MindReader.u... Init: Loading EditPackage EditorTools.u... Log: Bound to WinDrv.dll Init: Enhanced Pointer Precision Disabled Init: Initializing DirectDraw Init: DirectDraw drivers detected: Init: display (Primärer Anzeigetreiber) Init: DirectDraw: Enumerated Display Modes: Init: DirectDraw: Mode 640x480x32 Init: DirectDraw: Mode 720x480x32 Init: DirectDraw: Mode 720x576x32 Init: DirectDraw: Mode 800x600x32 Init: DirectDraw: Mode 1024x768x32 Init: DirectDraw: Mode 1152x864x32 Init: DirectDraw: Mode 1280x720x32 Init: DirectDraw: Mode 1280x768x32 Init: DirectDraw: Mode 1280x800x32 Init: DirectDraw: Mode 1280x960x32 Init: DirectDraw: Mode 1280x1024x32 Init: DirectDraw: Mode 1360x768x32 Init: DirectDraw: Mode 1366x768x32 Init: DirectDraw: Mode 1600x900x32 Init: DirectDraw: Mode 1600x1024x32 Init: DirectDraw: Mode 1680x1050x32 Init: DirectDraw: Mode 1920x1080x32 Init: DirectDraw: Mode 1024x576x32 Init: DirectDraw initialized successfully Init: Disabling DirectInput for Editor Init: Client initialized Init: Lighting subsystem initialized Init: Rendering initialized Init: Constructing brush builder CubeBuilder Init: Constructing brush builder SheetBuilder Init: Constructing brush builder CylinderBuilder Init: Constructing brush builder ConeBuilder Init: Constructing brush builder TetrahedronBuilder Init: Constructing brush builder CurvedStairBuilder Init: Constructing brush builder SpiralStairBuilder Init: Constructing brush builder LinearStairBuilder Init: Constructing brush builder TerrainBuilder Init: Constructing brush builder VolumetricBuilder Init: Constructing brush builder TarquinSpiralStairBuilder Init: Constructing brush builder TarquinTorusBuilder Init: Constructing brush builder TarquinCylinderBuilder Init: Constructing brush builder TarquinPanoramaBuilder Init: Constructing brush builder ExtParallelepiped Init: Constructing brush builder ExtWave Init: Constructing brush builder TarquinExtrudeBuilder Init: Constructing brush builder PlatonicsBuilder Init: Constructing brush builder FrameBuilder Init: Constructing brush builder LandscapeBuilder Init: Constructing brush builder UnrealExTunnel Init: Constructing brush builder UnrealExTerrain Init: Constructing brush builder UnrealExCylinderSheet Init: Constructing brush builder MapChecker Init: Constructing brush builder Extruder Init: Constructing brush builder SkyBox1000Stars Init: Constructing brush builder SearchActors Init: Constructing brush builder ShowObjectPaths Init: Constructing brush builder BrushToCamera Init: Constructing brush builder Distance Init: Constructing brush builder EditActor Init: Constructing brush builder RotateActor Init: Editor engine initialized Log: Startup time: 1.368843 seconds Log: Testing supported renderers for level Viewports Init: Input system initialized for U2Viewport0 Log: Opened viewport Log: Bound to SoftDrv.dll Log: Transient.WindowsClient0.U2Viewport0.SoftwareRenderDevice0 is a legacy render device. DevAudio: Cluster SetViewport: U2Viewport0 Init: Input system initialized for U2Viewport1 Log: Opened viewport Log: Transient.WindowsClient0.U2Viewport1.SoftwareRenderDevice1 is a legacy render device. Init: Input system initialized for MeshBrowser Log: Opened viewport Log: Transient.WindowsClient0.MeshBrowser.SoftwareRenderDevice2 is a legacy render device. Init: Input system initialized for TextureBrowser Log: Opened viewport Log: Transient.WindowsClient0.TextureBrowser.SoftwareRenderDevice3 is a legacy render device. Log: WCodeFrame::OpenWindow - Creating Window - W: 384, H: 512 Log: WCodeFrame::OnCreate - Moving Window - X: 668, Y: 396, W: 1252, H: 641 Log: New File, Existing Package (Package MyLevel, Package MH-Damn2v0) DevAudio: Cluster SetViewport: U2Viewport0 Log: Collecting garbage Log: Purging garbage Log: Unloading: Package WinDrv Log: Unloading: Package Render Log: Garbage: objects: 50116->50101; refs: 882088 Log: Autosaving 'MAP SAVE AUTOSAVE=1 FILE=D:\Programme\UT.469\System..\Maps\Auto5.unr' Init: Initialized moving brush tracker for Level MyLevel.MyLevel Init: Shut down moving brush tracker for Level MyLevel.MyLevel Log: Static BSP Nodes 10976 - MoverNodes = 586 Log: Unloading: Package MyLevel Log: Save=195.861145 Log: Moving 'D:\Programme\UT.469\System..\Maps\Save.tmp' to 'D:\Programme\UT.469\System..\Maps\Auto5.unr' Log: Autosaving 'MAP SAVE AUTOSAVE=1 FILE=D:\Programme\UT.469\System..\Maps\Auto6.unr' Init: Initialized moving brush tracker for Level MyLevel.MyLevel Init: Shut down moving brush tracker for Level MyLevel.MyLevel Log: Static BSP Nodes 10976 - MoverNodes = 586 Log: Save=193.074966 Log: Moving 'D:\Programme\UT.469\System..\Maps\Save.tmp' to 'D:\Programme\UT.469\System..\Maps\Auto6.unr' Log: Autosaving 'MAP SAVE AUTOSAVE=1 FILE=D:\Programme\UT.469\System..\Maps\Auto7.unr' Init: Initialized moving brush tracker for Level MyLevel.MyLevel Init: Shut down moving brush tracker for Level MyLevel.MyLevel Log: Static BSP Nodes 10976 - MoverNodes = 586 Log: Save=192.772964 Log: Moving 'D:\Programme\UT.469\System..\Maps\Save.tmp' to 'D:\Programme\UT.469\System..\Maps\Auto7.unr' Log: Autosaving 'MAP SAVE AUTOSAVE=1 FILE=D:\Programme\UT.469\System..\Maps\Auto8.unr' Init: Initialized moving brush tracker for Level MyLevel.MyLevel Init: Shut down moving brush tracker for Level MyLevel.MyLevel Log: Static BSP Nodes 10976 - MoverNodes = 586 Log: Save=208.409195 Log: Moving 'D:\Programme\UT.469\System..\Maps\Save.tmp' to 'D:\Programme\UT.469\System..\Maps\Auto8.unr' Log: Autosaving 'MAP SAVE AUTOSAVE=1 FILE=D:\Programme\UT.469\System..\Maps\Auto9.unr' Init: Initialized moving brush tracker for Level MyLevel.MyLevel Init: Shut down moving brush tracker for Level MyLevel.MyLevel Log: Static BSP Nodes 10976 - MoverNodes = 586 Log: Save=192.561813 Log: Moving 'D:\Programme\UT.469\System..\Maps\Save.tmp' to 'D:\Programme\UT.469\System..\Maps\Auto9.unr' Log: Autosaving 'MAP SAVE AUTOSAVE=1 FILE=D:\Programme\UT.469\System..\Maps\Auto0.unr' Init: Initialized moving brush tracker for Level MyLevel.MyLevel Init: Shut down moving brush tracker for Level MyLevel.MyLevel Log: Static BSP Nodes 10976 - MoverNodes = 586 Log: Save=194.467850 Log: Moving 'D:\Programme\UT.469\System..\Maps\Save.tmp' to 'D:\Programme\UT.469\System..\Maps\Auto0.unr' Log: Autosaving 'MAP SAVE AUTOSAVE=1 FILE=D:\Programme\UT.469\System..\Maps\Auto1.unr' Init: Initialized moving brush tracker for Level MyLevel.MyLevel Init: Shut down moving brush tracker for Level MyLevel.MyLevel Log: Static BSP Nodes 10976 - MoverNodes = 586 Log: Save=194.851410 Log: Moving 'D:\Programme\UT.469\System..\Maps\Save.tmp' to 'D:\Programme\UT.469\System..\Maps\Auto1.unr' Log: Autosaving 'MAP SAVE AUTOSAVE=1 FILE=D:\Programme\UT.469\System..\Maps\Auto2.unr' Init: Initialized moving brush tracker for Level MyLevel.MyLevel Init: Shut down moving brush tracker for Level MyLevel.MyLevel Log: Static BSP Nodes 10976 - MoverNodes = 586 Log: Save=196.337112 Log: Moving 'D:\Programme\UT.469\System..\Maps\Save.tmp' to 'D:\Programme\UT.469\System..\Maps\Auto2.unr' Log: Autosaving 'MAP SAVE AUTOSAVE=1 FILE=D:\Programme\UT.469\System..\Maps\Auto3.unr' Init: Initialized moving brush tracker for Level MyLevel.MyLevel Init: Shut down moving brush tracker for Level MyLevel.MyLevel Log: Static BSP Nodes 10976 - MoverNodes = 586 Log: Save=196.001053 Log: Moving 'D:\Programme\UT.469\System..\Maps\Save.tmp' to 'D:\Programme\UT.469\System..\Maps\Auto3.unr' Log: Autosaving 'MAP SAVE AUTOSAVE=1 FILE=D:\Programme\UT.469\System..\Maps\Auto4.unr' Init: Initialized moving brush tracker for Level MyLevel.MyLevel Init: Shut down moving brush tracker for Level MyLevel.MyLevel Log: Static BSP Nodes 10976 - MoverNodes = 586 Log: Save=207.338715 Log: Moving 'D:\Programme\UT.469\System..\Maps\Save.tmp' to 'D:\Programme\UT.469\System..\Maps\Auto4.unr' Log: Autosaving 'MAP SAVE AUTOSAVE=1 FILE=D:\Programme\UT.469\System..\Maps\Auto5.unr' Init: Initialized moving brush tracker for Level MyLevel.MyLevel Init: Shut down moving brush tracker for Level MyLevel.MyLevel Log: Static BSP Nodes 10976 - MoverNodes = 586 Log: Save=253.074249 Log: Moving 'D:\Programme\UT.469\System..\Maps\Save.tmp' to 'D:\Programme\UT.469\System..\Maps\Auto5.unr' Log: Aligned camera on the current target. Log: Aligned camera on the current target. Log: Autosaving 'MAP SAVE AUTOSAVE=1 FILE=D:\Programme\UT.469\System..\Maps\Auto6.unr' Init: Initialized moving brush tracker for Level MyLevel.MyLevel Init: Shut down moving brush tracker for Level MyLevel.MyLevel Log: Static BSP Nodes 10976 - MoverNodes = 586 Log: Save=211.054733 Log: Moving 'D:\Programme\UT.469\System..\Maps\Save.tmp' to 'D:\Programme\UT.469\System..\Maps\Auto6.unr' Log: Autosaving 'MAP SAVE AUTOSAVE=1 FILE=D:\Programme\UT.469\System..\Maps\Auto7.unr' Init: Initialized moving brush tracker for Level MyLevel.MyLevel Init: Shut down moving brush tracker for Level MyLevel.MyLevel Log: Static BSP Nodes 10976 - MoverNodes = 586 Log: Save=204.327820 Log: Moving 'D:\Programme\UT.469\System..\Maps\Save.tmp' to 'D:\Programme\UT.469\System..\Maps\Auto7.unr' Critical: appError called: Critical: BitBlt failed: Das Handle ist ungültig. Critical: Windows GetLastError: Das Handle ist ungültig. (6) Exit: Executing UObject::StaticShutdownAfterError Exit: Cluster shut down after error. Exit: Executing UWindowsClient::ShutdownAfterError Log: DirectDraw End Mode Critical: UWindowsViewport::Unlock Critical: UEditorEngine::Draw Critical: (Cam=MeshBrowser,Flags=8832 Critical: UWindowsViewport::Repaint Critical: UWindowsClient::Tick Critical: UEditorEngine::Tick Critical: UpdateWorld DevAudio: Cluster SetViewport: NULL_PTR Critical: WVFToolBar::OnRightButtonUp Critical: WM_RBUTTONUP Critical: WVFToolBar::ButtonClicked Critical: WVFToolBar::OnCommand Critical: WM_COMMAND Critical: WViewportFrame::OnDestroy Critical: WM_DESTROY Log: appRequestExit(0) Exit: Preparing to exit. Log: Collecting garbage Log: Purging garbage Log: Unbound to Editor.dll Log: Unbound to Core.dll Log: Unbound to Engine.dll Log: Unbound to Window.dll Log: Unbound to Render.dll Log: Unloading: Package Editor Log: Unloading: Package Core Log: Unloading: Package Engine Exit: Editor shut down Log: Unbound to Cluster.dll Exit: Transaction tracking system shut down Log: Unloading: Package UWindow Log: Unbound to Fire.dll Log: Unloading: Package Fire Log: Unbound to IpDrv.dll Log: Unloading: Package IpDrv Log: Unbound to UWeb.dll Log: Unloading: Package UWeb Log: Unloading: Package UBrowser Log: Unloading: Package UnrealShare Log: Unloading: Package UnrealI Log: Unloading: Package UMenu Log: Unloading: Package IpServer Log: Unloading: Package Botpack Log: Unloading: Package Female2Voice Log: Unloading: Package Male2Voice Log: Unloading: Package Female1Voice Log: Unloading: Package BossVoice Log: Unloading: Package Male1Voice Log: Unloading: Package Announcer Log: Unloading: Package UTServerAdmin Log: Unloading: Package UTMenu Log: Unloading: Package LadderSounds Log: Unloading: Package LadrArrow Log: Unloading: Package UTBrowser Log: Unloading: Package TarquinBrushBuilders Log: Unloading: Package ExtendedBuilders Log: Unloading: Package TarquinExtrudeBuilder Log: Unloading: Package DavesBrushBuilders Log: Unloading: Package FrameBuilder Log: Unloading: Package RahnemBrushBuilders Log: Unloading: Package UnrealEdEx Log: Unloading: Package MapChecker Log: Unloading: Package MindReader Log: Unloading: Package EditorTools Log: Unloading: Package GenFX Log: Unbound to WinDrv.dll Log: DirectDraw End Mode Log: Flushing cache Exit: DirectDraw released Exit: Windows client shut down Critical: appError called: Critical: Assertion failed: TopChunk==NULL [File:C:\GameDev\UnrealTournament\Core\Src\UnMem.cpp] [Line: 44] Critical: Windows GetLastError: Zur Verarbeitung dieses Befehls sind nicht genügend Speicherressourcen verfügbar. (8) Critical: FMemStack::InitStack Critical: FMemStack::Exit Critical: URender::Destroy Critical: UObject::ConditionalDestroy Critical: (Render Transient.Render0) Critical: DispatchDestroy Critical: (43580: Render Transient.Render0) Critical: DispatchDestroys Critical: UObject::PurgeGarbage Critical: UObject::CollectGarbage Critical: UObject::StaticExit Critical: appPreExit Exit: Exiting. Log: Log file closed, 09/23/22 13:07:42

SeriousBuggie commented 2 years ago

Can be related to hardware. look like DirectDraw failed on Power Saving mode. I often left UnrealEd open for days and screen often turn to screen saver or even off. UnrealEd not crash on that.

Second crash not relevant. It caused by ignorance first crash. All things in Recovery mode mostly not relevant because things already broken less or more.

SeriousBuggie commented 2 years ago

What Render you use in UnrealEd for viewports? Include texture browser. Also What vendor of your graphics card?

SeriousBarbie commented 2 years ago

What Render you use in UnrealEd for viewports? Include texture browser.

Where can I look up that?

Also What vendor of your graphics card?

devmgmt msc-Graphics

SeriousBuggie commented 2 years ago

Right click on each viewport: img In menu: img Used Nvidia or Intel? What mention in log?

SeriousBarbie commented 2 years ago

Both is set to "Software" and the screen cable is plugged into the Nvidia card.

SeriousBuggie commented 2 years ago

Hmm. What about Mesh Browser? img

In log say crash happen on it.

SeriousBarbie commented 2 years ago

Also "Software". I have these windows docked too, but didn't had the "Meshes" window in front (mostly "Textures").

SeriousBarbie commented 2 years ago

I'm afraid the reason was not the energy saver for the screen: I set it to 1 minute, opened and modified a map in UnrealEd, and after a minute the screen was in energy safe mode. After awakening happened nothing.

Energy saving was active after 1 hour for mass storage (what seems useless for SSDs). I deactivated this also and see if something will change. EnergyOptions

SeriousBuggie commented 2 years ago

It can be driver bug. BitBlt is transfer block of pixels between two buffers. https://learn.microsoft.com/en-us/windows/win32/api/wingdi/nf-wingdi-bitblt Often used for show content from back buffer after drawing done. So I think it somehow screw DirectDraw. possible need very specific condition, when sleeping goes exactly between allocate DC and BitBlt. This is very narrow interval. So it can be very hard to repeat. In general it look like issues outside from UT (video drivers, GDI, OS).

SeriousBarbie commented 10 months ago

It does not happen with renderer "Direct3D9" (but still with Software renderer @ 469d RC4).

SeriousBuggie commented 10 months ago

Can't reproduce with soft renderer on my side. try energy safe mode and powerful mode. when screen turn off - nothing happen. Did you mean deep sleep, when PC not respond anything, and need push power button for resume it?

SeriousBarbie commented 10 months ago

Sorry, wrong info - it just has happened also with Direct3D9. No, it isn't a deep sleep, pressing any key or moving the mouse turns monitor on again.

SeriousBarbie commented 6 days ago

It happens reproducible - when I leave keyboard for a while (IMO ~ 5 min), screen energy saving is on. With OldUnreal-UTPatch469e-Windows-test745 log is now more informative:

Log: Moving 'D:\Programme\UT.469\System..\Maps\Save.tmp' to 'D:\Programme\UT.469\System..\Maps\Auto9.unr' Log: CMD: MAP SAVE AUTOSAVE=1 FILE=D:\Programme\UT.469\System..\Maps\Auto9.unr Critical: appError called: Critical: BitBlt failed: Das Handle ist ungültig. Critical: Windows GetLastError: Das Handle ist ungültig. (6) Exit: Executing UObject::StaticShutdownAfterError Exit: ALAudio subsystem shut down. Exit: UALAudioSubsystem::ShutdownAfterError Exit: Executing UWindowsClient::ShutdownAfterError Log: DirectDraw End Mode Critical: UWindowsViewport::Unlock Critical: UEditorEngine::Draw Critical: (Cam=MeshBrowser,Flags=8832 Critical: UWindowsViewport::Repaint Critical: UWindowsClient::Tick Critical: UEditorEngine::Tick Critical: UpdateWorld Critical: BitBlt failed: Das Handle ist ungültig.

History: UWindowsViewport::Unlock <- UEditorEngine::Draw <- (Cam=MeshBrowser,Flags=8832 <- UWindowsViewport::Repaint <- UWindowsClient::Tick <- UEditorEngine::Tick <- UpdateWorld SE(C0000005) @ 002DA8B8 fl=0 rec=0 n=1714792536 i[0]=0 i[1]=480 eax=00000000 ebx=131f0a00 ecx=131f0a00 edx=00000000 esi=0034d3d0 edi=00000002 eip=002da8b8 ebp=01d4a954 esp=01d4a928 cs=0023 ds=002b es=002b fs=0053 gs=002b flags=00010202 In module 'D:\Programme\UT.469\System\UnrealEd.exe' (1429504 bytes) at address 0005a8b8 Engine Version: 469e - Sep 24 2024 Preview

Critical: WViewportFrame::OnDestroy Critical: WM_DESTROY Log: appRequestExit(0) Log: DispatchMessages: Received WM_QUIT Exit: Preparing to exit.

Renderer is Direct3D11 Graphic device is Intel HD Graphics 4600

SeriousBuggie commented 6 days ago

Did you use screen saver with password lock? If so can you try turn off password lock and reproduce problem again?

SeriousBuggie commented 6 days ago

Also. What your render devices in mesh browser? img

SeriousBuggie commented 6 days ago

Ok. I reproduce it. Need use Software render in Mesh browser and make mesh animate (press play button). After that press Win+L, for get win lock screen. Editor will crash in BitBlt.

So workaround pretty simple - do not use software render.

SeriousBarbie commented 6 days ago

Oh, I didn't know that the Mesh browser uses a separate renderer. Ok, I'll try…

SeriousBarbie commented 4 days ago

Mesh browser renderer changed, but happened again. Now I've also changed the Texture browser renderer from "Software" to "Direct3D11".

SeriousBuggie commented 4 days ago

Did you try latest test build? Must be fixed now. Fixed for me at least.