HE COMPLETE OPENGL PROGI FOR WINDOW WIND

Size: px
Start display at page:

Download "HE COMPLETE OPENGL PROGI FOR WINDOW WIND"

Transcription

1 HE COMPLETE OPENGL PROGI FOR WINDOW WIND WAITC GROUP PRESS. A Division of Sams Publishing Corte Madera CA

2 Table of Contents FOREWORD xxii INTRODUCTION xxiii PART I: INTRODUCTION TO OPENGL 1 CHAPTER 1: What Is OpenGL? 5 CHAPTER 2: 3D Graphics Fundamentals 13 CHAPTER 3: Learning OpenGL with the AUX Library 27 CHAPTER 4: OpenGL for Windows: OpenGL + Win32 = Wiggle 75 CHAPTER 5: Errors and Other Messages from OpenGL 109 PART II: USING OPENGL 121 CHAPTER 6: Drawing in 3D: Lines, Points, and Polygons 125 CHAPTER 7: Manipulating 3D Space: Coordinate Transformations 183 CHAPTER 8: Color and Shading 225 CHAPTER 9: Lighting and Lamps 261 CHAPTER 10: 3D Modeling and Object Composition 313 CHAPTER 11: Raster Graphics in OpenGL 345 CHAPTER 12: Texture Mapping 381 CHAPTER 13: Quadrics: Spheres, Cylinders, and Disks 431 PART IN: ADVANCED TOPICS AND SPECIAL EFFECTS 455 CHAPTER 14: The OpenGL State Machine 459 CHAPTER 15: Buffers: Not Just for Animation 471 CHAPTER 16: Visual Effects: Blending and Fog 503 CHAPTER 17: Curves and Surfaces: What the #%@!&* Are NURBS? 533 CHAPTER 18: Polygon Tessellation 575 CHAPTER 19: Interactive Graphics 589 CHAPTER 20: OpenGL on the 'Net: VRML 619 PART IV: OPENGL WITH 629 CHAPTER 21: MFC-Based OpenGL Programming 633 CHAPTER 22: OWL-Based OpenGL Programming 647 CHAPTER 23: Visual Basic and 4GL-Based OpenGL Programming 665 CHAPTER 24: The Future of OpenGL and Windows 681 APPENDIX A: Performance-Tuning OpenGL for Windows 687 APPENDIX B: Further Reading 691 APPENDIX C: Version APPENDIX D: Glossary 697 INDEX 701 vii

3 V Contents Foreword..xxii Introduction xxiii PART I: INTRODUCTION TO OPENGL l CHAPTER 1: WHAT IS OPENGL? 5 About OpenGL 8 A History of OpenGL 8 Further Developments in OpenGL 9 How OpenGL Works 9 OpenGL under Windows 9 Graphics Architecture: Software versus Hardware 9 Limitations of the Generic Implementation 11 Future Prospects for OpenGL in Windows 11 CHAPTER 2:3D GRAPHICS FUNDAMENTALS 13 3D Perception 15 2D + Perspective = 3D 17 Hidden Line Removal 17 Colors and Shading 18 Lights and Shadows 18 Coordinate Systems 19 2D Cartesian Coordinates 19 Coordinate Clipping 20 Viewports, Your Window to 3D 21 Drawing Primitives 23 3D Cartesian Coordinates 23 Projections, The Essence of 3D 24 Orthographie Projections 25 Perspective Projections 25 Summary 26 CHAPTER 3: LEARNING OPENGL WITH THE AUX LIBRARY 27 OpenGL: An API, Not a Language 30 The OpenGL Division of Labor 30 viii

4 Contents OpenGL Data Types 31 Function Naming Conventions 32 The AUX Library 34 Platform Independence 34 AUX = Platform I/O, the Easy Way 35 Dissecting a Short OpenGL Program 35 The Includes 37 The Body 37 Display Mode: Single-Buffered 37 Position the Window 38 Create the OpenGL Window 38 Clear a Window (Erase with a Color) 40 Actually Clear 41 Flush That Queue 41 Drawing Shapes with OpenGL 42 The Rendering Function 43 Drawing a Rectangle 43 Initialization 44 Scaling to the Window 45 Setting the Viewport and Clipping Volume 45 Defining the Viewport 49 Defining the Clipping Volume 49 Keeping a Square Square 51 Animation with AUX 52 Double Buffering 54 Finally, Some 3D! 56 Summary 56 Reference Section 57 CHAPTER 4: OPENGL FOR WINDOWS: OPENGL + WIN32 = WIGGLE 75 Drawing in Windows Windows 78 GDI Device Contexts 78 OpenGL Rendering Contexts 81 Using the Wiggle Functions 81 Creating and Selecting a Rendering Context 82 Painting with OpenGL 83 Preparing the Window for OpenGL 84 Window Styles 84 ix

5 OPENGL SUPERBIBLE Pixel Formats 84 Retum of the Bouncing Square 86 Scaling to the Window 90 Ticktock, the Idle Clock 90 Lights, Camera, Action! 91 Summary 92 Reference Section 92 CHAPTER 5: ERRORS AND OTHER MESSAGES FROM OPENGL 109 When Bad Things Happen to Good Code 112 Who Am I and What Can I Do? 114 Extensions to OpenGL 115 Get a Clue with glhint 115 Summary 116 Reference Section 116 PART II: USING OPENGL 121 CHAPTER 6: DRAWING IN 3D: LINES, POINTS, AND POLYGONS 125 Drawing Points in 3D 128 Setting Up a 3D Canvas 128 A 3D Point: The Vertex 130 Draw Something! 130 Drawing Points 131 Our First Example 132 Setting the Point Size 135 Drawing Lines in 3D 137 Line Strips and Loops 139 Approximating Curves with Straight Lines 141 Setting the Line Width 141 Line Stippling 143 Drawing Triangles in 3D 146 Triangles: Your First Polygon 146 Winding 146 Triangle Strips 148 Triangle Fans 149 Building Solid Objects 150 Setting Polygon Colors 153 Hidden Surface Removal 153 X

6 Contents Culling: Hiding Surfaces for Performance 154 Polygon Modes 158 Other Primitives 159 Four-Sided Polygons: Quads 159 Quad Strips 159 General Polygons 160 Filling Polygons, or Stippling Revisited 161 Polygon Construction Rules 166 Subdivision and Edges 166 Summary 169 Reference Section 171 CHAPTER 7: MANIPULATING 3D SPACE: COORDINATE TRANSFORMATIONS 183 Is This the Dreaded Math Chapter? 186 Understanding Transformations 186 Eye Coordinates 187 Viewing Transformations 188 Modeling Transformations 189 The Modelview Duality 191 Projection Transformations 192 Viewport Transformations 193 Matrix Munching 193 What Is a Matrix? 193 The Transformation Pipeline 193 The Modelview Matrix 195 Translation 196 Rotation 196 Scaling 198 The Identity Matrix 198 The Matrix Stacks 201 A Nuclear Example 202 Using Projections 205 Orthographie Projections 205 Perspective Projections 207 A Far-Out Example 211 Advanced Matrix Manipulation 214 Loading a Matrix 214 Performing Your Own Transfprmations 215 xi

7 OPENGL SUPERBIBLE Other Transformations 215 Summary 215 Reference Section 216 CHAPTER 8: COLOR AND SHADING 225 What Is a Color? 228 Light as a Wave 228 Light as a Particle 229 Your Personal Photon Detector 230 The Computer as a Photon Generator 231 PC Color Hardware 232 PC Display Modes 233 Screen Resolution 234 Color Depth Bit Color Bit Color Bit Color 235 Other Color Depths 235 Selecting a Color 236 The Color Cube 236 Setting the Drawing Color 237 Shading 238 Setting the Shading Model 241 Windows Palettes 242 Color Matching 242 Dithering 243 Advantages of a Palette in 8-Bit Mode 244 Palette Arbitration 244 Creating a Palette 246 Do You Need a Palette? 246 The Palette's Structure 247 The Palette 248 Building the Palette 249 Palette Creation and Disposal 250 Some Restrictions Apply 251 Color Index Mode 251 Why Use Color Index Mode? 252 Using Color Index Mode 252 xii

8 Contents Show the Triangle 254 Summary 254 Reference Section 255 CHAPTER 9: LIGHTING AND LAMPS 261 Light in the Real World 264 Ambient Light 265 Diffuse Light 265 Specular Light 265 Put It All Together 267 Materials in the Real World 267 Material Properties 268 Adding Light to Materials 268 Calculating Ambient Light Effects 268 Diffuse and Specular Effects 269 Adding Light to a Scene 270 Enable the Lighting 270 Set Up the Lighting Model 271 Set Material Properties 271 Using a Light Source 274 Which Way Is Up? 274 Surface Normals 275 Specifying a Normal 276 Unit Normals 278 Finding a Normal 279 Setting Up a Source 281 Setting the Material Properties 282 Specifying the Polygons 283 Lighting Effects 284 Specular Highlights 284 Specular Light 285 Specular Reflectance 285 Specular Exponent 286 Normal Averaging 288 Spotlights 292 Creating a Spotlight 293 Drawing a Spotlight 294 Shadows 296 xiii

9 OPENGL SUPERBIBLE What Is a Shadow? 296 Squish Code 298 A Shadow Example 300 Lighting and Color Index Mode 302 Summary 303 Reference Section 303 CHAPTER 10:3D MODELING AND 0BJECT COMPOSITION 313 Defining the Task 316 Choosing a Projection 316 Choosing the Lighting and Material Properties 317 Displaying the Results 318 Constructing a Model, One Piece at a Time 319 The Head 319 The Shaft 323 The Thread 326 Putting the Model Together 330 A Makeshift Benchmark 331 Improving Performance 334 Creating a Display List 335 Summary 338 Reference Section 338 CHAPTER 11: RASTER GRAPHICS IN OPENGL 345 Drawing Bitmaps 347 Bitmap Fonts 350 Building a Simple Font Library 351 Pixmaps: Bitmaps with Color 354 Drawing Pixmaps 354 Remapping Colors 355 Color Mapping Tables 356 Scaling a Pixmap 357 Panning a Pixmap 358 Reading Pixmaps 358 Copying Pixmaps 361 A Bitmap File Viewer 361 About Windows Bitmap Files 362 xiv

10 Contents Reading the.bmp File 363 Writing the.bmp File 365 Printing the Bitmap 367 Displaying the Bitmap 370 Summary 372 Reference Section 372 CHAPTER 12: TEXTURE MAPPING 381 The Basics of Texture Mapping 384 Defining Texture Images 385 Defining 1D Textures 385 Defining 2D Textures 387 Drawing Textured Polygons 388 Mipmapped Textures 390 A Terrain Viewing Program 392 Defining the Terrain 393 Drawing Terrain 393 Drawing the Scene 395 Automatically Generating Texture Coordinates 396 Flying Through the Terrain 398 Summary 398 Reference Section 424 CHAPTER 13: QUADRICS: SPHERES, CYLINDERS, AND DISKS 431 Creaüng a Quadric 434 Changing the Way Quadrics Are Drawn 434 Drawing Cylinders 435 Drawing Cones 436 Texturing and Cylinders 436 Drawing Disks 436 Disks and Textures 437 Drawing Partial Disks 437 Drawing Spheres 437 Spheres and Textures 438 Drawing a Pencil 438 Summary 440 Reference Section 449

11 OPENGL SUPERBIBLE I PART IM: ADVANCED TOPICS AND SPECIAL EFFECTS 455 CHAPTER 14: THE OPENGL STATE MACHINE 459 Basic OpenGL State Functions 461 ' Saving and Restoring States 462 Drawing States 464 Depth Buffer States 465 Stencil Buffer States 465 Lighting States 465 Texturing States 466 Pixel States 467 Reference Section 467 CHAPTER 15: BUFFERS: NOT JUST FOR ANIMATION 471 What Are Buffers? 474 Configuring Buffers 474 The Color Buffer 477 Double Buffering 477 Stereo Buffering 478 Swapping Buffers 478 The Depth Buffer 479 Depth Comparisons 480 Depth Values 480 Applications of the Depth Buffer 481 Another Application of the Depth Buffer 484 Cutting Away Parts of a Scene 484 The Stencil Buffer 488 Using the Stencil Buffer 488 Stencil Buffer Functions 489 Drawing into the Stencil Buffer 489 The Accumulation Buffer 493 Using the Accumulation Buffer for Motion Blur 494 Using the Accumulation Buffer for Anti-Aliasing 497 Reference Section 498 CHAPTER 16: VISUAL EFFECTS: BLENDING AND FOG 503 Blending 505 Using Blending for Transparency 506 xvi j

12 Contents Using Blending with Anti-Aliasing 510 Using Blending for a Paint Program 511 Fog 519 Drawing Depth-Cued Teapots 520 Other Types of Fog 523 Fog Distance 524 Revisiting the Terrain Viewing Program 524 Summary 530 Reference Section 530 CHAPTER 17: CURVES AND SURFACES: WHAT THE #%@!&* ARE NURBS? 533 Curves and Surfaces 536 Parametric Representation 536 Control Points 537 Continuity 538 Evaluators 538 A 2D Curve 539 Evaluating a Curve 543 A 3D Surface 543 Lighting and Normal Vectors 545 NURBS 546 From Bezier to B-Splines 547 Knots 548 Creating a NURBS Surface 549 NURBS Properties 549 Define the Surface 549 Trimming 550 Summary l 553 Reference Section 553 CHAPTER 18: POLYGON TESSELLATION 575 Complex Polygons 577 Drawing Concave Polygons 578 Drawing Complex Polygons 579 Callback Functions 583 Summary 584 Reference Section 585 xvij

13 OPENGL SUPERBIBLE CHAPTER 19: INTERACTIVE GRAPHICS 589 Selection 592 Naming Your Primitives 592 Working with Selection Mode 594 The Selection Buffer 594 Picking 596 Hierarchical Picking 598 Feedback 602 The Feedback Buffer 602 Feedback Data 602 PassThrough Markers 604 An Example 604 Label the Objects for Feedback 604 Step 1: Select the Object 605 Step 2: Get Feedback on the Object 607 Summary 608 Reference Section 609 CHAPTER 20: OPENGL 0N THE 'NET: VRML 619 When Worlds Collide 621 Two-Dimensional Navigation 622 Enter VRML 622 WebSpace 624 Installation 624 The Walk Viewer 624 The Examiner Viewer 626 Open Inventor and VRML 626 Summary 628 PART IV: OPENGL WITH 629 CHAPTER 21: MFC-BASED OPENGL PROGRAMMING 633 Isolate Your OpenGL Code 636 Starting with AppWizard 637 Build the Shell 637 Add the Libraries 637 Get CView Ready for OpenGL 639 Pixel Format and Rendering Context 639 xviii

14 Contents I Clean Up the Rendering Context 641 I Handling Window Resizing 641 I Rendering the Scene Don't Erase First 642 I CPalette Handling 643 Summary 646 CHAPTER 22: OWL-BASED OPENGL PROGRAMMING 647 ; Isolate Your OpenGL Code 650 ' Starting with AppExpert 651 Build the Shell 651 f Add the Headers 651 Add the Message Handlers 653 > Fleshing Out the Shell 654 Get TWindowView Ready for OpenGL 654 L Pixel Format and Rendering Context 655 f Clean Up the Rendering Context 656 s Handling Window Resizing 657 Rendering the Scene 657 No Flickering Allowed 658 I Keep It Moving 658 j TPalette Handling 660 Summary 663 CHAPTER 23: VISUAL BASIC AND 4GL-BASED OPENGL PROGRAMMING 665 t Low-Level Access Required 667 f The Magic of Objects 668 Plug and Play 668 I Wrap It Up 669 I Use and Operation of WaiteGL.OCX 669 OpenGL Flags 670 { Installing and Using WaiteGL from VB s- Installing the Control 671 A Visual Basic Example 671 E-' ; Painting the OpenGL Window 672 f Now for Some Action 673 l Installing the OCX in Delphi i m

15 OPENGL SUPERBIBLE Installing the Control 674 A Delphi Example 675 Painting the OpenGL Window 677 Now for Some Action 677 Some Notes About the Source 679 Summary 679 r CHAPTER 24: THE FUTURE OF OPENGL AND WINDOWS Conclusion 686 APPENDIX A: PERFORMANCE-TUNING OPENGL FOR WINDOWS 687 Display Lists 688 Matrix Operations 688 Lighting Operations 688 Object Construction 688 Miscellaneous Tips 689 I APPENDIX B: FURTHER READING 691* Books on Windows Programming 691 Books and References on OpenGL 692 Books and References on Graphics Programming (3D in Particular) 692 OpenGL-Related Web and FTP Sites 692 VRML Repositories 693 j I I APPENDIX C: VERSION APPENDIX D: GLOSSARY 697 INDEX 70il V XX

CHAPTER 1 Graphics Systems and Models 3

CHAPTER 1 Graphics Systems and Models 3 ?????? 1 CHAPTER 1 Graphics Systems and Models 3 1.1 Applications of Computer Graphics 4 1.1.1 Display of Information............. 4 1.1.2 Design.................... 5 1.1.3 Simulation and Animation...........

More information

Computer Graphics: Programming, Problem Solving, and Visual Communication

Computer Graphics: Programming, Problem Solving, and Visual Communication Computer Graphics: Programming, Problem Solving, and Visual Communication Dr. Steve Cunningham Computer Science Department California State University Stanislaus Turlock, CA 95382 copyright 2002, Steve

More information

OpenGL SUPERBIBLE. Fifth Edition. Comprehensive Tutorial and Reference. Richard S. Wright, Jr. Nicholas Haemel Graham Sellers Benjamin Lipchak

OpenGL SUPERBIBLE. Fifth Edition. Comprehensive Tutorial and Reference. Richard S. Wright, Jr. Nicholas Haemel Graham Sellers Benjamin Lipchak OpenGL SUPERBIBLE Fifth Edition Comprehensive Tutorial and Reference Richard S. Wright, Jr. Nicholas Haemel Graham Sellers Benjamin Lipchak AAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San

More information

Interactive Computer Graphics A TOP-DOWN APPROACH WITH SHADER-BASED OPENGL

Interactive Computer Graphics A TOP-DOWN APPROACH WITH SHADER-BASED OPENGL International Edition Interactive Computer Graphics A TOP-DOWN APPROACH WITH SHADER-BASED OPENGL Sixth Edition Edward Angel Dave Shreiner Interactive Computer Graphics: A Top-Down Approach with Shader-Based

More information

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

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

More information

Graphics and Interaction Rendering pipeline & object modelling

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

More information

Advanced 3D Game Programming with DirectX* 10.0

Advanced 3D Game Programming with DirectX* 10.0 Advanced 3D Game Programming with DirectX* 10.0 Peter Walsh Wordware Publishing, Inc. Acknowledgments Introduction xiii xv Chapter I Windows I A Word about Windows I Hungarian Notation 3 General Windows

More information

GLOBAL EDITION. Interactive Computer Graphics. A Top-Down Approach with WebGL SEVENTH EDITION. Edward Angel Dave Shreiner

GLOBAL EDITION. Interactive Computer Graphics. A Top-Down Approach with WebGL SEVENTH EDITION. Edward Angel Dave Shreiner GLOBAL EDITION Interactive Computer Graphics A Top-Down Approach with WebGL SEVENTH EDITION Edward Angel Dave Shreiner This page is intentionally left blank. Interactive Computer Graphics with WebGL, Global

More information

Rasterization Overview

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

More information

Models and Architectures

Models and Architectures Models and Architectures Objectives Learn the basic design of a graphics system Introduce graphics pipeline architecture Examine software components for an interactive graphics system 1 Image Formation

More information

Programming Guide. Aaftab Munshi Dan Ginsburg Dave Shreiner. TT r^addison-wesley

Programming Guide. Aaftab Munshi Dan Ginsburg Dave Shreiner. TT r^addison-wesley OpenGUES 2.0 Programming Guide Aaftab Munshi Dan Ginsburg Dave Shreiner TT r^addison-wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Paris Madrid

More information

COMP30019 Graphics and Interaction Rendering pipeline & object modelling

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

More information

Lecture outline. COMP30019 Graphics and Interaction Rendering pipeline & object modelling. Introduction to modelling

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

More information

Introduction. What s New in This Edition

Introduction. What s New in This Edition Introduction Welcome to the fourth edition of the OpenGL SuperBible. For more than ten years, we have striven to provide the world s best introduction to not only OpenGL, but 3D graphics programming in

More information

E.Order of Operations

E.Order of Operations Appendix E E.Order of Operations This book describes all the performed between initial specification of vertices and final writing of fragments into the framebuffer. The chapters of this book are arranged

More information

Computer Graphics I Lecture 11

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

More information

Graphics Shaders. Theory and Practice. Second Edition. Mike Bailey. Steve Cunningham. CRC Press. Taylor&FnincIs Croup tootutor London New York

Graphics Shaders. Theory and Practice. Second Edition. Mike Bailey. Steve Cunningham. CRC Press. Taylor&FnincIs Croup tootutor London New York Graphics Shaders Second Edition ' -i'nsst«i«{r szizt/siss?.aai^m&/gm^mmm3$8iw3ii Theory and Practice Mike Bailey Steve Cunningham CRC Press Taylor&FnincIs Croup tootutor London New York CRCPrea it an Imprint

More information

Foundations of 3D Graphics Programming

Foundations of 3D Graphics Programming Foundations of 3D Graphics Programming Jim X. Chen Edward J. Wegman Foundations of 3D Graphics Programming Using JOGL and Java3D With 139 Figures Jim X. Chen, PhD Computer Science Department George Mason

More information

Real-Time Rendering. Tomas Möller Eric Haines. A K Peters Natick, Massachusetts

Real-Time Rendering. Tomas Möller Eric Haines. A K Peters Natick, Massachusetts Real-Time Rendering Tomas Möller Eric Haines n A K Peters Natick, Massachusetts Contents Preface 1 Introduction 1 1.1 Contents Overview 2 1.2 Notation and Definitions 3 1.2.1 Mathematical Notation 3 1.2.2

More information

Introduction to Computer Graphics with WebGL

Introduction to Computer Graphics with WebGL Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science Laboratory University of New Mexico Models and Architectures

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

Points and lines, Line drawing algorithms. Circle generating algorithms, Midpoint circle Parallel version of these algorithms

Points and lines, Line drawing algorithms. Circle generating algorithms, Midpoint circle Parallel version of these algorithms Jahangirabad Institute Of Technology Assistant Prof. Ankur Srivastava COMPUTER GRAPHICS Semester IV, 2016 MASTER SCHEDULE Unit-I Unit-II Class 1,2,3,4 Mon, Jan19,Tue20,Sat23,Mon 25 Class 5 Wed, Jan 27

More information

Real-Time Rendering (Echtzeitgraphik) Michael Wimmer

Real-Time Rendering (Echtzeitgraphik) Michael Wimmer Real-Time Rendering (Echtzeitgraphik) Michael Wimmer wimmer@cg.tuwien.ac.at Walking down the graphics pipeline Application Geometry Rasterizer What for? Understanding the rendering pipeline is the key

More information

Models and Architectures. Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico

Models and Architectures. Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico Models and Architectures Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico 1 Objectives Learn the basic design of a graphics system Introduce

More information

Buffers, Textures, Compositing, and Blending. Overview. Buffers. David Carr Virtual Environments, Fundamentals Spring 2005 Based on Slides by E.

Buffers, Textures, Compositing, and Blending. Overview. Buffers. David Carr Virtual Environments, Fundamentals Spring 2005 Based on Slides by E. INSTITUTIONEN FÖR SYSTEMTEKNIK LULEÅ TEKNISKA UNIVERSITET Buffers, Textures, Compositing, and Blending David Carr Virtual Environments, Fundamentals Spring 2005 Based on Slides by E. Angel Compositing,

More information

World Coordinate System

World Coordinate System World Coordinate System Application Model Application Program Graphics System Workstation Normally, the User or Object Coordinate System. World Coordinate Window: A subset of the world coordinate system,

More information

Normalized Device Coordinate System (NDC) World Coordinate System. Example Coordinate Systems. Device Coordinate System

Normalized Device Coordinate System (NDC) World Coordinate System. Example Coordinate Systems. Device Coordinate System World Coordinate System Normalized Device Coordinate System (NDC) Model Program Graphics System Workstation Model Program Graphics System Workstation Normally, the User or Object Coordinate System. World

More information

Computer Graphics Fundamentals. Jon Macey

Computer Graphics Fundamentals. Jon Macey Computer Graphics Fundamentals Jon Macey jmacey@bournemouth.ac.uk http://nccastaff.bournemouth.ac.uk/jmacey/ 1 1 What is CG Fundamentals Looking at how Images (and Animations) are actually produced in

More information

Building scalable 3D applications. Ville Miettinen Hybrid Graphics

Building scalable 3D applications. Ville Miettinen Hybrid Graphics Building scalable 3D applications Ville Miettinen Hybrid Graphics What s going to happen... (1/2) Mass market: 3D apps will become a huge success on low-end and mid-tier cell phones Retro-gaming New game

More information

CS 465 Program 4: Modeller

CS 465 Program 4: Modeller CS 465 Program 4: Modeller out: 30 October 2004 due: 16 November 2004 1 Introduction In this assignment you will work on a simple 3D modelling system that uses simple primitives and curved surfaces organized

More information

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

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

More information

XGL Device Pipeline Porting Guide

XGL Device Pipeline Porting Guide XGL Device Pipeline Porting Guide Loadable Interfaces Version 4.1 2550 Garcia Avenue Mountain View, CA 94043 U.S.A. A Sun Microsystems, Inc. Business Copyright 1996 Sun Microsystems, Inc., 2550 Garcia

More information

Course Title: Computer Graphics Course no: CSC209

Course Title: Computer Graphics Course no: CSC209 Course Title: Computer Graphics Course no: CSC209 Nature of the Course: Theory + Lab Semester: III Full Marks: 60+20+20 Pass Marks: 24 +8+8 Credit Hrs: 3 Course Description: The course coversconcepts of

More information

Sculpting 3D Models. Glossary

Sculpting 3D Models. Glossary A Array An array clones copies of an object in a pattern, such as in rows and columns, or in a circle. Each object in an array can be transformed individually. Array Flyout Array flyout is available in

More information

Topics and things to know about them:

Topics and things to know about them: Practice Final CMSC 427 Distributed Tuesday, December 11, 2007 Review Session, Monday, December 17, 5:00pm, 4424 AV Williams Final: 10:30 AM Wednesday, December 19, 2007 General Guidelines: The final will

More information

CONTENTS IN DETAIL. What s in This Book?... xx Who Is This Book For?... xx

CONTENTS IN DETAIL. What s in This Book?... xx Who Is This Book For?... xx CONTENTS IN DETAIL ACKNOWLEDGMENTS xvii INTRODUCTION xix What s in This Book?... xx Who Is This Book For?... xx 1 INKSCAPE AND THE WORLD 1.1 What Vector Graphics Is and Why It Matters... 1.2 What Can You

More information

CS 130 Final. Fall 2015

CS 130 Final. Fall 2015 CS 130 Final Fall 2015 Name Student ID Signature You may not ask any questions during the test. If you believe that there is something wrong with a question, write down what you think the question is trying

More information

3D Graphics and OpenGl. First Steps

3D Graphics and OpenGl. First Steps 3D Graphics and OpenGl First Steps Rendering of 3D Graphics Objects defined in (virtual/mathematical) 3D space. Rendering of 3D Graphics Objects defined in (virtual/mathematical) 3D space. We see surfaces

More information

Computer Graphics. Shadows

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

More information

Deferred Rendering Due: Wednesday November 15 at 10pm

Deferred Rendering Due: Wednesday November 15 at 10pm CMSC 23700 Autumn 2017 Introduction to Computer Graphics Project 4 November 2, 2017 Deferred Rendering Due: Wednesday November 15 at 10pm 1 Summary This assignment uses the same application architecture

More information

CS GAME PROGRAMMING Question bank

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

More information

Introduction to Computer Graphics. Knowledge basic concepts 2D and 3D computer graphics

Introduction to Computer Graphics. Knowledge basic concepts 2D and 3D computer graphics Introduction to Computer Graphics Knowledge basic concepts 2D and 3D computer graphics 1 Introduction 2 Basic math 3 2D transformations 4 3D transformations 5 Viewing 6 Primitives 7 Geometry 8 Shading

More information

Computer Graphics: Programming, Problem Solving, and Visual Communication

Computer Graphics: Programming, Problem Solving, and Visual Communication Computer Graphics: Programming, Problem Solving, and Visual Communication Dr. Steve Cunningham Computer Science Department California State University Stanislaus Turlock, CA 95382 copyright 2003, Steve

More information

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

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

More information

The University of Calgary

The University of Calgary The University of Calgary Department of Computer Science Final Examination, Questions ENEL/CPSC 555 Computer Graphics Time: 2 Hours Closed Book, calculators are permitted. The questions carry equal weight.

More information

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

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

More information

The Rendering Pipeline (1)

The Rendering Pipeline (1) The Rendering Pipeline (1) Alessandro Martinelli alessandro.martinelli@unipv.it 30 settembre 2014 The Rendering Pipeline (1) Rendering Architecture First Rendering Pipeline Second Pipeline: Illumination

More information

OpenGL. Toolkits.

OpenGL. Toolkits. http://www.opengl.org OpenGL Open Graphics Library Graphics API Delivered with UNIX, Win9x/2000/Me/Nt/Xp, Mac OS Direct3D (DirectX) is only Windows Utilizes the window system and event handling of the

More information

Rendering Objects. Need to transform all geometry then

Rendering Objects. Need to transform all geometry then Intro to OpenGL Rendering Objects Object has internal geometry (Model) Object relative to other objects (World) Object relative to camera (View) Object relative to screen (Projection) Need to transform

More information

CSC Graphics Programming. Budditha Hettige Department of Statistics and Computer Science

CSC Graphics Programming. Budditha Hettige Department of Statistics and Computer Science CSC 307 1.0 Graphics Programming Department of Statistics and Computer Science Graphics Programming 2 Common Uses for Computer Graphics Applications for real-time 3D graphics range from interactive games

More information

CS 4620 Program 3: Pipeline

CS 4620 Program 3: Pipeline CS 4620 Program 3: Pipeline out: Wednesday 14 October 2009 due: Friday 30 October 2009 1 Introduction In this assignment, you will implement several types of shading in a simple software graphics pipeline.

More information

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

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

More information

Texture Mapping and Special Effects

Texture Mapping and Special Effects Texture Mapping and Special Effects February 23 rd 26 th 2007 MAE 410-574, Virtual Reality Applications and Research Instructor: Govindarajan Srimathveeravalli HW#5 Due March 2 nd Implement the complete

More information

Adaptive Point Cloud Rendering

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

More information

1 INTRoduCTIon to BLENDER 1. 3 PREPARATIon 19

1 INTRoduCTIon to BLENDER 1. 3 PREPARATIon 19 INTRoduCTIoN xv 2 INTRoduCTIon to GIMP 13 Topics Covered... xv What Isn t Covered...xvi Requirements....xvi The Projects....xvi The Bat Creature... xvii The Spider Bot... xvii The Jungle Temple... xvii

More information

Computer Graphics 10 - Shadows

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

More information

OpenGL: Open Graphics Library. Introduction to OpenGL Part II. How do I render a geometric primitive? What is OpenGL

OpenGL: Open Graphics Library. Introduction to OpenGL Part II. How do I render a geometric primitive? What is OpenGL OpenGL: Open Graphics Library Introduction to OpenGL Part II CS 351-50 Graphics API ( Application Programming Interface) Software library Layer between programmer and graphics hardware (and other software

More information

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

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

More information

Pipeline Operations. CS 4620 Lecture 14

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

More information

Animation & Rendering

Animation & Rendering 7M836 Animation & Rendering Introduction, color, raster graphics, modeling, transformations Arjan Kok, Kees Huizing, Huub van de Wetering h.v.d.wetering@tue.nl 1 Purpose Understand 3D computer graphics

More information

CS230 : Computer Graphics Lecture 4. Tamar Shinar Computer Science & Engineering UC Riverside

CS230 : Computer Graphics Lecture 4. Tamar Shinar Computer Science & Engineering UC Riverside CS230 : Computer Graphics Lecture 4 Tamar Shinar Computer Science & Engineering UC Riverside Shadows Shadows for each pixel do compute viewing ray if ( ray hits an object with t in [0, inf] ) then compute

More information

Review. Stephen J. Guy

Review. Stephen J. Guy Review Stephen J. Guy Overview Pixar short Review last class Review course Area of Graphics Image Processing Rendering Modeling Animation Misc Area of Graphics Image Processing Rendering Modeling Animation

More information

Pipeline Operations. CS 4620 Lecture 10

Pipeline Operations. CS 4620 Lecture 10 Pipeline Operations CS 4620 Lecture 10 2008 Steve Marschner 1 Hidden surface elimination Goal is to figure out which color to make the pixels based on what s in front of what. Hidden surface elimination

More information

A simple OpenGL animation Due: Wednesday, January 27 at 4pm

A simple OpenGL animation Due: Wednesday, January 27 at 4pm CMSC 23700 Winter 2010 Introduction to Computer Graphics Project 1 January 12 A simple OpenGL animation Due: Wednesday, January 27 at 4pm 1 Summary This project is the first part of a three-part project.

More information

Texture. Texture Mapping. Texture Mapping. CS 475 / CS 675 Computer Graphics. Lecture 11 : Texture

Texture. Texture Mapping. Texture Mapping. CS 475 / CS 675 Computer Graphics. Lecture 11 : Texture Texture CS 475 / CS 675 Computer Graphics Add surface detail Paste a photograph over a surface to provide detail. Texture can change surface colour or modulate surface colour. Lecture 11 : Texture http://en.wikipedia.org/wiki/uv_mapping

More information

CS 475 / CS 675 Computer Graphics. Lecture 11 : Texture

CS 475 / CS 675 Computer Graphics. Lecture 11 : Texture CS 475 / CS 675 Computer Graphics Lecture 11 : Texture Texture Add surface detail Paste a photograph over a surface to provide detail. Texture can change surface colour or modulate surface colour. http://en.wikipedia.org/wiki/uv_mapping

More information

Lecturer Athanasios Nikolaidis

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

More information

End-Term Examination

End-Term Examination Paper Code: MCA-108 Paper ID : 44108 Second Semester [MCA] MAY-JUNE 2006 Q. 1 Describe the following in brief :- (3 x 5 = 15) (a) QUADRATIC SURFACES (b) RGB Color Models. (c) BSP Tree (d) Solid Modeling

More information

3D Rendering Pipeline

3D Rendering Pipeline 3D Rendering Pipeline Reference: Real-Time Rendering 3 rd Edition Chapters 2 4 OpenGL SuperBible 6 th Edition Overview Rendering Pipeline Modern CG Inside a Desktop Architecture Shaders Tool Stage Asset

More information

CSE4030 Introduction to Computer Graphics

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

More information

Lecture 4 Advanced Computer Graphics (CS & SE )

Lecture 4 Advanced Computer Graphics (CS & SE ) Lecture 4 Advanced Computer Graphics (CS & SE 233.420) Topics Covered Animation Matrices Viewing Lighting Animating Interactive Programs Consider planet.c Want to animate rotating the Earth around the

More information

OXFORD ENGINEERING COLLEGE (NAAC Accredited with B Grade) DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING LIST OF QUESTIONS

OXFORD ENGINEERING COLLEGE (NAAC Accredited with B Grade) DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING LIST OF QUESTIONS OXFORD ENGINEERING COLLEGE (NAAC Accredited with B Grade) DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING LIST OF QUESTIONS YEAR/SEM.: III/V STAFF NAME: T.ELANGOVAN SUBJECT NAME: Computer Graphics SUB. CODE:

More information

Academic Plan GAME & SIMULATION FOUNDATIONS

Academic Plan GAME & SIMULATION FOUNDATIONS Academic Plan GAME & SIMULATION FOUNDATIONS Unit Number: 1 GETTING STARTED PACING: 3 INSTRUCTIONAL MEETINGS Getting started Modeling 3DS Interface Right Click Menus Material Editor Track View Video Post

More information

To Do. Computer Graphics (Fall 2008) Course Outline. Course Outline. Methodology for Lecture. Demo: Surreal (HW 3)

To Do. Computer Graphics (Fall 2008) Course Outline. Course Outline. Methodology for Lecture. Demo: Surreal (HW 3) Computer Graphics (Fall 2008) COMS 4160, Lecture 9: OpenGL 1 http://www.cs.columbia.edu/~cs4160 To Do Start thinking (now) about HW 3. Milestones are due soon. Course Course 3D Graphics Pipeline 3D Graphics

More information

Ciril Bohak. - INTRODUCTION TO WEBGL

Ciril Bohak. - INTRODUCTION TO WEBGL 2016 Ciril Bohak ciril.bohak@fri.uni-lj.si - INTRODUCTION TO WEBGL What is WebGL? WebGL (Web Graphics Library) is an implementation of OpenGL interface for cmmunication with graphical hardware, intended

More information

CS 464 Review. Review of Computer Graphics for Final Exam

CS 464 Review. Review of Computer Graphics for Final Exam CS 464 Review Review of Computer Graphics for Final Exam Goal: Draw 3D Scenes on Display Device 3D Scene Abstract Model Framebuffer Matrix of Screen Pixels In Computer Graphics: If it looks right then

More information

Course Information Package

Course Information Package Course Information Package PLANNING FORM FOR AN EDUCATIONAL MODULE (to be completed by the teacher) Programme of Studies: Name of the module: Target group: Level of the unit: Entrance requirements: Number

More information

SHADERX 7 : ADVANCED RENDERING TECHNIQUES

SHADERX 7 : ADVANCED RENDERING TECHNIQUES SHADERX 7 : ADVANCED RENDERING TECHNIQUES WOLFGANG ENGEL Charles River Media Apart of Course Techno(ogy, Cengage Learning ~.. COURSE TECHNOLOGY 1% CENGAGE Learning- Australia, Brazil, Japan, Korea,Mexico,Singapore,

More information

Rendering Grass with Instancing in DirectX* 10

Rendering Grass with Instancing in DirectX* 10 Rendering Grass with Instancing in DirectX* 10 By Anu Kalra Because of the geometric complexity, rendering realistic grass in real-time is difficult, especially on consumer graphics hardware. This article

More information

GEOMETRIC TOOLS FOR COMPUTER GRAPHICS

GEOMETRIC TOOLS FOR COMPUTER GRAPHICS GEOMETRIC TOOLS FOR COMPUTER GRAPHICS PHILIP J. SCHNEIDER DAVID H. EBERLY MORGAN KAUFMANN PUBLISHERS A N I M P R I N T O F E L S E V I E R S C I E N C E A M S T E R D A M B O S T O N L O N D O N N E W

More information

OpenGL refresher. Advanced Computer Graphics 2012

OpenGL refresher. Advanced Computer Graphics 2012 Advanced Computer Graphics 2012 What you will see today Outline General OpenGL introduction Setting up: GLUT and GLEW Elementary rendering Transformations in OpenGL Texture mapping Programmable shading

More information

Geometry Primitives. Computer Science Department University of Malta. Sandro Spina Computer Graphics and Simulation Group. CGSG Geometry Primitives

Geometry Primitives. Computer Science Department University of Malta. Sandro Spina Computer Graphics and Simulation Group. CGSG Geometry Primitives Geometry Primitives Sandro Spina Computer Graphics and Simulation Group Computer Science Department University of Malta 1 The Building Blocks of Geometry The objects in our virtual worlds are composed

More information

Beginning Direct3D Game Programming: 1. The History of Direct3D Graphics

Beginning Direct3D Game Programming: 1. The History of Direct3D Graphics Beginning Direct3D Game Programming: 1. The History of Direct3D Graphics jintaeks@gmail.com Division of Digital Contents, DongSeo University. April 2016 Long time ago Before Windows, DOS was the most popular

More information

Topic 12: Texture Mapping. Motivation Sources of texture Texture coordinates Bump mapping, mip-mapping & env mapping

Topic 12: Texture Mapping. Motivation Sources of texture Texture coordinates Bump mapping, mip-mapping & env mapping Topic 12: Texture Mapping Motivation Sources of texture Texture coordinates Bump mapping, mip-mapping & env mapping Texture sources: Photographs Texture sources: Procedural Texture sources: Solid textures

More information

Computer Graphics. Prof. Feng Liu. Fall /21/2016

Computer Graphics. Prof. Feng Liu. Fall /21/2016 Computer Graphics Prof. Feng Liu Fall 2016 http://www.cs.pdx.edu/~fliu/courses/cs447/ 11/21/2016 Last time Polygon Mesh and Modeling 2 Today Modeling Technologies Final Exam: 12:30-2:00, December 7, 2016

More information

Computer Graphics Lecture 2

Computer Graphics Lecture 2 1 / 16 Computer Graphics Lecture 2 Dr. Marc Eduard Frîncu West University of Timisoara Feb 28th 2012 2 / 16 Outline 1 Graphics System Graphics Devices Frame Buffer 2 Rendering pipeline 3 Logical Devices

More information

Orthogonal Projection Matrices. Angel and Shreiner: Interactive Computer Graphics 7E Addison-Wesley 2015

Orthogonal Projection Matrices. Angel and Shreiner: Interactive Computer Graphics 7E Addison-Wesley 2015 Orthogonal Projection Matrices 1 Objectives Derive the projection matrices used for standard orthogonal projections Introduce oblique projections Introduce projection normalization 2 Normalization Rather

More information

5 Linear Algebra Determinants Matrices...121

5 Linear Algebra Determinants Matrices...121 Preface xi 1 Introduction 1 1.1 Graphics Areas... 1 1.2 MajorApplications... 2 1.3 Graphics APIs... 3 1.4 3D Geometric Models... 4 1.5 Graphics Pipeline...... 4 1.6 NumericalIssues... 5 1.7 Efficiency...

More information

Overview: Ray Tracing & The Perspective Projection Pipeline

Overview: Ray Tracing & The Perspective Projection Pipeline Overview: Ray Tracing & The Perspective Projection Pipeline Lecture #2 Thursday, August 28 2014 About this Lecture! This is an overview.! Think of it as a quick tour moving fast.! Some parts, e.g. math,

More information

Geometric Programming for Computer-Aided Design

Geometric Programming for Computer-Aided Design Geometric Programming for Computer-Aided Design Alberto Paoluzzi Dip. Informatica e Automazione, Università Roma Tre, Rome Italy with contributions from Valerio Pascucci Center for Applied Scientific Computing,

More information

Graphics Processing Unit Architecture (GPU Arch)

Graphics Processing Unit Architecture (GPU Arch) Graphics Processing Unit Architecture (GPU Arch) With a focus on NVIDIA GeForce 6800 GPU 1 What is a GPU From Wikipedia : A specialized processor efficient at manipulating and displaying computer graphics

More information

Computer Graphics Introduction. Taku Komura

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

More information

Clipping and Scan Conversion

Clipping and Scan Conversion 15-462 Computer Graphics I Lecture 14 Clipping and Scan Conversion Line Clipping Polygon Clipping Clipping in Three Dimensions Scan Conversion (Rasterization) [Angel 7.3-7.6, 7.8-7.9] March 19, 2002 Frank

More information

Today s Agenda. Basic design of a graphics system. Introduction to OpenGL

Today s Agenda. Basic design of a graphics system. Introduction to OpenGL Today s Agenda Basic design of a graphics system Introduction to OpenGL Image Compositing Compositing one image over another is most common choice can think of each image drawn on a transparent plastic

More information

CSE 167: Introduction to Computer Graphics Lecture #4: Vertex Transformation

CSE 167: Introduction to Computer Graphics Lecture #4: Vertex Transformation CSE 167: Introduction to Computer Graphics Lecture #4: Vertex Transformation Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2013 Announcements Project 2 due Friday, October 11

More information

CHETTINAD COLLEGE OF ENGINEERING & TECHNOLOGY CS2401 COMPUTER GRAPHICS QUESTION BANK

CHETTINAD COLLEGE OF ENGINEERING & TECHNOLOGY CS2401 COMPUTER GRAPHICS QUESTION BANK CHETTINAD COLLEGE OF ENGINEERING & TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS2401 COMPUTER GRAPHICS QUESTION BANK PART A UNIT I-2D PRIMITIVES 1. Define Computer graphics. 2. Define refresh

More information

Graphics and Visualization (GV)

Graphics and Visualization (GV) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 Graphics and Visualization (GV) Computer graphics is the term commonly used to describe the computer generation and manipulation

More information

Blue colour text questions Black colour text sample answers Red colour text further explanation or references for the sample answers

Blue colour text questions Black colour text sample answers Red colour text further explanation or references for the sample answers Blue colour text questions Black colour text sample answers Red colour text further explanation or references for the sample answers Question 1. a) (5 marks) Explain the OpenGL synthetic camera model,

More information

Topic 11: Texture Mapping 11/13/2017. Texture sources: Solid textures. Texture sources: Synthesized

Topic 11: Texture Mapping 11/13/2017. Texture sources: Solid textures. Texture sources: Synthesized Topic 11: Texture Mapping Motivation Sources of texture Texture coordinates Bump mapping, mip mapping & env mapping Texture sources: Photographs Texture sources: Procedural Texture sources: Solid textures

More information

CS451Real-time Rendering Pipeline

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

More information