I believe what you are seeing is the result of smooth shading. All polygons in the engine are smooth shaded (as opposed to hard edged). One way that you can get around this is to normal map your objects. Another is to change your geometry in a way that will work better with smooth shading.
In a little more detail... Normals determine how a polygon is illuminated. When the normal is parallel to the angle of the light source, the luminance of the light source is multiplied by 1. When the normal is perpendicular to the light source, the luminance is multiplied by 0. (Thus a face that is tangent to the light source receives no light.)
Now, with smooth shading, each polygon face (triangle) has a single normal at the center of the face. As you move away from the center, the normal angle is blended toward the normal angle of the neighboring faces. Generally, organic models will look better with this method and inorganic models will look...broken.
What you want to do is tell the engine to treat all the normals on the flat surfaces (the ends of the cylinder) as all pointing out the same direction. Then, for all the normals around the body of cylinder, smoothly blending into one another. Many software engines have an option known as hard edges that allow you to set this without normal mapping, but most real time engines do not, because additional computations are necessary.
Hope that helps. You should be able to find some normal mapping tutorials online. And you may see why real time apps generally avoid machine-cut pieces like what you're making here.