implemented Phong required code