FakeFishGames / Barotrauma

A 2D online multiplayer game taking place in a submarine travelling through the icy depths of Jupiter's moon Europa.
http://www.barotraumagame.com/
1.77k stars 409 forks source link

Crashing with the error DXGI_ERROR_DEVICE_REMOVED (0x887A0005, 0x887A0007, 0x887A0020) #10540

Open Regalis11 opened 2 years ago

Regalis11 commented 2 years ago

This crash is caused by a common DirectX error that can be related to various different issues, such as outdated drivers, RAM problems or an overclocked or otherwise overstressed GPU.

We are investigating the issues that may cause this in game, but it can also be caused by multiple different issues beyond our control, some of which may be possible to fix or work around at your end.

Here are some potential fixes:

AzureNocte commented 6 months ago

I find an odd case today when I'm testing mod: Yesterday I switched from Chrome to Firefox, and I usually keep the browser on when modding and testing, but today the game crashed when I click subeditor, this never happened before.

the error is this:

Exception handler failed: One or more errors occurred. (Object reference not set to an instance of an object.)
   at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
   at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.Wait()
   at Barotrauma.SubmarineInfo.get_MD5Hash() in B:\programming\c#\Barotrauma\Barotrauma\BarotraumaShared\SharedSource\Map\SubmarineInfo.cs:line 152
   at Barotrauma.Program.CrashDump(GameMain game, String filePath, Exception exception) in B:\programming\c#\Barotrauma\Barotrauma\BarotraumaClient\ClientSource\Program.cs:line 182
   at Barotrauma.Program.CrashHandler(Object sender, UnhandledExceptionEventArgs args) in B:\programming\c#\Barotrauma\Barotrauma\BarotraumaClient\ClientSource\Program.cs:line 76

Initial exception: HRESULT: [0x887A0005], Module: [SharpDX.DXGI], ApiCode: [DXGI_ERROR_DEVICE_REMOVED/DeviceRemoved], Message: GPU 设备实例已经暂停。使用 GetDeviceRemovedReason 以确定相应的措施。

   at Microsoft.Xna.Framework.Graphics.GraphicsDevice.PlatformPresent() in C:\Users\Markus\RiderProjects\Barotrauma-development\Libraries\MonoGame.Framework\Src\MonoGame.Framework\Graphics\GraphicsDevice.DirectX.cs:line 1017
   at Microsoft.Xna.Framework.Game.Tick() in C:\Users\Markus\RiderProjects\Barotrauma-development\Libraries\MonoGame.Framework\Src\MonoGame.Framework\Game.cs:line 508
   at Microsoft.Xna.Framework.SdlGamePlatform.RunLoop() in C:\Users\Markus\RiderProjects\Barotrauma-development\Libraries\MonoGame.Framework\Src\MonoGame.Framework\SDL\SDLGamePlatform.cs:line 93
   at Microsoft.Xna.Framework.Game.Run(GameRunBehavior runBehavior) in C:\Users\Markus\RiderProjects\Barotrauma-development\Libraries\MonoGame.Framework\Src\MonoGame.Framework\Game.cs:line 397
   at Microsoft.Xna.Framework.Game.Run() in C:\Users\Markus\RiderProjects\Barotrauma-development\Libraries\MonoGame.Framework\Src\MonoGame.Framework\Game.cs:line 367
   at Barotrauma.Program.Main(String[] args) in B:\programming\c#\Barotrauma\Barotrauma\BarotraumaClient\ClientSource\Program.cs:line 61

So i suspected it has something to do with Firefox and GPU. I checked on Chrome, I had GPU acceleration on, so I did the same with Firefox. As soon as I turned the GPU acceleration on, and the issue disappeared, and never occured again.

I hope this helps.