Course title | Computer Graphics |
---|---|
Course code | NTI/PG |
Organizational form of instruction | Lecture + Lesson |
Level of course | Bachelor |
Year of study | not specified |
Semester | Winter |
Number of ECTS credits | 5 |
Language of instruction | Czech |
Status of course | unspecified |
Form of instruction | Face-to-face |
Work placements | Course does not contain work placement |
Recommended optional programme components | None |
Lecturer(s) |
---|
|
Course content |
Lectures 1. Color spaces and color models basic color spaces: RGB, CMY, CMYK, YUV, XYZ, color perception, color transformations, chromatic diagram, gamut, ICC profiles. 2. Transformation of raster images color dithering, matrix dither, geometric transformation, chroma keying, histogram. 3. Boundary and volume representation of 3D objects basic models, winged edge, subdivision surfaces, voxels 4. OpenGL API basic primitives, camera, lights, materials, shading model. 5. OpenGL API transformation, display lists, VBO, textures, mist. 6. WebGL API basics of creating 3D web applications. 7. Javascript libraries for creating web applications Three.js and 3D.js 8. Rendering pipeline, Zbuffer, doublebuffering, perspective and orthogonal projection. 9. Shaders programs for GPUs, pixel shaders, vertex shaders, geometry shaders and tessellation shaders. 10. Parametric curves and surfaces basic algorithms, Bezier curves, NURBS surfaces. 11. File formats for saving raster images, vector graphics and animated sequences. 12. Photorealistic render methods raytracing, pathtracing, radiosity. 13. Animation keying, physical simulations, high level animation, particle systems. 14. Virtual reality basic principles of VR application. Practise 1. Basics of SCM system git and gitlab. It will be used for submitting homeworks. Task: convert RGB image to grayscale image. 2. Task: generate histogram from image, thresholding, dithering. 3. Task: chroma keying. 4. Task: display simple 3D object using OpenGL. 5. Task: UV texturing of simple 3D object using OpenGL. 6. Task: simple web application using WebGL. 7. Task: web application using Three.js library. 8. Task: visualization of data using 3D.js library. 9. Group task: graphical application I. 10. Group task: graphical application I. 11. Group task: graphical application II. 12. Group task: graphical application II. 13. Group task: graphical application II. 14. Credits.
|
Learning activities and teaching methods |
Monological explanation (lecture, presentation,briefing)
|
Learning outcomes |
This subject deals with basic problems of computer graphics. It is focused on visualization algorithms of 2D/3D objects and corresponding software technology.
Students will acquire the basic concepts of the application of computer graphics. He or she will be able to write core algorithms of computer graphics. |
Prerequisites |
Ability to develop application using C/C++ programing langiage.
|
Assessment methods and criteria |
Oral exam
Activity at lessons and completion of homeworks. |
Recommended literature |
|
Study plans that include the course |
Faculty | Study plan (Version) | Category of Branch/Specialization | Recommended semester | |
---|---|---|---|---|
Faculty: Faculty of Mechatronics, Informatics and Interdisciplinary Studies | Study plan (Version): Information Technology (2013) | Category: Informatics courses | 3 | Recommended year of study:3, Recommended semester: Winter |