CSE4030 Introduction to Computer Graphics

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

Models and Architectures

Introduction to Computer Graphics with WebGL

VTU QUESTION PAPER SOLUTION UNIT -1 INTRODUCTION

Computer Graphics and Visualization. Graphics Systems and Models

Graphics Systems and Models

Lecture 1. Computer Graphics and Systems. Tuesday, January 15, 13

3D graphics, raster and colors CS312 Fall 2010

CS450/550. Pipeline Architecture. Adapted From: Angel and Shreiner: Interactive Computer Graphics6E Addison-Wesley 2012

Survey in Computer Graphics Computer Graphics and Visualization

National Chiao Tung Univ, Taiwan By: I-Chen Lin, Assistant Professor

INTRODUCTION. Slides modified from Angel book 6e

OUTLINE. Learn the basic design of a graphics system Introduce pipeline architecture Examine software components for a graphics system

Introduction to Computer Graphics with WebGL

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

Computer Graphics. Bing-Yu Chen National Taiwan University

CS451Real-time Rendering Pipeline

Computer Graphics - Chapter 1 Graphics Systems and Models

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

CIS 581 Interactive Computer Graphics

Rasterization Overview

CHAPTER 1 Graphics Systems and Models 3

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

Computer Graphics. Bing-Yu Chen National Taiwan University The University of Tokyo

Spring 2011 Prof. Hyesoon Kim

CIS 441/541: Introduction to Computer Graphics Lecture 14: OpenGL Basics

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

CSE528 Computer Graphics: Theory, Algorithms, and Applications

CIS 581 Interactive Computer Graphics (slides based on Dr. Han-Wei Shen s slides) Requirements. Reference Books. Textbook

Lecture 2. Shaders, GLSL and GPGPU

Pipeline Operations. CS 4620 Lecture 10

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

Graphics Hardware. Instructor Stephen J. Guy

CS 4620 Program 3: Pipeline

Pipeline Operations. CS 4620 Lecture 14

Real-Time Rendering (Echtzeitgraphik) Michael Wimmer

Computer Science 175. Introduction to Computer Graphics lib175 time: m/w 2:30-4:00 pm place:md g125 section times: tba

Spring 2009 Prof. Hyesoon Kim

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

Lecturer Athanasios Nikolaidis

Game Programming. Bing-Yu Chen National Taiwan University

I expect to interact in class with the students, so I expect students to be engaged. (no laptops, smartphones,...) (fig)

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

CSC 8470 Computer Graphics. What is Computer Graphics?

Computer Graphics and Visualization. What is computer graphics?

CS452/552; EE465/505. Image Formation

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

Graphics Programming

Real - Time Rendering. Graphics pipeline. Michal Červeňanský Juraj Starinský

Computer Graphics. Chapter 1 (Related to Introduction to Computer Graphics Using Java 2D and 3D)

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

Graphics Pipeline & APIs

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

Graphics Hardware and Display Devices

OpenGL/GLUT Intro. Week 1, Fri Jan 12

Real-Time Shadows. Last Time? Today. Why are Shadows Important? Shadows as a Depth Cue. For Intuition about Scene Lighting

Real-Time Shadows. Last Time? Textures can Alias. Schedule. Questions? Quiz 1: Tuesday October 26 th, in class (1 week from today!

Ulf Assarsson Department of Computer Engineering Chalmers University of Technology

3D Graphics and OpenGl. First Steps

Chapter 4. Chapter 4. Computer Graphics 2006/2007 Chapter 4. Introduction to 3D 1

Ulf Assarsson Department of Computer Engineering Chalmers University of Technology

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

Computer Graphics: Programming, Problem Solving, and Visual Communication

CS Computer Graphics: Hidden Surface Removal

Computer Graphics Shadow Algorithms

CS 591B Lecture 9: The OpenGL Rendering Pipeline

Computer Graphics I Lecture 11

X. GPU Programming. Jacobs University Visualization and Computer Graphics Lab : Advanced Graphics - Chapter X 1

CS130 : Computer Graphics Lecture 2: Graphics Pipeline. Tamar Shinar Computer Science & Engineering UC Riverside

The Traditional Graphics Pipeline

Graphics Pipeline & APIs

Real-Time Shadows. Last Time? Schedule. Questions? Today. Why are Shadows Important?

OpenGL. Toolkits.

Chapter 1 Introduction

Introduction to Shaders.

The Traditional Graphics Pipeline

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

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

Real-Time Shadows. MIT EECS 6.837, Durand and Cutler

CSE528 Computer Graphics: Theory, Algorithms, and Applications

2.11 Particle Systems

Rendering Objects. Need to transform all geometry then

Last Time. Reading for Today: Graphics Pipeline. Clipping. Rasterization

Computer graphics 2: Graduate seminar in computational aesthetics

OpenGL refresher. Advanced Computer Graphics 2012

For Intuition about Scene Lighting. Today. Limitations of Planar Shadows. Cast Shadows on Planar Surfaces. Shadow/View Duality.

Image Formation. Introduction to Computer Graphics. Machiraju/Zhang/Möller/Klaffenböck

CS130 : Computer Graphics. Tamar Shinar Computer Science & Engineering UC Riverside

CS452/552; EE465/505. Clipping & Scan Conversion

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

6.837 Introduction to Computer Graphics Assignment 5: OpenGL and Solid Textures Due Wednesday October 22, 2003 at 11:59pm

The Traditional Graphics Pipeline

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

Last Time. Why are Shadows Important? Today. Graphics Pipeline. Clipping. Rasterization. Why are Shadows Important?

Line Drawing. Foundations of Computer Graphics Torsten Möller

3D Polygon Rendering. Many applications use rendering of 3D polygons with direct illumination

Computer Graphics. Lecture 02 Graphics Pipeline. Edirlei Soares de Lima.

Intro to Ray-Tracing & Ray-Surface Acceleration

3D Rasterization II COS 426

CSE 690: GPGPU. Lecture 2: Understanding the Fabric - Intro to Graphics. Klaus Mueller Stony Brook University Computer Science Department

Transcription:

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 2 (English) 01:40~01:50 Quiz (English, Korean) 01:50~01:60 Q&A (English, Korean)

Week 2 Let s get drawing! How does your computer draw? A review on 2D graphics

Michelangelo and You [Michelangelo 1504] [Koller et al. 2004]

Basic Graphics System Output device Input devices Image formed in FB

Raster Graphics Image produced as an array (the raster) of picture elements (pixels) in the frame buffer http://www.youtube.com/watch?v=jwd5ya56wbi

Depth of Frame Buffer Depth or precision of the frame buffer Determines how many colors can be represented on a give system 1-bit-deep frame buffer 2 colors 8-bit-deep frame buffer 2^8(256) colors

CPU vs GPU NVIDIA Adam & Jamie draw a MONA LISA in 80 milliseconds! Parallel processing on GPU's http://www.youtube.com/watch?v=fkk933kk6gg (short version) http://www.youtube.com/watch?v=zrjeyfxpuyq&annotation_id=annotation_764898&feature=iv (full version)

Object Seen by Different Viewers FIGURE 1.6 Image seen by three different viewers. (a) A s view. (b) B s view. (c) C s view.

Image Formation 2D 3D

See the Difference?

Elements of Image Formation Objects Viewer Light source(s) Attributes that govern how light interacts with the materials in the scene Note the independence of the objects, the viewer, and the light source(s)

Ray Interactions FIGURE 1.11 Ray interactions. Ray A enters camera directly. Ray B goes off to infinity. Ray C is reflected by a mirror. Ray D goes trough a transparent sphere.

Ray Tracing and Geometric Optics One way to form an image is to follow rays of light from a point source finding which rays enter the lens of the camera. However, each ray of light may have multiple interactions with objects before being absorbed or going to infinity.

Three-Color Theory Human visual system has two types of sensors Rods: monochromatic, night vision Cones Color sensitive Three types of cones Only three values (the tristimulus values) are sent to the brain Need only match these three values Need only three primary colors

Object Where did this image come from?

Wireframe Graphics wireframe representation of sun object

Raster Graphics Allows us to go from lines and wire frame images to filled polygons

Recently Realism comes to computer graphics smooth shading environment mapping bump mapping

CSE4030 Break and Q&A

The Programmer s Interface Programmer sees the graphics system through a software interface: the Application Programmer Interface (API) OpenGL Open Graphics Library API for 2D and 3D graphics programming GLUT The OpenGL Utility Toolkit

First Example type of object location of vertex glbegin(gl_polygon) glvertex3f(0.0, 0.0, 0.0); glvertex3f(0.0, 1.0, 0.0); glvertex3f(1.0, 0.0, 0.0); glend( ); end of object definition

Simplified Pipeline

Geometric Pipeline Pipeline architecture application program display All steps can be implemented in hardware on the graphics card

Vertex Processing Much of the work in the pipeline is in converting object representations from one coordinate system to another Object coordinates Camera (eye) coordinates Screen coordinates Every change of coordinates is equivalent to a matrix transformation Vertex processor also computes vertex colors

Projection Projection is the process that combines the 3D viewer with the 3D objects to produce the 2D image Perspective projections: all projectors meet at the center of projection Parallel projection: projectors are parallel, center of projection is replaced by a direction of projection

Clipping Just as a real camera cannot see the whole world, the virtual camera can only see part of the world or object space Objects that are not within this volume are said to be clipped out of the scene

Primitive Assembly Vertices must be collected into geometric objects before clipping and rasterization can take place Line segments Polygons Curves and surfaces

Rasterization The primitives that emerge from the clipper are still in terms of their vertices They must be further processed to generate pixels in the frame buffer The output of rasterizer is a set of fragments for each primitive Fragments are potential pixels Have a location in frame buffer Color and depth attributes

Fragment Processing Fragments are processed to determine the color of the corresponding pixel in the frame buffer Colors can be determined by texture mapping or interpolation of vertex colors Fragments may be blocked by other fragments closer to the camera Hidden-surface removal

Lab 2 How to Start Graphics Programming GLUT setup Visual Studio environment setting GLUT API Preparing for a canvas (window) Input devices (keyboard, mouse)

Reading Assignment Appendix B Spaces Appendix C Matrices

CSE4030 Quiz