more tweaking of blending normals.... static void normal_basis(Point3& z, Matrix3& tm) { Point3 y(0.0f,1.0f,0.0f); Point3 x = Normalize(CrossProd(y,z)); y = Normalize(CrossProd(z, x)); tm.Set(x, y, z, Point3(0.0f,0.0f,0.0f)); } struct VNormal : public BlendMode< VNormal > { enum { NameResourceID = IDS_BLENDMODE_VNORMAL };…