Interactive Computer Graphics

Save this PDF as:
 WORD  PNG  TXT  JPG

Size: px
Start display at page:

Download "Interactive Computer Graphics"

Transcription

1 Interactive Computer Graphics A Top-Down Approach Using OpenGL FIFTH EDITION EDWARD ANGEL UNIVERSITY OF NEW MEXICO PEARSON Addison Wesley Boston San Francisco New York London Toronto Sydney Tokyo Singapore Madrid Mexico City Munich Paris Cape Töwn Hong Kong Montreal

2 Preface xxv CHAPTER 1 GRAPHICS SYSTEMS AND MODELS 1.1 Applications of Computer Graphics Display of Information Design Simulation and Animation User Interfaces A Graphics System Pixels and the Frame Buffer Output Devices Input Devices Images: Physical and Synthetic Objects and Viewers Light and Images Image Formation Models Imaging Systems The Pinhole Camera The Human Visual System The Synthetic-Camera Model 1.6 The Programmer's Interface The Pen-Plotter Model Three-Dimensional APIs A Sequence of Images The Modeling-Rendering Paradigm Graphics Architectures Display Processors Pipeline Architectures The Graphics Pipeline Vertex Processing 32

3 viii Contents Clipping and Primitive Assembly Rasterization Fragment Processing Programmable Pipelines Performance Characteristics 34 Summary and Notes 35 Suggested Readings 36 Exercises 36 CHAPTER2 GRAPHICS PROGRAMMING The Sierpinski Gasket Programming Two-Dimensional Applications Coordinate Systems The OpenGL API Graphics Functions The Graphics Pipeline and State Machines The OpenGL Interface Primitives and Attributes Polygon Basics Polygon Types in OpenGL Approximating a Sphere Text Curved Objects Attributes Color RGB Color Indexed Color Setting of Color Attributes Viewing The Orthographie View Two-Dimensional Viewing Matrix Modes Control Functions Interaction with the Window System Aspect Ratio and Viewports The main, display, and myinit Functions Program Structure The Gasket Program Polygons and Recursion 77

4 Contents 2.10 The Three-Dimensional Gasket Use of Three-Dimensional Points Use of Polygons in Three Dimensions Hidden-Surface Removal Plotting Implicit Functions Marching Squares 86 Summary and Notes 92 Suggested Readings 94 Exercises 94 CHAPTF.R3 INPUT AND INTERACTION Interaction Input Devices Physical Input Devices Logical Devices Input Modes Clients and Servers Display Lists Definition and Execution of Display Lists Text and Display Lists Fonts in GLUT Display Lists and Modeling Programming Event-Driven Input Using the Pointing Device Window Events Keyboard Events The Display and Idle Callbacks Window Management Menüs Picking Picking and Selection Mode A Simple CAD Program Building Interactive Models Animating Interactive Programs The Rotating Square Double Buffering Using a Timer Design of Interactive Programs Toolkits, Widgets, and the Frame Buffer 148

5 Contents Logic Operations Drawing Erasable Lines 150 XORandColor 153 Cursors and Overlay Planes 153 Summary and Notes 154 Suggested Readings 155 Exercises CHAPTER 4. GEOMETRIC OBJECTS AND TRANSFORMATIONS Sealars, Points, and Vectors Geometrie Objects 160 Coordinate-Free Geometry 161 The Mathematical View: Vector and Affine Spaces 162 The Computer Science View 163 Geometrie ADTs 163 Lines 165 Affine Sums 165 Convexity 166 Dot and Cross Products 166 Planes 167 Three-Dimensional Primitives Coordinate Systems and Frames Representations and N-Tuples 172 Change of Coordinate Systems 172 Example Change of Representation 175 Homogeneous Coordinates 176 Example Change in Frames 179 Working with Representations 181 Frames in OpenGL Modeling a Colored Cube Modeling the Faces 188 Inward- and Outward-Pointing Faces 189 Data Structures for Object Representation 189 The Color Cube 190 Bilinear Interpolation 191 Vertex Arrays 192 Affine Transformations Translation, Rotation, and Scaling Translation 198 Rotation

6 4.7.3 Scaling Transformations in Homogeneous Coordinates Translation Scaling Rotation Shear Concatenation of Transformations Rotation About a Fixed Point General Rotation The Instance Transformation Rotation About an Arbitrary Axis OpenGL Transformation Matrices The Current Transformation Matrix Rotation, Translation, and Scaling Rotation About a Fixed Point in OpenGL Order of Transformations Spinning of the Cube Loading, Pushing, and Popping Matrices Interfaces to Three-Dimensional Applications Using Areas of the Screen A Virtual Trackball Smooth Rotations Incremental Rotation Quaternions Complex Numbers and Quaternions Quaternions and Rotation 228 Summary and Notes 230 Suggested Readings 231 Exercises VIEWING Classical and Computer Viewing Classical Viewing Orthographie Projections Axonometrie Projections Oblique Projections Perspective Viewing Viewing with a Computer 242

7 xii Contents 5.3 Positioning of the Camera Positioning of the Camera Frame Two Viewing APIs The Look-At Function Other Viewing APIs Simple Projections Perspective Projections Orthogonal Projections Projections in OpenGL Perspective in OpenGL Parallel Viewing in OpenGL Hidden-Surface Removal Culling Interactive Mesh Displays Meshes Walking Through a Scene Polygon Offset Parallel-Projection Matrices Projection Normalization Orthogonal-Projection Matrices Oblique Projections Perspective-Projection Matrices Perspective Normalization OpenGL Perspective Transformations Projections and Shadows 281 Summary and Notes 284 Suggested Readings 285 Exercises 285 CHAPTER6 LIGHTING AND SHADING Light and Matter Light Sources Color Sources Ambient Light Point Sources Spotlights Distant Light Sources The Phong Lighting Model Ambient Reflection 300

8 Contents xiii Diffuse Reflection Specular Reflection The Modified Phong Model Computation of Vectors Normal Vectors Angle of Reflection Polygonal Shading Fiat Shading Smooth and Gouraud Shading Phong Shading Approximation of a Sphere by Recursive Subdivision Light Sources in OpenGL Specification of Materials in OpenGL Shading of the Sphere Model Global Illumination 323 Summary and Notes 325 Suggested Readings 326 Exercises 326 CHAPTER 7 FROM VERTICES TO FRAGMENTS Basic Implementation Strategies Four Major Tasks Modeling Geometry Processing Rasterization Fragment Processing Clipping Line-Segment Clipping Cohen-Sutherland Clipping Liang-Barsky Clipping Polygon Clipping Clipping of Other Primitives Bounding Boxes and Volumes Curves, Surfaces, and Text Clipping in the Frame Buffer Clipping in Three Dimensions Rasterization Bresenham's Algorithm 352

9 xiv Contents 7.10 Polygon Rasterization Inside-Outside Testing OpenGL and Concave Polygons Fill and Sort Flood Fill Singularities Hidden-Surface Removal Object-Space and Image-Space Approaches Sorting and Hidden-Surface Removal ScanLine Algorithms Back-Face Removal The z-buffer Algorithm Scan Conversion with the z-buffer Depth Sort and the Painter's Algorithm Antialiasing Display Considerations Color Systems The Color Matrix Gamma Correction Dithering and Halftoning 376 Summary and Notes 377 Suggested Readings 379 Exercises DISCRETE TECHNIQUES Buffers Digital Images Writing into Buffers Writing Modes Writes with XOR Bit and Pixel Operations in OpenGL OpenGL Buffers and the Pixel Pipeline Bitmaps Raster Fonts Pixels and Images Lookup Tables Examples Displaying a Color Gamut Testing Algorithms Buffers for Picking 401

10 8.6 Mapping Methods Texture Mapping Two-Dimensional Texture Mapping Texture Mapping in OpenGL Two-Dimensional Texture Mapping Texture Sampling Working with Texture Coordinates Texture Objects Multitexturing Texture Generation Environment Maps Compositing Techniques Opacity and Blending Image Compositing Blending and Compositing in OpenGL Antialiasing Revisited Back-to-Front and Front-to-Back Rendering Depth Cueing and Fog Multirendering and the Accumulation Buffer Scene Antialiasing Bump Mapping and Embossing Image Processing Imaging Extensions Other Multipass Methods Sampling and Aliasing Sampling Theory Reconstruction Quantization 446 Summary and Notes 447 Suggested Readings 448 Exercises 448 cnarr-:f<9 PROGRAMMABLE SHADERS Programmable Pipelines Shading Languages ShadeTrees Extending OpenGL OpenGL Versions and Extensions GLSL and Cg 456

11 XVI Contents The OpenGL Shading Language Vertex Shaders 457 Fragment Shaders 459 The OpenGL Shading Language GLSL Execution 461 Data Types and Qualifiers 461 Operators and Functions 464 Linking Shaders with OpenGL Programs Moving Vertices Scaling Vertex Positions 470 Morphing 472 Particle Systems 474 Vertex Lighting with Shaders Phong Lighting 475 Nonphotorealistic Shading 478 Fragment Shaders Per-Vertex Versus Per-Fragment Lighting Samplers Cube Maps Reflection Maps 486 Refraction 487 Normalization Maps 490 Bump Mapping Finding Bump Maps 492 Examples 495 Summary and Notes 499 Suggested Readings 499 Exercises MODELING AMD rü=rarchy Symbols and Instances Hierarchical Models A Robot Arm Trees and Traversal A Stack-Based Traversal Use of Tree Data Structures Animation 517

12 Contents xvii 10.7 Graphical Objects Methods, Attributes, and Messages ACubeObject Implementing the Cube Object Objects and Hierarchy Geometrie Objects Scene Graphs A Simple Scene Graph API TheNodeClass Geometry Nodes Camera Class Lights and Materials Transformations The Robot Figure Implementing the Viewer Implementing a Node Open Scene Graph Graphics and the Internet Networks and Protocols Hypermedia and HTML Databases and VRML Java and Applets Other Tree Structures CSGTrees BSPTrees Quadtrees and Octrees 554 Summary and Notes 555 Suggested Readings 556 Exercises 556 : ipter 11 PROCEDURAL METHODS Algorithmic Models Physically-Based Models and Particle Systems Newtonian Particles Independent Particles Spring Forces Attractive and Repulsive Forces Solving Particle Systems 568

13 XVU1 Contents Constraints Collisions 571 Soft Constraints A Simple Partial System Displaying the Particles 574 Updating Particle Positions 575 Initialization 575 Collisions 576 Forces 577 Flocking Language-Based Models Recursive Methods and Fractals Rulers and Length 582 Fractal Dimension 583 Midpoint Division and Brownian Motion Fractal Mountains 585 The Mandelbrot Set Procedural Noise 590 Summary and Notes 594 Suggested Readings 594 Exercises 595 CHAP11:? 12 CURVES AND SUSPACES Representation of Curves and Surfaces Explicit Representation Implicit Representations Parametric Form Parametric Polynomial Curves Parametric Polynomial Surfaces Design Criteria Parametric Cubic Polynomial Curves Interpolation Blending Functions The Cubic Interpolating Patch Hermite Curves and Surfaces The Hermite Form Geometrie and Parametric Continuity Bezier Curves and Surfaces Bezier Curves 615

14 Contents xix Bezier Surface Patches Cubic B-Splines The Cubic B-Spline Curve B-Splines and Basis Spline Surfaces General B-Splines Recursively Defined B-Splines Uniform Splines Nonuniform B-Splines NURBS Catmull-Rom Splines Rendering Curves and Surfaces Polynomial Evaluation Methods Recursive Subdivision of Bezier Polynomials Rendering Other Polynomial Curves by Subdivision Subdivision of Bezier Surfaces The Utah Teapot Algebraic Surfaces Quadrics Rendering of Surfaces by Ray Casting Subdivision Curves and Surfaces Mesh Subdivision Curves and Surfaces in OpenGL Bezier Curves Bezier Surfaces Displaying the Teapot NURBS Functions Quadrics 648 Summary and Notes 649 Suggested Readings 650 Exercises CHARTER 13 ADVANCED RENDERING Going Beyond Pipeline Rendering 13.2 Ray Tracing 13.3 Building a Simple Ray Tracer Recursive Ray Tracing Calculating Intersections Ray-Tracing Variations

15 xx Contents 13.4 The Rendering Equation Radiosity The Radiosity Equation Solving the Radiosity Equation Computing Form Factors Carrying Out Radiosity RenderMan Parallel Rendering Sort-Middle Rendering Sort-Last Rendering Sort-First Rendering Image-Based Rendering A Simple Example 682 Summary and Notes 684 Suggested Readings 685 Exercises 686 APPENDIX A SAMPLE PROGRAMS 689 A.1 Sierpinski Gasket Program 690 A.2 Recursive Generation of Sierpinski Gasket 692 A.3 Recursive Three-Dimensional Sierpinski Gasket 693 A.4 Marching Squares 696 A.5 Polygon Modeling Program 701 A.6 Double-Buffering program 707 A.7 Selection-Mode Picking Program 710 A.8 Rotating-Cube Program 712 A.9 Rotating Cube Using Vertex Arrays 715 A.10 Rotating Cube with a Virtual Trackball 717 A.11 Moving Viewer 721 A.12 Sphere Program 724 A.13 Mandelbrot Set Program 727 A.14 Bresenham's Algorithm 730 A.15 Rotating Cube with Texture 733 A.16 GLSL Example 735 A.17 Scene Graph Program 741 A.18 Particle System Program 746 A.19 Program for Drawing Bezier Curves 751

16 Contents xxi APPENDIX B SPACES B.1 Sealars B.2 Vector Spaces B.3 Affine Spaces B.4 Euclidean Spaces B.5 Projections B.6 Gram-Schmidt Orthogonalization Suggested Readings 762 Exercises APPENDIX C MATRICES C.1 Definitions C.2 Matrix Operations C.3 Row and Column Matrices C.4 Rank C.5 Change of Representation C.6 The Cross Product C.7 Eigenvalues and Eigenvectors Suggested Readings 773 Exercises APPENDIX D SYNOPSIS OF OPENGL FUNCTIONS D.1 Specifying Simple Geometry D.2 Attributes D.3 Working with the Window System D.4 Interaction D.5 Enabling Features D.6 Transformations D.7 Viewing D.8 Defining Discrete Primitives D.9 Display Lists D.10 Picking D.11 Lighting D.12 Texture Mapping D.13 State and Buffer Manipulation D.14 Vertex Arrays

17 xxii Contents D.15 Blending Functions 789 D.16 Query Functions 789 D.17 Curve and Surface Functions 790 D.18 GLUQuadrics 791 D.19 GLSL Functions 791 References 795 OpenGL Function Index 805 Subject Index 807

Introduction to Computer Graphics

Introduction to Computer Graphics Introduction to Computer Graphics Torsten Möller TASC 8021 778-782-2215 torsten@sfu.ca www.cs.sfu.ca/~torsten Today What is computer graphics? Contents of this course Syllabus Overview of course topics

More information

Monash University Clayton s School of Information Technology CSE3313 Computer Graphics Sample Exam Questions 2007

Monash University Clayton s School of Information Technology CSE3313 Computer Graphics Sample Exam Questions 2007 Monash University Clayton s School of Information Technology CSE3313 Computer Graphics Questions 2007 INSTRUCTIONS: Answer all questions. Spend approximately 1 minute per mark. Question 1 30 Marks Total

More information

VALLIAMMAI ENGNIEERING COLLEGE SRM Nagar, Kattankulathur 603203.

VALLIAMMAI ENGNIEERING COLLEGE SRM Nagar, Kattankulathur 603203. VALLIAMMAI ENGNIEERING COLLEGE SRM Nagar, Kattankulathur 603203. DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Year & Semester : III Year, V Semester Section : CSE - 1 & 2 Subject Code : CS6504 Subject

More information

Course Overview. CSCI 480 Computer Graphics Lecture 1. Administrative Issues Modeling Animation Rendering OpenGL Programming [Angel Ch.

Course Overview. CSCI 480 Computer Graphics Lecture 1. Administrative Issues Modeling Animation Rendering OpenGL Programming [Angel Ch. CSCI 480 Computer Graphics Lecture 1 Course Overview January 14, 2013 Jernej Barbic University of Southern California http://www-bcf.usc.edu/~jbarbic/cs480-s13/ Administrative Issues Modeling Animation

More information

GAME ENGINE DESIGN. A Practical Approach to Real-Time Computer Graphics. ahhb. DAVID H. EBERLY Geometrie Tools, Inc.

GAME ENGINE DESIGN. A Practical Approach to Real-Time Computer Graphics. ahhb. DAVID H. EBERLY Geometrie Tools, Inc. 3D GAME ENGINE DESIGN A Practical Approach to Real-Time Computer Graphics SECOND EDITION DAVID H. EBERLY Geometrie Tools, Inc. ahhb _ jfw H NEW YORK-OXFORD-PARIS-SAN DIEGO fl^^h ' 4M arfcrgsbjlilhg, SAN

More information

INTRODUCTION TO RENDERING TECHNIQUES

INTRODUCTION TO RENDERING TECHNIQUES INTRODUCTION TO RENDERING TECHNIQUES 22 Mar. 212 Yanir Kleiman What is 3D Graphics? Why 3D? Draw one frame at a time Model only once X 24 frames per second Color / texture only once 15, frames for a feature

More information

Computer Graphics CS 543 Lecture 12 (Part 1) Curves. Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)

Computer Graphics CS 543 Lecture 12 (Part 1) Curves. Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI) Computer Graphics CS 54 Lecture 1 (Part 1) Curves Prof Emmanuel Agu Computer Science Dept. Worcester Polytechnic Institute (WPI) So Far Dealt with straight lines and flat surfaces Real world objects include

More information

We have learnt that the order of how we draw objects in 3D can have an influence on how the final image looks

We have learnt that the order of how we draw objects in 3D can have an influence on how the final image looks Review: Last Week We have learnt that the order of how we draw objects in 3D can have an influence on how the final image looks Depth-sort Z-buffer Transparency Orientation of triangle (order of vertices)

More information

Image Processing and Computer Graphics. Rendering Pipeline. Matthias Teschner. Computer Science Department University of Freiburg

Image Processing and Computer Graphics. Rendering Pipeline. Matthias Teschner. Computer Science Department University of Freiburg Image Processing and Computer Graphics Rendering Pipeline Matthias Teschner Computer Science Department University of Freiburg Outline introduction rendering pipeline vertex processing primitive processing

More information

2: Introducing image synthesis. Some orientation how did we get here? Graphics system architecture Overview of OpenGL / GLU / GLUT

2: Introducing image synthesis. Some orientation how did we get here? Graphics system architecture Overview of OpenGL / GLU / GLUT COMP27112 Computer Graphics and Image Processing 2: Introducing image synthesis Toby.Howard@manchester.ac.uk 1 Introduction In these notes we ll cover: Some orientation how did we get here? Graphics system

More information

A Short Introduction to Computer Graphics

A Short Introduction to Computer Graphics A Short Introduction to Computer Graphics Frédo Durand MIT Laboratory for Computer Science 1 Introduction Chapter I: Basics Although computer graphics is a vast field that encompasses almost any graphical

More information

COMPUTER GRAPHICS Computer Graphics

COMPUTER GRAPHICS Computer Graphics COMPUTER GRAPHICS Computer Graphics involves display, manipulation and storage of pictures and experimental data for proper visualization using a computer. Typical graphics system comprises of a host computer

More information

Computer Applications in Textile Engineering. Computer Applications in Textile Engineering

Computer Applications in Textile Engineering. Computer Applications in Textile Engineering 3. Computer Graphics Sungmin Kim http://latam.jnu.ac.kr Computer Graphics Definition Introduction Research field related to the activities that includes graphics as input and output Importance Interactive

More information

Dhiren Bhatia Carnegie Mellon University

Dhiren Bhatia Carnegie Mellon University Dhiren Bhatia Carnegie Mellon University University Course Evaluations available online Please Fill! December 4 : In-class final exam Held during class time All students expected to give final this date

More information

Content. Chapter 4 Functions 61 4.1 Basic concepts on real functions 62. Credits 11

Content. Chapter 4 Functions 61 4.1 Basic concepts on real functions 62. Credits 11 Content Credits 11 Chapter 1 Arithmetic Refresher 13 1.1 Algebra 14 Real Numbers 14 Real Polynomials 19 1.2 Equations in one variable 21 Linear Equations 21 Quadratic Equations 22 1.3 Exercises 28 Chapter

More information

Introduction Week 1, Lecture 1

Introduction Week 1, Lecture 1 CS 430/536 Computer Graphics I Introduction Week 1, Lecture 1 David Breen, William Regli and Maxim Peysakhov Geometric and Intelligent Computing Laboratory Department of Computer Science Drexel University

More information

B2.53-R3: COMPUTER GRAPHICS. NOTE: 1. There are TWO PARTS in this Module/Paper. PART ONE contains FOUR questions and PART TWO contains FIVE questions.

B2.53-R3: COMPUTER GRAPHICS. NOTE: 1. There are TWO PARTS in this Module/Paper. PART ONE contains FOUR questions and PART TWO contains FIVE questions. B2.53-R3: COMPUTER GRAPHICS NOTE: 1. There are TWO PARTS in this Module/Paper. PART ONE contains FOUR questions and PART TWO contains FIVE questions. 2. PART ONE is to be answered in the TEAR-OFF ANSWER

More information

Computer Graphics: Visualisation Lecture 3. Taku Komura Institute for Perception, Action & Behaviour

Computer Graphics: Visualisation Lecture 3. Taku Komura Institute for Perception, Action & Behaviour Computer Graphics: Visualisation Lecture 3 Taku Komura tkomura@inf.ed.ac.uk Institute for Perception, Action & Behaviour Taku Komura Computer Graphics & VTK 1 Last lecture... Visualisation can be greatly

More information

GUI GRAPHICS AND USER INTERFACES. Welcome to GUI! Mechanics. Mihail Gaianu 26/02/2014 1

GUI GRAPHICS AND USER INTERFACES. Welcome to GUI! Mechanics. Mihail Gaianu 26/02/2014 1 Welcome to GUI! Mechanics 26/02/2014 1 Requirements Info If you don t know C++, you CAN take this class additional time investment required early on GUI Java to C++ transition tutorial on course website

More information

Essential Mathematics for Computer Graphics fast

Essential Mathematics for Computer Graphics fast John Vince Essential Mathematics for Computer Graphics fast Springer Contents 1. MATHEMATICS 1 Is mathematics difficult? 3 Who should read this book? 4 Aims and objectives of this book 4 Assumptions made

More information

COMP-557: Fundamentals of Computer Graphics McGill University, Fall 2010

COMP-557: Fundamentals of Computer Graphics McGill University, Fall 2010 COMP-557: Fundamentals of Computer Graphics McGill University, Fall 2010 Class times 2:25 PM - 3:55 PM Mondays and Wednesdays Lecture room Trottier Building 2120 Instructor Paul Kry, kry@cs.mcgill.ca Course

More information

Computer Graphics. Course Goal. Objectives. Overview. Textbook. These lectures cover Chapters 1-6in detail and survey Chapters 7-1

Computer Graphics. Course Goal. Objectives. Overview. Textbook. These lectures cover Chapters 1-6in detail and survey Chapters 7-1 Computer Graphics Course Goal Paul Farrell Professor of Computer Science, Kent State University Office 270 MSB. Tel 672-9060 farrell@cs.kent.edu. Office hours: 6:00-7:30 TH and by appointment. The goal

More information

CS445 Exam 2 Solutions

CS445 Exam 2 Solutions November 20, 2014 Name CS445 Exam 2 Solutions Fall 2014 1. (max = 15) 5. (max = 21) 2. (max = 8) 6. (max = 16) 3. (max = 10) 7. (max = 16) 4. (max = 14) Final Score: (max=100) Please try to write legibly.

More information

Programming 3D Applications with HTML5 and WebGL

Programming 3D Applications with HTML5 and WebGL Programming 3D Applications with HTML5 and WebGL Tony Parisi Beijing Cambridge Farnham Köln Sebastopol Tokyo Table of Contents Preface ix Part I. Foundations 1. Introduction 3 HTML5: A New Visual Medium

More information

Lecture Notes, CEng 477

Lecture Notes, CEng 477 Computer Graphics Hardware and Software Lecture Notes, CEng 477 What is Computer Graphics? Different things in different contexts: pictures, scenes that are generated by a computer. tools used to make

More information

SkillsUSA 2014 Contest Projects 3-D Visualization and Animation

SkillsUSA 2014 Contest Projects 3-D Visualization and Animation SkillsUSA Contest Projects 3-D Visualization and Animation Click the Print this Section button above to automatically print the specifications for this contest. Make sure your printer is turned on before

More information

Computer Graphics. Geometric Modeling. Page 1. Copyright Gotsman, Elber, Barequet, Karni, Sheffer Computer Science - Technion. An Example.

Computer Graphics. Geometric Modeling. Page 1. Copyright Gotsman, Elber, Barequet, Karni, Sheffer Computer Science - Technion. An Example. An Example 2 3 4 Outline Objective: Develop methods and algorithms to mathematically model shape of real world objects Categories: Wire-Frame Representation Object is represented as as a set of points

More information

Masters of Science in Software & Information Systems

Masters of Science in Software & Information Systems Masters of Science in Software & Information Systems To be developed and delivered in conjunction with Regis University, School for Professional Studies Graphics Programming December, 2005 1 Table of Contents

More information

Curves and Surfaces. Goals. How do we draw surfaces? How do we specify a surface? How do we approximate a surface?

Curves and Surfaces. Goals. How do we draw surfaces? How do we specify a surface? How do we approximate a surface? Curves and Surfaces Parametric Representations Cubic Polynomial Forms Hermite Curves Bezier Curves and Surfaces [Angel 10.1-10.6] Goals How do we draw surfaces? Approximate with polygons Draw polygons

More information

Scan-Line Fill. Scan-Line Algorithm. Sort by scan line Fill each span vertex order generated by vertex list

Scan-Line Fill. Scan-Line Algorithm. Sort by scan line Fill each span vertex order generated by vertex list Scan-Line Fill Can also fill by maintaining a data structure of all intersections of polygons with scan lines Sort by scan line Fill each span vertex order generated by vertex list desired order Scan-Line

More information

Kinematic chains/skeleton Relative

Kinematic chains/skeleton Relative Review of Tuesday Complex (mechanical) objects consist of components Kinematic chains/skeleton represented as tree Hierarchical modeling facilitates implementation of relative behavior of components Relative

More information

Instructor. Goals. Image Synthesis Examples. Applications. Computer Graphics. Why Study 3D Computer Graphics?

Instructor. Goals. Image Synthesis Examples. Applications. Computer Graphics. Why Study 3D Computer Graphics? Computer Graphics Motivation: Why do we study 3D Graphics? http://www.cs.ucsd.edu/~ravir Instructor http://www.cs.ucsd.edu/~ravir PhD Stanford, 2002. PhD thesis developed Spherical Harmonic Lighting widely

More information

Computer Graphics. Introduction. Computer graphics. What is computer graphics? Yung-Yu Chuang

Computer Graphics. Introduction. Computer graphics. What is computer graphics? Yung-Yu Chuang Introduction Computer Graphics Instructor: Yung-Yu Chuang ( 莊 永 裕 ) E-mail: c@csie.ntu.edu.tw Office: CSIE 527 Grading: a MatchMove project Computer Science ce & Information o Technolog og Yung-Yu Chuang

More information

COMP175: Computer Graphics. Lecture 1 Introduction and Display Technologies

COMP175: Computer Graphics. Lecture 1 Introduction and Display Technologies COMP175: Computer Graphics Lecture 1 Introduction and Display Technologies Course mechanics Number: COMP 175-01, Fall 2009 Meetings: TR 1:30-2:45pm Instructor: Sara Su (sarasu@cs.tufts.edu) TA: Matt Menke

More information

Bachelor of Games and Virtual Worlds (Programming) Subject and Course Summaries

Bachelor of Games and Virtual Worlds (Programming) Subject and Course Summaries First Semester Development 1A On completion of this subject students will be able to apply basic programming and problem solving skills in a 3 rd generation object-oriented programming language (such as

More information

Teaching Introductory Computer Graphics Via Ray Tracing

Teaching Introductory Computer Graphics Via Ray Tracing Teaching Introductory Computer Graphics Via Ray Tracing Helen H. Hu Westminster College, Salt Lake City, UT hhu@westminstercollege.edu Figure 1. Examples of student work. For fun, enthusiastic students

More information

Using Photorealistic RenderMan for High-Quality Direct Volume Rendering

Using Photorealistic RenderMan for High-Quality Direct Volume Rendering Using Photorealistic RenderMan for High-Quality Direct Volume Rendering Cyrus Jam cjam@sdsc.edu Mike Bailey mjb@sdsc.edu San Diego Supercomputer Center University of California San Diego Abstract With

More information

Visual Special Effects Toolkit in C++

Visual Special Effects Toolkit in C++ Visual Special Effects Toolkit in C++ Tim Wittenburg WILEY COMPUTER PUBLISHING JOHN WILEY & SONS, INC. New York Chichester Weinheim Brisbane Singapore Toronto Contents Table of Figures Plates Preface Acknowledgments

More information

parametric spline curves

parametric spline curves parametric spline curves 1 curves used in many contexts fonts (2D) animation paths (3D) shape modeling (3D) different representation implicit curves parametric curves (mostly used) 2D and 3D curves are

More information

CPIT-285 Computer Graphics

CPIT-285 Computer Graphics Department of Information Technology B.S.Information Technology ABET Course Binder CPIT-85 Computer Graphics Prepared by Prof. Alhasanain Muhammad Albarhamtoushi Page of Sunday December 4 0 : PM Cover

More information

Introduction to Computer Graphics Marie-Paule Cani & Estelle Duveau

Introduction to Computer Graphics Marie-Paule Cani & Estelle Duveau Introduction to Computer Graphics Marie-Paule Cani & Estelle Duveau 04/02 Introduction & projective rendering 11/02 Prodedural modeling, Interactive modeling with parametric surfaces 25/02 Introduction

More information

Two hours UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE. M.Sc. in Advanced Computer Science. Friday 18 th January 2008.

Two hours UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE. M.Sc. in Advanced Computer Science. Friday 18 th January 2008. COMP60321 Two hours UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE M.Sc. in Advanced Computer Science Computer Animation Friday 18 th January 2008 Time: 09:45 11:45 Please answer any THREE Questions

More information

Shading with Shaders. Computer Graphics, VT 2015 Lecture 6

Shading with Shaders. Computer Graphics, VT 2015 Lecture 6 Shading with Shaders Computer Graphics, VT 2015 Lecture 6 Johan Nysjö Centre for Image analysis Swedish University of Agricultural Sciences Uppsala University Today's topics Shading in modern OpenGL Per-vertex

More information

Computer Graphics. Anders Hast

Computer Graphics. Anders Hast Computer Graphics Anders Hast Who am I?! 5 years in Industry after graduation, 2 years as high school teacher.! 1996 Teacher, University of Gävle! 2004 PhD, Computerised Image Processing " Computer Graphics!

More information

Introduction to Computer Graphics

Introduction to Computer Graphics Introduction to Computer Graphics Version 1.1, January 2016 David J. Eck Hobart and William Smith Colleges This is a PDF version of a free, on-line book that is available at http://math.hws.edu/graphicsbook/.

More information

Buffers and Texture Mapping. Overview. Buffers. David Carr Fundamentals of Computer Graphics Spring 2004 Based on Slides by E.

Buffers and Texture Mapping. Overview. Buffers. David Carr Fundamentals of Computer Graphics Spring 2004 Based on Slides by E. INSTITUTIONEN FÖR SYSTEMTEKNIK LULEÅ TEKNISKA UNIVERSITET Buffers and Texture Mapping David Carr Fundamentals of Computer Graphics Spring 2004 Based on Slides by E. Angel Feb-18-04 SMD159, Buffers and

More information

Geometric Modelling & Curves

Geometric Modelling & Curves Geometric Modelling & Curves Geometric Modeling Creating symbolic models of the physical world has long been a goal of mathematicians, scientists, engineers, etc. Recently technology has advanced sufficiently

More information

Computer Graphics. Lecture 1:

Computer Graphics. Lecture 1: Computer Graphics Thilo Kielmann Lecture 1: 1 Introduction (basic administrative information) Course Overview + Examples (a.o. Pixar, Blender, ) Graphics Systems Hands-on Session General Introduction http://www.cs.vu.nl/~graphics/

More information

CSE 564: Visualization. GPU Programming (First Steps) GPU Generations. Klaus Mueller. Computer Science Department Stony Brook University

CSE 564: Visualization. GPU Programming (First Steps) GPU Generations. Klaus Mueller. Computer Science Department Stony Brook University GPU Generations CSE 564: Visualization GPU Programming (First Steps) Klaus Mueller Computer Science Department Stony Brook University For the labs, 4th generation is desirable Graphics Hardware Pipeline

More information

Introduction Week 1, Lecture 1

Introduction Week 1, Lecture 1 CS 430/585 Computer Graphics I Introduction Week 1, Lecture 1 David Breen, William Regli and Maxim Peysakhov Geometric and Intelligent Computing Laboratory Department of Computer Science Drexel University

More information

Cork Education and Training Board. Programme Module for. 3 Dimensional Computer Graphics. Leading to. Level 5 FETAC

Cork Education and Training Board. Programme Module for. 3 Dimensional Computer Graphics. Leading to. Level 5 FETAC Cork Education and Training Board Programme Module for 3 Dimensional Computer Graphics Leading to Level 5 FETAC 3 Dimensional Computer Graphics 5N5029 3 Dimensional Computer Graphics 5N5029 1 Version 3

More information

3D Math Overview and 3D Graphics Foundations

3D Math Overview and 3D Graphics Foundations Freescale Semiconductor Application Note Document Number: AN4132 Rev. 0, 05/2010 3D Math Overview and 3D Graphics Foundations by Multimedia Applications Division Freescale Semiconductor, Inc. Austin, TX

More information

CS 4204 Computer Graphics

CS 4204 Computer Graphics CS 4204 Computer Graphics 3D views and projection Adapted from notes by Yong Cao 1 Overview of 3D rendering Modeling: *Define object in local coordinates *Place object in world coordinates (modeling transformation)

More information

We can display an object on a monitor screen in three different computer-model forms: Wireframe model Surface Model Solid model

We can display an object on a monitor screen in three different computer-model forms: Wireframe model Surface Model Solid model CHAPTER 4 CURVES 4.1 Introduction In order to understand the significance of curves, we should look into the types of model representations that are used in geometric modeling. Curves play a very significant

More information

CSE 167: Lecture 13: Bézier Curves. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011

CSE 167: Lecture 13: Bézier Curves. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011 CSE 167: Introduction to Computer Graphics Lecture 13: Bézier Curves Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011 Announcements Homework project #6 due Friday, Nov 18

More information

Introduction to Computer Graphics. Reading: Angel ch.1 or Hill Ch1.

Introduction to Computer Graphics. Reading: Angel ch.1 or Hill Ch1. Introduction to Computer Graphics Reading: Angel ch.1 or Hill Ch1. What is Computer Graphics? Synthesis of images User Computer Image Applications 2D Display Text User Interfaces (GUI) - web - draw/paint

More information

2D Geometric Transformations. COMP 770 Fall 2011

2D Geometric Transformations. COMP 770 Fall 2011 2D Geometric Transformations COMP 770 Fall 2011 1 A little quick math background Notation for sets, functions, mappings Linear transformations Matrices Matrix-vector multiplication Matrix-matrix multiplication

More information

Interactive visualization of multi-dimensional data in R using OpenGL

Interactive visualization of multi-dimensional data in R using OpenGL Interactive visualization of multi-dimensional data in R using OpenGL 6-Monats-Arbeit im Rahmen der Prüfung für Diplom-Wirtschaftsinformatiker an der Universität Göttingen vorgelegt am 09.10.2002 von Daniel

More information

Fundamentals of Computer Graphics

Fundamentals of Computer Graphics Fundamentals of Computer Graphics INTRODUCTION! Sergio Benini! Department of Information Engineering Faculty of Engineering University of Brescia Via Branze, 38 25231 Brescia - ITALY 1 Overview Here you

More information

Computer Graphics. 2.1 Mathematics

Computer Graphics. 2.1 Mathematics 2 Computer Graphics What You Will Learn: The objectives of this chapter are quite ambitious; you should refer to the references cited in each Section to get a deeper explanation of the topics presented.

More information

Introduction to 3D Game Programming with DirectX 9.0c: A Shader Approach

Introduction to 3D Game Programming with DirectX 9.0c: A Shader Approach Introduction to 3D Game Programming with DirectX 9.0c: A Shader Approach Introduction Part I Mathematical Prerequisites Chapter 1 Vector Algebra 1.1 Vectors 1.1.1 Vectors and Coordinate Systems 1.1.2 Left-Handed

More information

Lezione 4: Grafica 3D*(II)

Lezione 4: Grafica 3D*(II) Lezione 4: Grafica 3D*(II) Informatica Multimediale Docente: Umberto Castellani *I lucidi sono tratti da una lezione di Maura Melotti (m.melotti@cineca.it) RENDERING Rendering What is rendering? Rendering

More information

COMPUTER GRAPHICS IMPORTANT QUESTION AND ANSWERS. Computer graphics

COMPUTER GRAPHICS IMPORTANT QUESTION AND ANSWERS. Computer graphics Computer graphics 1. Define Computer graphics. Computer graphics remains one of the most existing and rapidly growing computer fields. Computer graphics may be defined as a pictorial representation or

More information

Digital 3D Animation

Digital 3D Animation Elizabethtown Area School District Digital 3D Animation Course Number: 753 Length of Course: 1 semester 18 weeks Grade Level: 11-12 Elective Total Clock Hours: 120 hours Length of Period: 80 minutes Date

More information

Shader Model 3.0. Ashu Rege. NVIDIA Developer Technology Group

Shader Model 3.0. Ashu Rege. NVIDIA Developer Technology Group Shader Model 3.0 Ashu Rege NVIDIA Developer Technology Group Talk Outline Quick Intro GeForce 6 Series (NV4X family) New Vertex Shader Features Vertex Texture Fetch Longer Programs and Dynamic Flow Control

More information

Introduction to Computer Graphics 8. Buffers and Mapping techniques (A)

Introduction to Computer Graphics 8. Buffers and Mapping techniques (A) Introduction to Computer Graphics 8. Buffers and Mapping techniques (A) National Chiao Tung Univ, Taiwan By: I-Chen Lin, Assistant Professor Textbook: Hearn and Baker, Computer Graphics, 3rd Ed., Prentice

More information

SAN DIEGO COMMUNITY COLLEGE DISTRICT MESA COLLEGE ASSOCIATE DEGREE COURSE OUTLINE

SAN DIEGO COMMUNITY COLLEGE DISTRICT MESA COLLEGE ASSOCIATE DEGREE COURSE OUTLINE MULT 130 CIC Approval: 03/12/2015 BOT APPROVAL: 04/16/2015 STATE APPROVAL: EFFECTIVE TERM: Fall 2015 SECTION I SAN DIEGO COMMUNITY COLLEGE DISTRICT MESA COLLEGE ASSOCIATE DEGREE COURSE OUTLINE SUBJECT

More information

Introduction to GPGPU. Tiziano Diamanti t.diamanti@cineca.it

Introduction to GPGPU. Tiziano Diamanti t.diamanti@cineca.it t.diamanti@cineca.it Agenda From GPUs to GPGPUs GPGPU architecture CUDA programming model Perspective projection Vectors that connect the vanishing point to every point of the 3D model will intersecate

More information

Recent Advances and Future Trends in Graphics Hardware. Michael Doggett Architect November 23, 2005

Recent Advances and Future Trends in Graphics Hardware. Michael Doggett Architect November 23, 2005 Recent Advances and Future Trends in Graphics Hardware Michael Doggett Architect November 23, 2005 Overview XBOX360 GPU : Xenos Rendering performance GPU architecture Unified shader Memory Export Texture/Vertex

More information

Computer Graphics Hardware An Overview

Computer Graphics Hardware An Overview Computer Graphics Hardware An Overview Graphics System Monitor Input devices CPU/Memory GPU Raster Graphics System Raster: An array of picture elements Based on raster-scan TV technology The screen (and

More information

Realtime 3D Computer Graphics Virtual Reality

Realtime 3D Computer Graphics Virtual Reality Realtime 3D Computer Graphics Virtual Realit Viewing and projection Classical and General Viewing Transformation Pipeline CPU Pol. DL Pixel Per Vertex Texture Raster Frag FB object ee clip normalized device

More information

Plug-in Software Developer Kit (SDK)

Plug-in Software Developer Kit (SDK) Updated February 2, 2012 2 modo 601 Plug-in Development Kit for PC and Mac The modo 601 Plug-in Software Development Kit provides a set of Application Programming Interfaces (APIs) and numerous source

More information

Our One-Year 3D Animation Program is a comprehensive training in 3D using Alias

Our One-Year 3D Animation Program is a comprehensive training in 3D using Alias 1 YEAR 3D ANIMATION Illusion is the first of all pleasures Oscar Wilde Our One-Year 3D Animation Program is a comprehensive training in 3D using Alias Oscar Winning software, Maya, the industry standard

More information

Game Development in Android Disgruntled Rats LLC. Sean Godinez Brian Morgan Michael Boldischar

Game Development in Android Disgruntled Rats LLC. Sean Godinez Brian Morgan Michael Boldischar Game Development in Android Disgruntled Rats LLC Sean Godinez Brian Morgan Michael Boldischar Overview Introduction Android Tools Game Development OpenGL ES Marketing Summary Questions Introduction Disgruntled

More information

5. GEOMETRIC MODELING

5. GEOMETRIC MODELING 5. GEOMETRIC MODELING Types of Curves and Their Mathematical Representation Types of Surfaces and Their Mathematical Representation Types of Solids and Their Mathematical Representation CAD/CAM Data Exchange

More information

suggestive contours and abstracted shading Daniel Arias

suggestive contours and abstracted shading Daniel Arias suggestive contours and abstracted shading Daniel Arias LINES AND SHADES Shape, volume, shades and texture in drawing lines as nonphotorealistic rendering technique Luis Caballero Suggestive contours Many

More information

Illumination Models and Shading. Foley & Van Dam, Chapter 16

Illumination Models and Shading. Foley & Van Dam, Chapter 16 Illumination Models and Shading Foley & Van Dam, Chapter 16 Illumination Models and Shading Light Source Models Ambient Illumination Diffuse Reflection Specular Reflection Polygon Rendering Methods Flat

More information

Deferred Shading. Shawn Hargreaves

Deferred Shading. Shawn Hargreaves Deferred Shading Shawn Hargreaves Overview Don t bother with any lighting while drawing scene geometry Render to a fat framebuffer format, using multiple rendertargets to store data such as the position

More information

Introduction to Computer Graphics

Introduction to Computer Graphics Chapter 1 Objectives Introduction to Computer Graphics To understand the basic objectives and scope of computer graphics To identify computer graphics applications To understand the basic structures of

More information

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

CSE 167: Lecture #3: Projection. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011 CSE 167: Introduction to Computer Graphics Lecture #3: Projection Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011 Announcements Project 1 due Friday September 30 th, presentation

More information

CUBE-MAP DATA STRUCTURE FOR INTERACTIVE GLOBAL ILLUMINATION COMPUTATION IN DYNAMIC DIFFUSE ENVIRONMENTS

CUBE-MAP DATA STRUCTURE FOR INTERACTIVE GLOBAL ILLUMINATION COMPUTATION IN DYNAMIC DIFFUSE ENVIRONMENTS ICCVG 2002 Zakopane, 25-29 Sept. 2002 Rafal Mantiuk (1,2), Sumanta Pattanaik (1), Karol Myszkowski (3) (1) University of Central Florida, USA, (2) Technical University of Szczecin, Poland, (3) Max- Planck-Institut

More information

Specular reflection. Dielectrics and Distribution in Ray Tracing. Snell s Law. Ray tracing dielectrics

Specular reflection. Dielectrics and Distribution in Ray Tracing. Snell s Law. Ray tracing dielectrics Specular reflection Dielectrics and Distribution in Ray Tracing CS 465 Lecture 22 Smooth surfaces of pure materials have ideal specular reflection (said this before) Metals (conductors) and dielectrics

More information

Computer Graphics. Computer graphics deals with all aspects of creating images with a computer

Computer Graphics. Computer graphics deals with all aspects of creating images with a computer Computer Graphics Computer graphics deals with all aspects of creating images with a computer Hardware Software Applications Computer graphics is using computers to generate and display images based on

More information

William Paterson University of New Jersey Department of Computer Science College of Science and Health Course Outline

William Paterson University of New Jersey Department of Computer Science College of Science and Health Course Outline William Paterson University of New Jersey Department of Computer Science College of Science and Health Course Outline 1. TITLE OF COURSE AND COURSE NUMBER: Computer Graphics, CS 461, Credits: 3, (Major

More information

Univariate and Multivariate Methods PEARSON. Addison Wesley

Univariate and Multivariate Methods PEARSON. Addison Wesley Time Series Analysis Univariate and Multivariate Methods SECOND EDITION William W. S. Wei Department of Statistics The Fox School of Business and Management Temple University PEARSON Addison Wesley Boston

More information

INTERACTIVE COMPUTER GRAPHICS Data Structures, Algorithms, Languages

INTERACTIVE COMPUTER GRAPHICS Data Structures, Algorithms, Languages INTERACTIVE COMPUTER GRAPHICS Data Structures, Algorithms, Languages Wolfgang K. Glloi Technical University of Berlin and University of Minnesota Tochnisths BodischBle Dnrmstadt FACHEEKE1CH 1NFORMATIK

More information

Modern Graphics Engine Design. Sim Dietrich NVIDIA Corporation sim.dietrich@nvidia.com

Modern Graphics Engine Design. Sim Dietrich NVIDIA Corporation sim.dietrich@nvidia.com Modern Graphics Engine Design Sim Dietrich NVIDIA Corporation sim.dietrich@nvidia.com Overview Modern Engine Features Modern Engine Challenges Scene Management Culling & Batching Geometry Management Collision

More information

Computer Graphics. Introduction. Aleksandra Pizurica. Ghent University

Computer Graphics. Introduction. Aleksandra Pizurica. Ghent University Computer Graphics Introduction Aleksandra Pizurica Ghent University Telecommunications and Information Processing Image Processing and Interpretation Group Overview Lectures and coursework Instructors,

More information

DATA VISUALIZATION OF THE GRAPHICS PIPELINE: TRACKING STATE WITH THE STATEVIEWER

DATA VISUALIZATION OF THE GRAPHICS PIPELINE: TRACKING STATE WITH THE STATEVIEWER DATA VISUALIZATION OF THE GRAPHICS PIPELINE: TRACKING STATE WITH THE STATEVIEWER RAMA HOETZLEIN, DEVELOPER TECHNOLOGY, NVIDIA Data Visualizations assist humans with data analysis by representing information

More information

Silverlight for Windows Embedded Graphics and Rendering Pipeline 1

Silverlight for Windows Embedded Graphics and Rendering Pipeline 1 Silverlight for Windows Embedded Graphics and Rendering Pipeline 1 Silverlight for Windows Embedded Graphics and Rendering Pipeline Windows Embedded Compact 7 Technical Article Writers: David Franklin,

More information

Three-Dimensional Data Recovery Using Image-Based Modeling

Three-Dimensional Data Recovery Using Image-Based Modeling Three-Dimensional Data Recovery Using Image-Based Modeling Jeremy W. Cannon Jonathan C. Derryberry Vitaly Y. Kulikov jcannon1@mit.edu jonderry@mit.edu vkulikov@mit.edu Abstract 6.837: Introduction to Computer

More information

B4 Computational Geometry

B4 Computational Geometry 3CG 2006 / B4 Computational Geometry David Murray david.murray@eng.o.ac.uk www.robots.o.ac.uk/ dwm/courses/3cg Michaelmas 2006 3CG 2006 2 / Overview Computational geometry is concerned with the derivation

More information

Touchstone -A Fresh Approach to Multimedia for the PC

Touchstone -A Fresh Approach to Multimedia for the PC Touchstone -A Fresh Approach to Multimedia for the PC Emmett Kilgariff Martin Randall Silicon Engineering, Inc Presentation Outline Touchstone Background Chipset Overview Sprite Chip Tiler Chip Compressed

More information

CS 4810 Introduction to Computer Graphics

CS 4810 Introduction to Computer Graphics CS 4810 Introduction to Computer Graphics Connelly Barnes University of Virginia Acknowledgement: slides by Jason Lawrence, Misha Kazhdan, Allison Klein, Tom Funkhouser, Adam Finkelstein and David Dobkin

More information

Lecture 6: Discrete techniques

Lecture 6: Discrete techniques Lecture 6: Discrete techniques Topics: 1. Buffer operations 2. Texture maps 3. Environmental maps 4. Bump maps 5. Opacity and blending 6. Depth cueing and fog Chapter 7, Sections 7.1, 7.2, 7.3, 7.6, 7.7.,

More information

Shading. Reading. Pinhole camera. Basic 3D graphics. Brian Curless CSE 557 Fall 2013. Required: Shirley, Chapter 10

Shading. Reading. Pinhole camera. Basic 3D graphics. Brian Curless CSE 557 Fall 2013. Required: Shirley, Chapter 10 Reading Required: Shirley, Chapter 10 Shading Brian Curless CSE 557 Fall 2013 1 2 Basic 3D graphics With affine matrices, we can now transform virtual 3D obects in their local coordinate systems into a

More information

CS 543: Computer Graphics Lecture 9 (Part I): Raster Graphics: Drawing Lines. Emmanuel Agu

CS 543: Computer Graphics Lecture 9 (Part I): Raster Graphics: Drawing Lines. Emmanuel Agu CS 543: Computer Graphics Lecture 9 (Part I): Raster Graphics: Drawing Lines Emmanuel Agu 2D Graphics Pipeline Clipping Object World Coordinates Applying world window Object subset window to viewport mapping

More information

Beginning Android 4. Games Development. Mario Zechner. Robert Green

Beginning Android 4. Games Development. Mario Zechner. Robert Green Beginning Android 4 Games Development Mario Zechner Robert Green Contents Contents at a Glance About the Authors Acknowledgments Introduction iv xii xiii xiv Chapter 1: Android, the New Kid on the Block...

More information

ESSENTIAL CURRICULUM GUIDLINE FOR ANIMATION I INTRODUCTION

ESSENTIAL CURRICULUM GUIDLINE FOR ANIMATION I INTRODUCTION INTRODUCTION ESSENTIAL CURRICULUM GUIDLINE FOR ANIMATION I Essential experiences are ones the learner strives to attain upon completion of the various 3D Modeling and Animation Course components. The learner

More information