>>460
gl_NormalMatrixがビュー行列×モデル行列の逆転置行列になってない?

gl_Normalにモデル行列の逆転置行列を掛けて
フラグメントシェーダではワールド座標系でライティングを計算する
もしくは
gl_Normalにビュー行列×モデル行列の逆転置行列を掛けて
フラグメントシェーダではカメラ座標系でライティングを計算する

でうまくいくと思う。