3d models for games have some unique requirements that other mediums such as film or visual renders do not. Getting these wrong may have an impact on your game and its performance.
3d video game models are required to be rendered in real time quickly. They need to be rendered anywhere from 30 to 60 times per second. To accomplish this a 3d models poly count needs to be kept as low as possible. To counter the fact this will result in lower detail normal maps are used.
In this article I will explain how games can accomplish such quick render speeds optimizing 3d models to their fullest.
How Real Time Rendering Works
When a computer renders something it takes the information of a 3d wire frame and converts it to a 2d image. This can take less than a second or hours depending on the complexity of the model/models, lighting and textures in the scene.
What real time rendering attempts to do is to limit the time it takes to render a 3d model or models to an almost instantaneously speed. This is done by simplifying models and lighting in a way other rendering workflows typically would not
Games in particular rely on this form of rendering as it is the basis of how you can interact with the game. Typically games are designed to run at 30 to 60 Frames Per Second (FPS). This means any model in the scene needs to be rendered that many times.
How a 3d Model is Optimized for Real Time Rendering
In order to optimise a model for Real Time Rendering measures need to be taken to make the scene less computationally heavy. One of the best ways to achieve this is by reducing the polys of the 3d models.
The speed to render an image is not dictated by the surface area of the model but by how many individual polys it needs to render.
Computers computational power certainly has improved over the years, however the push to have games available on mobile devices means they have a lot less ability than that of a desktop. So reducing poly count is still very important.
Another important optimization but less important than poly count is reducing the size of the texture resolution of your model. Large 4k or even 8k texture maps take a lot of work for a real time render engine to process.
Limiting the size of texture maps where practical can make a huge improvement to a game model. I recommend you check out this article I wrote outlining how to best untilize texture maps.
3d Models for Mobile Games
3d mobile game models have to reduce their poly count and resolution even further than that of a game on PC or Playstation.
This is because mobile devices can have considerably less processing power to accommodate large workloads. This can be difficult as there is a point where reducing the poly count or resolution to far can result in noticeable quality issues.
Games that I have seen balance this well tend to go for a low poly stylized look. It allows them to aim for really low poly and resolution textures, as it is intentional.
Process for Reducing Poly Count
When making a 3d game model it is usually a 3 step process.
- Create a High Poly Model.
- Retopologize the High Poly Model to Low Poly Version.
- Create a Normal Map.
Create High Poly
This step can be the most fun as it requires you to make the 3d model with no limitations. At this stage you are not concerned about the poly count, you simply want to make great looking model.
Retopologizing Model to a Low Poly Version
Now that you have a great looking model it’s time to retopologize it to a low poly version. Retopology is simply the process of refining the models wireframe to either reduce the polys or improving it so as to assist with such things as animation.
During this step you will typically remove the majority of the fine detail of the model. You may be left with a model that looks very blocking as if from a video game made 20 years ago. Never fear though this is where the magic of a normal map comes in.
If you are curious about how many polys a low poly model should have encourage you to check out this article I wrote.
What is a Normal Map and its Usage
A Normal Map is a texture map that you apply to your model that fakes how the light interacts with the model. If done correctly a normal map should be able to create a texture map that mimics the fine details of the high poly mesh, when applied to your low poly mesh.
What Software to use to Create a Model
There is a large variety of 3d software available to create 3d models for games these include Blender, Maya, 3ds Max, Cinema 4d and Zbrush to name a few. They all do a great job and can accomplish what you need. It’s best not to get hung up on what software to use but to pick one and learn it.
If you are concerned if it meets your needs pick one that can export models to FBX or OBJ. Also make sure it can perform the tasks you might want such as sculpting, retopology and texturing.
Personally I use a combination of multiple software. These include Blender, Zbrush & Substance Painter. Each of these pieces of software have thier strengths and by combining the three I can get great results.
What to look out for when Purchasing 3d Models
If you simply think your skills aren’t up to par yet, or your not interested in 3d modelling you may be looking to purchase some 3d models. These are the things I would check before making a purchase.
Poly Count
Obviously this is one of the first things you should check. Depending on the platform your game will be on this can change so there is no right or wrong answer. As a general guide game models can vary from hundreds to tens of thousands depending how complex the model is.
Textures
Check what texture resolution the model is. If the model is super detailed or meant to be scaled large in the game a 2k to 8k texture may make sense. If it is fairly basic in design with little detail I would question textures over 1k resolution.
Sometimes you may find that the creators of the models may add in various size resolutions of the same textures. This can be advantageous as this means you can scale your textures based on your needs.
Other Useful features
While these criteria are not essential they are good to have.
If there are several versions of the same model with different poly and texture resolutions this is great. You can utilize what is referred to Levels of Detail (LOD). With LOD’s you can scale the poly count of the model based on how far away from the camera it is. By doing this you can further control your poly count in a given scene.
I find a sets of models work well. For example a map pack with various environment props. This is great because it typically means you don’t need to go looking for more models of the same style, you can quickly put something together and are ensured they look great together.
Conclusion
Hopefully now you have some idea of what specifications are required for 3d video game models due to their requirements for very quick rendering.
I encourage you not to be disheartened by these requirements as I personally find it a fun and challenging task to stay within the parameters required. Most importantly have fun and experiment.