I might be completely wrong here but for lighting on 3d objects to appear correctly mustn't you make sure that each face has it's own set of normals?
That is, faces can't share any vertices.
If you model your cube with only 8 vertices, 5 of the faces will share the same normal and isn't lighting based on normal direction.
Often the normal projection of such cubes will point from the center out through the corner.(Not actually from the center, but in that plane)
So a cube should have 36 vertices for correct lighting.
Well,not neccesarily 36 as some vertices could be shared when two faces resides on the same plane.
(For a cube 2 faces always reside on the same plane) that will give 24 vertices instead.
Try model your objects like that and see what results you get.
As i said, I may be wrong, but it makes sense to me.(though I could be totally insane)
[Edit]
If you have DirectX SDK installed you can use the meshviewer utility to check lighting on objects. It's also a great tool to view normals and recompute them.
In this tool you could also create a cube with 24 vertices and compare it to a cube with 8 vertices.
That is, faces can't share any vertices.
If you model your cube with only 8 vertices, 5 of the faces will share the same normal and isn't lighting based on normal direction.
Often the normal projection of such cubes will point from the center out through the corner.(Not actually from the center, but in that plane)
So a cube should have 36 vertices for correct lighting.
Well,not neccesarily 36 as some vertices could be shared when two faces resides on the same plane.
(For a cube 2 faces always reside on the same plane) that will give 24 vertices instead.
Try model your objects like that and see what results you get.
As i said, I may be wrong, but it makes sense to me.(though I could be totally insane)
[Edit]
If you have DirectX SDK installed you can use the meshviewer utility to check lighting on objects. It's also a great tool to view normals and recompute them.
In this tool you could also create a cube with 24 vertices and compare it to a cube with 8 vertices.