1. An image processing apparatus, comprising: an obtaining unit configured to obtain a real image including a real object; a setting unit configured to set a virtual viewpoint, a virtual ray source, and a virtual screen in a virtual space; an arrangement unit configured to arrange the virtual space, an approximate virtual object which approximates a shape of the real object and a normal virtual object which does not correspond to any real objects, based on the set virtual viewpoint and the obtained real image; a generation unit configured to generate a ray from the virtual viewpoint to a ray source until the generated ray intersects with any virtual objects in the virtual space and generate a new ray from an intersection point at which the generated ray intersects with a virtual object if the generated ray intersects with the virtual object, in accordance with a ray tracing method; an intersection determination unit configured to determine whether an object type of a virtual object is an approximate virtual object or a normal virtual object if the ray intersects with the virtual object, and to determine an intersection order of object types for a plurality of virtual objects if the ray intersects with the plurality of virtual objects; and a pixel value determination unit configured to determine a pixel value of each pixel on the virtual screen based on the generated ray, a pixel value of a corresponding pixel position in the real image, and a result of determination by the intersection determination unit, wherein if the intersection determination unit determines that the generated ray intersects a normal virtual object and thereafter the generated ray intersects an approximate virtual object, the pixel value determination unit determines a pixel value of a pixel position at which the generated ray goes through the virtual screen based on a reflection or a refraction of the normal virtual object and a shadow of the approximate virtual object which casts on the normal virtual object, and wherein if the intersection determination unit determines that the generated ray intersects an approximate virtual object and thereafter the generated ray intersects a normal virtual object, the pixel value determination unit determines a pixel value of a pixel position at which the generated ray goes through the virtual screen based on a pixel value of a corresponding pixel position in the real image in consideration of a shadow or a reflection of the normal virtual object.