3D Graphics Programming 390-FG1-2PG3D
Study profile: general academic
Mode of study: full-time
Type of course: compulsory
Field and discipline of science: Field of Exact and Natural Sciences, Discipline: Physical Sciences
Level of study: first-cycle studies (Bachelor’s level)
Year/Semester: 2nd year / 4th semester
ECTS credits: 5
Prerequisites:
Completed courses in structured programming, object-oriented programming, and operating systems.
Student workload balance:
- participation in lectures (15 hours)
- participation in laboratory classes (45 hours)
- participation in consultations (15 hours)
- individual student work at home (50 hours)
Quantitative indicators:
-student workload related to classes requiring the direct participation of a teacher – 3 ECTS
- student workload related to independent work – 2 ECTS
Rules for the use of Artificial Intelligence (AI):
During classes, the use of AI systems is permitted in the following scope:
1. Machine translation of source texts from foreign languages
2. Searching for and organizing scientific sources
3. Creating simulations and modeling physical phenomena discussed during lectures
The use of AI systems during the exam is not permitted.
In case of violations of the above rules, the student may be held responsible under separate disciplinary regulations.
Lecture content:
- Introduction to 3D graphics programming
- Creating a rendering context and application window
- Introduction to shaders
- Shader programming language GLSL
- Introduction to object texturing
- Transforming objects in a 3D scene
- Camera in a 3D scene
- Introduction to lighting
- Loading models from modeling software
- Buffers in 3D graphics
- Rendering transparent objects
- Cubemap textures and environment mapping
- Bump mapping
- Fog effect and anti-aliasing
- Text rendering
Laboratory content:
Laboratory sessions involve practical implementation of the topics covered in the lectures.
|
Term 2024:
None |
Term 2025:
Lecture content: |
Mode
Prerequisites (description)
Course coordinators
Type of course
Requirements
Learning outcomes
Knowledge – the graduate knows and understands:
KP6_WG4 advanced computational methods used to solve typical physical problems, as well as examples of practical implementation of such methods using appropriate IT tools; understands elements of programming and software engineering within the scope defined by the curriculum.
Skills – the graduate is able to:
KP6_UK3 prepare oral presentations in Polish and English on specific topics, using basic theoretical approaches as well as various sources.
KP6_UO1 organize their own work and the work of a team.
KP6_UU1 learn independently.
Social competencies – the graduate is ready to:
KP6_KO2 consult scientific and popular science literature to deepen and broaden knowledge, taking into account the risks of obtaining information from unverified sources, including the Internet.
Assessment criteria
Course completion is assessed based on the following criteria:
1. Knowledge of concepts and mechanisms of 3D graphics programming
2. Ability to apply 3D graphics programming mechanisms to specific problems
3. Ability to engage in discussions on topics related to the course
4. Ability to use literature and Internet resources
5. Creativity in approaching problem-solving
Completion of laboratory classes is based on attendance. Missing up to three sessions is allowed. The final laboratory grade is determined by the evaluation of homework assignments, two tests, and the completion of the final project.
Completion of lectures is based on an oral final exam.
The following grading scale is used to verify learning outcomes:
very good – 5 (100%–91%)
good plus – 4.5 (90%–81%)
good – 4 (80%–71%)
satisfactory plus – 3.5 (70%–61%)
satisfactory – 3 (60%–51%)
fail / unsatisfactory – 2 (50%–0%)
Bibliography
"OpenGL - Expert book", Richard S. Wright jr, Michael Sweet, Wydawnictwo Helion
https://learnopengl.com
"Learn OpenGL", Joel de Vries
|
Term 2024:
None |
Additional information
Additional information (registration calendar, class conductors, localization and schedules of classes), might be available in the USOSweb system: