G - Graphics

Similar documents
ABD - Database Administration

PI - Internet Protocols

AD - Distributed Applications

XC2 - Computer Networks II

CPD - Data Processing Centers

CS5620 Intro to Computer Graphics

CASO - Advanced Concepts on Operating Systems

LP - Programming Languages

Computer graphics 2. Róbert Bohdal, FMFI UK M-114, flurry.dg.fmph.uniba.sk/webog/bohdal

SOA - Advanced Operating Systems

BD - Databases

GDSA - Audiovisual Signal Management and Distribution

RIVC - Industrial Robotics and Computer Vision

C - Cryptography

SI - Computer Security

Digital Electronics

Why modern versions of OpenGL should be used Some useful API commands and extensions

Today. Rendering algorithms. Rendering algorithms. Images. Images. Rendering Algorithms. Course overview Organization Introduction to ray tracing

CAP - Advanced Programming Concepts

ASO - Operating Systems Administration

CS380: Computer Graphics Introduction. Sung-Eui Yoon ( 윤성의 ) Course URL:

Today. Rendering algorithms. Rendering algorithms. Images. Images. Rendering Algorithms. Course overview Organization Introduction to ray tracing

Read & Download (PDF Kindle) Real-Time Shader Programming (The Morgan Kaufmann Series In Computer Graphics)

TXC - Computer Network Technology

Lahore University of Management Sciences. CS 452 Computer Graphics

Automatic Control

Welcome to CS 4/57101 Computer Graphics

CMSC427 Advanced shading getting global illumination by local methods. Credit: slides Prof. Zwicker

782 Schedule & Notes

Chapter 7 - Light, Materials, Appearance

Computer Graphics. - Introduction - Hendrik Lensch. Computer Graphics WS07/08 - Introduction

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

Computer Graphics Introduction. Taku Komura

Development of Applications Based in Microcontrollers

FXT - Foundations of Telematic Networks

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

CAP - Advanced Programming Concepts

Rendering Part I (Basics & Ray tracing) Lecture 25 December 1, 2015

240AR059 - Geometric Fundamentals for Robot Design

TEACHING PLAN FAKULTI TEKNOLOGI MAKLUMAT DAN KOMUNIKASI UNIVERSITI TEKNIKAL MALAYSIA MELAKA

TCGI - Internet Transport, Control and Management

CHAPTER 1 Graphics Systems and Models 3

COMP 4801 Final Year Project. Ray Tracing for Computer Graphics. Final Project Report FYP Runjing Liu. Advised by. Dr. L.Y.

PRO1-I2O23 - Programming I

Bachelor of Science in Software Engineering (BSSE) Scheme of Studies ( )

INTE-C5O44 - Internet

ENGINEERING PROGRAMME

GD - Geometry for Design

In- Class Exercises for Shadow Algorithms

Recall: Indexing into Cube Map

Advanced Visualization

Cornell CS4620 Fall 2011!Lecture Kavita Bala (with previous instructors James/Marschner) Cornell CS4620 Fall 2011!Lecture 1.

Intro to Ray-Tracing & Ray-Surface Acceleration

Manipal Institute of Technology Manipal University Manipal

TDA362/DIT223 Computer Graphics EXAM (Same exam for both CTH- and GU students)

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

TPA - Audiovisual Technology and Production

Computer Graphics Disciplines. Grading. Textbooks. Course Overview. Assignment Policies. Computer Graphics Goals I

Sung-Eui Yoon ( 윤성의 )

INFOGR Computer Graphics. J. Bikker - April-July Lecture 10: Ground Truth. Welcome!

OVNET - Overlay Networks

CSC 562: Graduate Introduction to Game Engine Design

Lecture 15: Shading-I. CITS3003 Graphics & Animation

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

CS451Real-time Rendering Pipeline

Lecture 0 of 41: Part A Course Organization. Introduction to Computer Graphics: Course Organization and Survey

Computer Networks (Redes de Computadores)

Course Producer. Prerequisites. Textbooks. Academic integrity. Grading. Ming Chen. Same office hours as TA. The Hobbit: The Desolation of Smaug (2013)

Hardware Accelerated Volume Visualization. Leonid I. Dimitrov & Milos Sramek GMI Austrian Academy of Sciences

Network Architecture I

IXT - Introduction to Networks

Global Illumination. CMPT 361 Introduction to Computer Graphics Torsten Möller. Machiraju/Zhang/Möller

03 RENDERING PART TWO

Computergrafik. Matthias Zwicker Universität Bern Herbst 2016

DSX - Digital Systems Using Embedded Linux

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

Supplement to Lecture 16

Computer graphics 2: Graduate seminar in computational aesthetics

VD - Design Validation

CS354 Computer Graphics Ray Tracing. Qixing Huang Januray 24th 2017

COMPUTER GRAPHICS CS

CS 354R: Computer Game Technology

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

CS 4620 Program 4: Ray II

Course Title: Computer Graphics Course no: CSC209

Shadows. COMP 575/770 Spring 2013

Local Illumination. CMPT 361 Introduction to Computer Graphics Torsten Möller. Machiraju/Zhang/Möller

CIS 581 Interactive Computer Graphics

Shadow Rendering EDA101 Advanced Shading and Rendering

Computer Graphics. Si Lu. Fall uter_graphics.htm 11/22/2017

CPSC GLOBAL ILLUMINATION

Real-Time Programming and Database Systems

CSCD18: Computer Graphics. Instructor: Leonid Sigal

GI - Internet Management

Ray Tracer System Design & lrt Overview. cs348b Matt Pharr

3D GRAPHICS. design. animate. render

CS354 Computer Graphics Introduction. Qixing Huang Januray 17 8h 2017

EMC - Emc in Electronic Design

CSCE 441 Computer Graphics Fall 2018

Advanced Graphics

Transcription:

Coordinating unit: 270 - FIB - Barcelona School of Informatics Teaching unit: 723 - CS - Department of Computer Science Academic year: Degree: 2017 BACHELOR'S DEGREE IN INFORMATICS ENGINEERING (Syllabus 2010). (Teaching unit Optional) ECTS credits: 6 Teaching languages: Catalan, Spanish Teaching staff Coordinator: Others: - Carlos Andujar Gran (andujar@cs.upc.edu) - Alvaro Vinacua Pla (alvar@cs.upc.edu) - Antonio Chica Calaf (achica@cs.upc.edu) - Isabel Navazo Alvaro (isabel@cs.upc.edu) - Marc Comino Trinidad (mcomino@cs.upc.edu) - Marta Fairen Gonzalez (mfairen@cs.upc.edu) - Pere Pau Vázquez Alcocer (ppau@cs.upc.edu) - Robert Joan Arinyo (robert@cs.upc.edu) Requirements - Prerequisite IDI - Corequisite PROP Degree competences to which the subject contributes Specific: CCO2.3. To develop and evaluate interactive systems and systems that show complex information, and its application to solve person-computer interaction problems. CCO2.6. To design and implement graphic, virtual reality, augmented reality and video-games applications. CT1.2A. To interpret, select and value concepts, theories, uses and technological developments related to computer science and its application derived from the needed fundamentals of mathematics, statistics and physics. Capacity to solve the mathematical problems presented in engineering. Talent to apply the knowledge about: algebra, differential and integral calculus and numeric methods; statistics and optimization. CT1.2C. To use properly theories, procedures and tools in the professional development of the informatics engineering in all its fields (specification, design, implementation, deployment and products evaluation) demonstrating the comprehension of the adopted compromises in the design decisions. CT4.1. To identify the most adequate algorithmic solutions to solve medium difficulty problems. CT5.2. To know, design and use efficiently the most adequate data types and data structures to solve a problem. CT5.3. To design, write, test, refine, document and maintain code in an high level programming language to solve programming problems applying algorithmic schemas and using data structures. CT5.5. To use the tools of a software development environment to create and develop applications. Generical: G2. SUSTAINABILITY AND SOCIAL COMPROMISE: to know and understand the complexity of the economic and social phenomena typical of the welfare society. To be capable of analyse and evaluate the social and environmental impact. G8. APPROPIATE ATTITUDE TOWARDS WORK: to have motivation to be professional and to face new challenges, have a width vision of the possibilities of the career in the field of informatics engineering. To feel motivated for the 1 / 12

quality and the continuous improvement, and behave rigorously in the professional development. Capacity to adapt oneself to organizational or technological changes. Capacity to work in situations with information shortage and/or time and/or resources restrictions. Teaching methodology The teaching methodology is based on weekly theory classes (2h) and lab (2h). In the theory classes will introduce the concepts, equations, algorithms and techniques of the course contents, and exercises that help to assimilate the concepts and facilitate the development of practices that are performed in the lab sessions. The lab will consist of the teacher in introducing the scripts practices, structured sessions, and specific concepts required for their development. Students must complete the design and implementation of various applications related to the contents of the course. To facilitate their development, applications will be supplied skeletons will be partially programmed. Two hours of theory classes are weekly. The two hours of laboratory classes are also weekly. The independent learning is considered essential because the students outside of class must deepen some of the content entered by the teacher, using the documentation provided and seeking new ones. The course uses the C + + programming language, along with OpenGL and GLSL. Learning objectives of the subject 1.Understand in depth the various stages of the graphics pipeline 2.Being able to implement the algorithms associated with different stages of visualization 3.Understand the fundamentals, limitations of the model equations of local lighting 4.Assimilating the functionality, programming and execution model shaders in GLSL 5.Understanding and implementing technical skills have to interact with 3D scenes (selection, manipulation and navigation). 6.Know in depth the concepts, techniques and algorithms related texturació surfaces 7.Understand and be able to develop algorithms for the simulation of shadows 8.Understand and be able to develop algorithms for the simulation of mirror reflections 9.Understand and be able to develop algorithms for the simulation of transparent objects 10.Assimilate the main concepts, equations and algorithms for global illumination 11.Knowing the ray-tracing algorithm and its variants 12.Being able to implement features for efficient ray-geometry intersection 13.Identify the advantages and disadvantages of the different structures of spatial data 14.Being able to develop applications for interactive graphics rendering of 3D scenes 15.Understand the elements of realistic visualization and differences between models of local and global illumination 16.Know CG possibilities for the professional career, and develop quality skills. 17.Know the role of computer graphics in the development of software with clear social, economic or environmental contributions, in fields such as medicine, industrial design and cultural heritage. 2 / 12

Study load Total learning time: 150h Theory classes: 30h 20.00% Practical classes: 0h 0.00% Laboratory classes: 30h 20.00% Guided activities: 6h 4.00% Self study: 84h 56.00% 3 / 12

Content Introduction to Graphics Paradigms display. Elements that define the rendering. Emission, reflection and transmission of light. Behavior and widespread speculation. Models of global and local illumination. Computer graphics applications areas Role of computer graphics in our world. Main applications with clear social, economic and environmental contributions. Applications in medicina, industry and cultural heritage. Process visualization projective Geometric transformations and coordinate systems. Shipping geometry. Vertex processing. Composition of primitive and cut. Rasterització and interpolation. Processing fragments. Operations fragment. Upgrading the frame buffer. Development of shaders Vertex shaders. Geometry Shaders. Fragment shaders. Language GLSL. API for developing shaders. Interaction with 3D scenes Selection of objects. Manipulation of objects. Handling the navigation camera and the scene. 2D Textures 4 / 12

Texture space. Reverse Mapping. Generation, transformation, and interpolation of texture coordinates. Projective texture mapping. Sampled textures. Mipmapping. Samplers in GLSL. Simulation of shadows Concepts. Umbra and penumbra. Properties. By projecting shadows on one or more plans. Shadow mapping. Simulation of specular reflections Concepts. Direct Reflection (with virtual objects). Simulation with dynamic textures. Environment mapping Simulation of transparent objects Introduction. Scattering. Refraction. Snell law. Critical angle. Fresnel equations. Alpha blending. Global Illumination Figures basic radiometry. BSDF. General rendering equation. Mechanisms of transport of light. Classification of global illumination algorithms. Ray-tracing Ray-tracing classic. Ambient occlusion Ray-Intersection Geometry 5 / 12

Algorithms-ray intersection geometry. Spatial Data Structures. Subdivision of space. Branch of the scene. 6 / 12

Planning of activities Introduction to Graphics Hours: 4h Laboratory classes: 0h Self study: 2h 15, 17 Applications of computer graphics Hours: 2h Theory classes: 0h Laboratory classes: 0h Self study: 2h 16, 17 Process visualization projective Hours: 10h Laboratory classes: 2h Self study: 6h 1, 2, 14 Development of shaders Hours: 18h Laboratory classes: 6h Self study: 10h 1, 4, 14 7 / 12

Interaction with 3D scenes Hours: 18h Laboratory classes: 6h Self study: 10h 5, 14 2D Textures Hours: 14h Theory classes: 4h Laboratory classes: 2h Self study: 8h 6 Partial Review Hours: 2h Guided activities: 2h Self study: 0h Consideration of the first part of the course topics. 1, 2, 3, 4, 5, 6, 15, 17 A laboratory test Hours: 2h Guided activities: 2h Self study: 0h Testing concepts, techniques, algorithms, languages and APIs on the first lab. 1, 2, 3, 4, 5, 6, 15, 17 8 / 12

Simulation of shadows Hours: 12h Laboratory classes: 2h Self study: 8h 7, 14 Simulation of specular reflections Hours: 12h Laboratory classes: 2h Self study: 8h 8, 14 Simulation of transparent objects Hours: 4h Laboratory classes: 0h Self study: 2h 9, 14 Global Illumination Hours: 6h Laboratory classes: 0h Self study: 4h 10 9 / 12

Ray-tracing Hours: 20h Theory classes: 4h Laboratory classes: 6h Self study: 10h 10, 11, 14 Intersection-beam geometry Hours: 14h Theory classes: 4h Laboratory classes: 0h Self study: 10h 13, 14 Test Laboratory 2 Hours: 2h Guided activities: 2h Self study: 0h Testing concepts, techniques, algorithms, languages and APIs on the second lab. 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17 Final Exam Hours: 3h Guided activities: 3h Self study: 0h Final examination of the entire syllabus 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17 Working graphics applications in today's society Hours: 4h Self study: 4h 10 / 12

Written work on the role of computer graphics in the software development impact social, economic and / or environmental, in areas such as medicine, design and cultural heritage. 16, 17 Seminar on computer gràfics Hours: 3h Theory classes: 0h Laboratory classes: 0h Guided activities: 3h Self study: 0h 16, 17 Qualification system F = final exam C1 = lab control 1 C2 = lab control 2 Mark = 0.5F + 0.25C1 + 0.25C2 11 / 12

Bibliography Basic: Andújar, C.; Brunet, P.; Fairen, M.; Monclús, E.; Navazo, I.; Vàzquez, P.P.; Vinacua, A. Informàtica gràfica: un enfocament multimèdia. CPET, 2008. Angel, E.; Shreiner, D. Interactive computer graphics: a top-down approach with shader-based OpenGL. 7th ed., global ed. Pearson, 2015. ISBN 9781292019345. Akenine-Moller, T.; Haines, E.; Hoffman, N. Real-time rendering. 3rd ed. A K Peters, 2008. ISBN 9781568814247. Rost, R.J.; Licea-Kane, B. OpenGL shading language. 3rd ed. Addison-Wesley, 2010. ISBN 9780321637635. Watt, A.H. 3D computer graphics. 3rd ed. Addison-Wesley, 2000. ISBN 0201398559. Complementary: Pharr, M.; Humphreys, G. Physically based rendering: from theory to implementation. 2nd ed. Morgan Kaufmann, 2010. ISBN 9780123750792. Shreiner, D.; Licea-Kane, B.; Sellers, G. OpenGL programming guide: the official guide to learning OpenGL, version 4.3. 8th ed. Addison-Wesley, 2013. ISBN 9780321773036. Langetepe, E.; Zachmann, G. Geometric data structures for computer graphics [on line]. AK Peters, 2006Available on: <http://site.ebrary.com/lib/librarytitles/docdetail.action?docid=10158056>. ISBN 9781568812359. Others resources: Hyperlink http://qt.nokia.com/ http://www.opengl.org/documentation/specs/ 12 / 12