From Rigs of Rods Wiki
Basic Rules of Meshing
There are some rules you should follow in order to produce a mesh that is visually appealing yet high performance in-game. Ideally, you want your mesh to work with as many computers as possible. Of course, it's highly unlikely you'll be able to create a mesh that is easy on everyone's' computers, so don't panic if there are a few people who can't run your mesh. Normally, the reason is simply that that person's computer is well past its "Best Before" and probably isn't able to load anyone else's mesh either. By following the guidelines below, you should be able to make a mesh that looks and runs good. You may even be able to apply these rules to other games.
There are several different modelling programs you can use to create your mesh, you can find them and their pros and cons here: RoRBook/Meshes/Tools.
Generally, Google's Sketchup software is frowned upon, as it can create meshes with unnecessarily high polygon counts and often, the meshes Sketchup users produce look unrealistic as, normally, material colours are used instead of detailed textures. However, this isn't always the case - it is possible to texture in Sketchup and if used correctly it doesn't produce too many polygons.
Blender3D and AC3D are popular for meshing Rigs of Rods vehicles; due to the cost, 3D Studio Max is rarer than the others.
Getting the right balance of polygon counts is essential. High-poly meshes can sometimes cause framerate deficiencies, whilst low-poly meshes don't normally look as good. However, with a good texture, low-poly meshes can still look realistic, and high-poly meshes don't always cause issues. What is considered "too high-poly" differs from game to game and in the case of Rigs of Rods, it's approximately 20-25k. Above that amount could cause framerate issues on some computers and you have to take into account that not everyone can afford a top-end computer, even if you might be able to. Deleting unseen and accidental polygons can help a lot.
Texture Scale, Detail and Format
Here, like polygon counts, we should get the balance of texture scale. Like polygon counts, bigger textures can (but don't always) look better than smaller ones, due to the fact that there are more pixels which you can use to add more detail to your texture. The detail alone is enough to increase file size by several hundred kilobytes, maybe even several megabytes; in fact, the detail of a texture makes up most of its file size, but the actual dimensions of the image are what allow the detail to be.
Don't make the size of the texture any bigger or more detailed than it needs to be, and if you decide that you don't want to use a certain part of the texture, delete it. Even replacing it with a blank colour can help a lot. Save as a .DDS file for better compression; you can find a DDS plugin for Adobe Photoshop here
Paint.NET version 3.10 and higher comes with DDS support as standard. Users of GIMP can find a plugin here
For good lighting effects in-game, use smoothing. In Blender, you can do this by entering Edit Mode on an object, selecting the faces you want to be smooth, pressing W and clicking "Set Smooth". Don't mistake it with a separate button on the same menu, "Smooth". Smooth changes the actual shape of your mesh.
At the bottom-right corner of your screen there should be a "Modifiers" tab. Click on Add Modifier and choose Edge-Split from the menu. Change the settings if you wish. When you're ready to export your mesh, press Apply Modifier and then export it using the OGRE Mesh Exporter found here.
When UV Mapping, try not to take the lazy way out. Place the vertices in the UV Map Editor accurately so that skinning is possible on your mesh and so that textures are not stretched.
Remember to try to keep the polygon count low to reach out to a wide audience of people instead of the select few with high-end systems. Save textures as .dds instead of .png, don't add unnecessary polygons and don't add detail onto the mesh that can be made using a texture. Now you know the basic guidelines, you can get on to what really matters in your mesh - the mesh!