Efficient Rendering of Glossy Reflection Using Graphics Hardware

Size: px
Start display at page:

Download "Efficient Rendering of Glossy Reflection Using Graphics Hardware"

Transcription

1 Efficient Rendering of Glossy Reflection Using Graphics Hardware Yoshinori Dobashi Yuki Yamada Tsuyoshi Yamamoto Hokkaido University Kita-ku Kita 14, Nishi 9, Sapporo , Japan Phone: , Fax: {doba, yamada, Abstract Recently, techniques for realistic image synthesis using computer graphics have been widely used in many applications. The reality of the computer-generated images can be greatly improved by taking into account the reflections observed in mirrors, cars, glass walls of a building, etc. Therefore, there has been extensive research into rendering these reflections. However, the computational cost associated with reflections is generally very high because of the complexity. On the other hand, recent advancements in graphics hardware have encouraged researchers to develop hardware-accelerated methods for realistic image synthesis. This paper proposes such a fast method for rendering reflections using graphics hardware. The proposed method can render not only the ideal specular reflection such as from a mirror but also the glossy reflections such as those from a metal surface. Keywords: Glossy Reflection, Efficient Rendering, Graphics Hardware. 1. Introduction The real-time rendering of realistic images has become one of the most important research fields in computer graphics. The intensities of virtual objects have to be calculated accurately by taking into account the reflectance property of the object in order to create realistic images. Rendering of specular reflections observed in surfaces of objects is important in order to enhance the reality of the image. Thus, there has been much research into the rendering of reflections. However, one of the problems is the high cost of computing the reflections, especially with glossy reflections. To address this problem, recent researchers have developed methods for rendering reflections using graphics hardware. The performance and the functionality of graphics hardware have been greatly improved in recent years. This has made it possible to create realistic images very quickly, including the specular reflections [11] [4] [7] [10] [15]. However, most of the previous methods have been limited to the reflections of objects far away from the specular object or the reflections of static objects. Therefore, these earlier methods are not suitable for the accurate rendering of reflections of dynamic objects close to the specular objects. Iwasaki et al. proposed a method to address this problem [8]. However, the method is limited to ideal specular reflections such as those from water surfaces. This paper addresses these problems and proposes a fast method for rendering both ideal specular and glossy reflections. The method realizes the efficient rendering of the reflections of dynamic objects that are close to the specular objects. In this method, the objects reflected in the specular objects are represented by a set of virtual planes. The part of the object between adjacent virtual planes is projected onto another virtual plane and the resulting image is stored as a slice texture. To display the reflected image from a specular object, the intersections between the virtual planes and the ray reflected from the specular object are calculated, instead of computing the intersections between the object and the reflected rays. The slice textures are then mapped onto the specular object using the intersection points as texture coordinates. The creation and the mapping of the slice textures are accelerated by graphics hardware. This realizes an efficient rendering of the reflections. The above idea has then been extended to the rendering of glossy reflections. The proposed method has the following advantages. - Efficient rendering of reflections of objects close to the specular object. - Efficient rendering of reflections of dynamic objects. - Efficient rendering of glossy reflections. The paper is organized as follows. In Section 2, the relationship between previous methods and the proposed method are discussed. In Section 3, the basic idea of the method is described. The details of the method are then explained in Sections 4 through 6. In Section 7, several examples are demonstrated and the usefulness of the method is discussed. Finally, Section 8 offers conclusions. 2. Related Work There are two representative approaches to rendering images of objects reflected in specular objects: a ray-tracing method [16] and an environmental texture mapping method [1]. The ray-tracing method is known to be one of the computationally expensive methods although it is able to calculate the reflections precisely by simulating the optical phenomena. Several researchers accelerate the ray-tracing method by making use of graphics hardware [12] [3]. However, these methods are not suitable for rendering complex scenes, due to the limitations in the current graphics hardware. Moreover, glossy reflections are not taken into account. On the other hand, the environmental texture mapping method can render reflections in real-time. However, the

2 resulting image is valid only when the object is at a sufficient distance from the reflective specular object. In addition, the environmental texture mapping method is basically applicable only to ideal specular reflection. Thus, many methods have been developed to address these problems. Heidrich et al. proposed a method using the idea of the light field for rendering reflections from both the ideal specular and the glossy surfaces [6]. However, this method requires a large amount of memory to store the light field. Hakura et al. proposed an extended version of the environment mapping techniques and succeeded in displaying local reflections [4] [5]. This method requires a sequence of environment maps that are pre-recorded over a selection of viewpoints by ray tracing. The method is efficient for static scenes but is not appropriate for scenes including dynamic objects. Iwasaki et al. addressed this problem and proposed a fast method for rendering ideal specular reflections [8]. However, their method is tailored to the rendering of water surfaces but the glossy reflections are not taken into account. In order to take the glossy reflections into account, several methods use pre-filtered environment maps based on the surface reflectance properties [9] [10] [7] [2]. Sloan et al. proposed precomputed radiance transfer functions for the efficient rendering of glossy surfaces [14] [15]. These methods can render the glossy surfaces in real-time, even if the viewpoint and the lighting environment are changed. However, since these methods extend the environmental texture mapping, the reflected objects must be sufficiently far from the reflective objects. Ofek et al. proposed a different approach for rendering reflections at interactive frame rates by using an explosion map [11]. However, the method is limited to ideal specular reflections. The method proposed in this paper is based on the method developed by Iwasaki et al [8]. The proposed method extends their method, not only to water surfaces but also to arbitrary objects, including glossy reflections. 3. Basic Idea Fig. 1 shows the basic concept of the proposed method. For simplicity, in the following, objects reflected in the specular objects are denoted as target objects. First, as shown in Fig. 1(a), multiple virtual planes (sample planes) are generated around the target object. The number of sample planes is determined adaptively by using the idea of LOD. When the distance between the specular object and the target object is long, the size of the reflected image in the specular object is expected to be small. In this case, the errors caused by using a small number of sample planes would not be perceived visually. If the target object is sufficiently far from the specular object, only a single sample plane is sufficient. This is equivalent to using the environmental texture mapping technique. Therefore the rendering time can be reduced by choosing an appropriate number of sample planes according to the distance from the specular object. Next, a virtual camera is placed in front of the sample planes. The part of the target object between adjacent sample planes is projected onto the screen of the virtual camera. Parallel projection is used for this process. The resulting image is stored as a texture. This texture is denoted as a slice texture. As shown in Fig. 1(b), the target object is represented by a set of slice textures. Next, the reflected rays of the viewing ray are calculated for each vertex of the specular object. As shown in Fig. 1(c), multiple reflection rays are generated according to the reflectance distribution at each vertex. We assume that each reflection ray represents a subtle

3 solid angle and the reflectance within the solid angle is constant. The intersections between the reflection rays and the sample planes are then calculated as shown in Fig. 1(c). The slice textures are mapped onto the specular object using the intersections as texture coordinates. Then, an intermediate image is generated by rendering the texture-mapped specular objects, viewed from the actual viewpoint. We call the intermediate image a reflection image. The reflection images are generated for all the reflected rays as shown in Fig. 1(c). The final image is created by accumulating all reflection images using the additive color blending functions of graphics hardware. In summary, the proposed method consists of the following three steps. 1. Generation of the sample planes using the idea of LOD. 2. Creation of the slice textures. 3. Rendering of reflections of the target object. In the following sections, the details of these processes are described. 4. Generation of Sample Planes The quality of the final image depends on the size, orientation, the number of sample planes. However, the rendering time is proportional to the number of sample planes. In this section, a method for determining the size and the orientation of the sample planes is proposed. An adaptive method for determining the number of sample planes is also proposed. The number of sample planes is chosen so that the quality of the resulting image is maintained. In the following, these methods are described with reference to Fig. 2. This figure shows a two-dimensional case for simplicity. 4.1 Size and Orientation of Sample Planes To determine the size and the orientation of the sample planes, a reference plane is generated as shown in Fig. 2. The reference plane is a square whose side is equal to the length of the diagonal line of the bounding box of the target object. The center of the reference plane is placed at the center of the bounding box. The orientation of the reference plane is perpendicular to a line connecting the center of the bounding box of the target object and the center of the bounding box of the specular object. We use the size of the reference plane as the size of the sample planes. The orientation of the sample planes is determined as follows. First, polygons, visible from the viewpoint, are extracted from the polygons consisting of the specular object. Next, an ideal specular reflection ray is calculated for each vertex of the visible polygons. Next, the vertices at which the reflection rays intersect the reference plane are extracted from the vertices of the visible polygons. Then, an average position, O, of the vertices and an average reflection ray, R, at the vertices are calculated. The orientation of the sample plane is set to be perpendicular to the average reflection ray, R, (see Fig. sample plane target object reference plane l 1 d 2 O d 1 specular object Figure 2:Generation of sample planes. 2). Using this method, the sample planes are almost perpendicular to as many reflected rays as possible. 4.2 Position and Number of Sample Planes Amongst the vertices of the bounding box of the target object, the nearest and the farthest vertices from the average position, O, are extracted to determine the positions of the sample planes. The sample planes are generated between these vertices. The center of each sample plane is placed on a line that is parallel to R and passes through the center of the bounding box of the target object. Intervals between the sample planes are determined adaptively according to the distance from the specular object. In our method, the reflection of the target object is computed approximately by using the sample planes. When the distance between the target object and the specular object is short, the approximation error becomes large, unless many sample planes are used. On the contrary, when the distance is long, the error is small even if the number of sample planes is small. Moreover, when the distance from the viewpoint to the specular object is long, the error is less perceptible since the reflected image of the target object occupies a small region on the screen. Based on this fact, we determine the intervals between sample planes so that the following equation is satisfied. di ε (i = 1,, n), (1) l v + l i where, as shown in Fig. 2, l v is the distance between the viewpoint and O, l i is the distance between ith sample plane and O, and d i is the interval between sample planes i and i+1. n is the number of the sample planes. As shown in Fig. 2, using the distance between the nearest vertex of the bounding box and O as l 1, l i and d i for i = 2,, n are determined by using the following equations. li = li 1 + di 1 di 1 = ε ( lv + li 1 ) (i = 2,, n), (2) where the number of the sample planes n is chosen so that l n exceeds the distance between the farthest vertex of the bounding box and O. R l v viewpoint

4 target object parallel projection α =1 Q j h sample plane j normal of sample plane j θ Δφ viewpoint virtual camera sample plane RGB components (a) Rendering part of target object. Figure 3:Creation of slice texture. 5. Creation of Slice Texture The slice texture for each sample plane is created by generating images of part of the target object between adjacent sample planes. To do this, a virtual camera is placed in front of the sample plane as shown in Fig. 3(a). The reference point is at the center of the sample plane. The viewing direction is the normal of the sample plane and the parallel projection is specified. The adjacent sample planes are used as a near and a far clipping planes. Then, a part of the target object is rendered. As shown in Fig. 3(b), the alpha component of the pixels corresponding to the part of the target object is set to zero. The alpha component of the other pixels is set to one. The resulting image forms the slice texture. The alpha component is used for determining the visible part of the target object when viewed from the specular object (see Section 6). Finally, the slice texture is stored after constructing a Mip-Map structure [17]. 6. Rendering Reflection A viewing ray is generated for each vertex of the specular object. Next, multiple reflection rays are generated at each vertex (see Fig. 1(c)). The number of the reflection rays, m, is determined according to the reflectance distribution at the vertex. We assume that each reflection ray represents subtle solid angle, Δφ, specified by the user. Within this solid angle, the reflectance is assumed to be constant. Next, the intersection between the reflection ray and the sample plane is calculated. Using this intersection as the texture coordinate, the slice texture is mapped onto the specular object. In this mapping process, an appropriate level in the Mip-Map structure is selected according to the distance from the intersection to the vertex of the specular object. Then, the specular object is rendered and the resulting image is stored as a reflection image. m reflection images are created, corresponding to m reflection rays. The final image is created by blending all these reflection images. In the following, the Mip-Map level selection and the creation of the reflection image are described in detail. 6.1 Mip-Map Level Selection Consider reflection ray, r i (i = 1,, m), at vertex P as shown in Fig. 4. The intersection point between ray, r i, and sample plane, j, is Q j and the distance from P to Q j is s j. As mentioned previously, ray r i represents a beam α =0 α component (b) RGB and α components of slice texture. Figure 4: Mip-Map level selection. with solid angle Δφ (see Fig. 4). The Mip-Map level is selected, based on the intersection area ΔA of the beam with the sample plane. ΔA is approximately calculated by the following equation. 2 2 πh π ( s j tan( Δφ / 2)) ΔA =, (3) cosθ cosθ where h is the radius of an intersection circle between the beam and a plane perpendicular to ray r i, and θ is the angle between ray r i and the normal vector of sample plane j (see Fig. 4). We choose the Mip-Map level so that an area corresponding to a single pixel is nearly the same as ΔA. This makes it possible to approximately compute the average color of the target object within the beam. 6.2 Creation of Reflection Image Let us assume the distances of the sample planes from the center of the specular object increase in the order i = 1, 2,, n. First, the intersection, Q n, between ray r i and the farthest sample plane n is calculated. The slice texture of sample plane n is mapped onto the specular object so that Q n maps to P. Then the texture-mapped specular object is rendered. Similarly, the slice texture of sample plane n-1 is mapped onto the specular object. Again, the specular object is rendered. But in this case, the colors in the frame buffer are multiplied by the alpha components of the slice texture. This process removes the invisible part of the target object from the specular object, since the alpha components of the texels corresponding to the target object are set to 0. These processes are repeated for all sample planes. The resulting image is then the reflection image for r i. 7. Results s j P specular object This section shows several examples to demonstrate the usefulness of our method. We use a desktop PC with Pentium GHz and ATI RADEON X800. In the following examples, the size of images is 512x512 and the size of the slice textures is 256x256. The solid angle, Δφ, represented by each reflection ray is set to 0.1 degrees. Table 1 shows the rendering time and the number of sample planes. Fig. 5 shows examples of the glossy reflections. The car is the glossy reflective object. We use the Phong reflection model [13]. Figs. 5(a) and 5(b) shows the images from different viewpoints. As shown in these figures, the occlusions in the reflected image in the car are computed accurately. The average numbers of r i

5 reflection rays for these images are 18. The numbers of the samples planes ranged from 2 to 7. To verify our method, we calculated a difference image between Fig. 5(b) and an image generated by using a sufficient number of sample planes. The sufficient number of sample planes is determined experimentally and in this case 20 sample planes are used. Fig. 5(c) shows the resulting difference image. In this image, the 100 % indicates the difference in intensity is 255. As shown in this image, our method can render the glossy reflection accurately. The rendering time for Figs. 5(a) and 5(b) are 0.9 and 2.5, respectively. Next, Fig. 6 shows glossy reflections in various situations. In Fig. 6(a), multiple target objects are reflected in the side face of the toaster. Fig. 6(c) shows the reflection of a soccer ball on the glossy reflective box. In Figs. 6(b) and (c), not only the reflection of surrounding objects but also the reflection of the reflective object itself are rendered. Fig. 6(d) shows reflections of dynamic objects. The airplane and the buggy on the desk move. Even when the objects move, the glossy reflections are rendered accurately and efficiently. The rendering times for these images are less than 0.2seconds. This implies that our method can create realistic glossy reflections almost in real-time. 8. Conclusion We have proposed an efficient method for rendering reflections using graphics hardware. In the method, an object is represented approximately by using sample planes and slice textures. The number of sample planes is determined adaptively to speed up the computation. The idea of the Mip-Map texture is utilized to increase the accuracy of the intensity calculation. The image of the reflection of the object is created by mapping the slice textures onto specular objects. There are several outstanding items to be addressed in the future. First, in our current implementation, the reflection rays are calculated at only the vertices of the specular object. Therefore, the accuracy of the final image depends on the number of polygons in the specular objects. The solution to this problem is to use a pixel shader to compute the reflections on a pixel by pixel basis. Next, when there are multiple specular objects, we must take multiple reflections into account. Our method can be extended to multiple reflections by considering the reflections in the creation of the slice textures. However, this will increase the computation time. Therefore, a further acceleration method must be developed to take multiple reflections into account. References [1] J. Blinn, M. Newell, Texture and Reflection in Computer Generated Images, Communications of the ACM, Vol. 19, No. 10, pp (1976). [2] B. Cabral, M. Olano, P. Memec, Reflection Space Image Based Rendering, Proc. SIGGRAPH 99, pp (1999). [3] N. A. Carr, J. D. Hall, J. C. Hart, The Ray Engine, Proc. Graphics Hardware 2002, pp (2002). [4] Z. S. Hakura, J. M. Snyder, Realistic Reflections and Refractions on Graphics Hardware with Hybrid Rendering and Layered Environment Maps, Proc. Eurographics Workshop on Rendering 2000, pp (2000). [5] Z. S. Hakura, J. M. Snyder, J. E. Lengyel, Parameterized Environment Maps, Proc. Symposium on Interactive 3D Graphics 2001, pp (2001). [6] W. Heidrich, H. Lensch, M. F. Cohen, H. P. Seidel, Light Field Techniques for Reflections and Refractions, Proc. Eurographics Workshop on Rendering 1999, pp (1999). [7] W. Heidrich, H. Lensch, M. F. Cohen, H. P. Seidel, Realistic, Hardware-accelerated Shading and Lighting, Proc. SIGGRAPH 99, pp (1999). [8] K. Iwasaki, Y. Dobashi, T. Nishita, A Fast Rendering Method for Refractive and Reflective Caustics due to Water Surfaces, Computer Graphics Forum (Proc. EUROGRAPHICS 2002), Vol. 23, No. 3, pp (2003). [9] J. Kautz, M. D. McCook, Approximation of Glossy Reflection with Prefiltered Environment Maps, Proc. Graphics Interface 2000, pp (2000). [10] J. Kautz, P. P. Vazquez, W. Heidrich, H. P. Seidel, A Unified Approach to Prefiltered Environment Maps, Proc. Eurographics Workshop on Rendering 2000, pp (2000). [11] E. Ofek, A. Rappoport, Interactive Reflections on Curved Objects, Proc. SIGGRAPH 98, pp (1998). [12] T. J. Percell, I. Buck, W. R. Mark, P. Hanrahan, Ray Tracing on Programmable Graphics Hardware, ACM Trans. on Graphics (Proc. SIGGRAPH 2002), Vol. 21, No. 3, pp (2002). [13] B. T. Phong, Illumination for Computer Generated Images, Communications of the ACM, Vol. 18, No. 6, pp (1975). [14] P. P. Sloan, J. Kautz, J. Snyder, Precomputed Radiance Transfer for Real-time Rendering in Dynamic, Low-frequency Lighting Environments, ACM Trans. on Graphics (Proc. SIGGRAPH 2002), Vol. 21, No. 3, pp (2002). [15] P. P. Sloan, J. Hart, J. Snyder, Clustered Principal Components for Precomputed Radiance Transfer, ACM Trans. on Graphics (Proc. SIGGRAPH 2003), Vol. 22, No. 3, pp (2003). [16] T. Whitted, An Improved Illumination Model for Shaded Display, Communications of the ACM, Vol. 23, No. 6, pp (1980). [17] L. Williams, Pyramidal Parametrics, Computer Graphics, Vol. 17, No. 3, pp (1983).

6 10 [%] 5 0 (a) (b) (c) Figure 5: Rendering of glossy specular reflections. There are three objects and the car is glossy reflective object. In (a) and (b), the number of sample planes are determined adaptively depending on the distance from the car center and the viewpoint. (c) shows a difference image between Fig. (b) and an image generated by using 20 sample planes. (a) Reflections in a toaster (b) Reflections in a pot (c) Reflection in a toy box (d) Reflections in a dynamic scene. Figure6:Glossy specular reflections in various situations.

Ray tracing based fast refraction method for an object seen through a cylindrical glass

Ray tracing based fast refraction method for an object seen through a cylindrical glass 20th International Congress on Modelling and Simulation, Adelaide, Australia, 1 6 December 2013 www.mssanz.org.au/modsim2013 Ray tracing based fast refraction method for an object seen through a cylindrical

More information

A Method for Fast Rendering of Caustics from Refraction by Transparent Objects

A Method for Fast Rendering of Caustics from Refraction by Transparent Objects 904 IEICE TRANS. INF. & SYST., VOL.E88 D, NO.5 MAY 2005 PAPER Special Section on Cyberworlds A Method for Fast Rendering of Caustics from Refraction by Transparent Objects Kei IWASAKI a), Nonmember, Fujiichi

More information

CENG 477 Introduction to Computer Graphics. Ray Tracing: Shading

CENG 477 Introduction to Computer Graphics. Ray Tracing: Shading CENG 477 Introduction to Computer Graphics Ray Tracing: Shading Last Week Until now we learned: How to create the primary rays from the given camera and image plane parameters How to intersect these rays

More information

Homework #2. Shading, Ray Tracing, and Texture Mapping

Homework #2. Shading, Ray Tracing, and Texture Mapping Computer Graphics Prof. Brian Curless CSE 457 Spring 2000 Homework #2 Shading, Ray Tracing, and Texture Mapping Prepared by: Doug Johnson, Maya Widyasari, and Brian Curless Assigned: Monday, May 8, 2000

More information

Photorealism: Ray Tracing

Photorealism: Ray Tracing Photorealism: Ray Tracing Reading Assignment: Chapter 13 Local vs. Global Illumination Local Illumination depends on local object and light sources only Global Illumination at a point can depend on any

More information

Computer Graphics. Lecture 13. Global Illumination 1: Ray Tracing and Radiosity. Taku Komura

Computer Graphics. Lecture 13. Global Illumination 1: Ray Tracing and Radiosity. Taku Komura Computer Graphics Lecture 13 Global Illumination 1: Ray Tracing and Radiosity Taku Komura 1 Rendering techniques Can be classified as Local Illumination techniques Global Illumination techniques Local

More information

COMP environment mapping Mar. 12, r = 2n(n v) v

COMP environment mapping Mar. 12, r = 2n(n v) v Rendering mirror surfaces The next texture mapping method assumes we have a mirror surface, or at least a reflectance function that contains a mirror component. Examples might be a car window or hood,

More information

Lets assume each object has a defined colour. Hence our illumination model is looks unrealistic.

Lets assume each object has a defined colour. Hence our illumination model is looks unrealistic. Shading Models There are two main types of rendering that we cover, polygon rendering ray tracing Polygon rendering is used to apply illumination models to polygons, whereas ray tracing applies to arbitrary

More information

Complex Shading Algorithms

Complex Shading Algorithms Complex Shading Algorithms CPSC 414 Overview So far Rendering Pipeline including recent developments Today Shading algorithms based on the Rendering Pipeline Arbitrary reflection models (BRDFs) Bump mapping

More information

Light Field Techniques for Reflections and Refractions

Light Field Techniques for Reflections and Refractions Light Field Techniques for Reflections and Refractions Wolfgang Heidrich, Hendrik Lensch, Michael F. Cohen, Hans-Peter Seidel Max-Planck-Institute for Computer Science {heidrich,lensch,seidel}@mpi-sb.mpg.de

More information

Complex Features on a Surface. CITS4241 Visualisation Lectures 22 & 23. Texture mapping techniques. Texture mapping techniques

Complex Features on a Surface. CITS4241 Visualisation Lectures 22 & 23. Texture mapping techniques. Texture mapping techniques Complex Features on a Surface CITS4241 Visualisation Lectures 22 & 23 Texture Mapping Rendering all surfaces as blocks of colour Not very realistic result! Even with shading Many objects have detailed

More information

Computer Graphics. Lecture 10. Global Illumination 1: Ray Tracing and Radiosity. Taku Komura 12/03/15

Computer Graphics. Lecture 10. Global Illumination 1: Ray Tracing and Radiosity. Taku Komura 12/03/15 Computer Graphics Lecture 10 Global Illumination 1: Ray Tracing and Radiosity Taku Komura 1 Rendering techniques Can be classified as Local Illumination techniques Global Illumination techniques Local

More information

Image Based Lighting with Near Light Sources

Image Based Lighting with Near Light Sources Image Based Lighting with Near Light Sources Shiho Furuya, Takayuki Itoh Graduate School of Humanitics and Sciences, Ochanomizu University E-mail: {shiho, itot}@itolab.is.ocha.ac.jp Abstract Recent some

More information

Image Based Lighting with Near Light Sources

Image Based Lighting with Near Light Sources Image Based Lighting with Near Light Sources Shiho Furuya, Takayuki Itoh Graduate School of Humanitics and Sciences, Ochanomizu University E-mail: {shiho, itot}@itolab.is.ocha.ac.jp Abstract Recent some

More information

Real-time Rendering of Soap Bubbles Taking into Account Light Interference

Real-time Rendering of Soap Bubbles Taking into Account Light Interference Real-time Rendering of Soap Bubbles Taking into Account Light Interference Kei Iwasaki Keichi Matsuzawa Tomoyuki Nishita The University of Tokyo 7-3-1 Hongo, Bunkyo-ku, Tokyo, Japan Phone: +81.3.5841.4096

More information

Local Illumination. CMPT 361 Introduction to Computer Graphics Torsten Möller. Machiraju/Zhang/Möller

Local Illumination. CMPT 361 Introduction to Computer Graphics Torsten Möller. Machiraju/Zhang/Möller Local Illumination CMPT 361 Introduction to Computer Graphics Torsten Möller Graphics Pipeline Hardware Modelling Transform Visibility Illumination + Shading Perception, Interaction Color Texture/ Realism

More information

An Efficient Method for Rendering Underwater Optical Effects Using Graphics Hardware

An Efficient Method for Rendering Underwater Optical Effects Using Graphics Hardware Volume xx (2y), Number z, pp. 1 11 An Efficient Method for Rendering Underwater Optical Effects Using Graphics Hardware Kei Iwasaki, Yoshinori Dobashi and Tomoyuki Nishita Department of Complexity Science

More information

An Efficient Method for Rendering Underwater Optical Effects Using Graphics Hardware

An Efficient Method for Rendering Underwater Optical Effects Using Graphics Hardware Volume 21 (22), number 4 pp. 71 711 COMPUTER GRAPHICS forum An Efficient Method for Rendering Underwater Optical Effects Using Graphics Hardware Kei Iwasaki 1, Yoshinori Dobashi 2 and Tomoyuki Nishita

More information

CPSC / Texture Mapping

CPSC / Texture Mapping CPSC 599.64 / 601.64 Introduction and Motivation so far: detail through polygons & materials example: brick wall problem: many polygons & materials needed for detailed structures inefficient for memory

More information

Interactive Shadowed Caustics Using Hierarchical Light Volumes

Interactive Shadowed Caustics Using Hierarchical Light Volumes Interactive Shadowed Caustics Using Hierarchical Light Volumes Josh Barczak * Marc Olano* University of Maryland Baltimore County Figure 1. Three examples of refractive caustics and shadows, rendered using

More information

Synthesis of Textures with Intricate Geometries using BTF and Large Number of Textured Micropolygons. Abstract. 2. Related studies. 1.

Synthesis of Textures with Intricate Geometries using BTF and Large Number of Textured Micropolygons. Abstract. 2. Related studies. 1. Synthesis of Textures with Intricate Geometries using BTF and Large Number of Textured Micropolygons sub047 Abstract BTF has been studied extensively and much progress has been done for measurements, compression

More information

COMP 4801 Final Year Project. Ray Tracing for Computer Graphics. Final Project Report FYP Runjing Liu. Advised by. Dr. L.Y.

COMP 4801 Final Year Project. Ray Tracing for Computer Graphics. Final Project Report FYP Runjing Liu. Advised by. Dr. L.Y. COMP 4801 Final Year Project Ray Tracing for Computer Graphics Final Project Report FYP 15014 by Runjing Liu Advised by Dr. L.Y. Wei 1 Abstract The goal of this project was to use ray tracing in a rendering

More information

INFOGR Computer Graphics. J. Bikker - April-July Lecture 10: Ground Truth. Welcome!

INFOGR Computer Graphics. J. Bikker - April-July Lecture 10: Ground Truth. Welcome! INFOGR Computer Graphics J. Bikker - April-July 2015 - Lecture 10: Ground Truth Welcome! Today s Agenda: Limitations of Whitted-style Ray Tracing Monte Carlo Path Tracing INFOGR Lecture 10 Ground Truth

More information

ECS 175 COMPUTER GRAPHICS. Ken Joy.! Winter 2014

ECS 175 COMPUTER GRAPHICS. Ken Joy.! Winter 2014 ECS 175 COMPUTER GRAPHICS Ken Joy Winter 2014 Shading To be able to model shading, we simplify Uniform Media no scattering of light Opaque Objects No Interreflection Point Light Sources RGB Color (eliminating

More information

Introduction to Visualization and Computer Graphics

Introduction to Visualization and Computer Graphics Introduction to Visualization and Computer Graphics DH2320, Fall 2015 Prof. Dr. Tino Weinkauf Introduction to Visualization and Computer Graphics Visibility Shading 3D Rendering Geometric Model Color Perspective

More information

CS559 Computer Graphics Fall 2015

CS559 Computer Graphics Fall 2015 CS559 Computer Graphics Fall 2015 Practice Final Exam Time: 2 hrs 1. [XX Y Y % = ZZ%] MULTIPLE CHOICE SECTION. Circle or underline the correct answer (or answers). You do not need to provide a justification

More information

Accelerated Ambient Occlusion Using Spatial Subdivision Structures

Accelerated Ambient Occlusion Using Spatial Subdivision Structures Abstract Ambient Occlusion is a relatively new method that gives global illumination like results. This paper presents a method to accelerate ambient occlusion using the form factor method in Bunnel [2005]

More information

Distributed Ray Tracing

Distributed Ray Tracing CT5510: Computer Graphics Distributed Ray Tracing BOCHANG MOON Distributed Ray Tracing Motivation The classical ray tracing produces very clean images (look fake) Perfect focus Perfect reflections Sharp

More information

Computer Graphics. Lecture 9 Environment mapping, Mirroring

Computer Graphics. Lecture 9 Environment mapping, Mirroring Computer Graphics Lecture 9 Environment mapping, Mirroring Today Environment Mapping Introduction Cubic mapping Sphere mapping refractive mapping Mirroring Introduction reflection first stencil buffer

More information

Recollection. Models Pixels. Model transformation Viewport transformation Clipping Rasterization Texturing + Lights & shadows

Recollection. Models Pixels. Model transformation Viewport transformation Clipping Rasterization Texturing + Lights & shadows Recollection Models Pixels Model transformation Viewport transformation Clipping Rasterization Texturing + Lights & shadows Can be computed in different stages 1 So far we came to Geometry model 3 Surface

More information

Chapter 1 Introduction. Marc Olano

Chapter 1 Introduction. Marc Olano Chapter 1 Introduction Marc Olano 1 About This Course Or, why do we want to do real-time shading, and why offer a course on it? Over the years of graphics hardware development, there have been obvious

More information

Global Illumination. CMPT 361 Introduction to Computer Graphics Torsten Möller. Machiraju/Zhang/Möller

Global Illumination. CMPT 361 Introduction to Computer Graphics Torsten Möller. Machiraju/Zhang/Möller Global Illumination CMPT 361 Introduction to Computer Graphics Torsten Möller Reading Foley, van Dam (better): Chapter 16.7-13 Angel: Chapter 5.11, 11.1-11.5 2 Limitation of local illumination A concrete

More information

Ray tracing. Computer Graphics COMP 770 (236) Spring Instructor: Brandon Lloyd 3/19/07 1

Ray tracing. Computer Graphics COMP 770 (236) Spring Instructor: Brandon Lloyd 3/19/07 1 Ray tracing Computer Graphics COMP 770 (236) Spring 2007 Instructor: Brandon Lloyd 3/19/07 1 From last time Hidden surface removal Painter s algorithm Clipping algorithms Area subdivision BSP trees Z-Buffer

More information

CSE528 Computer Graphics: Theory, Algorithms, and Applications

CSE528 Computer Graphics: Theory, Algorithms, and Applications CSE528 Computer Graphics: Theory, Algorithms, and Applications Hong Qin State University of New York at Stony Brook (Stony Brook University) Stony Brook, New York 11794--4400 Tel: (631)632-8450; Fax: (631)632-8334

More information

GPU-based rendering of point-sampled water surfaces

GPU-based rendering of point-sampled water surfaces The Visual Computer manuscript No. (will be inserted by the editor) Kei Iwasaki Yoshinori Dobashi Fujiichi Yoshimoto Tomoyuki Nishita GPU-based rendering of point-sampled water surfaces Abstract Particle-based

More information

Practical Shadow Mapping

Practical Shadow Mapping Practical Shadow Mapping Stefan Brabec Thomas Annen Hans-Peter Seidel Max-Planck-Institut für Informatik Saarbrücken, Germany Abstract In this paper we propose several methods that can greatly improve

More information

Introduction Rasterization Z-buffering Shading. Graphics 2012/2013, 4th quarter. Lecture 09: graphics pipeline (rasterization and shading)

Introduction Rasterization Z-buffering Shading. Graphics 2012/2013, 4th quarter. Lecture 09: graphics pipeline (rasterization and shading) Lecture 9 Graphics pipeline (rasterization and shading) Graphics pipeline - part 1 (recap) Perspective projection by matrix multiplication: x pixel y pixel z canonical 1 x = M vpm per M cam y z 1 This

More information

So far, we have considered only local models of illumination; they only account for incident light coming directly from the light sources.

So far, we have considered only local models of illumination; they only account for incident light coming directly from the light sources. 11 11.1 Basics So far, we have considered only local models of illumination; they only account for incident light coming directly from the light sources. Global models include incident light that arrives

More information

Deferred Rendering Due: Wednesday November 15 at 10pm

Deferred Rendering Due: Wednesday November 15 at 10pm CMSC 23700 Autumn 2017 Introduction to Computer Graphics Project 4 November 2, 2017 Deferred Rendering Due: Wednesday November 15 at 10pm 1 Summary This assignment uses the same application architecture

More information

Computer Graphics. Lecture 14 Bump-mapping, Global Illumination (1)

Computer Graphics. Lecture 14 Bump-mapping, Global Illumination (1) Computer Graphics Lecture 14 Bump-mapping, Global Illumination (1) Today - Bump mapping - Displacement mapping - Global Illumination Radiosity Bump Mapping - A method to increase the realism of 3D objects

More information

Lighting. To do. Course Outline. This Lecture. Continue to work on ray programming assignment Start thinking about final project

Lighting. To do. Course Outline. This Lecture. Continue to work on ray programming assignment Start thinking about final project To do Continue to work on ray programming assignment Start thinking about final project Lighting Course Outline 3D Graphics Pipeline Modeling (Creating 3D Geometry) Mesh; modeling; sampling; Interaction

More information

CMSC427 Advanced shading getting global illumination by local methods. Credit: slides Prof. Zwicker

CMSC427 Advanced shading getting global illumination by local methods. Credit: slides Prof. Zwicker CMSC427 Advanced shading getting global illumination by local methods Credit: slides Prof. Zwicker Topics Shadows Environment maps Reflection mapping Irradiance environment maps Ambient occlusion Reflection

More information

Lecture 17: Recursive Ray Tracing. Where is the way where light dwelleth? Job 38:19

Lecture 17: Recursive Ray Tracing. Where is the way where light dwelleth? Job 38:19 Lecture 17: Recursive Ray Tracing Where is the way where light dwelleth? Job 38:19 1. Raster Graphics Typical graphics terminals today are raster displays. A raster display renders a picture scan line

More information

CS 130 Final. Fall 2015

CS 130 Final. Fall 2015 CS 130 Final Fall 2015 Name Student ID Signature You may not ask any questions during the test. If you believe that there is something wrong with a question, write down what you think the question is trying

More information

Introduction Ray tracing basics Advanced topics (shading) Advanced topics (geometry) Graphics 2010/2011, 4th quarter. Lecture 11: Ray tracing

Introduction Ray tracing basics Advanced topics (shading) Advanced topics (geometry) Graphics 2010/2011, 4th quarter. Lecture 11: Ray tracing Lecture 11 Ray tracing Introduction Projection vs. ray tracing Projection Ray tracing Rendering Projection vs. ray tracing Projection Ray tracing Basic methods for image generation Major areas of computer

More information

Ray Tracing: Special Topics CSCI 4239/5239 Advanced Computer Graphics Spring 2018

Ray Tracing: Special Topics CSCI 4239/5239 Advanced Computer Graphics Spring 2018 Ray Tracing: Special Topics CSCI 4239/5239 Advanced Computer Graphics Spring 2018 Theoretical foundations Ray Tracing from the Ground Up Chapters 13-15 Bidirectional Reflectance Distribution Function BRDF

More information

Occlusion Detection of Real Objects using Contour Based Stereo Matching

Occlusion Detection of Real Objects using Contour Based Stereo Matching Occlusion Detection of Real Objects using Contour Based Stereo Matching Kenichi Hayashi, Hirokazu Kato, Shogo Nishida Graduate School of Engineering Science, Osaka University,1-3 Machikaneyama-cho, Toyonaka,

More information

Topic 12: Texture Mapping. Motivation Sources of texture Texture coordinates Bump mapping, mip-mapping & env mapping

Topic 12: Texture Mapping. Motivation Sources of texture Texture coordinates Bump mapping, mip-mapping & env mapping Topic 12: Texture Mapping Motivation Sources of texture Texture coordinates Bump mapping, mip-mapping & env mapping Texture sources: Photographs Texture sources: Procedural Texture sources: Solid textures

More information

Lecture 11: Ray tracing (cont.)

Lecture 11: Ray tracing (cont.) Interactive Computer Graphics Ray tracing - Summary Lecture 11: Ray tracing (cont.) Graphics Lecture 10: Slide 1 Some slides adopted from H. Pfister, Harvard Graphics Lecture 10: Slide 2 Ray tracing -

More information

6. Illumination, Lighting

6. Illumination, Lighting Jorg s Graphics Lecture Notes 6. Illumination, Lighting 1 6. Illumination, Lighting No ray tracing in OpenGL! ray tracing: direct paths COP interreflection: soft shadows, color bleeding. umbra, penumbra,

More information

CMSC427 Shading Intro. Credit: slides from Dr. Zwicker

CMSC427 Shading Intro. Credit: slides from Dr. Zwicker CMSC427 Shading Intro Credit: slides from Dr. Zwicker 2 Today Shading Introduction Radiometry & BRDFs Local shading models Light sources Shading strategies Shading Compute interaction of light with surfaces

More information

Global Illumination. COMP 575/770 Spring 2013

Global Illumination. COMP 575/770 Spring 2013 Global Illumination COMP 575/770 Spring 2013 Final Exam and Projects COMP 575 Final Exam Friday, May 3 4:00 pm COMP 770 (and 575 extra credit) Projects Final report due by end of day, May 1 Presentations:

More information

Topic 11: Texture Mapping 11/13/2017. Texture sources: Solid textures. Texture sources: Synthesized

Topic 11: Texture Mapping 11/13/2017. Texture sources: Solid textures. Texture sources: Synthesized Topic 11: Texture Mapping Motivation Sources of texture Texture coordinates Bump mapping, mip mapping & env mapping Texture sources: Photographs Texture sources: Procedural Texture sources: Solid textures

More information

Ray Tracing. CS334 Fall Daniel G. Aliaga Department of Computer Science Purdue University

Ray Tracing. CS334 Fall Daniel G. Aliaga Department of Computer Science Purdue University Ray Tracing CS334 Fall 2013 Daniel G. Aliaga Department of Computer Science Purdue University Ray Casting and Ray Tracing Ray Casting Arthur Appel, started around 1968 Ray Tracing Turner Whitted, started

More information

4.5 VISIBLE SURFACE DETECTION METHODES

4.5 VISIBLE SURFACE DETECTION METHODES 4.5 VISIBLE SURFACE DETECTION METHODES A major consideration in the generation of realistic graphics displays is identifying those parts of a scene that are visible from a chosen viewing position. There

More information

Global Illumination with Glossy Surfaces

Global Illumination with Glossy Surfaces Global Illumination with Glossy Surfaces Wolfgang Stürzlinger GUP, Johannes Kepler Universität, Altenbergerstr.69, A-4040 Linz, Austria/Europe wrzl@gup.uni-linz.ac.at Abstract Photorealistic rendering

More information

Computer Graphics and GPGPU Programming

Computer Graphics and GPGPU Programming Computer Graphics and GPGPU Programming Donato D Ambrosio Department of Mathematics and Computer Science and Center of Excellence for High Performace Computing Cubo 22B, University of Calabria, Rende 87036,

More information

Lecture 10: Ray tracing

Lecture 10: Ray tracing Interactive Computer Graphics Lecture 10: Ray tracing Graphics Lecture 10: Slide 1 Some slides adopted from H. Pfister, Harvard Graphics Lecture 10: Slide 2 Direct and Global Illumination Direct illumination:

More information

Ray Tracing. Kjetil Babington

Ray Tracing. Kjetil Babington Ray Tracing Kjetil Babington 21.10.2011 1 Introduction What is Ray Tracing? Act of tracing a ray through some scene Not necessarily for rendering Rendering with Ray Tracing Ray Tracing is a global illumination

More information

Topic 11: Texture Mapping 10/21/2015. Photographs. Solid textures. Procedural

Topic 11: Texture Mapping 10/21/2015. Photographs. Solid textures. Procedural Topic 11: Texture Mapping Motivation Sources of texture Texture coordinates Bump mapping, mip mapping & env mapping Topic 11: Photographs Texture Mapping Motivation Sources of texture Texture coordinates

More information

Precomputed Radiance Transfer with Spatially-Varying Lighting Effects

Precomputed Radiance Transfer with Spatially-Varying Lighting Effects Precomputed Radiance Transfer with Spatially-Varying Lighting Effects Masahiro Fujita Keio University SFC Graduate School of Media and Governance syoyo@sfc.keio.ac.jp Takashi Kanai Keio University SFC

More information

Texture. Detail Representation

Texture. Detail Representation Page 1 Texture Procedural shading and texturing Applied and projected textures Material / light properties Shadow maps Spherical and higher order textures Spherical mappings Environment and irradiance

More information

Volume Rendering. Computer Animation and Visualisation Lecture 9. Taku Komura. Institute for Perception, Action & Behaviour School of Informatics

Volume Rendering. Computer Animation and Visualisation Lecture 9. Taku Komura. Institute for Perception, Action & Behaviour School of Informatics Volume Rendering Computer Animation and Visualisation Lecture 9 Taku Komura Institute for Perception, Action & Behaviour School of Informatics Volume Rendering 1 Volume Data Usually, a data uniformly distributed

More information

Lecture 15: Shading-I. CITS3003 Graphics & Animation

Lecture 15: Shading-I. CITS3003 Graphics & Animation Lecture 15: Shading-I CITS3003 Graphics & Animation E. Angel and D. Shreiner: Interactive Computer Graphics 6E Addison-Wesley 2012 Objectives Learn that with appropriate shading so objects appear as threedimensional

More information

Topics and things to know about them:

Topics and things to know about them: Practice Final CMSC 427 Distributed Tuesday, December 11, 2007 Review Session, Monday, December 17, 5:00pm, 4424 AV Williams Final: 10:30 AM Wednesday, December 19, 2007 General Guidelines: The final will

More information

Comp 410/510 Computer Graphics. Spring Shading

Comp 410/510 Computer Graphics. Spring Shading Comp 410/510 Computer Graphics Spring 2017 Shading Why we need shading Suppose we build a model of a sphere using many polygons and then color it using a fixed color. We get something like But we rather

More information

Orthogonal Projection Matrices. Angel and Shreiner: Interactive Computer Graphics 7E Addison-Wesley 2015

Orthogonal Projection Matrices. Angel and Shreiner: Interactive Computer Graphics 7E Addison-Wesley 2015 Orthogonal Projection Matrices 1 Objectives Derive the projection matrices used for standard orthogonal projections Introduce oblique projections Introduce projection normalization 2 Normalization Rather

More information

Reading. 18. Projections and Z-buffers. Required: Watt, Section , 6.3, 6.6 (esp. intro and subsections 1, 4, and 8 10), Further reading:

Reading. 18. Projections and Z-buffers. Required: Watt, Section , 6.3, 6.6 (esp. intro and subsections 1, 4, and 8 10), Further reading: Reading Required: Watt, Section 5.2.2 5.2.4, 6.3, 6.6 (esp. intro and subsections 1, 4, and 8 10), Further reading: 18. Projections and Z-buffers Foley, et al, Chapter 5.6 and Chapter 6 David F. Rogers

More information

Texture. Texture Maps

Texture. Texture Maps Texture Texture maps! Surface color and transparency! Environment and irradiance maps! Reflectance maps! Shadow maps! Displacement and bump maps Level of detail hierarchy Procedural shading and texturing

More information

Hardware Shading: State-of-the-Art and Future Challenges

Hardware Shading: State-of-the-Art and Future Challenges Hardware Shading: State-of-the-Art and Future Challenges Hans-Peter Seidel Max-Planck-Institut für Informatik Saarbrücken,, Germany Graphics Hardware Hardware is now fast enough for complex geometry for

More information

INFOGR Computer Graphics. J. Bikker - April-July Lecture 10: Shading Models. Welcome!

INFOGR Computer Graphics. J. Bikker - April-July Lecture 10: Shading Models. Welcome! INFOGR Computer Graphics J. Bikker - April-July 2016 - Lecture 10: Shading Models Welcome! Today s Agenda: Introduction Light Transport Materials Sensors Shading INFOGR Lecture 10 Shading Models 3 Introduction

More information

Visualizer An implicit surface rendering application

Visualizer An implicit surface rendering application June 01, 2004 Visualizer An implicit surface rendering application Derek Gerstmann - C1405511 MSc Computer Animation NCCA Bournemouth University OVERVIEW OF APPLICATION Visualizer is an interactive application

More information

Problem Set 4 Part 1 CMSC 427 Distributed: Thursday, November 1, 2007 Due: Tuesday, November 20, 2007

Problem Set 4 Part 1 CMSC 427 Distributed: Thursday, November 1, 2007 Due: Tuesday, November 20, 2007 Problem Set 4 Part 1 CMSC 427 Distributed: Thursday, November 1, 2007 Due: Tuesday, November 20, 2007 Programming For this assignment you will write a simple ray tracer. It will be written in C++ without

More information

Computer Graphics. Illumination and Shading

Computer Graphics. Illumination and Shading Rendering Pipeline modelling of geometry transformation into world coordinates placement of cameras and light sources transformation into camera coordinates backface culling projection clipping w.r.t.

More information

Image Base Rendering: An Introduction

Image Base Rendering: An Introduction Image Base Rendering: An Introduction Cliff Lindsay CS563 Spring 03, WPI 1. Introduction Up to this point, we have focused on showing 3D objects in the form of polygons. This is not the only approach to

More information

Mach band effect. The Mach band effect increases the visual unpleasant representation of curved surface using flat shading.

Mach band effect. The Mach band effect increases the visual unpleasant representation of curved surface using flat shading. Mach band effect The Mach band effect increases the visual unpleasant representation of curved surface using flat shading. A B 320322: Graphics and Visualization 456 Mach band effect The Mach band effect

More information

Interactive Methods in Scientific Visualization

Interactive Methods in Scientific Visualization Interactive Methods in Scientific Visualization GPU Volume Raycasting Christof Rezk-Salama University of Siegen, Germany Volume Rendering in a Nutshell Image Plane Eye Data Set Back-to-front iteration

More information

Improved Radiance Gradient Computation

Improved Radiance Gradient Computation Improved Radiance Gradient Computation Jaroslav Křivánek Pascal Gautron Kadi Bouatouch Sumanta Pattanaik Czech Technical University New gradients Gradients by [Křivánek et al. 2005] Figure 1: Right: The

More information

TSBK 07! Computer Graphics! Ingemar Ragnemalm, ISY

TSBK 07! Computer Graphics! Ingemar Ragnemalm, ISY 1(84) Information Coding / Computer Graphics, ISY, LiTH TSBK 07 Computer Graphics Ingemar Ragnemalm, ISY 1(84) Lecture 5 3D graphics part 3 Illumination Illumination applied: Shading Surface detail: Mappings

More information

Illumination Algorithms

Illumination Algorithms Global Illumination Illumination Algorithms Digital Lighting and Rendering CGT 340 The goal of global illumination is to model all possible paths of light to the camera. Global Illumination Global illumination

More information

Visualisatie BMT. Rendering. Arjan Kok

Visualisatie BMT. Rendering. Arjan Kok Visualisatie BMT Rendering Arjan Kok a.j.f.kok@tue.nl 1 Lecture overview Color Rendering Illumination 2 Visualization pipeline Raw Data Data Enrichment/Enhancement Derived Data Visualization Mapping Abstract

More information

An Optimized Soft Shadow Volume Algorithm with Real-Time Performance

An Optimized Soft Shadow Volume Algorithm with Real-Time Performance Graphics Hardware (2003) M. Doggett, W. Heidrich, W. Mark, A. Schilling (Editors) An Optimized Soft Shadow Volume Algorithm with Real-Time Performance Ulf Assarsson, 1 Michael Dougherty, 2 Michael Mounier,

More information

Fast Real-time Caustics from Height Fields

Fast Real-time Caustics from Height Fields Noname manuscript No. (will be inserted by the editor) Fast Real-time Caustics from Height Fields Cem Yuksel John Keyser Texas A&M University Received: date / Accepted: date Abstract Caustics are crucial

More information

OpenGl Pipeline. triangles, lines, points, images. Per-vertex ops. Primitive assembly. Texturing. Rasterization. Per-fragment ops.

OpenGl Pipeline. triangles, lines, points, images. Per-vertex ops. Primitive assembly. Texturing. Rasterization. Per-fragment ops. OpenGl Pipeline Individual Vertices Transformed Vertices Commands Processor Per-vertex ops Primitive assembly triangles, lines, points, images Primitives Fragments Rasterization Texturing Per-fragment

More information

Surface Rendering. Surface Rendering

Surface Rendering. Surface Rendering Surface Rendering Surface Rendering Introduce Mapping Methods - Texture Mapping - Environmental Mapping - Bump Mapping Go over strategies for - Forward vs backward mapping 2 1 The Limits of Geometric Modeling

More information

CS 428: Fall Introduction to. Raytracing. Andrew Nealen, Rutgers, /18/2009 1

CS 428: Fall Introduction to. Raytracing. Andrew Nealen, Rutgers, /18/2009 1 CS 428: Fall 2009 Introduction to Computer Graphics Raytracing 11/18/2009 1 Forward ray tracing From the light sources Simulate light transport one ray at a time Rays start from lights + bounce around

More information

Real-Time Ambient Occlusion for Dynamic Character Skins

Real-Time Ambient Occlusion for Dynamic Character Skins Real-Time Ambient Occlusion for Dynamic Character Skins Adam G. Kirk UC-Berkeley Okan Arikan UT-Austin Figure 1: Time-lapse screen capture showing ambient occlusion values calculated in real-time. Abstract

More information

Reading. 12. Texture Mapping. Texture mapping. Non-parametric texture mapping. Required. w Watt, intro to Chapter 8 and intros to 8.1, 8.4, 8.6, 8.8.

Reading. 12. Texture Mapping. Texture mapping. Non-parametric texture mapping. Required. w Watt, intro to Chapter 8 and intros to 8.1, 8.4, 8.6, 8.8. Reading Required Watt, intro to Chapter 8 and intros to 8.1, 8.4, 8.6, 8.8. Optional 12. Texture Mapping Watt, the rest of Chapter 8 Woo, Neider, & Davis, Chapter 9 James F. Blinn and Martin E. Neell.

More information

COMP30019 Graphics and Interaction Ray Tracing

COMP30019 Graphics and Interaction Ray Tracing COMP30019 Graphics and Interaction Ray Tracing Department of Computer Science and Software Engineering The Lecture outline Ray tracing Recursive Ray Tracing Binary Space Partition (BSP) Trees Refraction

More information

Rendering Hair-Like Objects with Indirect Illumination

Rendering Hair-Like Objects with Indirect Illumination Rendering Hair-Like Objects with Indirect Illumination CEM YUKSEL and ERGUN AKLEMAN Visualization Sciences Program, Department of Architecture Texas A&M University TR0501 - January 30th 2005 Our method

More information

Fast Real-time Caustics from Height Fields

Fast Real-time Caustics from Height Fields Noname manuscript No. (will be inserted by the editor) Fast Real-time Caustics from Height Fields Cem Yuksel John Keyser Texas A&M University Received: date / Accepted: date Abstract Caustics are crucial

More information

S U N G - E U I YO O N, K A I S T R E N D E R I N G F R E E LY A VA I L A B L E O N T H E I N T E R N E T

S U N G - E U I YO O N, K A I S T R E N D E R I N G F R E E LY A VA I L A B L E O N T H E I N T E R N E T S U N G - E U I YO O N, K A I S T R E N D E R I N G F R E E LY A VA I L A B L E O N T H E I N T E R N E T Copyright 2018 Sung-eui Yoon, KAIST freely available on the internet http://sglab.kaist.ac.kr/~sungeui/render

More information

CS770/870 Spring 2017 Color and Shading

CS770/870 Spring 2017 Color and Shading Preview CS770/870 Spring 2017 Color and Shading Related material Cunningham: Ch 5 Hill and Kelley: Ch. 8 Angel 5e: 6.1-6.8 Angel 6e: 5.1-5.5 Making the scene more realistic Color models representing the

More information

Filtering Cubemaps Angular Extent Filtering and Edge Seam Fixup Methods

Filtering Cubemaps Angular Extent Filtering and Edge Seam Fixup Methods Filtering Cubemaps Angular Extent Filtering and Edge Seam Fixup Methods John R. Isidoro 3D Application Research Group ATI Research Introduction Hardware cube mapping is ubiquitous. Straightforward hardware

More information

Pipeline Operations. CS 4620 Lecture 10

Pipeline Operations. CS 4620 Lecture 10 Pipeline Operations CS 4620 Lecture 10 2008 Steve Marschner 1 Hidden surface elimination Goal is to figure out which color to make the pixels based on what s in front of what. Hidden surface elimination

More information

CS5620 Intro to Computer Graphics

CS5620 Intro to Computer Graphics So Far wireframe hidden surfaces Next step 1 2 Light! Need to understand: How lighting works Types of lights Types of surfaces How shading works Shading algorithms What s Missing? Lighting vs. Shading

More information

Sung-Eui Yoon ( 윤성의 )

Sung-Eui Yoon ( 윤성의 ) CS380: Computer Graphics Ray Tracing Sung-Eui Yoon ( 윤성의 ) Course URL: http://sglab.kaist.ac.kr/~sungeui/cg/ Class Objectives Understand overall algorithm of recursive ray tracing Ray generations Intersection

More information

Image-based BRDF Representation

Image-based BRDF Representation JAMSI, 11 (2015), No. 2 47 Image-based BRDF Representation A. MIHÁLIK AND R. ĎURIKOVIČ Abstract: To acquire a certain level of photorealism in computer graphics, it is necessary to analyze, how the materials

More information

Multiple Importance Sampling

Multiple Importance Sampling Multiple Importance Sampling Multiple Importance Sampling Reflection of a circular light source by a rough surface Radius Shininess Sampling the light source f()() xgxdx Sampling the BRDF Page 1 Multiple

More information

We present a method to accelerate global illumination computation in pre-rendered animations

We present a method to accelerate global illumination computation in pre-rendered animations Attention for Computer Graphics Rendering Hector Yee PDI / DreamWorks Sumanta Pattanaik University of Central Florida Corresponding Author: Hector Yee Research and Development PDI / DreamWorks 1800 Seaport

More information