- Department of Software Engineering
Students are able to program a simple interactive 3D graphical application like a computer game or scientific visualisation, to design the scene, add textures imitating geometric details and materials (like wall surface, wood, sky), and set up the lighting. At the same time, they understand the fundamental principles and terms used in computer graphics, such as graphical pipeline, geometric transformations, or lighting model. They gain knowledge allowing orientation in computer graphics, and representing solid fundamentals for your professional development, e.g. for GPU programming and animations. They get used to techniques utilised in geometric modelling, modelling of curves and surfaces, and scientific visualisation.
Basic knowledge of C/C++ programming language and linear algebra.
- Syllabus of lectures:
1. Graphical user interface and its standardizations, OpenGL library, graphical primitives. Graphical primitives and their attributes, GLUT library.
2. Euclidean space, coordinate systems, transformations. Transformations (finish). Scene structure.
3. Color and light. Textures.
4. Input operations. Display pipeline and video RAM, fragment operations.
5. Image blending, transparency, anti-aliasing and fog. Curves and surfaces
6. Geometric modeling. Rendering and lighting. Scientific Visualization.
- Syllabus of tutorials:
1. Introduction, project. Compilation of the code, demos of finished projects. GLUT library. Selection of the project. OpenGL graphical elements (graded solution of small tasks). Transformations in OpenGL (graded solution of small tasks). Solving of individual projects, consultations. Solving of individual projects (1st checkpoint - parts 1 and 2 - model and transformations). Shading, lights and materials (graded solution of small tasks).
2. Solving of individual projects, consultations. Solving of individual projects (2nd checkpoint - part 3 ? lighting). Textures (graded solution of small tasks). Solving of individual projects or submitting of parts 1-5 in advance. Submitting of parts 1-5. Assessment + vote for the best works.
- Study Objective:
The goal the module is to explain the basic notions and principles of computer graphics (e.g., textures, lighting, transformations), to learn simple interactive graphical applications using OpenGL library, and introduce to the techniques used in geometric modelling, curve and plane modelling, and data visualisation.
- Study materials:
1. Foley, J. D., van Dam, A., Feiner, S., Hughes, J. ''Computer Graphics: Principles and Practice (Second edition)''. Addison-Wesley, 1990. ISBN 0201121107.
4. Angel, E. ''Interactive Computer Graphics: A Top-Down Approach With Opengl''. Addison-Wesley, 1997. ISBN 0201855712.
5. Shreiner, D., Woo, M., Neider, J., Davis, T. ''OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 2 (5th Edition)''. Addison-Wesley Professional, 2005. ISBN 0321335732.
6. Wright, R. S., Lipchak, B., Haemel, N. ''OpenGL SuperBible: Comprehensive Tutorial and Reference (4th Edition)''. Addison-Wesley Professional, 2007. ISBN 0321498828.
- Further information:
- No time-table has been prepared for this course
- The course is a part of the following study plans:
- Bc. Programme Informatics, Part -Time Form of Study, in Czech, Version 2015 - 2019 (VO)
- Bc Branch Security and Information Technology, Part-Time Form, in Czech, Version 2015 to 2019 (elective course)
- Bc.Branch WSI, Specialization Software Engineering, Part-Time Form, Versionverze 2015 - 2019 (elective course)