Hidden diagonal lines in quads

I’m trying to make a shirt. My mesh started with a cube where I divided each face into 9 faces using Loop Cut (ctrl-R). I then moved my vertices around, used Set Smooth on the mesh, set my material to a certain color, and then attempted to add a stencil (or a tga image with alpha transparency). Adding a camera and one lamp behind it, I got this

http://xs141.xs.to/xs141/09306/wrinkled_shirt892.jpg

Yeah, it’s a shirt with a wrinkle, but I had NO intention of adding any wrinkles. As you can see, the ‘88’ is placed everywhere there is a face. Looking at the Solid version, I noticed little diagonal lines dividing my quads, especially on the lower faces. These appear more obvious in Set Smooth than Set Solid.

So I’d like to ask, what on Earth are these lines doing in my quads?

http://xs141.xs.to/xs141/09306/hidden_triangles255.jpg

As a simpler example above, I took a cube mesh and moved the top left foreground corner to the right and a bit into the cube (along the y-axis). Here you can see two of the diagonals, one making the darker shaded area and the other making a triangle on the top of the cube. Now why isn’t there a diagonal connecting the bottom left foreground vertex with the top left background vertex? Was I just fortunate to move the vertex that was on one end of this face’s diagonal? Is this normal to you all in modeling? Why does this occur?

I’ve noticed these little triangles for sometime in my other meshes, much to my annoyance, and my only recourse was to delete the offending vertices, replace them with extruded copies from a neighboring vertices, and remake the faces with the F button. And forgive me if this problem has already been posted, but it’s nearly impossible for me to figure out a better string of keywords that relate to it.

It’s simple.

Even though blender only marks 2 edges, every quad really has 5 edges.
3D software only works with triangles really, but they represent it as quads (or n-gons) for ease of use to us artists (and for the subsurf algorithm - there quads really make a difference), but in the end it converts every quad to 2 triangles for rendering.

The way to not have the hidden edge show up in your models is to make all 4 verts of a quad coplanar.

sounds great! how do I do that?

Think of a coplanar quad as a sheet of paper laying flat on your desk, the four corners being the vertices. Since all of the vertices defining the quad are on the same plane, they are coplanar. Now, take that sheet of paper by two opposing ends and fold them up slightly. That would be what you have in your model. The question for the developers is how to render such a quad? Should it be triangulated? Should it be converted to a NURBS patch? The way that renderers work is by shading and texturing co-planar polygons simply because it is the easiest and fastest way. Ultimately, the renderer will decompose any quad into triangles since a triangle can only be coplanar. That is what Blender is doing.

To fix this, either convert all of your quads to triangles (I’m not seriously recommending this guys! Put away the torches and pitchforks…) or (better solution) make sure all of the vertices in your face are flat. Remember that “flat” is relative to the orientation.

The problem illustrated isn’t a coplanar quad but a concaved one. Blender will warn you against this if you are trying to create a new face from selected verts. There is no warning though if you start with an existing face and drag one of the verts out of place.