I am having trouble producing smooth shading with bidirectional path tracing(BDPT).
I am using per vertex normal, and smooth shading can be achieved with path tracing or direct lighting. However, BDPT always results in faceted looking results such as the one below.
Notice that even the caustics, which is most sampled with light tracing, are faceted.

I spent some time debugging and found that this faceted look was the result of the sampling technique that connects light samples directly to the camera.
I really don't know how to fix this, since these samples are sampled from light source, and they depend only on the geometry, not normal.
The following is a pure light tracing image. All samples are traced from the light source and then projected to camera. All meshes in the above image uses per-vertex normal.
But it confuses me that mitsuba seems to be free from this artifact.
Any clue?