{"id":154,"date":"2017-09-11T23:08:00","date_gmt":"2017-09-11T23:08:00","guid":{"rendered":"https:\/\/notquiteaway.net\/?p=154"},"modified":"2026-11-08T06:34:53","modified_gmt":"2026-11-08T06:34:53","slug":"dolphin-configuration-guide","status":"publish","type":"post","link":"https:\/\/notquiteaway.net\/index.php\/2017\/09\/11\/dolphin-configuration-guide\/","title":{"rendered":"Dolphin Configuration Guide"},"content":{"rendered":"\n<br>\n\n\n\n\n<br>\n\n\n<p>\nThis tutorial was written using an i7 6700hq, Nvidia gtx 1070 with 16gb of\nram as a reference computer for configuration. Some of the settings shown may\nnot be appropriate for other computers. Do not just copy the configuration\nshown in screenshots, apply some critical thinking to your own choices.<\/p>\n\n\n\n\n<h2>\n<strong>Ubershaders and the Current State of Dolphin<\/strong><\/h2>\n\n\n<p>\nDolphin is relatively easy to setup compared to many other\nemulators, the basic setup for a configuration that will run most games only\ntakes a handful of changes from the default settings. Depending on your\nhardware though some tweaks may be necessary, and with new but important\nfeatures just implemented into Dolphin some settings can be somewhat of an\nunknown until you test slight differences to find what works best. Still, because\nof the complexity of the Gamecube and Wii compared to older (especially 2d)\nconsoles a one size fits all configuration will still often need individual\ngame tweaks. This guide will mostly only cover a basic setup though without\ngoing into too many single game tweaks.<\/p>\n\n\n<p>\nThe biggest new feature that makes a large difference on\ndifferent hardware and in different games is the release of <em>ubershaders<\/em>.\nThis small tutorial is not nearly long or detailed enough to explain\nubershaders fully but here is a very basic explanation along with the reason\nthey exist.<\/p>\n\n\n<p>\nBefore the very recent builds of Dolphin, emulation even\non very high end computers would have occasional stuttering, especially when\nfirst playing a game. In short, this is because a real Gamecube or Wii was designed\nto expect graphics shaders to be instantly delivered for the game to use. A\nshader in this context is essentially a program that the GC or Wii&#8217;s GPU would\nexecute in sync with the rest of the game being executed by the CPU. GC games\nwere designed with the expectation that they will only ever run on one specific\ntype of hardware (the console) and so there wouldn&#8217;t need to be any differences\nbetween shaders when run on one GC or another.<\/p>\n\n\n<p>\nThis is not how modern computers do things.<\/p>\n\n\n<p>\nFor each game, each computer, each configuration, Dolphin\nwould need to compile those shaders again. This takes time instead of being\ninstantaneous on original hardware. If the rest of the CPU being emulated and\nthe shader compilation become out of sync (which they will) then the game will\nstutter until the shaders are compiled. A Dolphin fork, Ishiiruka, worked\naround this by just allowing them to go out of sync, reducing stuttering but\ncausing objects that loaded late to randomly &#8220;pop&#8221; in later than they\nshould. Some games would be so out of sync that they would only be borderline\nplayable at best (All the Metroid Prime games are the most noticeable instance\nof this.)<\/p>\n\n\n<p>\nThis is important because as of July 30th a completely new\nway of handling shaders was implemented into Dolphin&#8217;s dev builds that\ndrastically improves stuttering and performance, but requires many changes in\nconfiguration. To explain it in the shortest way possible, Dolphin can now\nemulate the GC\/Wii&#8217;s GPU rendering pipeline on the host machine&#8217;s GPU itself.<br>\nThis is what&#8217;s called the &#8220;ubershader&#8221;. Dolphin can run in a <em>hybrid\nmode<\/em> (emulating the rendering pipeline while also using the\ntraditional, yet asynchronous way to handle shaders) or <em>exclusive\nmode<\/em> (only emulating the rendering pipeline.)<\/p>\n\n\n<p>\nFor the sake of not rambling on for another 500 words,\nmany technical details of ubershaders are going to be skipped. But, the\nimportant things to know are; ubershaders are bleeding edge new so many\nconfigurations have not been tested, ubershaders are a huge improvement over the\nold methods, there are still some bugs and known issues that will probably be\nfixed soon, and that because of this setup and configuration of Dolphin has\nchanged a little.<\/p>\n\n\n<h2>\n<strong>Before Installation<\/strong><\/h2>\n\n\n\n\n<p>\nUsually, emulation of any console is tied much more\nheavily to the host computer&#8217;s processor than the graphics card. This is true\nof Dolphin, but not as true as it was a week ago. Ubershader emulation is\nhandled by the graphics card, and so a decent graphics card is important. But\njust as important, you must now make sure your graphics card drivers are up to\ndate! Even the latest nvidia drivers have some bugs that currently cause\nproblems. Out of date (or even worse, default Windows drivers not from the\nmanufacturer) will just cause unpredictable problems and likely terrible\nperformance compared to newer drivers. This is much more important now for\nDolphin than it ever has been for almost any other mainstream emulator.<\/p>\n\n\n<p>\n<strong>Nvidia<\/strong>&#8216;s current driver\n(as of this post) is <strong>384.94<\/strong>. Download it from\n<a href=\"https:\/\/www.nvidia.com\/Download\/index.aspx\">Nvidia here<\/a>.<\/p>\n\n\n<p>\n<strong>AMD<\/strong>&#8216;s drivers, I don&#8217;t\nknow how AMD numbers their versions, but either way get them from <a href=\"https:\/\/support.amd.com\/en-us\/download\">AMD here<\/a>.<\/p>\n\n\n<p>\n<strong>Intel<\/strong>&#8216;s current driver\nfor Intel integrated GPUs is <strong>15.46.02.4729<\/strong>,\ndownload it from <a href=\"https:\/\/downloadcenter.intel.com\/product\/80939\/Graphics-Drivers\">Intel here<\/a>.<\/p>\n\n\n\n\n<h2>\n<strong>Download and Install the Latest Dev Build of Dolphin<\/strong><\/h2>\n\n\n<p>\nDolphin very rarely releases &#8220;stable&#8221; builds.\nIt&#8217;s pretty much expected that the dev builds are what should be used in almost\nevery case. Dev builds are released sometimes multiple times in one day. In\nless than 12 hours the build I began writing this for (5.0-4889) has been\nsurpassed by 3 new builds with the latest being 5.0-4906. It&#8217;s overkill to\nupdate to every new build, but it&#8217;s a good thing to check out every couple\nweeks or so. Because ubershaders are only in very new builds though, now is a\ngood time to make sure you&#8217;re using a relatively current build.<\/p>\n\n\n<p>\n<strong>Download <\/strong>the latest <strong>developer build <\/strong>(Skip past the &#8220;stable\nversions&#8221;!) from the <a href=\"https:\/\/dolphin-emu.org\/download\/\">Dolphin website here<\/a>. I am\ngoing to assume you know how to extract and install the emulator itself.<\/p>\n\n\n<h2>\n<strong>Configuring Dolphin<\/strong><\/h2>\n\n\n<figure class=\"wp-block-image\">\n<a href=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/QFF4K37.png\"><img decoding=\"async\" alt=\"\" height=\"1080\" loading=\"lazy\" class=\"wp-image-146\" src=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/QFF4K37.png\" width=\"1920\" srcset=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/QFF4K37.png 1920w, https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/QFF4K37-300x169.png 300w, https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/QFF4K37-1024x576.png 1024w, https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/QFF4K37-768x432.png 768w, https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/QFF4K37-1536x864.png 1536w\" sizes=\"auto, (max-width: 1920px) 100vw, 1920px\" \/><\/a><\/figure>\n\n\n<p>\n<br>\nThe main Dolphin window should look something like this, except a new install\nthat hasn&#8217;t been configured will not list any games the way mine does. You can\nsee at the time there are buttons for &#8220;Config&#8221; &#8220;Graphics&#8221;\nand &#8220;Controllers&#8221;. These three buttons will take us to the three most\nimportant windows to configure the emulator. There is also an\n&#8220;Options&#8221; tab at the very top in between &#8220;Movie&#8221; and\n&#8220;Tools&#8221; that will get us to the same places.<\/p>\n\n\n\n\n<h2>\n<strong>Dolphin Configuration<\/strong><\/h2>\n\n\n<p>\n<strong>Dolphin Configuration &#8211; General<\/strong><\/p>\n\n\n<figure class=\"wp-block-image\">\n<a href=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/qCdTJ5r.png\"><img decoding=\"async\" alt=\"\" height=\"1080\" loading=\"lazy\" class=\"wp-image-147\" src=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/qCdTJ5r.png\" width=\"1920\" srcset=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/qCdTJ5r.png 1920w, https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/qCdTJ5r-300x169.png 300w, https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/qCdTJ5r-1024x576.png 1024w, https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/qCdTJ5r-768x432.png 768w, https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/qCdTJ5r-1536x864.png 1536w\" sizes=\"auto, (max-width: 1920px) 100vw, 1920px\" \/><\/a><\/figure>\n\n\n<p>\n<br>\nPressing the &#8220;Config&#8221; Button will bring us to this general window.<\/p>\n\n\n<p>\nAs a note before we get any further, we will be straight\nup skipping some of the tabs in this window. There is really no reason to\nchange them from the default for 99% of people in 99% of circumstances.<\/p>\n\n\n<p>\nHere though, we want to make sure that we <strong>enable<\/strong> the check box for <strong>Enable Cheats<\/strong>. This can be important regardless of\nwhether you want to actually &#8220;cheat&#8221;, because many &#8220;cheats&#8221;\nused for some games aren&#8217;t actually cheats. They&#8217;re more like specific hacks to\nimprove compatibility or enable things like widescreen support, among many\nother things.<\/p>\n\n\n\n\n<p>\nOtherwise the defaults here should be fine.&nbsp; <strong>Dual Core<\/strong> should be <strong>Enabled<\/strong>.\nThe <strong>Speed Limit <\/strong>should be <strong>100% <\/strong>(there are a few cases you might mess with\nthis if you&#8217;re using 60fps hacks for example, but not often. It can break games\nmore often than not.) And the <strong>CPU Emulation Engine <\/strong>absolutely\nmust be set to <strong>JIT Recompiler<\/strong> for anything\nother than debugging or hacking.<\/p>\n\n\n<p>\nWe&#8217;re going to skip the <strong>Interface<\/strong>,\n<strong>Audio<\/strong>, <strong>GameCube<\/strong>,\nand <strong>Wii<\/strong> tabs. <strong>Audio<\/strong>\nshould be fine with all the defaults (DSP HLE emulation, Audio Backen: XAudio2,\nand unless you can&#8217;t keep emulation at 30fps Enable Audio Stretching should be\noff.) And the other 3 tabs are pretty self explanatory and rarely need to be\nmessed with anyway.<\/p>\n\n\n\n\n<p>\n<strong>Dolphin Configuration &#8211; Paths<\/strong><\/p>\n\n\n<figure class=\"wp-block-image\">\n<a href=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/qCdTJ5r.png\"><img decoding=\"async\" alt=\"\" height=\"1080\" loading=\"lazy\" class=\"wp-image-147\" src=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/qCdTJ5r.png\" width=\"1920\" srcset=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/qCdTJ5r.png 1920w, https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/qCdTJ5r-300x169.png 300w, https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/qCdTJ5r-1024x576.png 1024w, https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/qCdTJ5r-768x432.png 768w, https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/qCdTJ5r-1536x864.png 1536w\" sizes=\"auto, (max-width: 1920px) 100vw, 1920px\" \/><\/a><\/figure>\n\n\n\n\n<p>\nAll we need to do here is add the directories where our GC\nand Wii isos are located. Dolphin will refresh this list every time it&#8217;s loaded\nand will show us the easy to manage list of games like you could see in the\nfirst picture of Dolphin in this article.<\/p>\n\n\n<p>\nSimply hit <strong>Add<\/strong>, find a\ndirectory and hit <strong>select folder<\/strong>. Not much to\nit. The only other option that may be useful is <strong>SD\nCard Path<\/strong> for some Wii emulation, but that&#8217;s not all that important most\nof the time.<\/p>\n\n\n\n\n<p>\n<strong>Dolphin Configuration &#8211;\nAdvanced<\/strong><\/p>\n\n\n<figure class=\"wp-block-image\">\n<a href=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/9RlitWE.png\"><img decoding=\"async\" alt=\"\" height=\"617\" loading=\"lazy\" class=\"wp-image-148\" src=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/9RlitWE.png\" width=\"559\" srcset=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/9RlitWE.png 559w, https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/9RlitWE-272x300.png 272w\" sizes=\"auto, (max-width: 559px) 100vw, 559px\" \/><\/a><\/figure>\n\n\n\n\n<p>\nNothing but dragons here. Don&#8217;t mess with either of these\noptions unless you know specifically why you are changing anything. The <strong>CPU Clock Override <\/strong>will break most games at best. I\nhave only used it once when trying to get the virtual console Zelda 64 running\nat a higher framerate than it was originally designed to run at (even on actual\nNintendo hardware it maxes out at like 20fps, not great.) Even when I managed\nto get it running at a higher framerate without just being sped up by altering\nthe clock override (among other things) the game was still broken. <strong>Custom RTC Options <\/strong>lets you change the emulated\nsystems clock though, if you want to cheat at Animal Crossing or something\nalong those lines.<\/p>\n\n\n<h2>\n<strong>Graphics Configuration<\/strong><\/h2>\n\n\n<p>\n<strong>Graphics Configuration &#8211;\nGeneral<\/strong><\/p>\n\n\n<figure class=\"wp-block-image\">\n<a href=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/ZWQdYBO.png\"><img decoding=\"async\" alt=\"\" height=\"1080\" loading=\"lazy\" class=\"wp-image-149\" src=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/ZWQdYBO.png\" width=\"1920\" srcset=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/ZWQdYBO.png 1920w, https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/ZWQdYBO-300x169.png 300w, https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/ZWQdYBO-1024x576.png 1024w, https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/ZWQdYBO-768x432.png 768w, https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/ZWQdYBO-1536x864.png 1536w\" sizes=\"auto, (max-width: 1920px) 100vw, 1920px\" \/><\/a><\/figure>\n\n\n\n\n<p>\nHere, the graphics configuration, is where our decisions\nhave a serious impact on performance. These are the settings where some gradual\ntweaking may be necessary to find out what&#8217;s best for your own computer. Things\nare not as complex as they look though, many of the settings are still only\nuseful for debugging or for extreme edge cases where only one or a couple games\nrequire certain settings, or settings with a negligible impact on performance.<\/p>\n\n\n<p>\nThe first setting here is very important, but you will\nlikely find what&#8217;s right for you very quickly and easily. The <strong>Backend<\/strong>, on most modern PCs running Windows you\nwill choose either <strong>Direct3D 11<\/strong> or <strong>OpenGL<\/strong>. Vulkan is still very new, someday it may be\nthe preferred backend but right now it isn&#8217;t a practical choice. Software\nRenderer is extremely slow, it&#8217;s another option that&#8217;s only there for testing.<\/p>\n\n\n<p>\nFor me personally Direct3D 11 seems to work the best in\nmost cases. But that may be specific to my hardware (especially GPU). I use a\nNvidia gtx 1070, if you have a similar graphics card there is a good chance\nthat may work best for you. Still, OpenGL also works generally fine for me.\nJust try both of those two and see which seems better for you.<\/p>\n\n\n\n\n<p>\n<strong>Adapter<\/strong> should be set to\nyour <strong>main graphics card<\/strong>. If it&#8217;s not, then\nchange it. I think that may only be an issue on laptops with both an integrated\nGPU and a higher performance GPU like in Nvidia Optimus setups. I don&#8217;t have a\ncomputer like that to test it on, and for me it has always chosen the correct\n(and only) GPU I have by default.<\/p>\n\n\n<p>\n<strong>Fullscreen Resolution<\/strong>,\nwhat you set this too depends on what the native resolution of your monitor is\nand also our selection for another option in the &#8220;Enhancements&#8221; tab\nwe will deal with later. The native resolution for a Wii maxes out around\n640&#215;456, but most modern computers can easily force the games to be drawn at a\nmuch higher resolution, drastically improving the graphics quality over the\noriginal hardware. Changing the Fullscreen Resolution in the General tab will <strong>NOT<\/strong> effect the internal resolution the games are\ndrawn at though, so set it to whatever you usually have your display set to or\njust leave it at auto if it doesn&#8217;t cause any problems for you (it probably\nwont). When we change the internal resolution later though, you will want to\nmake sure this setting is higher than your internal resolution setting (it very\nlikely will be.)<\/p>\n\n\n<p>\nThe <strong>Aspect Ratio<\/strong> setting\nconfigures whether you will have the game running in <strong>widescreen (16:9)<\/strong> or in the more\nalmost-square-shape that most TVs were back when the Gamecube was current <strong>(4:3)<\/strong>. Or, if you want to make sure the game fills\nyour screen no matter what, even if you have an exotic shape monitor, you can\ntell it to &#8220;Stretch to Window&#8221;. Stretch to Window could end up\ndisplaying some odd results though.<\/p>\n\n\n<p>\nWhether you use 16:9 Widescreen or Standard 4:3 is mostly\na matter of preference these days. Practically any monitor made in the past\nhandful of years will be 16:9 or something close. Since the games were\noriginally designed for 4:3 and often could not display in widescreen some\npeople prefer to leave it set to 4:3, but then you will end up with black bars\non the side of your monitor. If you force 16:9 the game may end up looking\nstretched out. However, most games though can either use Dolphins built in\n&#8220;Widescreen hack&#8221; or a custom Widescreen hack (through the cheat\nengine we enabled earlier) to take advantage of a larger field of view. In my\nexperience the gameplay expands to 16:9 very easily in most games, however the\nHUD doesn&#8217;t. So, for example, you can play Wind Waker in 16:9 but the bar\nshowing how many hearts you have, your magic, the map and your equipped items\nwill be floating closer to the center of the screen (where it would be on a 4:3\ndisplay) instead of moved out onto the left and right edges of the screen.<\/p>\n\n\n<p>\nMine is set to 16:9, that&#8217;s just what I personally like.\nIt&#8217;s not the most &#8220;authentic&#8221; or &#8220;true to the original\ngame&#8221; but I just prefer it. I also use heavy shaders in 2d games, a mortal\nsin to many retro gamers, so take my opinion with a grain of salt and choose\nwhat looks best for you. It won&#8217;t effect performance in any noticeable way.<\/p>\n\n\n<p>\n<strong>V-Sync<\/strong> stands for\n&#8220;Vertical Synchronization&#8221;. It&#8217;s a common option in most games, not\njust emulators. Basically, V-Sync allows the emulator to draw each frame of the\ngame at a rate that matches the actual refresh rate of your monitor. This makes\nthe gameplay appear smoother and greatly reduces screen tearing. It does <strong>generally lower performance<\/strong> though and can cause a\nlittle bit more input delay than there would be with it off. Unless you are\nseriously struggling to run games at full speed I personally would <strong>leave it on<\/strong>. The performance cost isn&#8217;t that much,\nthe benefits are very noticeable and the tiny increase in input delay will only\nmatter in the twitchiest of games. If having V-Sync on or off is the difference\nbetween &#8220;playable&#8221; and &#8220;unplayable&#8221; for you, then your\ncomputer has a serious bottleneck somewhere else that you should look into\nfirst.<\/p>\n\n\n<p>\n<strong>Use Fullscreen<\/strong> is\nexactly what it says. One of the more self explanatory options.<\/p>\n\n\n<p>\nMost of the options under &#8220;Other&#8221; we will rarely\nif every have to touch. Either that or they also explain themselves.<\/p>\n\n\n<p>\n&#8220;<strong>Show FPS<\/strong>&#8221; of\ncourse will show the framerate you&#8217;re getting in game. I turn this on,\nespecially when testing out new configurations. But remember, most <strong>GC and Wii games max out at 30fps by design<\/strong>. Don&#8217;t\nbe surprised when you never hit 60. If your games are stable at 30 then that\nmeans you&#8217;re getting &#8220;full speed&#8221;. Some games have solid hacks though\n(again, you would input them through the cheat engine) that allow them to run\nat 60fps, but many games just break in strange ways if you do this. <strong>Show NetPlay Ping<\/strong> can be useful if you&#8217;re, well,\ndoing any netplay. There&#8217;s nothing else worth really explaining here though,\nnothing that will effect your performance at least.<\/p>\n\n\n\n\n<p>\n<strong>Graphics Configuration &#8211;\nEnhancements<\/strong><\/p>\n\n\n<figure class=\"wp-block-image\">\n<a href=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/Hddok6d.png\"><img decoding=\"async\" alt=\"\" height=\"789\" loading=\"lazy\" class=\"wp-image-150\" src=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/Hddok6d.png\" width=\"493\" srcset=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/Hddok6d.png 493w, https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/Hddok6d-187x300.png 187w\" sizes=\"auto, (max-width: 493px) 100vw, 493px\" \/><\/a><\/figure>\n\n\n\n\n<p>\n<strong>Internal Resolution<\/strong> is\nprobably the <strong>single most important option for\nimproving the graphic quality<\/strong> of GC\/WII games. Leaving this setting to\neither &#8220;auto&#8221; options is a bad idea, you want control over this.\nSetting it to &#8220;Native (640&#215;528)&#8221; will render the games as they were\non the original console. Most mid-range and higher computers can handle higher\nthan native resolution though.<\/p>\n\n\n<p>\nHere&#8217;s the difference between &#8220;Internal\nResolution&#8221;, our &#8220;Fullscreen Resolution&#8221; setting over in the\ngeneral tab and simply upscaling the graphics to a higher resolution in most\nemulators for 2d systems. Our Fullscreen Resolution is basically just what our\nscreen is drawn at but not the game really. That is, if we have the Fullscreen\nResolution set to 1920&#215;1080 (that&#8217;s 1080p) but Internal Resolution set to\nNative 640&#215;528, it will still only &#8220;look&#8221; 640&#215;528. Each emulated\npixel will really just be drawn as 4 or however many pixels on our display.\nThis is usually the case with emulating 2d systems at higher resolutions too\n(without filters, filters change everything.) An NES for example emulated at\n1920&#215;1080 will still look just as blocky as on an old CRT TV back in the 80s.\nYou cant just add detail to already drawn pixels no matter what your display is\noutputting at.<\/p>\n\n\n<p>\nBut just like with actual 3d PC games, we can make the\nGC\/Wii emulation draw the game&#8217;s models in much higher detail. That is what\nthis setting does. A higher internal resolution vastly improved image quality.\nIncreasing the internal resolution puts more strain on the graphics card, but\nsince emulation is almost entire CPU bound you usually have more than enough\nroom to play with a higher internal resolution. The CPU is bottlenecking the\nemulation so much that the GPU, relatively, has very little work to do. I use\n3x because that is the maximum that&#8217;s going to make a difference on a 1080p\ndisplay. If you have a 4k or more display you can experiment with even higher\nsettings. However, <strong>the CPU is not as much of a\nbottleneck as it once was thanks to Ubershaders<\/strong>, so with ubershaders\nenabled you may have less to work with if you have a weak GPU.<\/p>\n\n\n<p>\n<strong>Anti-Aliasing<\/strong> is a\ncommon feature in games that smooths out jagged edges. It&#8217;s the reason n64\ngames looked less blocky when compared to playstation games but a little\nfuzzier. This is taxing on the GPU, not the CPU. So again, how good your\ngraphics card is determines how high you can set this too.<\/p>\n\n\n<p>\nVery high anti-aliasing is just a waste of resources at\n&#8220;lower&#8221; resolutions. I can pull off 8x antialiasing just fine, but\nsince I play at 1080p I stick with 4x simply because there is no real\ndifference between 8x and 4x at that resolution.<\/p>\n\n\n<p>\nThe differences between <strong>MSAA<\/strong>\nanti-aliasing and <strong>SSAA<\/strong> anti-aliasing are\nworth googling. They are different techniques with different results but to\nexplain it would require too much for this tutorial. As of right now though,\nwith the way ubershaders are implemented MSAA ends up not taxing the GPU any\nmore than without ubershaders. SSAA on the other hand <strong>has a very negative impact on performance.<\/strong> It is\nincredibly costly on the GPU. This may change in the future but for now SSAA\nshould be avoided.<\/p>\n\n\n<p>\n<strong>Anisotropic Filtering<\/strong>\nimproves texture quality. It is another common feature of 3d applications that\nis too complex for this tutorial. I have never noticed any performance\ndifference regardless of what this is set at. To make sure that wasn&#8217;t just\nbecause of my higher end GPU I asked several Dolphin developers about this\nfeature. According to them; &#8220;Anisotropic filtering is not a bottleneck in\nDolphin. You can set it to 16x on integrated gpus without noticing much of a\nperformance impact.&#8221; It works fine when used with ubershaders too. So this\n<strong>should be set at 16x<\/strong> for maximum texture\nquality unless you are seriously struggling to reach playable performance. It\ncan potentially cause some graphic glitching at very high resolutions though,\nbut they would probably be minor. If you play at very high resolutions and\nnotice too many glitches then feel free to lower\/turn this off.<\/p>\n\n\n<p>\n<strong>Ubershaders<\/strong>. This is the\nbig, new incredible feature that&#8217;s been touched on throughout the tutorial. If\nyou have even a somewhat modern GPU you should have this set to either <strong>Hybrid<\/strong> or <strong>Exclusive<\/strong>.\nThe Dolphin developers have explicitly stated that they are working towards\nmaking ubershaders perform well on even integrated GPUs, although this early in\ntheir release there might still be performance problems with integrated or very\nweak graphics cards.<\/p>\n\n\n<p>\nOtherwise, it&#8217;s hard to say exactly what it should be set\nto in most cases as there are still so many unknowns, untested configurations\nand undiscovered bugs. I would <strong>lean towards using\nHybrid<\/strong> for most setups even with fast GPUs. Exclusive has a generally\nhigher chance of reacting poorly with other settings and lowering\nperformance\/overtaxing the GPU. This will all probably change in later builds.<\/p>\n\n\n<p>\nAlthough, the <strong>current NVidia\ndriver may have problems<\/strong> with hybrid mode. Hybrid uses a second thread\nto compile shaders in the background, so it can draw using the &#8216;slow&#8217;\nubershader until the faster one has finishing compiling, but in some cases the\nnvidia driver blocks the main drawing when it&#8217;s doing the shader compile in the\nsecond thread. This can possibly cause stuttering. It&#8217;s not yet certain whether\nthis only effects the OpenGL backend, so again the best option is to test both\nchoices on your own hardware. On my hardware I haven&#8217;t actually run into any\nnoticeable differences between hybrid and exclusive.<\/p>\n\n\n\n\n<p>\n<strong>Scaled EFB Copy<\/strong> should\nalmost always be left on. <strong>Per-Pixel Lighting<\/strong>\nimproves quality and had very little performance impact with the old shader\nsystem. With ubershaders however, <strong>Per-Pixel Lighting\ncan cause a noticeable performance impact<\/strong>. If you have trouble\nmaintaining 30fps in some taxing games it is worth turning this off and seeing\nif your performance improves.<\/p>\n\n\n<p>\n<strong>Force Texture Filtering<\/strong>\ncan improve texture quality but it has been known to cause some graphical\nglitches in other games. I haven&#8217;t encountered any problems because of it in\nDolphin builds from the past year or even longer, but it is fine to leave off\nanyway if you choose to be cautious. It makes little difference either way.<\/p>\n\n\n<p>\n<strong>Widescreen hack<\/strong> is\nusually <strong>best left off<\/strong>. It can help some games\nwork properly in forced 16:9 aspect ratio but very rarely does it do a good\njob. Most games that need some kind of widescreen hack have their own\nindividual hacks that can be implemented through the cheat engine.<\/p>\n\n\n<p>\n<strong>Fog<\/strong> is the well known\neffect used in many older games to limit the distance that can be seen in the\ngame. It was a common way to reduce the performance cost of n64 era games.\nDisabling it increases the draw distance of many games but if the game actually\nuses fog for any important reason then disabling it may cause issues. Whether\nto disable fog or leave it as is is up to you. It&#8217;s <strong>personal\npreference<\/strong> for the most part.<\/p>\n\n\n<p>\n<strong>Force 24-bit Color<\/strong> improves\ncolor quality and doesn&#8217;t negatively impact performance. It should almost\nalways be checked.<\/p>\n\n\n\n\n<p>\nThe <strong>Stereoscopy<\/strong> settings\nhave nothing to do with normal gameplay. If you have a 3D TV or a VR headset\nlike the Oculus Rift or HTC Vive then these settings are worth looking into.\nFor this tutorial I will leave it at that.<\/p>\n\n\n\n\n<p>\n<strong>Graphics Configuration &#8211; Hacks<\/strong><\/p>\n\n\n<figure class=\"wp-block-image\">\n<a href=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/8h7oFxr.png\"><img decoding=\"async\" alt=\"\" height=\"789\" loading=\"lazy\" class=\"wp-image-151\" src=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/8h7oFxr.png\" width=\"491\" srcset=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/8h7oFxr.png 491w, https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/8h7oFxr-187x300.png 187w\" sizes=\"auto, (max-width: 491px) 100vw, 491px\" \/><\/a><\/figure>\n\n\n\n\n<p>\nWe don&#8217;t need to change much here. The only thing worth\nmentioning is <strong>Texture Cache Accuracy<\/strong>. A\nhandful of games will sometimes get broken, glitched text on some hardware.\nThis is rare and when it does occur it is usually minor. If it ends up being a\nserious problem it can often be fixed by moving the Texture Cache Accuracy\nslider closer towards safe. Otherwise having it entirely towards Fast is best.<\/p>\n\n\n\n\n<p>\n<strong>Graphics Configuration &#8211;\nAdvanced<\/strong><\/p>\n\n\n<figure class=\"wp-block-image\">\n<a href=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/4uRzDvp.png\"><img decoding=\"async\" alt=\"\" height=\"799\" loading=\"lazy\" class=\"wp-image-152\" src=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/4uRzDvp.png\" width=\"491\" srcset=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/4uRzDvp.png 491w, https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/4uRzDvp-184x300.png 184w\" sizes=\"auto, (max-width: 491px) 100vw, 491px\" \/><\/a><\/figure>\n\n\n\n\n\n\n<p>\nMost of these options have no impact on performance and\nhave only novel or debugging purposes. <strong>Load Custom\nTextures<\/strong> is an option worth looking into though. Often popular games\nhave multiple replacement texture packs created by the community that push the\ntexture quality way beyond what the original console could handle. Combined\nwith higher internal resolutions the games can look better than officially\nreleased HD remakes.<\/p>\n\n\n<p>\nFor example, <strong>Hypatia&#8217;s texture\npack<\/strong> for the <a href=\"http:\/\/onthegreatsea.tumblr.com\/tagged\/mario+craft+64\">Virtual Console Mario 64 <\/a>completely changes the\nart style of the game. Her <a href=\"http:\/\/onthegreatsea.tumblr.com\/tagged\/Comparison-shots\">Wind Waker<\/a> texture pack is arguably better\nlooking than the official WiiU HD port. Installing texture packs requires\nputting the right files in the right folders outside the emulator, it can be a\nlittle tricky and is outside the scope of this guide.<\/p>\n\n\n\n\n\n\n<h2>\n<strong>Controllers<\/strong><\/h2>\n\n\n<h2>\n<strong>Dolphin Controller Configuration<\/strong><\/h2>\n\n\n<figure class=\"wp-block-image\">\n<a href=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/pCDJzJN.png\"><img decoding=\"async\" alt=\"\" height=\"1080\" loading=\"lazy\" class=\"wp-image-153\" src=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/pCDJzJN.png\" width=\"1920\" srcset=\"https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/pCDJzJN.png 1920w, https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/pCDJzJN-300x169.png 300w, https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/pCDJzJN-1024x576.png 1024w, https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/pCDJzJN-768x432.png 768w, https:\/\/notquiteaway.net\/wp-content\/uploads\/2017\/09\/dolphin-guide\/pCDJzJN-1536x864.png 1536w\" sizes=\"auto, (max-width: 1920px) 100vw, 1920px\" \/><\/a><\/figure>\n\n\n\n\n<p>\nDolphin&#8217;s controller setup is no more complicated than the\nnon-motion control configuration for most emulators or games. If you need\nmotion controls there are multiple ways to connect and configure actual\nWiimotes, but that is a complex topic in and of itself that wont be included in\nthis tutorial. It is very easy to get most USB controllers to work as both\nGamecube controllers and Wii Classic\/Pro controllers.<\/p>\n\n\n<p>\nUnder <strong>GameCube Controllers<\/strong>\nyou should set <strong>Port 1<\/strong> to &#8220;<strong>Standard Controller<\/strong>&#8221; in most cases.&nbsp; If\nyou select the drop down menu you can see your other options and it should be\nself explanatory when you might want to use them. A Standard Controller setup\nshould function like a normal GameCube controller and like a Wii Classic\ncontroller. Configure brings up another menu to let you configure the specifics\nof that controller.<\/p>\n\n\n<p>\nAny x-input or d-input USB controller should, in theory,\nappear in the menu for &#8220;<strong>Device<\/strong>&#8221; on\nthis screen. If not try hitting <strong>refresh<\/strong> until\nit appears. If it never appears something bigger and probably outside of the\nemulator is broken. After that just <strong>bind each button<\/strong>\non the controller to the corresponding Gamecube controller button.<\/p>\n\n\n<p>\nBack on the first screen you have nearly the <strong>same options for Wii Remotes<\/strong>, although worded\ndifferently. To set up a &#8220;normal&#8221; controller (not an authentic Wii\nRemote) you can select the ticker labeled &#8220;<strong>Emulate\nthe Wii&#8217;s Bluetooth adapter<\/strong>.&#8221; Then you can set <strong>Wii Remote 1<\/strong> to &#8220;<strong>Emulated\nWii Remote<\/strong>&#8221; in the same way you set Port 1 to &#8220;Standard\nController&#8221; for GameCube Controllers before. If you hit\n&#8220;configure&#8221; you&#8217;ll get a similar page to select which device will act\nas your wiimote and the options to bind the buttons. Here though you also have\na tab labelled &#8220;<strong>Motion Controls and IR<\/strong>.&#8221;\nYou can bind normal button presses or other kinds of input to the Wii&#8217;s motion\ncontrols with these options. So, for instance, you could set a horizontal shake\n(the X option under &#8220;Shake&#8221;) to button A on your controller.<\/p>\n\n\n\n\n\n\n<h2>\n<strong>Conclusion<\/strong><\/h2>\n\n\n<p>\nThis tutorial has only scratched the surface of things\nthat can be configured in current builds of Dolphin. However, it should have\ncovered the most important and commonly used settings, especially those that\nwill have a serious performance impact in most games. And it should have\ncovered everything required to fully configure the emulator so it can run most\ngames without major bugs.<\/p>\n\n\n<p>\nStill, many games require more complex configuration. It&#8217;s\nnot possible to make a general tutorial that would cover the huge number of\nminor tweaks certain games require. Some games will also work with this\nconfiguration but have very specific emulation bugs or feature bugs. Resident\nEvil 4 for example is fully playable, but using Savestates in Dolphin will\nbreak a feature of the Gamecube that game uses called &#8220;perfcounters&#8221;\nand cause the game to rapidly slow down to an unplayable speed. The only\nsolution is to just use the normal saves in the game (to an emulated GC Memory\nCard) instead of savestates. Savestates will also not work between different\nversions of Dolphin, but emulated Memory Cards will.<\/p>\n\n\n<p>\nMany parts of this tutorial may quickly become out of date\nwith new developer releases, especially as ubershaders develop. I will try to\nkeep things somewhat up to date and edit this tutorial often. In the future I\nwill try to write guides on some more advanced configuration options and\nindividual configurations for picky games.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>This tutorial was written using an i7 6700hq, Nvidia gtx 1070 with 16gb of ram as a reference computer for configuration. Some of the settings shown may not be appropriate for other computers. Do not just copy the configuration shown in screenshots, apply some critical thinking to your own choices. Ubershaders and the Current State &#8230; <a class=\"read-more\" href=\"https:\/\/notquiteaway.net\/index.php\/2017\/09\/11\/dolphin-configuration-guide\/\">Read More<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4,3],"tags":[11,7,8],"class_list":["post-154","post","type-post","status-publish","format-standard","hentry","category-emulation","category-tech","tag-dolphin","tag-emulation","tag-guides"],"_links":{"self":[{"href":"https:\/\/notquiteaway.net\/index.php\/wp-json\/wp\/v2\/posts\/154","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/notquiteaway.net\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/notquiteaway.net\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/notquiteaway.net\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/notquiteaway.net\/index.php\/wp-json\/wp\/v2\/comments?post=154"}],"version-history":[{"count":4,"href":"https:\/\/notquiteaway.net\/index.php\/wp-json\/wp\/v2\/posts\/154\/revisions"}],"predecessor-version":[{"id":166,"href":"https:\/\/notquiteaway.net\/index.php\/wp-json\/wp\/v2\/posts\/154\/revisions\/166"}],"wp:attachment":[{"href":"https:\/\/notquiteaway.net\/index.php\/wp-json\/wp\/v2\/media?parent=154"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/notquiteaway.net\/index.php\/wp-json\/wp\/v2\/categories?post=154"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/notquiteaway.net\/index.php\/wp-json\/wp\/v2\/tags?post=154"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}