Flattening from the camera's POV in Python is not that easy - you'd have to transform every actor's mesh from local space to camera space, scale the z axis and transform it back to the actor's local space. But it isn't impossible. However, I don't think it's necessary. All that it'd take to achieve flatter shading would be bending the normals towards the camera, which is something a P5 procedural shader can do for you. Or you could lower the influence of the diffuse lighting and add ambient lighting. Or of course, you could just use P5's cartoon shader node... [attached is a Python script to replace diffuse colors with ambient colors. When using that, use the P4 renderer and check "ignore shader trees"]