Real-Time Photo-Realistic Rendering for Surgical Simulations with Graphics Hardware

Size: px
Start display at page:

Download "Real-Time Photo-Realistic Rendering for Surgical Simulations with Graphics Hardware"

Transcription

1 Real-Time Photo-Realistic Rendering for Surgical Simulations with Graphics Hardware Mohamed. ElHelw, Benny P. Lo, ra Darzi, Guang-Zhong Yang Royal Society/Wolfson Medical Image Computing Laboratory, Imperial College London, London, United Kingdom bstract: Computer-based surgical simulations are being increasingly used for training and skills assessment. They provide an efficient and cost effective alternative to traditional training methods. To allow for both basic and advanced skills assessment, the required perceptual fidelity is essential to capturing the natural behavior of the operator. The level of realism in terms of object and scene appearance determines the faithfulness and hence the degree of immersion experienced by the trainee in the virtual world. This paper presents a novel photo-realistic rendering approach based on real-time per-pixel effects by using the graphics hardware. Improved realism is achieved by a combined use of specular reflectance and refractance maps to model the effect of surface details and mucous layer on the overall visual appearance of the tissue. The key steps involved in the proposed technique are described, and quantitative performance assessment results demonstrate the practical advantages of the proposed technique. 1 Introduction In minimal invasive surgery (MIS), virtual and augmented reality based systems are rapidly becoming an integral part of surgical training. Current high-fidelity simulators offer the opportunity for safe, repeated practice and objective measurement of performance. They provide an economical and time saving solution for acquiring, as well as assessing basic surgical skills [1]. In particular, surgical simulators are found to be valuable for training MIS procedures where the complexity of instrument controls, restricted vision and mobility, difficult hand-eye co-ordination and the lack of tactile perception require a high degree of operator dexterity []. lthough these simulators can accelerate the development of hand-eye skills, there are serious shortcomings with the current technology, particularly in the photo-realism they provide. Hitherto, a significant amount of research has been carried out in photorealistic rendering of simulated surgical scenes [3] and it remains one of the major technical challenges due to the complexity and diversity of internal tissue structures and surfaces properties [4]. With the recent advances in computer graphics architecture, it is possible to provide high fidelity rendering at interactive rates. Highly programmable graphics processor units (GPUs), including floating-point vertex and fragment processors, can offload complex vertex and pixel operations from the central processing unit to the G.-Z. Yang and T. Jiang (Eds.): MIR 4, LNCS 315, pp , 4. Springer-Verlag Berlin Heidelberg 4

2 Real-Time Photo-Realistic Rendering for Surgical Simulations 347 GPU, allowing greater control over the graphics pipeline for real-time per-pixel shading and other procedural effects [5]. Moreover, shading calculations can be performed at the pixel level [6] as opposed to the vertex level in case of fixed functionality pipeline, hence reducing the aliasing of specular highlights and improving visual realism. The purpose of this paper is to present a novel rendering technique based on the programmable graphics pipeline for laparoscopic simulation. Specular reflections are modulated by using a set of reflectance maps, i.e. maps encoding the surface normal distribution, which define the surface light interaction properties. Results are further enhanced with the improved visual appearance of the semi-transparent mucous layer on the top of tissue surface. We describe the key steps involved in the proposed technique and demonstrate its advantages over conventional approaches. Method Specular highlights constitute a vital clue in MIS procedures where 3-dimensional perception is diminished due to the use of -dimensional screens. Surgeons usually rely on specular highlights as a reference for depth, orientation and deformation. Consequently, it is important for surgical simulators to reproduce these highlights as realistic as possible. In the existing literature, a number of approaches for simulating specular highlights have been introduced. Standard graphics PIs such as OpenGL [7] and DirectX simulate this effect by using the Phong lighting model [8] computed at the vertices. Other techniques use environment mapping to map an image of the specular source onto the surface. The results obtained with these methods, however, generally lack visual realism due to the fact that tissue surfaces are not perfectly smooth. more physically accurate model should consider a rough surface augmented with microstructure details such as that proposed by Torrance and Sparrow [9]. major drawback of this approach is that physically-based reflection models can be computationally prohibitive. Figure 1. sample colour texture image (left) and its associated reflectance map (right) For real-time applications, a reflectance map can be used to describe a perturbed normal value for each image pixel (texel). This map can be either derived empirically or generated by using conventional noise functions, e.g Perlin noise [1]. Since the type of noise affects the shape of specular regions, different functions can be used for varying tissue types. Figure 1 illustrates a sample colour texture image and its

3 348 M.. ElHelw et al. associated reflectance map. In this case, the reflectance map is obtained by using a noise image where every texel is considered as a height field, i.e. each texel encodes a single height value at that texel. The normal of the surface at each texel is then found by computing the cross product of the pair of vectors formed by that texel and its neighbors. The calculation is repeated for the other neighboring texels and the average of the normals is stored. larger texel area can be considered in cases when smoother normals are to be computed. During runtime, texture mapping is used for each triangle in the geometric model to extract the per-pixel reflectance map normals used for calculating the specular highlights. However, the normals in the reflectance map are defined in their own coordinate system, therefore they have to be transformed into a coordinate system that is local to the triangle being processed. Such coordinate system, known as the object local surface or texture-space coordinate system, can be defined by using three vectors which constitute its basis: the surface tangent (T), the bi-tangent (B), and the normal (N) as shown in Figure (). Figure. (Left) n example of per-triangle TBN-based coordinate systems. (Right) Per-vertex TBN bases (GBR respectively) used for the tissue model rendered in the results section. Based on this definition, the first two vectors can be computed from the partial derivatives of the object-space coordinates of the triangle in terms of its texture coordinates [11], and, x y T =, u u, x y B =, v v, z B = u z C = v o o B1 1 C 1 1 B C (, B, C ) = [( x, u, v ) ( x, u, v )] [ ( x, u, v ) ( x, u v )] o o 1 1 1, D = (, B, C ) ( x, u, v ) where denotes the dot product, (x, y, z ), (x 1, y 1, z 1 ), (x, y, z ) and (u, v ), (u 1, v 1 ), (u, v ) represent the triangular object- and texture-space coordinates respectively.

4 Real-Time Photo-Realistic Rendering for Surgical Simulations 349 Subsequently, (N) can be computed from the cross product of (T) and (B) or the normal supplied by the original model can be used alternatively. By computing the basis vectors in texture-space, the GPU can be used to efficiently transform the object-space vectors required for specular calculations into the texture-space by using a rotation matrix (R) ( R) T = B N x x x T B N y y y T B N z z z Since (R) is defined for each triangle in the geometric model, a per-vertex rotation matrix is needed to ensure consistent highlights across the triangular mesh. This is obtained by averaging the rotation matrices of the triangles sharing the vertex. In practice, the rotation matrix is calculated for each vertex in pre-processing with its value at the pixel level being interpolated during the rasterisation step of the graphics pipeline, as schematically illustrated in Figure 3. Figure 3. simplified block diagram of the programmable graphics pipeline. To further enhance the visual realism, the effect of surface mucous, which is a wet refractive transparent or semi-transparent layer found on top of the tissue, is combined with the above model. In laparoscopic views, the mucous layer significantly influences the surface appearance by reflecting and refracting incoming light rays. Replicating the mucous effects is a challenging problem and several factors have to be considered including the thickness of the layer, its light interaction properties, and the density and distribution of solid particles within the layer. In this study, mucous is simulated by using a set of refractance maps generated by methods similar to reflectance maps. However, vectors extracted from a refractance map are used to linearly blend between original surface colour and mucous layer colour, which accounts for surface colour variations. 3 Results The proposed technique has been applied to endoscopic surgical simulations. fragment shader was implemented for NVIDI FX graphics hardware, coded in Cg [1]. Figure (4) depicts the results obtained by using the described method compared

5 35 M.. ElHelw et al. to the conventional OpenGL multi-texturing approach. It is evident that the method effectively avoids the problem of plastic-like surface and provides realistic specular highlights. Furthermore, by varying the colour of the mucous layer and using different noise types, tissue appearance can be modified. Figure (5) demonstrates the effect of different noise functions on the visual appearance of the rendered surface. Figure 4. Different views the surface rendered by using the proposed method (left) versus OpenGL multi-texturing approach (right). Notice the plastic-like surface and the hexagonal shape of the specular highlights with the multi-texturing method. To assess the overall computational burden of the proposed algorithm, a detailed performance analysis was carried out. The effect of using different viewport resolutions and polygon counts on performance is demonstrated in Figure 6. It is shown that the viewport resolution is inversely proportional to the achieved frame rate, which is due to the fact that the fragment program is executed for each rendered pixel. This problem can be alleviated by future graphics hardware with more fragment pipelines. Increasing the scene polygonal count, on the other hand, has a gradual impact on performance unless extensive vertex programs are used. In fact, the performance in the case of programmable graphics hardware is dependant on several factors such as the length and complexity of vertex and fragment programs and the amount of data transferred between the CPU and GPU each cycle.

6 Real-Time Photo-Realistic Rendering for Surgical Simulations 351 Figure 5. The effect of different noise functions on the overall visual appearance of the rendering results. Shown above are four types of noise with decreasing frequency (clockwise from top-left) Figure 6. Performance assessment of real-time per-pixel shading with graphics hardware for different viewport resolutions and polygon counts.

7 35 M.. ElHelw et al. 4 Discussions and Conclusion In this paper a novel photo-realistic rendering method suitable for surgical simulation is described. It is based on using combined reflectance and refractance maps to model the effect of surface details and mucous layer on the overall visual appearance of the rendering results. The programmable graphics hardware is used to allow for per-pixel control and to carry out most of the required computations. In addition to the high fidelity rendering results achieved, the computational performance achieved makes it suited for interactive MIS simulation. With the use of general-purpose capabilities of the GPU, it is also possible to migrate simulation tasks such as collision detection and deformation computation to the GPU [13], allowing the entire simulation system to be seamlessly integrated. References 1. Shah, J. and Darzi,.: Simulation and Skills ssessment. International Workshop on Medical Imaging and ugmented Reality (MIR '1), Hong Kong (1) 5-9. Bro-Nielsen, M.: Simulation Techniques for Minimally Invasive Surgery. Journal of Minimally Invasive Therapy & llied Technologies (1997) Neyret, F., Heiss, R. and Senegas F.: Realistic Rendering of an Organ Surface in Real- Time for Laparoscopic Surgery Simulation. The Visual Computer. Vol. 18 No. 3 () Stylopoulos, N., e.t al: CELTS: Clinically-Based Computer Enhanced Laparoscopic Training System. Medicine Meets Virtual Reality (3) 5. Peercy, M.S., Olano, M., irey, J., and Ungar, J.: Interactive Multi-Pass Programmable Shading. Proceedings of SIGGRPH () Eveirtt, C.: Mathematics of Per-Pixel Lighting. /object/ mathematicsofperpixellighting.html 7. Neider J., Davis, T. and Woo, M.: OpenGL Programming Guide. nd edn. ddison Wesley (1997) 8. Phong, B., T.: Illumination for Computer Generated Pictures. Communications of the CM, Vol. 18 No. 6 (1975) Torrance, K.E. and Sparrow, E.M.: Theory for Off-Specular Refelction from Roughned Surfaces. Optical Society of merica, Vol. 57 No. 9 (1976) Ebert, D.S. (ed.): Texturing and Modelling: Procedural pproach. P Professional (1994) 11. Fernando, R. and Kilgard, M.J.: The Cg Tutorial. ddison Wesley (3) 1. Mark, W.R., Glanville, R.S., keley K. and Kilgard, M.J.: Cg: System for Programming Graphics Hardware in a C-Like Language. Proceedings of SIGGRPH (3) Fernando, R. (ed.): GPU Gems. ddison Wesley (4)

Modeling the Virtual World

Modeling the Virtual World Modeling the Virtual World Joaquim Madeira November, 2013 RVA - 2013/2014 1 A VR system architecture Modeling the Virtual World Geometry Physics Haptics VR Toolkits RVA - 2013/2014 2 VR object modeling

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

Self-shadowing Bumpmap using 3D Texture Hardware

Self-shadowing Bumpmap using 3D Texture Hardware Self-shadowing Bumpmap using 3D Texture Hardware Tom Forsyth, Mucky Foot Productions Ltd. TomF@muckyfoot.com Abstract Self-shadowing bumpmaps add realism and depth to scenes and provide important visual

More information

Hardware Displacement Mapping

Hardware Displacement Mapping Matrox's revolutionary new surface generation technology, (HDM), equates a giant leap in the pursuit of 3D realism. Matrox is the first to develop a hardware implementation of displacement mapping and

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

Computer Graphics 10 - Shadows

Computer Graphics 10 - Shadows Computer Graphics 10 - Shadows Tom Thorne Slides courtesy of Taku Komura www.inf.ed.ac.uk/teaching/courses/cg Overview Shadows Overview Projective shadows Shadow textures Shadow volume Shadow map Soft

More information

Chapter 7 - Light, Materials, Appearance

Chapter 7 - Light, Materials, Appearance Chapter 7 - Light, Materials, Appearance Types of light in nature and in CG Shadows Using lights in CG Illumination models Textures and maps Procedural surface descriptions Literature: E. Angel/D. Shreiner,

More information

Computer Graphics Introduction. Taku Komura

Computer Graphics Introduction. Taku Komura Computer Graphics Introduction Taku Komura What s this course all about? We will cover Graphics programming and algorithms Graphics data structures Applied geometry, modeling and rendering Not covering

More information

Lecture 17: Shading in OpenGL. CITS3003 Graphics & Animation

Lecture 17: Shading in OpenGL. CITS3003 Graphics & Animation Lecture 17: Shading in OpenGL CITS3003 Graphics & Animation E. Angel and D. Shreiner: Interactive Computer Graphics 6E Addison-Wesley 2012 Objectives Introduce the OpenGL shading methods - per vertex shading

More information

CS GAME PROGRAMMING Question bank

CS GAME PROGRAMMING Question bank CS6006 - GAME PROGRAMMING Question bank Part A Unit I 1. List the different types of coordinate systems. 2. What is ray tracing? Mention some applications of ray tracing. 3. Discuss the stages involved

More information

Interpolation using scanline algorithm

Interpolation using scanline algorithm Interpolation using scanline algorithm Idea: Exploit knowledge about already computed color values. Traverse projected triangle top-down using scanline. Compute start and end color value of each pixel

More information

Level of Details in Computer Rendering

Level of Details in Computer Rendering Level of Details in Computer Rendering Ariel Shamir Overview 1. Photo realism vs. Non photo realism (NPR) 2. Objects representations 3. Level of details Photo Realism Vs. Non Pixar Demonstrations Sketching,

More information

CS451Real-time Rendering Pipeline

CS451Real-time Rendering Pipeline 1 CS451Real-time Rendering Pipeline JYH-MING LIEN DEPARTMENT OF COMPUTER SCIENCE GEORGE MASON UNIVERSITY Based on Tomas Akenine-Möller s lecture note You say that you render a 3D 2 scene, but what does

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

3D Programming. 3D Programming Concepts. Outline. 3D Concepts. 3D Concepts -- Coordinate Systems. 3D Concepts Displaying 3D Models

3D Programming. 3D Programming Concepts. Outline. 3D Concepts. 3D Concepts -- Coordinate Systems. 3D Concepts Displaying 3D Models 3D Programming Concepts Outline 3D Concepts Displaying 3D Models 3D Programming CS 4390 3D Computer 1 2 3D Concepts 3D Model is a 3D simulation of an object. Coordinate Systems 3D Models 3D Shapes 3D Concepts

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

CSE 167: Introduction to Computer Graphics Lecture #6: Lights. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2014

CSE 167: Introduction to Computer Graphics Lecture #6: Lights. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2014 CSE 167: Introduction to Computer Graphics Lecture #6: Lights Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2014 Announcements Project 2 due Friday, Oct. 24 th Midterm Exam

More information

Graphics for VEs. Ruth Aylett

Graphics for VEs. Ruth Aylett Graphics for VEs Ruth Aylett Overview VE Software Graphics for VEs The graphics pipeline Projections Lighting Shading VR software Two main types of software used: off-line authoring or modelling packages

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

Objectives Shading in OpenGL. Front and Back Faces. OpenGL shading. Introduce the OpenGL shading methods. Discuss polygonal shading

Objectives Shading in OpenGL. Front and Back Faces. OpenGL shading. Introduce the OpenGL shading methods. Discuss polygonal shading Objectives Shading in OpenGL Introduce the OpenGL shading methods - per vertex shading vs per fragment shading - Where to carry out Discuss polygonal shading - Flat - Smooth - Gouraud CITS3003 Graphics

More information

Graphics for VEs. Ruth Aylett

Graphics for VEs. Ruth Aylett Graphics for VEs Ruth Aylett Overview VE Software Graphics for VEs The graphics pipeline Projections Lighting Shading Runtime VR systems Two major parts: initialisation and update loop. Initialisation

More information

Today. Global illumination. Shading. Interactive applications. Rendering pipeline. Computergrafik. Shading Introduction Local shading models

Today. Global illumination. Shading. Interactive applications. Rendering pipeline. Computergrafik. Shading Introduction Local shading models Computergrafik Matthias Zwicker Universität Bern Herbst 2009 Today Introduction Local shading models Light sources strategies Compute interaction of light with surfaces Requires simulation of physics Global

More information

CS GPU and GPGPU Programming Lecture 2: Introduction; GPU Architecture 1. Markus Hadwiger, KAUST

CS GPU and GPGPU Programming Lecture 2: Introduction; GPU Architecture 1. Markus Hadwiger, KAUST CS 380 - GPU and GPGPU Programming Lecture 2: Introduction; GPU Architecture 1 Markus Hadwiger, KAUST Reading Assignment #2 (until Feb. 17) Read (required): GLSL book, chapter 4 (The OpenGL Programmable

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

-=Bui Tuong Phong's Lighting=- University of Utah, but with shaders. Anton Gerdelan Trinity College Dublin

-=Bui Tuong Phong's Lighting=- University of Utah, but with shaders. Anton Gerdelan Trinity College Dublin -=Bui Tuong Phong's Lighting=- University of Utah, 1973 but with shaders Anton Gerdelan Trinity College Dublin Before we do anything - normals Q. What does a normal do? Q. How do we usually calculate them?

More information

Evolution of Imaging Technology in Computer Graphics. Related Areas

Evolution of Imaging Technology in Computer Graphics. Related Areas Evolution of Imaging Technology in Computer Graphics Jonas Gomes Rio de Janeiro http://www.visgraf.impa.br Image computation Related Areas 1 Related Areas An integrated view Problems on the frontiers Graphical

More information

3D Rasterization II COS 426

3D Rasterization II COS 426 3D Rasterization II COS 426 3D Rendering Pipeline (for direct illumination) 3D Primitives Modeling Transformation Lighting Viewing Transformation Projection Transformation Clipping Viewport Transformation

More information

3D GRAPHICS. design. animate. render

3D GRAPHICS. design. animate. render 3D GRAPHICS design animate render 3D animation movies Computer Graphics Special effects Computer Graphics Advertising Computer Graphics Games Computer Graphics Simulations & serious games Computer Graphics

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

Shading Languages. Seminar Computer Graphics. Markus Kummerer

Shading Languages. Seminar Computer Graphics. Markus Kummerer Shading Languages Markus Kummerer ABSTRACT Shading Languages provide a highly flexible approach for creating visual structures in computer imagery. The RenderMan Interface provides an API for scene description,

More information

Real Time Rendering of Expensive Small Environments Colin Branch Stetson University

Real Time Rendering of Expensive Small Environments Colin Branch Stetson University Real Time Rendering of Expensive Small Environments Colin Branch Stetson University Abstract One of the major goals of computer graphics is the rendering of realistic environments in real-time. One approach

More information

Computer Graphics. Shadows

Computer Graphics. Shadows Computer Graphics Lecture 10 Shadows Taku Komura Today Shadows Overview Projective shadows Shadow texture Shadow volume Shadow map Soft shadows Why Shadows? Shadows tell us about the relative locations

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

Per-Pixel Lighting and Bump Mapping with the NVIDIA Shading Rasterizer

Per-Pixel Lighting and Bump Mapping with the NVIDIA Shading Rasterizer Per-Pixel Lighting and Bump Mapping with the NVIDIA Shading Rasterizer Executive Summary The NVIDIA Quadro2 line of workstation graphics solutions is the first of its kind to feature hardware support for

More information

Rendering. Converting a 3D scene to a 2D image. Camera. Light. Rendering. View Plane

Rendering. Converting a 3D scene to a 2D image. Camera. Light. Rendering. View Plane Rendering Pipeline Rendering Converting a 3D scene to a 2D image Rendering Light Camera 3D Model View Plane Rendering Converting a 3D scene to a 2D image Basic rendering tasks: Modeling: creating the world

More information

Pipeline Operations. CS 4620 Lecture Steve Marschner. Cornell CS4620 Spring 2018 Lecture 11

Pipeline Operations. CS 4620 Lecture Steve Marschner. Cornell CS4620 Spring 2018 Lecture 11 Pipeline Operations CS 4620 Lecture 11 1 Pipeline you are here APPLICATION COMMAND STREAM 3D transformations; shading VERTEX PROCESSING TRANSFORMED GEOMETRY conversion of primitives to pixels RASTERIZATION

More information

CSE4030 Introduction to Computer Graphics

CSE4030 Introduction to Computer Graphics CSE4030 Introduction to Computer Graphics Dongguk University Jeong-Mo Hong Timetable 00:00~00:10 Introduction (English) 00:10~00:50 Topic 1 (English) 00:50~00:60 Q&A (English, Korean) 01:00~01:40 Topic

More information

C P S C 314 S H A D E R S, O P E N G L, & J S RENDERING PIPELINE. Mikhail Bessmeltsev

C P S C 314 S H A D E R S, O P E N G L, & J S RENDERING PIPELINE. Mikhail Bessmeltsev C P S C 314 S H A D E R S, O P E N G L, & J S RENDERING PIPELINE UGRAD.CS.UBC.C A/~CS314 Mikhail Bessmeltsev 1 WHAT IS RENDERING? Generating image from a 3D scene 2 WHAT IS RENDERING? Generating image

More information

Pipeline Operations. CS 4620 Lecture 14

Pipeline Operations. CS 4620 Lecture 14 Pipeline Operations CS 4620 Lecture 14 2014 Steve Marschner 1 Pipeline you are here APPLICATION COMMAND STREAM 3D transformations; shading VERTEX PROCESSING TRANSFORMED GEOMETRY conversion of primitives

More information

Introduction to Computer Graphics 7. Shading

Introduction to Computer Graphics 7. Shading Introduction to Computer Graphics 7. Shading National Chiao Tung Univ, Taiwan By: I-Chen Lin, Assistant Professor Textbook: Hearn and Baker, Computer Graphics, 3rd Ed., Prentice Hall Ref: E.Angel, Interactive

More information

Shading. Introduction to Computer Graphics Torsten Möller. Machiraju/Zhang/Möller/Fuhrmann

Shading. Introduction to Computer Graphics Torsten Möller. Machiraju/Zhang/Möller/Fuhrmann Shading Introduction to Computer Graphics Torsten Möller Machiraju/Zhang/Möller/Fuhrmann Reading Chapter 5.5 - Angel Chapter 6.3 - Hughes, van Dam, et al Machiraju/Zhang/Möller/Fuhrmann 2 Shading Illumination

More information

CS 354R: Computer Game Technology

CS 354R: Computer Game Technology CS 354R: Computer Game Technology Texture and Environment Maps Fall 2018 Texture Mapping Problem: colors, normals, etc. are only specified at vertices How do we add detail between vertices without incurring

More information

Module Contact: Dr Stephen Laycock, CMP Copyright of the University of East Anglia Version 1

Module Contact: Dr Stephen Laycock, CMP Copyright of the University of East Anglia Version 1 UNIVERSITY OF EAST ANGLIA School of Computing Sciences Main Series PG Examination 2013-14 COMPUTER GAMES DEVELOPMENT CMPSME27 Time allowed: 2 hours Answer any THREE questions. (40 marks each) Notes are

More information

Graphics and Interaction Rendering pipeline & object modelling

Graphics and Interaction Rendering pipeline & object modelling 433-324 Graphics and Interaction Rendering pipeline & object modelling Department of Computer Science and Software Engineering The Lecture outline Introduction to Modelling Polygonal geometry The rendering

More information

Computer Graphics 1. Chapter 7 (June 17th, 2010, 2-4pm): Shading and rendering. LMU München Medieninformatik Andreas Butz Computergraphik 1 SS2010

Computer Graphics 1. Chapter 7 (June 17th, 2010, 2-4pm): Shading and rendering. LMU München Medieninformatik Andreas Butz Computergraphik 1 SS2010 Computer Graphics 1 Chapter 7 (June 17th, 2010, 2-4pm): Shading and rendering 1 The 3D rendering pipeline (our version for this class) 3D models in model coordinates 3D models in world coordinates 2D Polygons

More information

The Application Stage. The Game Loop, Resource Management and Renderer Design

The Application Stage. The Game Loop, Resource Management and Renderer Design 1 The Application Stage The Game Loop, Resource Management and Renderer Design Application Stage Responsibilities 2 Set up the rendering pipeline Resource Management 3D meshes Textures etc. Prepare data

More information

CSE 167: Introduction to Computer Graphics Lecture #7: Lights. Jürgen P. Schulze, Ph.D. University of California, San Diego Spring Quarter 2015

CSE 167: Introduction to Computer Graphics Lecture #7: Lights. Jürgen P. Schulze, Ph.D. University of California, San Diego Spring Quarter 2015 CSE 167: Introduction to Computer Graphics Lecture #7: Lights Jürgen P. Schulze, Ph.D. University of California, San Diego Spring Quarter 2015 Announcements Thursday in-class: Midterm Can include material

More information

Fog and Cloud Effects. Karl Smeltzer Alice Cao John Comstock

Fog and Cloud Effects. Karl Smeltzer Alice Cao John Comstock Fog and Cloud Effects Karl Smeltzer Alice Cao John Comstock Goal Explore methods of rendering scenes containing fog or cloud-like effects through a variety of different techniques Atmospheric effects make

More information

Overview. A real-time shadow approach for an Augmented Reality application using shadow volumes. Augmented Reality.

Overview. A real-time shadow approach for an Augmented Reality application using shadow volumes. Augmented Reality. Overview A real-time shadow approach for an Augmented Reality application using shadow volumes Introduction of Concepts Standard Stenciled Shadow Volumes Method Proposed Approach in AR Application Experimental

More information

Real-Time Universal Capture Facial Animation with GPU Skin Rendering

Real-Time Universal Capture Facial Animation with GPU Skin Rendering Real-Time Universal Capture Facial Animation with GPU Skin Rendering Meng Yang mengyang@seas.upenn.edu PROJECT ABSTRACT The project implements the real-time skin rendering algorithm presented in [1], and

More information

Hybrid Rendering for Interactive Virtual Scenes

Hybrid Rendering for Interactive Virtual Scenes Hybrid Rendering for Interactive Virtual Scenes Dan Morris, Neel Joshi dmorris@cs.stanford.edu, nsj@cs.stanford.edu Robotics Laboratory, Department of Computer Science, Stanford University, Stanford, CA

More information

Input Nodes. Surface Input. Surface Input Nodal Motion Nodal Displacement Instance Generator Light Flocking

Input Nodes. Surface Input. Surface Input Nodal Motion Nodal Displacement Instance Generator Light Flocking Input Nodes Surface Input Nodal Motion Nodal Displacement Instance Generator Light Flocking The different Input nodes, where they can be found, what their outputs are. Surface Input When editing a surface,

More information

CS 381 Computer Graphics, Fall 2008 Midterm Exam Solutions. The Midterm Exam was given in class on Thursday, October 23, 2008.

CS 381 Computer Graphics, Fall 2008 Midterm Exam Solutions. The Midterm Exam was given in class on Thursday, October 23, 2008. CS 381 Computer Graphics, Fall 2008 Midterm Exam Solutions The Midterm Exam was given in class on Thursday, October 23, 2008. 1. [4 pts] Drawing Where? Your instructor says that objects should always be

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

Reflection and Shading

Reflection and Shading Reflection and Shading R. J. Renka Department of Computer Science & Engineering University of North Texas 10/19/2015 Light Sources Realistic rendering requires that we model the interaction between light

More information

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

Clipping. CSC 7443: Scientific Information Visualization

Clipping. CSC 7443: Scientific Information Visualization Clipping Clipping to See Inside Obscuring critical information contained in a volume data Contour displays show only exterior visible surfaces Isosurfaces can hide other isosurfaces Other displays can

More information

Shaders. Slide credit to Prof. Zwicker

Shaders. Slide credit to Prof. Zwicker Shaders Slide credit to Prof. Zwicker 2 Today Shader programming 3 Complete model Blinn model with several light sources i diffuse specular ambient How is this implemented on the graphics processor (GPU)?

More information

Chapter 5. Projections and Rendering

Chapter 5. Projections and Rendering Chapter 5 Projections and Rendering Topics: Perspective Projections The rendering pipeline In order to view manipulate and view a graphics object we must find ways of storing it a computer-compatible way.

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

Introduction to OpenGL

Introduction to OpenGL Introduction to OpenGL 1995-2015 Josef Pelikán & Alexander Wilkie CGG MFF UK Praha pepca@cgg.mff.cuni.cz http://cgg.mff.cuni.cz/~pepca/ 1 / 31 Advances in Hardware 3D acceleration is a common feature in

More information

CS 325 Computer Graphics

CS 325 Computer Graphics CS 325 Computer Graphics 04 / 02 / 2012 Instructor: Michael Eckmann Today s Topics Questions? Comments? Illumination modelling Ambient, Diffuse, Specular Reflection Surface Rendering / Shading models Flat

More information

Adaptive Point Cloud Rendering

Adaptive Point Cloud Rendering 1 Adaptive Point Cloud Rendering Project Plan Final Group: May13-11 Christopher Jeffers Eric Jensen Joel Rausch Client: Siemens PLM Software Client Contact: Michael Carter Adviser: Simanta Mitra 4/29/13

More information

Notes on Computer Graphics and OpenGL. Thomas Strathmann

Notes on Computer Graphics and OpenGL. Thomas Strathmann Notes on Computer Graphics and OpenGL Thomas Strathmann February 2, 2011 Preface The purpose of this document is to server as a sort of logbook in which I put down all the interesting math and assorted

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

Sketchy Illustrations for Presenting the Design of Interactive CSG

Sketchy Illustrations for Presenting the Design of Interactive CSG Sketchy Illustrations for Presenting the Design of Interactive CSG Marc Nienhaus, Florian Kirsch, Jürgen Döllner University of Potsdam, Hasso Plattner Institute {nienhaus@hpi.uni-potsdam.de, kirsch@hpi.uni-potsdam.de,

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

CS 130 Exam I. Fall 2015

CS 130 Exam I. Fall 2015 S 3 Exam I Fall 25 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

Mattan Erez. The University of Texas at Austin

Mattan Erez. The University of Texas at Austin EE382V: Principles in Computer Architecture Parallelism and Locality Fall 2008 Lecture 10 The Graphics Processing Unit Mattan Erez The University of Texas at Austin Outline What is a GPU? Why should we

More information

Advanced Lighting Techniques Due: Monday November 2 at 10pm

Advanced Lighting Techniques Due: Monday November 2 at 10pm CMSC 23700 Autumn 2015 Introduction to Computer Graphics Project 3 October 20, 2015 Advanced Lighting Techniques Due: Monday November 2 at 10pm 1 Introduction This assignment is the third and final part

More information

Fast Texture Based Form Factor Calculations for Radiosity using Graphics Hardware

Fast Texture Based Form Factor Calculations for Radiosity using Graphics Hardware Fast Texture Based Form Factor Calculations for Radiosity using Graphics Hardware Kasper Høy Nielsen Niels Jørgen Christensen Informatics and Mathematical Modelling The Technical University of Denmark

More information

9. Illumination and Shading

9. Illumination and Shading 9. Illumination and Shading Approaches for visual realism: - Remove hidden surfaces - Shade visible surfaces and reproduce shadows - Reproduce surface properties Texture Degree of transparency Roughness,

More information

Screen Space Ambient Occlusion TSBK03: Advanced Game Programming

Screen Space Ambient Occlusion TSBK03: Advanced Game Programming Screen Space Ambient Occlusion TSBK03: Advanced Game Programming August Nam-Ki Ek, Oscar Johnson and Ramin Assadi March 5, 2015 This project report discusses our approach of implementing Screen Space Ambient

More information

2.11 Particle Systems

2.11 Particle Systems 2.11 Particle Systems 320491: Advanced Graphics - Chapter 2 152 Particle Systems Lagrangian method not mesh-based set of particles to model time-dependent phenomena such as snow fire smoke 320491: Advanced

More information

Computer graphics 2: Graduate seminar in computational aesthetics

Computer graphics 2: Graduate seminar in computational aesthetics Computer graphics 2: Graduate seminar in computational aesthetics Angus Forbes evl.uic.edu/creativecoding/cs526 Homework 2 RJ ongoing... - Follow the suggestions in the Research Journal handout and find

More information

Multipass GPU Surface Rendering in 4D Ultrasound

Multipass GPU Surface Rendering in 4D Ultrasound 2012 Cairo International Biomedical Engineering Conference (CIBEC) Cairo, Egypt, December 20-21, 2012 Multipass GPU Surface Rendering in 4D Ultrasound Ahmed F. Elnokrashy 1,2, Marwan Hassan 1, Tamer Hosny

More information

Lab 9 - Metal and Glass

Lab 9 - Metal and Glass Lab 9 - Metal and Glass Let the form of an object be what it may, light, shade, and perspective will always make it beautiful. -John Constable Prologue Support code: /course/cs1230/src/labs/lab09 This

More information

Project report Augmented reality with ARToolKit

Project report Augmented reality with ARToolKit Project report Augmented reality with ARToolKit FMA175 Image Analysis, Project Mathematical Sciences, Lund Institute of Technology Supervisor: Petter Strandmark Fredrik Larsson (dt07fl2@student.lth.se)

More information

CSE 167: Lecture #8: Lighting. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011

CSE 167: Lecture #8: Lighting. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011 CSE 167: Introduction to Computer Graphics Lecture #8: Lighting Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011 Announcements Homework project #4 due Friday, October 28 Introduction:

More information

Today. Rendering algorithms. Rendering algorithms. Images. Images. Rendering Algorithms. Course overview Organization Introduction to ray tracing

Today. Rendering algorithms. Rendering algorithms. Images. Images. Rendering Algorithms. Course overview Organization Introduction to ray tracing Today Rendering Algorithms Course overview Organization Introduction to ray tracing Spring 2009 Matthias Zwicker Universität Bern Rendering algorithms Problem statement Given computer representation of

More information

Rasterization Overview

Rasterization Overview Rendering Overview The process of generating an image given a virtual camera objects light sources Various techniques rasterization (topic of this course) raytracing (topic of the course Advanced Computer

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

0. Introduction: What is Computer Graphics? 1. Basics of scan conversion (line drawing) 2. Representing 2D curves

0. Introduction: What is Computer Graphics? 1. Basics of scan conversion (line drawing) 2. Representing 2D curves CSC 418/2504: Computer Graphics Course web site (includes course information sheet): http://www.dgp.toronto.edu/~elf Instructor: Eugene Fiume Office: BA 5266 Phone: 416 978 5472 (not a reliable way) Email:

More information

A GPU Accelerated Spring Mass System for Surgical Simulation

A GPU Accelerated Spring Mass System for Surgical Simulation A GPU Accelerated Spring Mass System for Surgical Simulation Jesper MOSEGAARD #, Peder HERBORG, and Thomas Sangild SØRENSEN # Department of Computer Science, Centre for Advanced Visualization and Interaction,

More information

Lecturer Athanasios Nikolaidis

Lecturer Athanasios Nikolaidis Lecturer Athanasios Nikolaidis Computer Graphics: Graphics primitives 2D viewing and clipping 2D and 3D transformations Curves and surfaces Rendering and ray tracing Illumination models Shading models

More information

Programming Graphics Hardware

Programming Graphics Hardware Tutorial 5 Programming Graphics Hardware Randy Fernando, Mark Harris, Matthias Wloka, Cyril Zeller Overview of the Tutorial: Morning 8:30 9:30 10:15 10:45 Introduction to the Hardware Graphics Pipeline

More information

Today. Global illumination. Shading. Interactive applications. Rendering pipeline. Computergrafik. Shading Introduction Local shading models

Today. Global illumination. Shading. Interactive applications. Rendering pipeline. Computergrafik. Shading Introduction Local shading models Computergrafik Thomas Buchberger, Matthias Zwicker Universität Bern Herbst 2008 Today Introduction Local shading models Light sources strategies Compute interaction of light with surfaces Requires simulation

More information

Module 13C: Using The 3D Graphics APIs OpenGL ES

Module 13C: Using The 3D Graphics APIs OpenGL ES Module 13C: Using The 3D Graphics APIs OpenGL ES BREW TM Developer Training Module Objectives See the steps involved in 3D rendering View the 3D graphics capabilities 2 1 3D Overview The 3D graphics library

More information

Surface Graphics. 200 polys 1,000 polys 15,000 polys. an empty foot. - a mesh of spline patches:

Surface Graphics. 200 polys 1,000 polys 15,000 polys. an empty foot. - a mesh of spline patches: Surface Graphics Objects are explicitely defined by a surface or boundary representation (explicit inside vs outside) This boundary representation can be given by: - a mesh of polygons: 200 polys 1,000

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

3ds Max certification prep

3ds Max certification prep 3ds Max certification prep Study online at quizlet.com/_25oorz 1. 24 Frames per second 2. 25 Frames per second, Europe 3. 30 Frames per second, Americas and Japan 4. Absolute mode, off set mode 5. How

More information

Computer Graphics I Lecture 11

Computer Graphics I Lecture 11 15-462 Computer Graphics I Lecture 11 Midterm Review Assignment 3 Movie Midterm Review Midterm Preview February 26, 2002 Frank Pfenning Carnegie Mellon University http://www.cs.cmu.edu/~fp/courses/graphics/

More information

PROFESSIONAL. WebGL Programming DEVELOPING 3D GRAPHICS FOR THE WEB. Andreas Anyuru WILEY. John Wiley & Sons, Ltd.

PROFESSIONAL. WebGL Programming DEVELOPING 3D GRAPHICS FOR THE WEB. Andreas Anyuru WILEY. John Wiley & Sons, Ltd. PROFESSIONAL WebGL Programming DEVELOPING 3D GRAPHICS FOR THE WEB Andreas Anyuru WILEY John Wiley & Sons, Ltd. INTRODUCTION xxl CHAPTER 1: INTRODUCING WEBGL 1 The Basics of WebGL 1 So Why Is WebGL So Great?

More information

Illumination Models & Shading

Illumination Models & Shading Illumination Models & Shading Lighting vs. Shading Lighting Interaction between materials and light sources Physics Shading Determining the color of a pixel Computer Graphics ZBuffer(Scene) PutColor(x,y,Col(P));

More information

For each question, indicate whether the statement is true or false by circling T or F, respectively.

For each question, indicate whether the statement is true or false by circling T or F, respectively. True/False For each question, indicate whether the statement is true or false by circling T or F, respectively. 1. (T/F) Rasterization occurs before vertex transformation in the graphics pipeline. 2. (T/F)

More information

Computergrafik. Matthias Zwicker. Herbst 2010

Computergrafik. Matthias Zwicker. Herbst 2010 Computergrafik Matthias Zwicker Universität Bern Herbst 2010 Today Bump mapping Shadows Shadow mapping Shadow mapping in OpenGL Bump mapping Surface detail is often the result of small perturbations in

More information

CS5620 Intro to Computer Graphics

CS5620 Intro to Computer Graphics CS 5620 Fall 2015 www.youtube.com/watch?v=hjhic0mt4ts 3 Computer Graphics Synthesis of static/dynamic 2D images from 3D geometry using computers Teaching Staff Lecturer: Prof. Craig Gotsman Class: Mon

More information

A SXGA 3D Display Processor with Reduced Rendering Data and Enhanced Precision

A SXGA 3D Display Processor with Reduced Rendering Data and Enhanced Precision A SXGA 3D Display Processor with Reduced Rendering Data and Enhanced Precision Seok-Hoon Kim KAIST, Daejeon, Republic of Korea I. INTRODUCTION Recently, there has been tremendous progress in 3D graphics

More information

Advanced Computer Graphics (CS & SE ) Lecture 7

Advanced Computer Graphics (CS & SE ) Lecture 7 Advanced Computer Graphics (CS & SE 233.420) Lecture 7 CREDITS Bill Mark, NVIDIA Programmable Graphics Technology, SIGGRAPH 2002 Course. David Kirk, GPUs and CPUs:The Uneasy Alliance, Panel Presentation,

More information

Volumetric Deformable Models for Simulation of Laparoscopic Surgery

Volumetric Deformable Models for Simulation of Laparoscopic Surgery Volumetric Deformable Models for Simulation of Laparoscopic Surgery S. Cotin y, H. Delingette y, J.M. Clément z V. Tassetti z, J. Marescaux z, N. Ayache y y INRIA, Epidaure Project 2004, route des Lucioles,

More information