Presentation on theme: "1GR2-00 GR2 Advanced Computer Graphics AGR Lecture 18 Image-based Rendering Final Review of Rendering What We Did Not Cover Learning More..."— Presentation transcript:
1GR2-00 GR2 Advanced Computer Graphics AGR Lecture 18 Image-based Rendering Final Review of Rendering What We Did Not Cover Learning More...
2GR2-00 Model-based Rendering n Conventional approach is: – create 3D model of a virtual world – project each object to 2D and render into frame buffer n Scene complexity is a major factor – real-time walkthroughs of complex scenes needs powerful processing – affects major application areas such as computer games and VR
3GR2-00 Image-based Rendering n Goal: – make rendering time independent of scene complexity n Approach: – make use of pre-calculated imagery – many variations - we look just at two n Question: – where have we met pre-calculated imagery before?
4GR2-00 Image Caching - Impostors n Basic idea: – cache image of an object rendered in one frame for re-use in subsequent frames n Technique – project bounding box of object onto image plane to get rectangular extent for that view – capture image and put in texture memory – for next view, render an impostor which is a quadrilateral in plane parallel to initial view plane, and texture map with the original image – texture mapping uses current view so image is warped appropriately
5GR2-00 Image Caching n Validity of impostors: – once view direction changes substantially, the impostor is no longer valid – object then re-rendered n Hierarchical image caching: – use BSP trees to cluster objects in a hierarchy – distant objects can be clustered and a single image used to render the cluster
6GR2-00 Environment Mapping - Revision n Pre-computation: – from object at centre of scene we rendered 6 views and stored resulting images as walls of a surrounding box – caches light arriving at object from different directions n Rendering time – specular reflection calculation then bounced a viewing ray onto point on interior of box and used its colour as the specular colour of the object
7GR2-00 Light Fields n Concept: – for every point, cache the light or radiance emanating from that point in each direction – rendering involves looking up (very large) table – five dimensions: (x,y,z) to give position and ( to give direction – in free space, radiance constant along a line, so we have a 4D light field - we pre- compute the radiance along all lines in the space
8GR2-00 Indexing the Lines n Use two parallel planes - think of these as between viewer and scene u v s t L(u,v,s,t) For each point on (u,v) grid, we have a line to every point on (s,t) grid - ie 4D set of lines - known as light slab viewer scene
9GR2-00 Constructing a Light Field n Place camera on (u,v) plane – for each point on grid ( u i, v j ), render scene and store image as: Image ij (s k, t l ) – giving a 2D array of images! n Do this from all six surrounding directions of the scene - ie six light slabs
10GR2-00 Rendering n The rendering operation is now a linear look up operation on our 2D array of images n For example, any ray in a ray tracing approach will correspond to a particular 4D point (u,v,s,t) - we look up its value in the light field (using interpolation if it is not exactly on a grid point
11GR2-00 Compression n Technique is only feasible because there is coherence between successive images n Hence the 2D array of images can be compressed by factors of over 100
12GR2-00 Model-based versus Image- based Rendering virtual world model real-time interactive flythrough real world images model construction real-time rendering image acquisition image-based rendering off-line rendering image analysis
14GR2-00 Rendering Review - Local Illumination n Z-buffer and Gouraud shading MODELLING TRANSFORMN CULLINGLIGHTING VIEWING TRANSFORMN CLIPPINGPROJECTIONRENDERINGDISPLAY Z-buffer scan conversion interpolated shading
15GR2-00 Rendering Review - Local Illumination n Z-buffer and Phong shading MODELLING TRANSFORMN CULLING VIEWING TRANSFORMN CLIPPINGPROJECTIONRENDERINGDISPLAY Z-buffer scan conversion lighting interpolated shading
16GR2-00 Rendering Review - Global Illumination n Ray Tracing MODELLING TRANSFORMN RAY TRACING DISPLAY
17GR2-00 Rendering Review - Global Illumination n Radiosity and Gouraud Shading MODELLING TRANSFORMN VERTEX INTENSITY CALCULATIONS CULLING VIEWING TRANSFN CLIPPINGPROJECTNRENDERINGDISPLAY Stage 1 Stage 2 Z-buffer scan conversion interpolated shading
18GR2-00 Parametric Surface Representation n Rather than require the user to represent curved surfaces as an IndexedFaceSet of flat polygons, some modelling systems allow representation as Bezier or spline surfaces n Hearn & Baker Chap 10
19GR2-00 Constructive Solid Geometry n Rather than model objects as surfaces, some systems work in terms of solid objects - field known as Constructive Solid Geometry (CSG) n Hearn & Baker, Chap 10 n Primitive objects (sphere, cylinder, torus,..) combined by operators (union, intersection, difference) n Result is always a solid n Rendering via ray tracing typically
20GR2-00 Volume Graphics n A very new approach is to model using volumes - with varying transparency n OpenGL Volumizer adds this capability to OpenGL n See: www.sgi.com/software/volumizer n Mitsubishi Volume Pro 500 board – www.rtviz.com
21GR2-00 Procedural Modelling n Objects can be defined procedurally - ie by mathematical functions n See Hearn & Baker, Chap 10 n Fractals are well- known example n See The Fractory: library.advanced.org/3288/
22GR2-00 Other Important Topics n Colour n Anti-aliasing n Animation n … and much more!
23GR2-00 Learning More n Journals: – IEEE Computer Graphics and its Applications – Computer Graphics Forum – Computers and Graphics n Conferences: – ACM SIGGRAPH (Proceedings as ACM Computer Graphics) – Eurographics – Eurographics UK