I know the theory, but I do not know the math. From what I can gather, here is how you would correctly render a bunch of 3D faces/polygons perfectly (in every case):
sort them in order of which is in FRONT; to do this, you find the equation for the plane that a face lies on (for this reason, it may be best to just use triangles), and plug some point of another face into the equation and get the missing X, Y, Z, or whatever; it is is on the same side as the camera (both are less than or greater than what the missing value should be), then that point is in front of the face.
When comparing 2 faces, you compare each point of a face with the other; if they are not all on the same side, then the face is split...
You sort them like this, and then draw them in order from front most to last most.
..BUT I DO NOT KNOW THE MATH!!!!!!!! so frustrating...
can anybody help me? or is nobody ever here anymore (except those who do NOT do any of this by themselves, but use engines to do it for them).
Also, since I am using java, I cannot tell it to shade each pixel just so... what I CAN do is have a gradient or one color for a face that would match the lighting angle/distance, and also the angle to the screen if transparent(a transparent face gets "thicker" as it turns away from you)