diff --git a/shapes/Plane.cc b/shapes/Plane.cc index a3c3468..513e7f4 100644 --- a/shapes/Plane.cc +++ b/shapes/Plane.cc @@ -46,5 +46,6 @@ Shape::IntersectList Plane::intersect(const Ray & ray) Vector Plane::getNormalAt(const Vector & pt) { Vector normal(m_a, m_b, m_c); - return normal.normalize(); + normal.normalize(); + return m_transform.transform_normal(normal); } diff --git a/shapes/Sphere.cc b/shapes/Sphere.cc index f0f383e..045a681 100644 --- a/shapes/Sphere.cc +++ b/shapes/Sphere.cc @@ -41,5 +41,7 @@ Vector Sphere::getNormalAt(const Vector & pt) Vector pt_inv = m_inverse.transform_point(pt); Vector normal = pt_inv; - return normal.normalize(); + normal.normalize(); + + return m_transform.transform_normal(normal); }