Recent versions of GameMaker determine this issue automatically and you should not need to follow this guide unless asked to by a support staff member; however, very old versions of GameMaker require you to install the driver manually.
If you do have this issue when using old GameMaker releases, please consider simply updating your GameMaker install as a first step.
If you get crashes very shortly after opening GameMaker or the IDE won't start at all, then it's worth checking if this is because your GPU doesn't support the hardware acceleration GameMaker uses. This is often required in some remote desktop or VM setups also, depending on the hardware involved and the settings of the remote/VM software. It's worth noting that if you have just updated your GPU drivers and not yet rebooted you may temporarily also be in this state, so do reboot your PC first to rule out any momentary driver issues.
Please note that as this is a software renderer it will use your CPU and so performance inside GameMaker won't be as good and your CPU usage figure in Task Manager might well be higher than you'd expect.
If following this FAQ still doesn't fix, please open a new Helpdesk ticket and include the ui.log file mentioned below, plus a DXDiag report (which you can create by pressing the Windows key + R, type "dxdiag", click OK. Wait for the progress bar to finish, then click Save All Information, give it a save name). Attach the text file you've just saved to the Helpdesk ticket, rather than pasting in all of its contents, please.
Current GameMaker Versions
Confirming The Issue
If you open the file C:\ProgramData\GameMakerStudio2\ui.log you'll see the following error message has been written out a handful of lines up from the bottom of the file:
"FNA-Error: No suitable driver. Reattempting with MESA fallback…"
Note that there may then be a few more lines about your graphics setup and quite likely a crash message also, but we don't show an example crash message here because will differ depending on your issue whereas that line above will always be written out.
Installing The "mesa" Driver
Open Explorer/My Computer and navigate to your GameMaker install folder (yours will likely differ from mine shown below - the default is C:\Program Files\GameMakerStudio2\):
Select both of the two files here and then click-drag them onto the "GameMaker" bit of your address bar to move the two files:
They should both now be gone from the "mesa" folder and be inside the "GameMaker" folder instead.
You can now close Windows Explorer.
Setting the Startup Flag on Your GameMaker Shortcut
The easiest way to do this is to open your Start Menu (here, we show Windows 10) and right-click on your GameMaker shortcut and choose to open its file location:
This will then open an Explorer window pointing at your Start Menu contents. Find your relevant GameMaker installation shortcut in the list:
Right-click it, then choose to view its Properties, which will open the following window for you and you can see that Windows as selected the important "Target" line for you already:
Click at the end of this line and add in a space and then "/renderer=OpenGL" without the quotes.
So, for example,
"C:\Program Files\GMS2\GameMaker.exe"
becomes
"C:\Program Files\GMS2\GameMaker.exe" /renderer=OpenGL
Apply/OK the change and close the shortcut's Properties dialog and any Explorer windows you just opened.
Try running GameMaker again and all should be working now.
Old GameMaker Versions Before 2.3.4
Confirming The Issue
If you open the file C:\ProgramData\GameMakerStudio2\ui.log you'll see a crash message like the following is the last thing written:
[10:43:42:931(8fae)] --------------------------------------------------------------------------------
[10:43:42:931(8fae)] Main Exception Handler: System.AccessViolationException
[10:43:42:931(8fae)] Exception message: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
[10:43:42:936(8fae)] Exception stack: at OpenTK.Graphics.OpenGL.GL.DeleteFramebuffer(UInt32 framebuffers)
at YoYoStudio.Graphics.Texture.DestroyRenderTarget()
at YoYoStudio.Graphics.Texture.Destroy()
at YoYoStudio.Graphics.TextureManager.DestroyReleasedTextures()
at YoYoStudio.IDE.Run()
at YoYoStudio.IDE.Execute(String[] _args, Int32 _initialWidth, Int32 _initialHeight)
at YoYoStudio.Program.Main(String[] _main_args)
[10:43:42:936(8fae)] --------------------------------------------------------------------------------
Installing The "mesa" Driver
Open Explorer/My Computer and navigate to your GameMaker install folder (yours will likely differ from mine shown below - the default is C:\Program Files\GameMakerStudio2\):
Then go into the "mesa" subfolder, as shown above.
You'll see a file in here. Copy/drag this opengl32.dll file up one level so it goes into your main GameMaker install folder.
You can now close Windows Explorer.
Try running GameMaker again and all should be working now.