Whether you are a veteran GameDev or a new one, your rig has a lot to do with what you create. After all, your rig is the medium where things are taking shape from imagination. Now PC building advice seem to grow on trees these days with every gamer/hardware seller/resident geek/Youtubers calling themselves rig experts. To confuse you more, we have all these products being shoved up on our faces every waking moment we can get online. Now I don’t hate all of that. It’s just too much to ask for, when looking for the right stuff when everyone is busy linking you with their affiliate link to Amazon or Best Buy. So what do we do? before we begin let me say that all these advice is based on expertise and experience so that you can rest at ease and as a programmer all of it has good logic, so you can run the reasons on your head yourselves, before making any decisions. Lets begin debunking some myths (If you have already chosen on a desktop, then skip the part below).
Desktop or Laptop?
When it comes to game development nothing really knocks out a Desktop. Now I might be upsetting a lot of people, but to tell you the truth these laptops cost $1400 to $2000 and to me that’s a lot of desktop money. You may be lured in some lucid dream where you are doing your game dev work in the middle of a meadow, in your dorm or an empty field, on some spaceship, but the reality is you will always work in a stationary place, game dev is not a one day thing, it’s a month in year out thing, so better to have a nice corner with your desktop setup where you plan to achieve Nirvana. It’s a place where you explore yourself, so dedicate yourself to what you are doing. After your desktop/workstation setup is complete, if you decide to showcase your engine work on go then you can get a minimal laptop with a midrange graphics card to do the job.
Q: But what about all the gaming laptops and workstations being advertised?
A: It’s all bullshit. It may look cool and attractive but everything in the world of laptop is a compromise, with portability comes handicapped features, missing performance,excess weight,increase in size, overall reduced portability. If you attach two monitors to it, a keyboard and a mouse you are converting it into a desktop. What’s the point. In the world of game development we have something called “baking”, it can be light, normal map, mesh reduction operation or simply compiled outputs. All these takes hours to complete even on a modern Core i9/Ryzen and are very resource intensive tasks that makes the cpu/gpu work at 100% for hours, some tasks even take days. All pressure on a Laptops would melt in to the floor or show visible problems on the next day the warranty ends. I personally don’t like compromises, the “m” in most graphics card for laptop means half the shader count or reduced performance. Secondly If you are doing game dev you will need 2 or 3 display attached. That portability advantage is long gone. From time to time you will also need to upgrade to the current standard, Desktop makes it a lot cheaper. Take a look at some game development company videos on Youtube and you will find everybody working on a Desktop.
What we are going for?
A: Cost Effectiveness, Zero Bling Bling, Moderate Cooling, Stability and Stable Performance.
So here is a set of goals:
- A Good Midrange Processor. You need threads and you will need lots of it. A Xeon or a good core i7 is fine. Instead of getting higher Ghz , go for more threads/cores. Buy a used server processor or last generation core i7 processors from ebay. Processors are pretty safe to buy used. They were made pretty durable, just make sure to ask the seller, if it ever been overclocked. You will have the Game Engine doing stuff while you might have to continue work on a 3D program, dedicating number of cores will help multitask very easily. Avoid them dual processor server motherboards.
- Lots of RAM. I remember some of the normal baking and Rendering took all my 12 GB of ram, even though my OS took only 1.1 GB to run I remember 3D coat giving me out of memory errors. Bottom line you will need lots of RAM. Good news is you don’t need high performance RAM. Don’t worry about dual/triple/quad channel either, in the real world, none of it matters. I wouldn’t suggest on used RAM. Data errors are hard to track and can creep up. For Unreal Engine 24 GB of RAM is optimal. For Unity 16 GB is enough. Anything below 12GB is a risk, above 32GB is waste of money. Try to get low latency RAM.
- A solid Motherboard. Stop paying attention to the chipset version and pay attention towards build quality and number of RAM slots. Try to get one 4 or 8 RAM sockets. A good motherboard really keeps a lot of bad Processor behavior away. I personally don’t care about brand but from 1998, I have been satisfied with Gigabyte. Buy the top of the line ones, but a generation earlier so that its less expensive.
Now here is the part for some CAUTION:
- Remember, Xeon processors support ECC RAM, which is pretty good, Most Core i7/i9 series won’t. So if regular Intel Core series, go with non ECC RAM. If Xeon, you can go with ECC RAM. Does it matter? About 20% in 2018. I have been using non ECC for a long time. No problem.
- Never overclock your rig. It’s fine if you do it a little. But the performance gain is so minimal and excess voltage leads to system stability issues. You don’t want your precious work to get corrupted, believe me. The keyword her is “STABLE”.
- A good Power Supply Unit. One that is preferably ~700 Watts (Least Silver). That much should be sufficient. If you live in place where powercuts are common and you want your expensive hardware to work without hiccups, then a good PSU is never a bad idea. I have had bad PSUs exploding on me on load. A UPS (uninterrupted power supply) as well if you are in a developing nation.
- A basic FULL ATX Casing where you can fit a 120mm case fan. No bling. Get the cheapest one.
- Two Monitors. I find three to be overkill, but for game development you surely need 2. Least 22 Inches with full 1920×1080 would do. Really helps with Tutorials. Avoid Square and curved ones (messes up with 3D modeling).
- Mechanical Keyboard is a must. Anything like Cherry MX switches would do. You will be typing and coding a lot. Any extra strain from typing would unnoticeably clogup your creative juices. Your interface is your medium of communication with the machine. The smoother the better.
- A good Mouse. You don’t need High DPI, rather spend on comfort and a good firm grip. You can also try trackball mouse, which reduces wrist strain a lot but you have to get used to it.
- A Graphics Tablet. If you are the artist type then this is a must and I don’t need to explain why. Even if you are the programmer type, still have a cheap one, because it’s a lot more natural and you may have to draw gameplay system diagrams, level design topology, fix some art mistakes etc. Wacom is the way to go.
- Finally the Graphics Card. In the professional world, Nvidia rules due to many reasons (you can Google it up), therefore they developed an edge (I love ATi as well by the way). In the world of Nvidia there is Geforce and Quadro to select from. For game dev work, you need the Midrange one, as of writing this article, the 1070 or the 1070 Ti is the upper midrange for Geforce. I don’t recommend Quadro because of the price. That extra price does come with many years of driver support and they are very stable drivers. Really helps with high polygon modeling. That being said, you don’t need one. Go with the midrange one, that is not too much vendor modified. More mods, means higher rate of failure in the future. The Zotac 1070 Mini doesn’t even turn its FANs on if its below 60 Degrees and that saves power. If you are going hunting for used ones, then don’t dip below the 700 Series (ex GTX 770), you could lose out on newer Shader Model/DirectX utilizations and older hardware tend to run hotter with higher power consumptions anyway. Also new 3D painting software such as Substance Painter needs a lot of VRAM, 4GB may not be enough. Don’t SLi, you are just inviting trouble and Most Game engines are on a fence about it. If you have the money to SLi, then get a higher performance card.
- For Storage, one SSD to keep the System Files and Game Engine Files. One HDD for backing up, testing assets, downloading and basic storage. You don’t need to NVMe or go crazy.
- Sound Card is essential. Anything from the creative lineup or Xonar from Asus would do. The ones that come with the motherboard is never good enough. To me it always sounds compromised and muffled. That pisses me off. I enjoy a bit of good music while working.
- For Operating System. It’s Windows. You can use Linux, I am a long term Linux user myself. But it’s just too much hassle. Plus your end user (typical gamer) is 90% on Windows. Also there are many 3D programs and software that doesn’t have a Linux version. The target is to make games with quality. Game development is a lot of hassle itself. Don’t make it harder on yourself. But if you are a hardcore open source enthusiast, go nuts. For Mac, well… if its an iOS game why not.
- Extra Stuff. Some 120mm fan for your casing and a regular Mid Range CPU cooler for the processor (there is a video where linus Tech tips proves water cooling is marginally better than air cooling, like 2%), but the points of failure is a risk. So go with air cooling. A good Desk and chair with armrest that can reach to your mouse and keyboard also goes a long way. Try placing your setup in a nice corner of your home or best possible location of your office (if permitted). Also tie up your cables. A pair of moderately ok headphone would do good.
Good luck, hope this article helps you decide a few things.