Interactive Computer Graphics
|
|
- Paul McKenzie
- 8 years ago
- Views:
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 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 informationMonash 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 informationVALLIAMMAI 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 informationCourse 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 informationGAME 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 informationComputer 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 informationINTRODUCTION 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 informationA 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 informationContent. 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 informationIntroduction 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 informationDhiren 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 informationComputer 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 informationImage 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 information2: 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 informationCOMPUTER 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 informationB2.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 informationGUI 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 informationEssential 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 informationCOMP-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 informationProgramming 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 informationLecture 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 informationSkillsUSA 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 informationComputer 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 informationCurves 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 informationComputer 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 informationScan-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 informationMasters 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 informationUsing 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 informationTeaching 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 informationBachelor 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 informationInstructor. 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 informationTwo 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 informationCOMP175: 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 informationWe 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 informationIntroduction 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 informationIntroduction 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 informationGeometric 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 informationComputer 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 informationIntroduction 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 informationCPIT-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 informationCork 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 information3D 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 informationCSE 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 informationCSE 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 informationCS 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 informationLezione 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 informationHow To Teach Computer Graphics
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 informationShader 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 informationHow To Draw A 3D Virtual World In 3D Space (Computer Graphics)
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 informationInteractive 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 informationSAN 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 informationFundamentals 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 informationIntroduction 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 informationIntroduction 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 informationCOMPUTER 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 informationDigital 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 informationWilliam 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 informationRecent 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 informationOur 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 informationModern 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 informationCUBE-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 informationUnivariate 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 informationSpecular 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 informationRealtime 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 informationGame 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 informationDATA 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 informationCS 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 informationPlug-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 informationComputer 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 information521493S Computer Graphics. Exercise 2 & course schedule change
521493S Computer Graphics Exercise 2 & course schedule change Course Schedule Change Lecture from Wednesday 31th of March is moved to Tuesday 30th of March at 16-18 in TS128 Question 2.1 Given two nonparallel,
More informationThree-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 informationMathematics (MAT) MAT 061 Basic Euclidean Geometry 3 Hours. MAT 051 Pre-Algebra 4 Hours
MAT 051 Pre-Algebra Mathematics (MAT) MAT 051 is designed as a review of the basic operations of arithmetic and an introduction to algebra. The student must earn a grade of C or in order to enroll in MAT
More informationINTERACTIVE 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 informationSolving Simultaneous Equations and Matrices
Solving Simultaneous Equations and Matrices The following represents a systematic investigation for the steps used to solve two simultaneous linear equations in two unknowns. The motivation for considering
More informationB4 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 informationComputer Graphics Global Illumination (2): Monte-Carlo Ray Tracing and Photon Mapping. Lecture 15 Taku Komura
Computer Graphics Global Illumination (2): Monte-Carlo Ray Tracing and Photon Mapping Lecture 15 Taku Komura In the previous lectures We did ray tracing and radiosity Ray tracing is good to render specular
More informationComputer Animation: Art, Science and Criticism
Computer Animation: Art, Science and Criticism Tom Ellman Harry Roseman Lecture 4 Parametric Curve A procedure for distorting a straight line into a (possibly) curved line. The procedure lives in a black
More informationSilverlight 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 informationIntroduction 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 informationComputer 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 information3D Computer Games History and Technology
3D Computer Games History and Technology VRVis Research Center http://www.vrvis.at Lecture Outline Overview of the last 10-15 15 years A look at seminal 3D computer games Most important techniques employed
More informationIntroduction to Computer Graphics
Frank Klawonn Introduction to Computer Graphics Using Java 2D and 3D ABC Frank Klawonn, MSc, PhD Department of Computer Science University of Applied Sciences Braunschweig/Wolfenbuettel Germany Series
More informationModeling Curves and Surfaces
Modeling Curves and Surfaces Graphics I Modeling for Computer Graphics!? 1 How can we generate this kind of objects? Umm!? Mathematical Modeling! S Do not worry too much about your difficulties in mathematics,
More informationHardware design for ray tracing
Hardware design for ray tracing Jae-sung Yoon Introduction Realtime ray tracing performance has recently been achieved even on single CPU. [Wald et al. 2001, 2002, 2004] However, higher resolutions, complex
More informationRally Sport Racing Game: CodeName Space Racer
Rally Sport Racing Game: CodeName Space Racer - An evaluation of techniques used when developing a marketable 3D game Sebastian Almlöf (Chalmers) Ludvig Gjälby (Chalmers) Markus Pettersson (Chalmers) Gustav
More informationESSENTIAL 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 informationDEVELOPMENT OF A WEB BASED TRAINING SYSTEM AND COURSEWARE FOR ADVANCED COMPUTER GRAPHICS COURSES ENHANCED BY INTERACTIVE JAVA APPLETS
DEVELOPMENT OF A WEB BASED TRAINING SYSTEM AND COURSEWARE FOR ADVANCED COMPUTER GRAPHICS COURSES ENHANCED BY INTERACTIVE JAVA APPLETS Tomoyuki NISHITA The University of Tokyo Tokyo, JAPAN Kunio KONDO Saitama
More informationTouchstone -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 informationThe Data Access Handbook
The Data Access Handbook Achieving Optimal Database Application Performance and Scalability John Goodson and Robert A. Steward PRENTICE HALL Upper Saddle River, NJ Boston Indianapolis San Francisco New
More informationIntroduction Computer stuff Pixels Line Drawing. Video Game World 2D 3D Puzzle Characters Camera Time steps
Introduction Computer stuff Pixels Line Drawing Video Game World 2D 3D Puzzle Characters Camera Time steps Geometry Polygons Linear Algebra NURBS, Subdivision surfaces, etc Movement Collisions Fast Distances
More informationThe Advantages of Introductory Computer Graphics Course
Bringing the Introductory Computer Graphics Course into the 21 st Century Rosalee Wolfe DePaul University Chicago, Illinois wolfe@cs.depaul.edu Abstract The field of computer graphics has matured greatly
More informationCortona3D Viewer. User's Guide. Copyright 1999-2011 ParallelGraphics
Cortona3D Viewer User's Guide Copyright 1999-2011 ParallelGraphics Table of contents Introduction 1 The Cortona3D Viewer Window 1 Navigating in Cortona3D Viewer 1 Using Viewpoints 1 Moving around: Walk,
More informationMaya 2014 Still Life Part 1 Texturing & Lighting
Maya 2014 Still Life Part 1 Texturing & Lighting Realistic lighting and texturing is the key to photorealism in your 3D renders. Objects and scenes with relatively simple geometry can look amazing with
More informationComputer Animation: Art, Science and Criticism
Computer Animation: Art, Science and Criticism Tom Ellman Harry Roseman Lecture 12 Ambient Light Emits two types of light: Directional light, coming from a single point Contributes to diffuse shading.
More informationBlender Notes. Introduction to Digital Modelling and Animation in Design Blender Tutorial - week 9 The Game Engine
Blender Notes Introduction to Digital Modelling and Animation in Design Blender Tutorial - week 9 The Game Engine The Blender Game Engine This week we will have an introduction to the Game Engine build
More informationMonte Carlo Path Tracing
HELSINKI UNIVERSITY OF TECHNOLOGY 16.4.2002 Telecommunications Software and Multimedia Laboratory Tik-111.500 Seminar on Computer Graphics Spring 2002: Advanced Rendering Techniques Monte Carlo Path Tracing
More informationTriangle Scan Conversion using 2D Homogeneous Coordinates
Triangle Scan Conversion using 2D Homogeneous Coordinates Marc Olano 1 Trey Greer 2 University of North Carolina Hewlett-Packard ABSTRACT We present a new triangle scan conversion algorithm that works
More informationAbstract. These two vectors define a plane tangent to the surface at that point. Their cross product is Recent work in computer graphics has been
Abstract SIMULATION OF WRINKLED SURFACES James F. Blinn Caltech/JPL Computer generated shaded images have reached an impressive degree of realism with the current state of the art. They are not so realistic,
More informationComputer Organization
Computer Organization and Architecture Designing for Performance Ninth Edition William Stallings International Edition contributions by R. Mohan National Institute of Technology, Tiruchirappalli PEARSON
More information