adding comments and revising for pcg 2d and 3d