In a computerized architectural design environment in which a design program is loaded into memory and processed at a central processing unit, a computer-implemented method for rendering a specular effect within a three-dimensional model, the method comprising: creating two or more maps of a plane within the three-dimensional model, wherein the two or more maps comprise: a representation of at least one light source within the three-dimensional model; creating a first attenuating gradient of specular intensity on a first map of the two or more maps, the first attenuating gradient being calculated based upon a first surface reflectivity value; and creating a second attenuating gradient of specular intensity on a second map of the two or more maps, the second attenuating gradient being calculated based upon a second surface reflectivity value, which is different from the first surface reflectivity value; casting a viewpoint ray to an object surface point, wherein the viewpoint ray comprises a ray extending from a user perspective within the three-dimensional model; casting a reflection ray of the viewpoint ray, wherein the reflection ray originates from the object surface point, and an angle α between the viewpoint ray and a normal vector N equals a reflection angle α between the reflection ray and N, wherein the normal vector N originates from the object surface point; identifying a first intersection point between the reflection ray and the first map of the two or more maps; identifying a second intersection point between the reflection ray and the second map of the two or more maps; determining that the surface reflectivity value of the surface within the three-dimensional model is between the first surface reflectivity value and the second surface reflectivity value; and calculating the specular reflection of the surface based on the intersection points by interpolating between information stored at the first intersection point and information stored at the second intersection point. creating two or more maps of a plane within the three-dimensional model, wherein the two or more maps comprise: a representation of at least one light source within the three-dimensional model; creating a first attenuating gradient of specular intensity on a first map of the two or more maps, the first attenuating gradient being calculated based upon a first surface reflectivity value; and creating a second attenuating gradient of specular intensity on a second map of the two or more maps, the second attenuating gradient being calculated based upon a second surface reflectivity value, which is different from the first surface reflectivity value; casting a viewpoint ray to an object surface point, wherein the viewpoint ray comprises a ray extending from a user perspective within the three-dimensional model; casting a reflection ray of the viewpoint ray, wherein the reflection ray originates from the object surface point, and an angle α between the viewpoint ray and a normal vector N equals a reflection angle α between the reflection ray and N, wherein the normal vector N originates from the object surface point; identifying a first intersection point between the reflection ray and the first map of the two or more maps; identifying a second intersection point between the reflection ray and the second map of the two or more maps; determining that the surface reflectivity value of the surface within the three-dimensional model is between the first surface reflectivity value and the second surface reflectivity value; and calculating the specular reflection of the surface based on the intersection points by interpolating between information stored at the first intersection point and information stored at the second intersection point. <EOS>