I have a simple cube that I'm using to make a wall. I had already duplicated the cube to make more walls and cut some doors and windows into them before I realized that the normals are getting messed up somehow. None of my other cubes have the problem, but I'd rather not repeat all of my work if it can be avoided.
The problem comes when I try apply the rotation and scale to the cubes so that I can use the bevel tool on the door hole. It happens on all the walls, even the one that doesn't have any modifications other than scale. The incorrect normals are visible if I switch to smooth shading, I'll see a diagonal shadow line going across the wall where the triangle would be if it were triangulated. I tried recalculating normals, but that didn't fix it.
If I view the normals before and after applying the transformation, I can see the problem. Before applying it, the vertex normals come straight out in the same direction as the face normals. Smooth shading works fine in this case. If I apply the transformations, the vertex normals change and come out at an angle instead of coming out straight. Nothing I do seems to be able to fix them.
The geometry is fairly simple, as I said one of the walls it happens to is just a scaled cube. It's only got 8 vertices. So there are no duplicate vertices, or hidden faces, or anything else I can think of that might cause the problem.
Is there something else I can try to properly rebuild these normals or am I going to have to model all my walls over again?
EDIT: I rebuilt the walls over again and the one that is a plain cube is no longer having the issue. Maybe when I was moving the vertices around for sizing I accidentally added on somewhere or something? The ones with the door cutouts are though. In this screenshot the whole thing is set to smooth shading. An edge split modifier only fixes it if I take the angle all the way down to 5 which no longer smooths the door frame. If I set the wall to flat, and individually set the door frame vertices to smooth, the problem goes away in shaded view but comes back in both Blenders textured view and when imported into Unity (whether I let Unity calculate normals or use Blender's)
Edit2: I just realized that I never applied the transform to the plain cube wall. When I do, the problem comes back. It looks just like the one in the screenshot except the messed up normal goes all the way from the top left to the bottom right.
Edit3: I've added the blend file for those asking about it. When the wall is set to flat shading and view mode is set to solid, the problem doesn't appear. But it does appear pretty bad in Unity whether it is set to flat shading or not and it's slightly noticeable in Blender when set to textured mode as well.