| Many applications require rendering glossy scenes fast and accurately. However, the directional, but non-specular, reflections of glossy materials make such task challenging, especially when computing inter-reflections between glossy materials. In this paper, we propose a new algorithm which is composed of bi-directional path clustering and virtual point lights hierarchy for efficient computing such inter-reflections and other global illumination effects in glossy scenes. The bi-directional path clustering algorithm will first cluster the light-paths which are traced from light sources and eye-paths which are traced from camera, and produce a set of sparse yet representative samples. Radiance and direction are computed and stored for sparse light-path samples while the values of radiance response function for sparse eye-path samples. Combing these values, we can compute the integration to produce the radiance for each pixel. The directional, but non-specular characteristics of glossy materials can be captured by this algorithm, but the directional lights which are produced by the former clustering step will introduce inaccuracy. To make the inaccuracy controllable and to further accelerate the rendering speed, we further propose a directional virtual point lights hierarchy. When traversing the hierarchy, we can always get the most reasonable directional virtual lights using pre error estimation and error metrics, that is, we can get a cut of the hierarchy. Using directional virtual point lights cut, we can get fairly satisfying results which prove that our algorithm is both applicable and efficient. |