1 / 40

CS361

Week 10 - Wednesday. CS361. Last time. What did we talk about last time? Shadow volumes and shadow mapping Ambient occlusion. Questions?. Project 3. Assignment 4. Student Lecture: Reflections. Reflections. Environment mapping. We already talked about reflections!

adeola
Download Presentation

CS361

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Week 10 - Wednesday CS361

  2. Last time • What did we talk about last time? • Shadow volumes and shadow mapping • Ambient occlusion

  3. Questions?

  4. Project 3

  5. Assignment 4

  6. Student Lecture:Reflections

  7. Reflections

  8. Environment mapping • We already talked about reflections! • Environment mapping was our solution • But it only works for distant objects

  9. Planar reflections • The simplest reflections to deal with are planar reflections • Reflections off of a flat surface like a mirror • An ideal reflector follows the law of reflection • Angle of incidence is the angle of reflection • Reputedly discovered by Hero of Alexandria between 10 and 70 AD • Vector form: where is the reflected vector, is the incoming vector, is the surface normal viewer n angle of incidence angle of reflection reflector

  10. Reflection rendering • The reflected object can be copied, moved to reflection space and rendered there • Lighting must also be reflected • Or the viewpoint can be reflected

  11. Transparency • Reflector must be partially transparent so that the reflected scene can be viewed • The degree of transparency acts simulates the reflectivity factor • Care must be taken when setting up back face culling for the reflection pass • Also, the scene may be rendered where there is no reflector

  12. Hiding incorrect reflections • This problem can by solved by using the stencil buffer • The stencil buffer is set to areas where a reflector is present • Then the reflector scene is rendered with stenciling on

  13. Hiding things behind the mirror • Objects behind the mirror should not be rendered • A user defined clipping plane can solve this problem • Create a clipping plane and place it on the same plane as the mirror

  14. Visual improvements • Reflections can be enhanced by blurring them or fading them to black as the viewer moves away • Objects can be rendered to a texture with a Z-buffer • The Z-buffer can be used to blur or darken objects that are further away • Frosted glass can also be created by blurring

  15. Curved Reflections • Ray tracing can be used to create general reflections • Environment mapping can be used for recursive reflections in curved surfaces • To do so, render the scene repeatedly in 6 directions for each reflective object

  16. Transmittance

  17. Transmittance • How much light gets through your material? • That's transmittance • If your samples are of equal thickness, you can apply a color filter

  18. Beer-Lambert Law • The Beer-Lambert law says how much light gets through an object of varying thickness • Transmittance is: where is the absorption coefficient, c is the concentration of the material and d is the thickness d

  19. Refractions

  20. What is refraction? • It's a property of waves (not just light) • Describes the way the path of waves is bent when it changes medium

  21. What causes refraction? • Refraction and diffraction results of the Huygens–Fresnel principle • Each point of a medium disturbed by a wave becomes a point of propagation for the disturbance

  22. Principle of Least Time • Another way of looking at refraction is through the Fermat's Principle of Least Time • The path taken between two points by a ray of light is the path that can be traversed in the smallest amount of time • The light actually bends to spend less time in a slower material

  23. Snell's Law • Snell's Law allows us to calculate the amount of refraction

  24. Total internal reflection • If the angle of refraction is greater than the critical angle, the light will be reflected back into the initial medium

  25. Exotic effects • If the material has different refractive indices for different polarizations, two images will appear offset from each other • Birefringence • The delta between the refractive indices of different polarizations determines how much the light will be offset • Modern metamaterials exist with a negative refractive index • In those cases, light is refracted on the same side of the normal as the incidence

  26. XNA Reflection and Refraction Examples

  27. Caustics

  28. It’s burning! • Light is focused by reflective or refractive surfaces • A caustic is the curve or surface of concentrated light • The name comes from the Greek for burning Reflective: Refractive:

  29. Image space rendering • First: • The scene is rendered from the view of light • Track the diversion of light and see which locations are hit • Store the result in an image with Z-buffer values called a photon buffer • Second: • Treat each location that received light as a point object called a splat • Transform these to eye viewpoint and render them to a caustic map • Third: • Project the map onto the screen and combine with the shadow map

  30. Object Space Rendering • Look at each generator triangle • Those that are specular or refractive • Each vertex on each generator triangle has a normal • Create a caustic volume like a shadow volume except that the sides are warped by either reflection or refraction • For receiver pixels in the volume, intensity is computed

  31. Some other examples

  32. Global Subsurface Scattering

  33. Subsurface scattering • Subsurface scattering occurs when light enters an object, bounces around, and exits at a different point • If the exit point is close to the entrance point (in the same pixel), we can use a BRDF • If it spans a larger distance, we need an algorithm to track photon propagation

  34. Subsurface scattering • Examples • Pearlescent paint • Human skin • Which matters • Causes • Foreign Particles (pearls) • Discontinuities (air bubbles) • Density variations • Structural changes • We need to know how long light has traveled through the object • Tracking individual photons is impossible, so all algorithms will be statistical

  35. Blurring normals and lighting • Subsurface scattering does not affect specular reflection • We often use normal maps to add detail to specular reflection characteristics • Some work suggests that this same normal map should be ignored for diffuse terms • Or the normalscan be blurred further since surface direction appears to change slowly if light from other directions is exiting diffusely • More complex models render the diffuse lighting onto a texture and then selectively blur R, G, and B components for more realism This texture space diffusion technique was used in The Matrix Reloaded for rendering skin

  36. Depth map techniques • We could cast rays into objects to see where they come out, but it's expensive • An alternative is to use depth maps to record how far the light travels through the object which determines how colored by the object it is • Refraction when the light enters the object is usually ignored • Only exiting refraction is computed

  37. Quiz

  38. Upcoming

  39. Next time… • Meets on Thursday • Radiosity • Ray Tracing • Precomputed lighting • Precomputed occlusion • Precomputed radiance transfer

  40. Reminders • Assignment 4 is due tomorrow! • Thursday, March 28 by midnight • Keep working on Project 3 • Keep reading Chapter 9

More Related