TIEA311 Tietokonegrafiikan perusteet kevät 2017
|
|
- Elvin Ward
- 6 years ago
- Views:
Transcription
1 TIEA311 Tietokonegrafiikan perusteet kevät 2017 ( Principles of Computer Graphics Spring 2017) Copyright and Fair Use Notice: The lecture videos of this course are made available for registered students only. Please, do not redistribute them for other purposes. Use of auxiliary copyrighted material (academic papers, industrial standards, web pages, videos, and other materials) as a part of this lecture is intended to happen under academic fair use to illustrate key points of the subject matter. The lecturer may be contacted for take-down requests or other copyright concerns ( paavo.j.nieminen@jyu.fi).
2 TIEA311 Tietokonegrafiikan perusteet kevät 2017 ( Principles of Computer Graphics Spring 2017) Adapted from: Wojciech Matusik, and Frédo Durand: Computer Graphics. Fall Massachusetts Institute of Technology: MIT OpenCourseWare, License: Creative Commons BY-NC-SA Original license terms apply. Re-arrangement and new content copyright 2017 by Paavo Nieminen and Jarno Kansanaho Frontpage of the local course version, held during Spring 2017 at the Faculty of Information technology, University of Jyväskylä: nieminen/tgp17/
3 TIEA311 - Local plan for today Today (Thu, Feb 2, 2017) in Mattilanniemi... Corrections to the previous lecture talk (slides are not replicated here we just discuss the previous ones about homogeneous coordinates, homogenization, and perspective in 2D and 3D). Continue with the MIT OCW slides about hierarchical models Leave that story to whichever cliffhanger happens when we go to break. Have a break to get coffee, air, walk abouts, or whatever breaks are necessary. Take a deep breath Discuss Assignment 1, with C++, if lecture room technology allows
4 6.837 Computer Graphics Hierarchical Modeling Wojciech Matusik, MIT EECS Some slides from BarbCutler & Jaakko Lehtinen Image courtesy of BrokenSphere on Wikimedia Commons. License: CC-BY-SA. This content is excluded from our Creative Commons license. For more information, see 1 1
5 Hierarchical Modeling Triangles, parametric curves and surfaces are the building blocks from which more complex real-world objects are modeled. Hierarchical modeling creates complex realworld objects by combining simple primitive shapes into more complex aggregate objects. Image courtesy of Nostalgic dave on Wikimedia Commons. License: CC-BY-SA. This content is excluded from our Creative Commons license. For more information, see 21
6 Hierarchical models Image courtesy of David Bařina, Kamil Dudka, Jakub Filák, Lukáš Hefka on Wikimedia Commons. License: CC-BY-SA. This content is excluded from our Creative Commons license. For more information, see 22
7 Hierarchical models Image courtesy of David Bařina, Kamil Dudka, Jakub Filák, Lukáš Hefka on Wikimedia Commons. License: CC-BY-SA. This content is excluded from our Creative Commons license. For more information, see 23
8 Hierarchical models Image courtesy of David Bařina, Kamil Dudka, Jakub Filák, Lukáš Hefka on Wikimedia Commons. License: CC-BY-SA. This content is excluded from our Creative Commons license. For more information, see 24
9 Hierarchical models Image courtesy of David Bařina, Kamil Dudka, Jakub Filák, Lukáš Hefka on Wikimedia Commons. License: CC-BY-SA. This content is excluded from our Creative Commons license. For more information, see 25
10 Hierarchical models Image courtesy of David Bařina, Kamil Dudka, Jakub Filák, Lukáš Hefka on Wikimedia Commons. License: CC-BY-SA. This content is excluded from our Creative Commons license. For more information, see 26
11 Hierarchical models Image courtesy of David Bařina, Kamil Dudka, Jakub Filák, Lukáš Hefka on Wikimedia Commons. License: CC-BY-SA. This content is excluded from our Creative Commons license. For more information, see 27
12 Hierarchical ing of Objects The scene graph represents the logical organization of scene scene chair table ground table fruits Durand 28
13 Scene Graph Convenient Data structure for scene representation Geometry (meshes, etc.) Transformations Materials, color Multiple instances Basic idea: Hierarchical Tree Useful for manipulation/animation Also for articulated figures Useful for rendering, too Ray tracing acceleration, occlusion culling But note that two things that are close to each other in the tree are NOT necessarily spatially near each other Image courtesy of David Bařina, Kamil Dudka, Jakub Filák, Lukáš Hefka on Wikimedia Commons. License: CC-BY-SA. This content is excluded from our Creative Commons license. For more information, see This image is in the public domain. Source: Wikimedia Commons. 29
14 Scene Graph Representation Basic idea: Tree Comprised of several node types Shape: 3D geometric objects Transform: Affect current transformation Property: Color, texture : Collection of subgraphs C++ implementation base class Object children, parent derived classes for each node type (group, transform) 30
15 Scene Graph Representation In fact, generalization of a tree: Directed Acyclic Graph (DAG) Means a node can have multiple parents, but cycles are not allowed Why? Allows multiple instantiations Reuse complex hierarchies many times in the scene using different transformations (example: a tree) Of course, if you only want to reuse meshes, just load the mesh once and make several geometry nodes point to the same data Trsfrm Trsfrm Trsfrm Trsfrm 31
16 Simple Example with s { numobjects 3 { numobjects 3 Box { <BOX PARAMS> } Box { <BOX PARAMS> } Box { <BOX PARAMS> } } { numobjects 2 { Box { <BOX PARAMS> } Box { <BOX PARAMS> } Box { <BOX PARAMS> } } { Box { <BOX PARAMS> } Sphere { <SPHERE PARAMS> } Sphere { <SPHERE PARAMS> } } } Plane { <PLANE PARAMS> } } Text format is fictitious, better to use XML in real applications Durand 32
17 Simple Example with s { numobjects 3 { numobjects 3 Box { <BOX PARAMS> } Box { <BOX PARAMS> } Box { <BOX PARAMS> } } { numobjects 2 { Box { <BOX PARAMS> } Box { <BOX PARAMS> } Box { <BOX PARAMS> } } { Box { <BOX PARAMS> } Sphere { <SPHERE PARAMS> } Sphere { <SPHERE PARAMS> } } } Plane { <PLANE PARAMS> } } Here we have only simple shapes, but easy to add a Mesh node whose parameters specify an.obj to load (say) Durand 34
18 Adding Attributes (Material, etc.) 35 { numobjects 3 Material { <BLUE> } { numobjects 3 Box { <BOX PARAMS> } Box { <BOX PARAMS> } Box { <BOX PARAMS> } } { numobjects 2 Material { <BROWN> } { Box { <BOX PARAMS> } Box { <BOX PARAMS> } Box { <BOX PARAMS> } } { Material { <GREEN> } Box { <BOX PARAMS> } Material { <RED> } Sphere { <SPHERE PARAMS> } Material { <ORANGE> } Sphere { <SPHERE PARAMS> } } } Material { <BLACK> } Plane { <PLANE PARAMS> } }
19 Adding Transformations 36
20 Questions? 37
21 Scene Graph Traversal 38 Depth first recursion Visit node, then visit subtrees (top to bottom, left to right) When visiting a geometry node: Draw it! How to handle transformations? Remember, transformations are always specified in coordinate system of the parent
22 Scene Graph Traversal 39 How to handle transformations? Traversal algorithm keeps a transformation state S (a 4x4 matrix) from world coordinates Initialized to identity in the beginning Geometry nodes always drawn using current S When visiting a transformation node T: multiply current state S with T, then visit child nodes Has the effect that nodes below will have new transformation When all children have been visited, undo the effect of T!
23 Traversal Example 43 Root Translate T1 Rotate R2 (table, fruits) (chair, legs) Translate T2 Rotate R1 (tabletop, legs) (basket, fruit)
24 Traversal Example 44 Root Translate T1 Rotate R2 (table, fruits) (chair, legs) Translate T2 Rotate R1 (tabletop, legs) (basket, fruit) S = I
25 Traversal Example 45 Root Translate T1 Rotate R2 (table, fruits) (chair, legs) Translate T2 Rotate R1 (tabletop, legs) (basket, fruit) S = T1
26 Traversal Example 46 Root Translate T1 Rotate R2 (table, fruits) (chair, legs) Translate T2 Rotate R1 (tabletop, legs) (basket, fruit) S = T1
27 Traversal Example 47 Root Translate T1 Rotate R2 (table, fruits) (chair, legs) Translate T2 Rotate R1 (tabletop, legs) (basket, fruit) S = T1 T2
28 Traversal Example 48 Root Translate T1 Rotate R2 (table, fruits) (chair, legs) Translate T2 Rotate R1 (tabletop, legs) (basket, fruit) S = T1 T2
29 Traversal Example 49 Root Translate T1 Rotate R2 (table, fruits) (chair, legs) Translate T2 Rotate R1 (tabletop, legs) (basket, fruit) S = T1 T2
30 Traversal Example 50 Root Translate T1 Rotate R2 (table, fruits) (chair, legs) Translate T2 Rotate R1 (tabletop, legs) (basket, fruit) S = T1
31 Traversal Example 51 Root Translate T1 Rotate R2 (table, fruits) (chair, legs) Translate T2 Rotate R1 (tabletop, legs) (basket, fruit) S = T1 R1
32 Traversal Example 52 Root Translate T1 Rotate R2 (table, fruits) (chair, legs) Translate T2 Rotate R1 (tabletop, legs) (basket, fruit) S = T1 R1
33 Traversal Example 53 Root Translate T1 Rotate R2 (table, fruits) (chair, legs) Translate T2 Rotate R1 (tabletop, legs) (basket, fruit) S = T1 R1
34 Traversal Example 54 Root Translate T1 Rotate R2 (table, fruits) (chair, legs) Translate T2 Rotate R1 (tabletop, legs) (basket, fruit) S = T1
35 Traversal Example 55 Root Translate T1 Rotate R2 (table, fruits) (chair, legs) Translate T2 Rotate R1 (tabletop, legs) (basket, fruit) S = T1
36 Traversal Example 56 Root Translate T1 Rotate R2 (table, fruits) (chair, legs) Translate T2 Rotate R1 (tabletop, legs) (basket, fruit) S = I
37 Traversal Example 57 Root Translate T1 Rotate R2 (table, fruits) (chair, legs) Translate T2 Rotate R1 (tabletop, legs) (basket, fruit) S = R2
38 Traversal Example 58 Root Translate T1 Rotate R2 (table, fruits) (chair, legs) Translate T2 Rotate R1 (tabletop, legs) (basket, fruit) S = R2
39 Traversal Example Root Translate T1 Rotate R2 (table, fruits) Translate T2 Rotate R1 (chair, legs)... (tabletop, legs) (basket, fruit) S = R2 59
40 Traversal Example Translate T1 Root At each node, the current object-to-world transformation is the matrix product of all transformations found on the way from the node to the root. Rotate R2 (table, fruits) (chair, legs) Translate T2 Rotate R1 (tabletop, legs) (basket, fruit) S = T1R1 60
41 TIEA311 - Cliffhanger! So... what is a good way to handle this traversal especially undoing previous transformations? How is this related to the OpenGL specification and the codes that draw the triangles of the OBJ file (or the Utah Teapot) in our Assignment 0? Next lecture continues, again, right from these thoughts, with minimal recap be prepared! Now: We have an all-important break, letting our brains cool down a bit. After the break: Connection between theory, practice, and learning. Concrete C++ coding, if Santa has brought us Visual Studio in the lecture hall.
42 TIEA311 - Local situation Observations from computer classes and the unofficial IRC-chat IRCnet irc.cc.tut.fi allows us to connect; Linkki Jyväskylä ry has how-to guides; running screen and irssi on our university servers is standard practice): WOW, do we have a heterogeneous group working on homogeneous coordinates (joke, joke, so we don t get all gloomy about this! No need to be gloomy!) This is no surprise more like an everyday thing. Do not stress out! We will adapt the course requirements to match our needs. The needs? (1) Everyone learns important stuff on his/her own current level, moving towards being an IT pro. (2) Everyone learns the basics / fundamentals / principles of computer graphics, too (but then again, it is only one application among so many in IT).
43 TIEA311 - What it means to adapt If we need to extend deadlines, we do. If we need to leave out Assignments from our local requirements, we do. If we need to define grade 1/5 as partial implementation wrt to an original Assignment, we do. If someone feels that the course is progressing too slowly, you are free to move on to the next Assignment! The MIT OCW total material covers a full semester course... do as much as you can in the 135 hours allocated for this 5 ECTS version. Also, try helping your coursemates; that will teach you not only the stuff but the important skill of explaining stuff to others. Also, whatever you personally had to do in order to discover something, might be suitable for some other person, too! I can only offer my own perspective (and that is always projected to a lower dimension... joke. funny.)
44 TIEA311 - Words of advice, midcourse You can. There is nothing wrong with your brain. Never say I don t have the brain for this. You do have! Never think it is wasted time to feel the pain of not yet understanding, if you are focused in trying to understand You must understand your question before there is any chance to understand an answer. Otherwise you just hear or see a meaningless fact that passes by. You cannot suddenly appear at the top of a mountain you climb step by step! People who climb to Mount Everest must first climb other mountains; Before the top of Mt. Everest they need to spend time to acclimatize or they die. I honestly think that the solution to most problems I ve seen so far on this course instance is: Slow down. Breathe. Forget that there is a deadline and focus on understanding, right in the current moment.
45 TIEA311 - Words of a wiser man This course is not a math course far from it! But we are dealing with math kinda stuff, so let me cite Sheldon Axler from his Preface to the Student in his wonderful book Linear Algebra Done Right : You cannot expect to read mathematics the way you read a novel. If you zip through a page in less than an hour, you are probably going too fast. When you encounter the phrase as you should verify, you should indeed do the verification, which will usually require some writing on your part. When steps are left out, you need to supply the missing pieces. You should ponder and internalize each definition. For each theorem, you should seek examples to show why each hypothesis is necessary.
46 TIEA311 - Dive! This said... let s look at the Assignments. [live, on-screen, thanking Santa (and our IT support, naturally)]
6.837 Computer Graphics Hierarchical Modeling Wojciech Matusik, MIT EECS Some slides from BarbCutler & Jaakko Lehtinen
6.837 Computer Graphics Hierarchical Modeling Wojciech Matusik, MIT EECS Some slides from BarbCutler & Jaakko Lehtinen Image courtesy of BrokenSphere on Wikimedia Commons. License: CC-BY-SA. This content
More informationTIEA311 Tietokonegrafiikan perusteet kevät 2018
TIEA311 Tietokonegrafiikan perusteet kevät 2018 ( Principles of Computer Graphics Spring 2018) Copyright and Fair Use Notice: The lecture videos of this course are made available for registered students
More informationTIEA311 Tietokonegrafiikan perusteet kevät 2018
TIEA311 Tietokonegrafiikan perusteet kevät 2018 ( Principles of Computer Graphics Spring 2018) Copyright and Fair Use Notice: The lecture videos of this course are made available for registered students
More informationModeling Objects. Modeling. Symbol-Instance Table. Instance Transformation. Each appearance of the object in the model is an instance
Modeling Objects Modeling Hierarchical Transformations Hierarchical Models Scene Graphs A prototype has a default size, position, and orientation You need to perform modeling transformations to position
More informationTIEA311 Tietokonegrafiikan perusteet kevät 2018
TIEA311 Tietokonegrafiikan perusteet kevät 2018 ( Principles of Computer Graphics Spring 2018) Copyright and Fair Use Notice: The lecture videos of this course are made available for registered students
More informationTIEA311 Tietokonegrafiikan perusteet kevät 2018
TIEA311 Tietokonegrafiikan perusteet kevät 2018 ( Principles of Computer Graphics Spring 2018) Copyright and Fair Use Notice: The lecture videos of this course are made available for registered students
More information(Refer Slide Time: 06:01)
Data Structures and Algorithms Dr. Naveen Garg Department of Computer Science and Engineering Indian Institute of Technology, Delhi Lecture 28 Applications of DFS Today we are going to be talking about
More informationTransformations in Ray Tracing. MIT EECS 6.837, Durand and Cutler
Transformations in Ray Tracing Linear Algebra Review Session Tonight! 7:30 9 PM Last Time: Simple Transformations Classes of Transformations Representation homogeneous coordinates Composition not commutative
More informationCSE 167: Introduction to Computer Graphics Lecture #10: View Frustum Culling
CSE 167: Introduction to Computer Graphics Lecture #10: View Frustum Culling Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2015 Announcements Project 4 due tomorrow Project
More informationScanline Rendering 1 1/42
Scanline Rendering 1 1/42 Scanline Renderer Think of it as setting up a virtual environment/world that mimics the real world but cheats a bit for efficiency, using what we know about light and our eye
More informationPractical 2: Ray Tracing
2017/2018, 4th quarter INFOGR: Graphics Practical 2: Ray Tracing Author: Jacco Bikker The assignment: The purpose of this assignment is to create a small Whitted-style ray tracer. The renderer should be
More informationDrawing in 3D (viewing, projection, and the rest of the pipeline)
Drawing in 3D (viewing, projection, and the rest of the pipeline) CS559 Fall 2016 Lecture 6/7 September 26-28 2016 The first 4 Key Ideas 1. Work in convenient coordinate systems. Use transformations to
More informationSpeeding up your game
Speeding up your game The scene graph Culling techniques Level-of-detail rendering (LODs) Collision detection Resources and pointers (adapted by Marc Levoy from a lecture by Tomas Möller, using material
More informationMIT EECS 6.837, Teller and Durand 1
MIT EECS 6.837, Teller and Durand 1 Clipping MIT EECS 6.837 Frédo Durand and Seth Teller Some slides and images courtesy of Leonard McMillan MIT EECS 6.837, Teller and Durand 2 Administrative Assignment
More informationDrawing in 3D (viewing, projection, and the rest of the pipeline)
Drawing in 3D (viewing, projection, and the rest of the pipeline) CS559 Spring 2017 Lecture 6 February 2, 2017 The first 4 Key Ideas 1. Work in convenient coordinate systems. Use transformations to get
More informationRay Tracing Acceleration. CS 4620 Lecture 20
Ray Tracing Acceleration CS 4620 Lecture 20 2013 Steve Marschner 1 Will this be on the exam? or, Prelim 2 syllabus You can expect emphasis on topics related to the assignment (Shaders 1&2) and homework
More informationCSE 167: Introduction to Computer Graphics Lecture #11: Visibility Culling
CSE 167: Introduction to Computer Graphics Lecture #11: Visibility Culling Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2017 Announcements Project 3 due Monday Nov 13 th at
More information2D/3D Geometric Transformations and Scene Graphs
2D/3D Geometric Transformations and Scene Graphs Week 4 Acknowledgement: The course slides are adapted from the slides prepared by Steve Marschner of Cornell University 1 A little quick math background
More informationMidterm Exam CS 184: Foundations of Computer Graphics page 1 of 11
Midterm Exam CS 184: Foundations of Computer Graphics page 1 of 11 Student Name: Class Account Username: Instructions: Read them carefully! The exam begins at 2:40pm and ends at 4:00pm. You must turn your
More informationTopics. Ray Tracing II. Intersecting transformed objects. Transforming objects
Topics Ray Tracing II CS 4620 Lecture 16 Transformations in ray tracing Transforming objects Transformation hierarchies Ray tracing acceleration structures Bounding volumes Bounding volume hierarchies
More informationCS 465 Program 5: Ray II
CS 465 Program 5: Ray II out: Friday 2 November 2007 due: Saturday 1 December 2007 Sunday 2 December 2007 midnight 1 Introduction In the first ray tracing assignment you built a simple ray tracer that
More informationDrawing in 3D (viewing, projection, and the rest of the pipeline)
Drawing in 3D (viewing, projection, and the rest of the pipeline) CS559 Spring 2016 Lecture 6 February 11, 2016 The first 4 Key Ideas 1. Work in convenient coordinate systems. Use transformations to get
More informationCSE 167: Introduction to Computer Graphics Lecture #9: Visibility. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2018
CSE 167: Introduction to Computer Graphics Lecture #9: Visibility Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2018 Announcements Midterm Scores are on TritonEd Exams to be
More informationTopics. Ray Tracing II. Transforming objects. Intersecting transformed objects
Topics Ray Tracing II CS 4620 ations in ray tracing ing objects ation hierarchies Ray tracing acceleration structures Bounding volumes Bounding volume hierarchies Uniform spatial subdivision Adaptive spatial
More informationSpatial Data Structures and Speed-Up Techniques. Tomas Akenine-Möller Department of Computer Engineering Chalmers University of Technology
Spatial Data Structures and Speed-Up Techniques Tomas Akenine-Möller Department of Computer Engineering Chalmers University of Technology Spatial data structures What is it? Data structure that organizes
More informationShadows in the graphics pipeline
Shadows in the graphics pipeline Steve Marschner Cornell University CS 569 Spring 2008, 19 February There are a number of visual cues that help let the viewer know about the 3D relationships between objects
More informationCulling. Computer Graphics CSE 167 Lecture 12
Culling Computer Graphics CSE 167 Lecture 12 CSE 167: Computer graphics Culling Definition: selecting from a large quantity In computer graphics: selecting primitives (or batches of primitives) that are
More informationReading. Hierarchical Modeling. Symbols and instances. Required: Angel, sections , 9.8. Optional:
Reading Required: Angel, sections 9.1 9.6, 9.8 Optional: Hierarchical Modeling OpenGL rogramming Guide, the Red Book, chapter 3 cse457-07-hierarchical 1 cse457-07-hierarchical 2 Symbols and instances Most
More informationTemporal Resolution. Flicker fusion threshold The frequency at which an intermittent light stimulus appears to be completely steady to the observer
Temporal Resolution Flicker fusion threshold The frequency at which an intermittent light stimulus appears to be completely steady to the observer For the purposes of presenting moving images (animations),
More informationMidterm Exam Fundamentals of Computer Graphics (COMP 557) Thurs. Feb. 19, 2015 Professor Michael Langer
Midterm Exam Fundamentals of Computer Graphics (COMP 557) Thurs. Feb. 19, 2015 Professor Michael Langer The exam consists of 10 questions. There are 2 points per question for a total of 20 points. You
More informationCOMP 175 COMPUTER GRAPHICS. Lecture 07: Scene Graph. COMP 175: Computer Graphics March 10, Remco Chang 07 Scene Graph
Lecture 07: Scene Graph COMP 175: Computer Graphics March 10, 2015 1/47 Refresher: OpenGL Matrix Transformation Pipeline Input: list of 3D coordinates (x, y, z) GL_MODELVIEW Model transform View transform
More informationTransforms 1 Christian Miller CS Fall 2011
Transforms 1 Christian Miller CS 354 - Fall 2011 Transformations What happens if you multiply a square matrix and a vector together? You get a different vector with the same number of coordinates These
More informationCS 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 informationToday. Rendering algorithms. Rendering algorithms. Images. Images. Rendering Algorithms. Course overview Organization Introduction to ray tracing
Today Rendering Algorithms Course overview Organization Introduction to ray tracing Spring 2009 Matthias Zwicker Universität Bern Rendering algorithms Problem statement Given computer representation of
More informationToday. Rendering algorithms. Rendering algorithms. Images. Images. Rendering Algorithms. Course overview Organization Introduction to ray tracing
Today Rendering Algorithms Course overview Organization Introduction to ray tracing Spring 2010 Matthias Zwicker Universität Bern Rendering algorithms Problem statement Given computer representation of
More informationWELCOME! (download slides and.py files and follow along!) LECTURE 1
WELCOME! (download slides and.py files and follow along!) 6.0001 LECTURE 1 6.0001 LECTURE 1 1 TODAY course info what is computation python basics mathematical operations python variables and types NOTE:
More informationGrade 6 Math Circles. Spatial and Visual Thinking
Faculty of Mathematics Waterloo, Ontario N2L 3G1 Introduction Grade 6 Math Circles October 31/November 1, 2017 Spatial and Visual Thinking Centre for Education in Mathematics and Computing One very important
More informationProject 2: 3D transforms and Cameras
Project : D transforms and Cameras 50pts See schedule on website for the due date and time. The purpose of this assignment is to gain an understanding of how D transforms and viewing works in OpenGL with
More informationMITOCW MIT6_172_F10_lec18_300k-mp4
MITOCW MIT6_172_F10_lec18_300k-mp4 The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high quality educational resources for
More informationTopics 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 informationComputer 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 informationCS 4620 Program 4: Ray II
CS 4620 Program 4: Ray II out: Tuesday 11 November 2008 due: Tuesday 25 November 2008 1 Introduction In the first ray tracing assignment you built a simple ray tracer that handled just the basics. In this
More informationCHAPTER 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 informationCMSC427 Final Practice v2 Fall 2017
CMSC427 Final Practice v2 Fall 2017 This is to represent the flow of the final and give you an idea of relative weighting. No promises that knowing this will predict how you ll do on the final. Some questions
More informationLecture 18 of 41. Scene Graphs: Rendering Lab 3b: Shader
Scene Graphs: Rendering Lab 3b: Shader William H. Hsu Department of Computing and Information Sciences, KSU KSOL course pages: http://bit.ly/hgvxlh / http://bit.ly/evizre Public mirror web site: http://www.kddresearch.org/courses/cis636
More informationCSCE 441 Computer Graphics Fall 2018
CSCE 441 Computer Graphics Fall 2018 Meetings: Monday, Wednesday, Friday 9:10-10:00 a.m. Location: HRBB 113 Instructor: Dr. John Keyser Office: 527C, H.R. Bright Building Phone: 458-0167 Email: keyser@cse.tamu.edu
More information(Refer Slide Time: 00:04:20)
Computer Graphics Prof. Sukhendu Das Dept. of Computer Science and Engineering Indian Institute of Technology, Madras Lecture 8 Three Dimensional Graphics Welcome back all of you to the lectures in Computer
More informationEECE 478. Learning Objectives. Learning Objectives. Rasterization & Scenes. Rasterization. Compositing
EECE 478 Rasterization & Scenes Rasterization Learning Objectives Be able to describe the complete graphics pipeline. Describe the process of rasterization for triangles and lines. Compositing Manipulate
More informationGoals. Computer Graphics (Fall 2008) Course Outline. Course Outline. Course Outline. Demo: Surreal and Crazy World (HW 3)
Computer Graphics (Fall 2008) COMS 4160, Lecture 1: Overview and History Ravi Ramamoorthi http://www.cs.columbia.edu/~cs4160 Goals Systems: Be able to write complex 3D graphics programs (real-time in OpenGL,
More informationHierarchical Modeling. CS 432 Interactive Computer Graphics Prof. David E. Breen Department of Computer Science
Hierarchical Modeling CS 432 Interactive Computer Graphics Prof. David E. Breen Department of Computer Science 1 Objectives Examine the limitations of linear modeling - Symbols and instances Introduce
More informationComputer Graphics Disciplines. Grading. Textbooks. Course Overview. Assignment Policies. Computer Graphics Goals I
CSCI 480 Computer Graphics Lecture 1 Course Overview January 10, 2011 Jernej Barbic University of Southern California Administrative Issues Modeling Animation Rendering OpenGL Programming Course Information
More informationProgramming in C++ Prof. Partha Pratim Das Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur
Programming in C++ Prof. Partha Pratim Das Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture - 43 Dynamic Binding (Polymorphism): Part III Welcome to Module
More informationTEACHING PLAN FAKULTI TEKNOLOGI MAKLUMAT DAN KOMUNIKASI UNIVERSITI TEKNIKAL MALAYSIA MELAKA
TEACHING PLAN FAKULTI TEKNOLOGI MAKLUMAT DAN KOMUNIKASI UNIVERSITI TEKNIKAL MALAYSIA MELAKA INTERACTIVE COMPUTER GRAPHI BITM STER SI 0/06 BITM INTERACTIVE COMPUTER GRAPHI (,, ) TYPE OF SUBJECT : K.0 LEARNING
More information(Refer Slide Time: 00:01:27 min)
Computer Aided Design Prof. Dr. Anoop Chawla Department of Mechanical engineering Indian Institute of Technology, Delhi Lecture No. # 01 An Introduction to CAD Today we are basically going to introduce
More informationCS 130 Exam I. Fall 2015
S 3 Exam I Fall 25 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 informationBasic Triangle Congruence Lesson Plan
Basic Triangle Congruence Lesson Plan Developed by CSSMA Staff Drafted August 2015 Prescribed Learning Outcomes: Introduce students to the concept of triangle congruence and teach them about the congruency
More informationComputer Graphics (CS 543) Lecture 13b Ray Tracing (Part 1) Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)
Computer Graphics (CS 543) Lecture 13b Ray Tracing (Part 1) Prof Emmanuel Agu Computer Science Dept. Worcester Polytechnic Institute (WPI) Raytracing Global illumination-based rendering method Simulates
More informationHIERARCHICAL TRANSFORMATIONS A Practical Introduction
HIERARCHICAL TRANSFORMATIONS A Practical Introduction Christopher Peters HPCViz, KTH Royal Institute of Technology, Sweden chpeters@kth.se https://www.kth.se/profile/chpeters/ Transformations Many objects
More informationAccelerating Geometric Queries. Computer Graphics CMU /15-662, Fall 2016
Accelerating Geometric Queries Computer Graphics CMU 15-462/15-662, Fall 2016 Geometric modeling and geometric queries p What point on the mesh is closest to p? What point on the mesh is closest to p?
More informationHierarchical Modeling. University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell
Hierarchical Modeling University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell Reading Angel, sections 9.1-9.6 [reader pp. 169-185] OpenGL Programming Guide, chapter 3 Focus especially
More informationGeometric camera models and calibration
Geometric camera models and calibration http://graphics.cs.cmu.edu/courses/15-463 15-463, 15-663, 15-862 Computational Photography Fall 2018, Lecture 13 Course announcements Homework 3 is out. - Due October
More informationCPSC GLOBAL ILLUMINATION
CPSC 314 21 GLOBAL ILLUMINATION Textbook: 20 UGRAD.CS.UBC.CA/~CS314 Mikhail Bessmeltsev ILLUMINATION MODELS/ALGORITHMS Local illumination - Fast Ignore real physics, approximate the look Interaction of
More informationCMSC th Lecture: Graph Theory: Trees.
CMSC 27100 26th Lecture: Graph Theory: Trees. Lecturer: Janos Simon December 2, 2018 1 Trees Definition 1. A tree is an acyclic connected graph. Trees have many nice properties. Theorem 2. The following
More informationCOMP 175 COMPUTER GRAPHICS. Ray Casting. COMP 175: Computer Graphics April 26, Erik Anderson 09 Ray Casting
Ray Casting COMP 175: Computer Graphics April 26, 2018 1/41 Admin } Assignment 4 posted } Picking new partners today for rest of the assignments } Demo in the works } Mac demo may require a new dylib I
More information11.9 Connectivity Connected Components. mcs 2015/5/18 1:43 page 419 #427
mcs 2015/5/18 1:43 page 419 #427 11.9 Connectivity Definition 11.9.1. Two vertices are connected in a graph when there is a path that begins at one and ends at the other. By convention, every vertex is
More informationCIS 581 Interactive Computer Graphics (slides based on Dr. Han-Wei Shen s slides) Requirements. Reference Books. Textbook
CIS 581 Interactive Computer Graphics (slides based on Dr. Han-Wei Shen s slides) Instructor: Rick Parent (parent@cse.osu.edu) Credit: 4 Class: MWF 10:30 11:18 pm DL357 Office hours: MW 11:30 12:18 DL
More informationHierarchical Modeling
Hierarchical Modeling Geometric Primitives Remember that most graphics APIs have only a few geometric primitives Spheres, cubes, triangles, etc These primitives are instanced in order to apply transforms
More information(Refer Slide Time: 02.06)
Data Structures and Algorithms Dr. Naveen Garg Department of Computer Science and Engineering Indian Institute of Technology, Delhi Lecture 27 Depth First Search (DFS) Today we are going to be talking
More informationCS535: Interactive Computer Graphics
CS535: Interactive Computer Graphics Instructor: Daniel G. Aliaga (aliaga@cs.purdue.edu, www.cs.purdue.edu/homes/aliaga) Classroom: LWSN B134 Time: MWF @ 1:30-2:20pm Office hours: by appointment (LWSN
More informationCS380: Computer Graphics Introduction. Sung-Eui Yoon ( 윤성의 ) Course URL:
CS380: Computer Graphics Introduction Sung-Eui Yoon ( 윤성의 ) Course URL: http://sglab.kaist.ac.kr/~sungeui/cg About the Instructor Joined KAIST at 2007 Main Research Focus Handle massive data for various
More informationRay Tracing. CPSC 453 Fall 2018 Sonny Chan
Ray Tracing CPSC 453 Fall 2018 Sonny Chan Ray Tracing A method for synthesizing images of virtual 3D scenes. Image Capture Devices Which one shall we use? Goal: Simulate a Camera Obscura! Spheres & Checkerboard
More informationSpatial Data Structures
Spatial Data Structures Hierarchical Bounding Volumes Regular Grids Octrees BSP Trees Constructive Solid Geometry (CSG) [Angel 9.10] Outline Ray tracing review what rays matter? Ray tracing speedup faster
More informationComputer 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 informationMODELING AND HIERARCHY
MODELING AND HIERARCHY Introduction Models are abstractions of the world both of the real world in which we live and of virtual worlds that we create with computers. We are all familiar with mathematical
More informationScene Graphs. COMP 575/770 Fall 2010
Scene Graphs COMP 575/770 Fall 2010 1 Data structures with transforms Representing a drawing ( scene ) List of objects Transform for each object can use minimal primitives: ellipse is transformed circle
More informationRay Tracing. Cornell CS4620/5620 Fall 2012 Lecture Kavita Bala 1 (with previous instructors James/Marschner)
CS4620/5620: Lecture 37 Ray Tracing 1 Announcements Review session Tuesday 7-9, Phillips 101 Posted notes on slerp and perspective-correct texturing Prelim on Thu in B17 at 7:30pm 2 Basic ray tracing Basic
More informationTDA362/DIT223 Computer Graphics EXAM (Same exam for both CTH- and GU students)
TDA362/DIT223 Computer Graphics EXAM (Same exam for both CTH- and GU students) Saturday, January 13 th, 2018, 08:30-12:30 Examiner Ulf Assarsson, tel. 031-772 1775 Permitted Technical Aids None, except
More informationCS451Real-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 informationWelcome to 6.837! Welcome to all students: Plan for today: Introductions. Why study graphics? Team 18 s final project from 6.
Welcome to 6.837! Welcome to all students: MIT students attending lecture today Sign the circulating sign-up sheet today Fill out web survey (on course page) ASAP TR 2 30-4pm, Room 4-163 Fall 2002 http://graphics.lcs.mit.edu/6.837/f02
More informationLecture 25 of 41. Spatial Sorting: Binary Space Partitioning Quadtrees & Octrees
Spatial Sorting: Binary Space Partitioning Quadtrees & Octrees William H. Hsu Department of Computing and Information Sciences, KSU KSOL course pages: http://bit.ly/hgvxlh / http://bit.ly/evizre Public
More informationSFU CMPT 361 Computer Graphics Fall 2017 Assignment 2. Assignment due Thursday, October 19, 11:59pm
SFU CMPT 361 Computer Graphics Fall 2017 Assignment 2 Assignment due Thursday, October 19, 11:59pm For this assignment, you are to interpret a 3D graphics specification language, along with doing some
More informationBellevue Community College Summer 2009 Interior Design 194 SPECIAL TOPIC: SKETCHUP
Class Session: TTh 6:00 pm 8:00 pm Credit Hours: Two (2) Location: A262 Door Code: 349499 (through A254) Instructor: Greg Wharton Office: by appointment Hours: by appointment or email email: gwharton@gmail.com
More informationAnoka Hennepin K-12 Curriculum plan
Anoka Hennepin K-12 Curriculum plan Department: Elementary Math Unit Title: Packages and Polygons (Blue Book, Geo and Measurement) Triangles and Beyond (Blue Book, Geo and Measurement) Everyday Math: Volume
More informationAnnouncements. Written Assignment2 is out, due March 8 Graded Programming Assignment2 next Tuesday
Announcements Written Assignment2 is out, due March 8 Graded Programming Assignment2 next Tuesday 1 Spatial Data Structures Hierarchical Bounding Volumes Grids Octrees BSP Trees 11/7/02 Speeding Up Computations
More informationLines of Symmetry. Grade 3. Amy Hahn. Education 334: MW 8 9:20 a.m.
Lines of Symmetry Grade 3 Amy Hahn Education 334: MW 8 9:20 a.m. GRADE 3 V. SPATIAL SENSE, GEOMETRY AND MEASUREMENT A. Spatial Sense Understand the concept of reflection symmetry as applied to geometric
More informationBinary Trees
Binary Trees 4-7-2005 Opening Discussion What did we talk about last class? Do you have any code to show? Do you have any questions about the assignment? What is a Tree? You are all familiar with what
More informationCombinatorics Prof. Dr. L. Sunil Chandran Department of Computer Science and Automation Indian Institute of Science, Bangalore
Combinatorics Prof. Dr. L. Sunil Chandran Department of Computer Science and Automation Indian Institute of Science, Bangalore Lecture - 5 Elementary concepts and basic counting principles So, welcome
More informationHomeSchoolMathOnline.com Geometry Course Checklist
HomeSchoolMathOnline.com Geometry Course Checklist Name Date Started Course Date Completed Course How To Upgrade Your Course Experience: With a TabletClass full course membership you will be able to work
More informationCS 410: Computer Graphics
CS 410: Computer Graphics Professor: Bruce Draper Room 440 CSB (970) 491-7873 Office Hours: Mon 10:00 11:00 Tues 10:00 11:00 or by appointment draper@cs.colostate.edu 1-slide Overview This is what you
More informationRay Tracing Acceleration. CS 4620 Lecture 22
Ray Tracing Acceleration CS 4620 Lecture 22 2014 Steve Marschner 1 Topics Transformations in ray tracing Transforming objects Transformation hierarchies Ray tracing acceleration structures Bounding volumes
More informationGrade 7/8 Math Circles Fall Nov.4/5 The Pythagorean Theorem
1 Faculty of Mathematics Waterloo, Ontario Centre for Education in Mathematics and Computing Grade 7/8 Math Circles Fall 2014 - Nov.4/5 The Pythagorean Theorem Introduction A right triangle is any triangle
More informationLOD and Occlusion Christian Miller CS Fall 2011
LOD and Occlusion Christian Miller CS 354 - Fall 2011 Problem You want to render an enormous island covered in dense vegetation in realtime [Crysis] Scene complexity Many billions of triangles Many gigabytes
More informationThe exam begins at 2:40pm and ends at 4:00pm. You must turn your exam in when time is announced or risk not having it accepted.
CS 184: Foundations of Computer Graphics page 1 of 12 Student Name: Student ID: Instructions: Read them carefully! The exam begins at 2:40pm and ends at 4:00pm. You must turn your exam in when time is
More informationHidden Surface Elimination: BSP trees
Hidden Surface Elimination: BSP trees Outline Binary space partition (BSP) trees Polygon-aligned 1 BSP Trees Basic idea: Preprocess geometric primitives in scene to build a spatial data structure such
More informationUniversiteit Leiden Computer Science
Universiteit Leiden Computer Science Optimizing octree updates for visibility determination on dynamic scenes Name: Hans Wortel Student-no: 0607940 Date: 28/07/2011 1st supervisor: Dr. Michael Lew 2nd
More informationSpatial Data Structures
15-462 Computer Graphics I Lecture 17 Spatial Data Structures Hierarchical Bounding Volumes Regular Grids Octrees BSP Trees Constructive Solid Geometry (CSG) March 28, 2002 [Angel 8.9] Frank Pfenning Carnegie
More informationComputing Visibility. Backface Culling for General Visibility. One More Trick with Planes. BSP Trees Ray Casting Depth Buffering Quiz
Computing Visibility BSP Trees Ray Casting Depth Buffering Quiz Power of Plane Equations We ve gotten a lot of mileage out of one simple equation. Basis for D outcode-clipping Basis for plane-at-a-time
More informationAccelerating Ray-Tracing
Lecture 9: Accelerating Ray-Tracing Computer Graphics and Imaging UC Berkeley CS184/284A, Spring 2016 Course Roadmap Rasterization Pipeline Core Concepts Sampling Antialiasing Transforms Geometric Modeling
More information61A LECTURE 1 FUNCTIONS, VALUES. Steven Tang and Eric Tzeng June 24, 2013
61A LECTURE 1 FUNCTIONS, VALUES Steven Tang and Eric Tzeng June 24, 2013 Welcome to CS61A! The Course Staff - Lecturers Steven Tang Graduated L&S CS from Cal Back for a PhD in Education Eric Tzeng Graduated
More informationMovie: For The Birds. Announcements. Ray Tracing 1. Programming 2 Recap. Programming 3 Info Test data for part 1 (Lines) is available
Now Playing: Movie: For The Birds Pixar, 2000 Liar Built To Spill from You In Reverse Released April 11, 2006 Ray Tracing 1 Rick Skarbez, Instructor COMP 575 November 1, 2007 Announcements Programming
More information