Black Artifacts in Render

I modeled a character and it seems that whenever I render, the camera can see through some of the faces, creating these little black dots. I ended up kind of solving the issue, by finding that it was because two or more faces were too close to one another. Ex: The faces on the lips and the faces in the mouth sock. I spread the faces further apart and it stopped giving me the black marks. I was just wondering if there was a way to stop this in the future, so I wouldn’t have to end up making something that was thicker than it was supposed to be. I adjusted the clipping planes and checked face normals and that didn’t seem to fix anything.
For reference, the material on the character is a Minnaert material with an image as the texture. The darkness is set to 2.0 on the material. It’s not reflective, has no specularity, isn’t transparent, and doesn’t emit light.

That behaviour has a name too, Z-fighting, unless it’s some other kind of geometry issue with the model itself. Bringing clipping values closer together increases accuracy when the Z distance is calculated but if that doesn’t help, might need to mask the surface from the back. Could use mask modifier for that.

From http://www.opengl.org/archives/resources/faq/technical/depthbuffer.htm

12.040 Depth buffering seems to work, but polygons seem to bleed through polygons that are in front of them. What’s going on?

  You may have configured your zNear and     zFar clipping planes in a way that severely limits     your depth buffer precision. Generally, this is caused by a zNear     clipping plane value that's too close to 0.0. As the zNear     clipping plane is set increasingly closer to 0.0, the     effective precision of the depth buffer decreases     dramatically. Moving the zFar clipping plane further     away from the eye always has a negative impact on depth     buffer precision, but it's not one as dramatic as moving the zNear     clipping plane.