3D COMPUTER GRAPHICS

Similar documents
Introduction to Computer Graphics

A Short Introduction to Computer Graphics

Computer Applications in Textile Engineering. Computer Applications in Textile Engineering

Windows Sockets Network Programming

INTRODUCTION TO RENDERING TECHNIQUES

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

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

VALLIAMMAI ENGNIEERING COLLEGE SRM Nagar, Kattankulathur

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

Interactive Computer Graphics

Digital 3D Animation

COMPUTER GRAPHICS Computer Graphics

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

Genetic Algorithms in Search, Optimization, and Machine Learning

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

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

Computer Graphics. Overview. Thomas Funkhouser Princeton University C0S 426, Fall Introduction. Applications. Syllabus. Coursework.

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

Dhiren Bhatia Carnegie Mellon University

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

COMP175: Computer Graphics. Lecture 1 Introduction and Display Technologies

Introduction Week 1, Lecture 1

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

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

How To Use Design Mentor

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

QUANTITATIVE METHODS. for Decision Makers. Mik Wisniewski. Fifth Edition. FT Prentice Hall

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

The Unified Software Development Process

CAD and Creativity. Contents

Geometric Modelling & Curves

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

TEXTURE AND BUMP MAPPING

Computer Graphics. Introduction. Aleksandra Pizurica. Ghent University

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

Introduction to. With Slides from Dongho Kim and Karen Liu. School of Computer Soongsil University Animation. Computer Animation

Non-Photorealistic Rendering of Hair for Animated Cartoons

Financial Statement Analysis

TCP/IP Illustrated, Volume 2 The Implementation

Computer Graphics. Anders Hast

Masters of Science in Software & Information Systems

CS 371 Project 5: Midterm Meta-Specification

3D Face Modeling. Vuong Le. IFP group, Beckman Institute University of Illinois ECE417 Spring 2013

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

Using Photorealistic RenderMan for High-Quality Direct Volume Rendering

Designing Interactive Systems

Data Visualization. Principles and Practice. Second Edition. Alexandru Telea

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.

1. INTRODUCTION Graphics 2

Rendering Microgeometry with Volumetric Precomputed Radiance Transfer

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

Numerical Methods for Engineers

animation animation shape specification as a function of time

CPIT-285 Computer Graphics

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

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

SAN DIEGO COMMUNITY COLLEGE DISTRICT MESA COLLEGE ASSOCIATE DEGREE COURSE OUTLINE

How To Model Surfaces With Rp

Algorithms for Real-Time Tool Path Generation

SkillsUSA 2014 Contest Projects 3-D Visualization and Animation

animation shape specification as a function of time

Software and Hardware Solutions for Accurate Data and Profitable Operations. Miguel J. Donald J. Chmielewski Contributor. DuyQuang Nguyen Tanth

Third Grade Shapes Up! Grade Level: Third Grade Written by: Jill Pisman, St. Mary s School East Moline, Illinois Length of Unit: Eight Lessons

Introduction Week 1, Lecture 1

Introduction to Computer Graphics Marie-Paule Cani & Estelle Duveau


Pyramidal Parametrics. Lance Williams. Computer Graphics Laboratory New York Institute of Technology Old Westbury, New York

Manfred Gartner. University of St Gallen, Switzerland. An imprint of Pearson Education

Visualization of 2D Domains

CS130 - Intro to computer graphics. Dr. Victor B. Zordan vbz@cs.ucr.edu Objectives

Lezione 4: Grafica 3D*(II)

MMGD0203 Multimedia Design MMGD0203 MULTIMEDIA DESIGN. Chapter 3 Graphics and Animations

Computer Organization

Classification of Fingerprints. Sarat C. Dass Department of Statistics & Probability

Essential Mathematics for Computer Graphics fast

Teaching Introductory Computer Graphics Via Ray Tracing

INTERACTIVE COMPUTER GRAPHICS Data Structures, Algorithms, Languages

The 3D rendering pipeline (our version for this class)

CS 4810 Introduction to Computer Graphics

CSCD18: Computer Graphics

Lecture Notes, CEng 477

GRAFICA - A COMPUTER GRAPHICS TEACHING ASSISTANT. Andreas Savva, George Ioannou, Vasso Stylianou, and George Portides, University of Nicosia Cyprus

A Digital Drafting Board for Design

A FRAMEWORK FOR REAL-TIME TERRAIN VISUALIZATION WITH ADAPTIVE SEMI- REGULAR MESHES

REGULATIONS FOR THE DEGREE OF MASTER OF SCIENCE IN COMPUTER SCIENCE (MSc[CompSc])

DEVELOPMENT OF A WEB BASED TRAINING SYSTEM AND COURSEWARE FOR ADVANCED COMPUTER GRAPHICS COURSES ENHANCED BY INTERACTIVE JAVA APPLETS

Rendering Area Sources D.A. Forsyth

Computer Graphics and Visualization in a Computational Science Program

AML710 CAD LECTURE 1. Introduction to CAD. Motivation Principles of CAD / CAM. AML710 Computer Aided Design

Univariate and Multivariate Methods PEARSON. Addison Wesley

DEC Networks and Architectures

ENTERPRISE RESOURCE PLANNING

Vector Treasure Hunt Teacher s Guide

IT 386: 3D Modeling and Animation. Review Sheet. Notes from Professor Nersesian s IT 386: 3D Modeling and Animation course

Transcription:

ч 3D COMPUTER GRAPHICS S E C O N D E D I T I O N A L A N W A T T Instituto de Matemätica Рига e Aplicada Rio de Janeiro, Brasil and University of Sheffield, England A D D I S О N - W E S L E Y Publishing Company Wokingham, England Reading, Massachusetts Menlo Park, California New York Don Mills, Ontario Amsterdam Bonn Sydney Singapore Tokyo Madrid San Juan Milan Paris Mexico City Seoul Taipei

Contents Preface vii 1 Three-dimensional Geometry in Computer Graphics 1 1.1 Manipulating three-dimensional structures 1 1.2 Affine transformations 2 1.3 Transformations for changing coordinate systems 10 1.4 Structure-deforming transformations 11 1.5 Vectors in computer graphics 13 Projects, notes and suggestions 19 2 Representation of Objects 23 2.1 Representation and modelling of geometric objects 23 2.2 Polygonal representation 24 2.3 Bicubic parametric patch nets 30 2.4 Constructive solid geometry 35 2.5 Space subdivision techniques 38 2.6 Rendering strategies 45 Projects, notes and suggestions 53 3 Viewing Systems 57 3.1 Introduction 57 3.2 Viewing system I 59 3.3 Viewing system II 61 3.4 Viewing system III 63 3.5 View plane projection for viewing systems I III 65 3.6 Viewing system IV 70 3.7 View plane projection for viewing system IV 71 3.8 Clipping for viewing system IV 74 3.9 Viewing system V (PHIGS) 75 3.10 Implementing viewing system V 83 Projects, notes and suggestions 85 xiii

4 Reflection and Illumination Models 89 4.1 Introduction 89 4.2 Theoretical considerations in light reflection 91 4.3 The Phong reflection model 96 4.4 Geometric considerations 100 4.5 Colour 101 4.6 Summary of Phong model 102 4.7 The 20 spheres - an example 102 4.8 Using look-up tables with reflection models 106 4.9 Empirical transparency 108 4.10 The Cook and Torrance model 109 4.11 Illumination source models 122 Projects, notes and suggestions 125 5 Rendering Algorithms 127 5.1 Introduction 127 5.2 Culling and clipping 128 5.3 Incremental shading techniques 131 5.4 Rasterization 143 5.5 Hidden surface removal 149 Projects, notes and suggestions 158 6 Parametric Representation and Practice 163 6.1 Parametric representation of three-dimensional solids 163 6.2 Parametric representation of three-dimensional curves 166 6.3 B-spline curves 173 6.4 Biparametric cubic surfaces 186 6.5 Rendering parametric surfaces 197 6.6 Approximation to a surface patch using a polygon mesh 199 6.7 Extending the control: NURBS and ß-splines 206 6.8 Interpolation using B-splines 208 6.9 Modelling objects with bicubic parametric nets 210 Projects, notes and suggestions 221 7 Shadows and Textures 225 7.1 Introduction 225 7.2 Shadows: their function 225 7.3 Simple shadows on a ground plane 227 7.4 Shadow algorithms 229 7.5 Texture 237 7.6 Two-dimensional texture mapping 238 7.7 Three-dimensional texture domain techniques 246 7.8 Bump mapping 250 7.9 Anti-aliasing and texture mapping 253 7.10 Environment mapping 259 Projects, notes and suggestions 262

Contents xv 8 Ray Tracing 267 8.1 Introduction 267 8.2 Basic algorithm 268 8.3 A historical digression - the optics of the rainbow 270 8.4 Recursive implementation of ray tracing 272 8.5 Ray tracing geometry 278 8.6 Reflection-illumination model 287 8.7 Shadows 293 8.8 Distributed ray tracing 294 8.9 Ray tracing and anti-aliasing operations 297 8.10 Making ray tracing efficient 298 Projects, notes and suggestions 308 9 Volume Rendering 313 9.1 Introduction 313 9.2 Volume rendering algorithms 317 9.3 Case study 320 9.4 Parallel versus perspective projection 323 9.5 Lighting model 325 Projects, notes and suggestions 329 10 Radiosity 331 10.1 Introduction 331 10.2 Radiosity theory 332 10.3 Form factor determination 335 10.4 Increasing the accuracy of the solution 340 10.5 Reordering the solution for progressive refinement 342 10.6 Further development of the radiosity method: 347 hybrid radiosity and ray tracing Projects, notes and suggestions 350 11 Anti-aliasing 353 11.1 Introduction 353 11.2 Aliasing artefacts and Fourier theory 355 11.3 Supersampling or postfiltering 359 11.4 Prefiltering or area sampling techniques 362 11.5 A mathematical comparison 364 11.6 Stochastic sampling 365 Projects, notes and suggestions 368 12 Functionally Based Modelling Methods 371 12.1 Introduction 371 12.2 Particle systems 372 12.3 Fractal systems 372 12.4 Functions suitable for three-dimensional texture 377 Projects, notes and suggestions 380

13 13.1 13.2 13.3 13.4 13.5 14 14.1 14.2 14.3 14.4 Appendix A Appendix В Appendix С Appendix D References Index Three-dimensional Computer Animation Introduction Keyframing systems Explicit motion specification - curve editing Other approaches to three-dimensional computer animation Temporal anti-aliasing Projects, notes and suggestions Colour Spaces and Monitor Considerations Introduction Specifying a colour with three labels Colour spaces in computer graphics Monitor considerations Projects, notes and suggestion Viewing Transformation for a Simple Four-parameter Viewing System A Wireframe System An Implementation of a Renderer The Utah Teapot 383 383 386 388 393 400 402 409 409 411 413 429 434 437 441 471 479 483 491 Trademark notice Luxo is a trademark of Jac Jacobson Industries Kodak is a trademark of Eastman Kodak Company VAX is a trademark of Digital Equipment Corporation