{"id":2477,"date":"2025-10-07T23:32:11","date_gmt":"2025-10-07T22:32:11","guid":{"rendered":"https:\/\/cg.inf.elte.hu\/?page_id=2477"},"modified":"2026-02-03T11:07:58","modified_gmt":"2026-02-03T10:07:58","slug":"computer-graphics-lecture","status":"publish","type":"page","link":"https:\/\/cg.inf.elte.hu\/index.php\/computer-graphics-lecture\/","title":{"rendered":"Computer Graphics Lecture (English)"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">2025\/26 fall<\/h2>\n\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>First half:<\/strong><\/h3>\n\n\n\n<div class=\"wp-block-columns are-vertically-aligned-top is-layout-flex wp-container-core-columns-is-layout-1 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-vertically-aligned-top is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\">\n<h4 class=\"wp-block-heading\">Slides:<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2026\/02\/BSc_EA_01_ENG_handout.pdf\">Lecture 1: Basics<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2026\/02\/BSc_EA_02_ENG_handout.pdf\">Lecture 2: Coordinate systems<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2026\/02\/BSc_EA_03_ENG_handout.pdf\" data-type=\"attachment\" data-id=\"2572\">Lecture 3: Transformations<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2026\/02\/BSc_EA_04_ENG_handout.pdf\" data-type=\"attachment\" data-id=\"2573\">Lecture 4: Curves and Surfaces<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2026\/02\/BSc_EA_05_ENG_handout.pdf\" data-type=\"attachment\" data-id=\"2574\">Lecture 5: Raycasting<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2026\/02\/BSc_EA_06_ENG_handout.pdf\" data-type=\"attachment\" data-id=\"2575\">Lecture 6: Recursive raytracing<\/a><\/li>\n<\/ul>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-vertically-aligned-top is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:50%\">\n<h4 class=\"wp-block-heading\">Self-check questions:<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2025\/10\/EA01_self_check_questions.pdf\" data-type=\"link\" data-id=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2025\/10\/EA01_self_check_questions.pdf\">Lecture 1<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2025\/10\/EA02_self_check_questions.pdf\">Lecture 2<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2025\/10\/EA03_self_check_questions.pdf\">Lecture 3<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2025\/10\/EA04_self_check_questions.pdf\">Lecture 4<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2025\/10\/EA05_self_check_questions.pdf\">Lecture 5<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2025\/10\/EA06_self_check_questions.pdf\">Lecture 6<\/a><\/li>\n<\/ul>\n<\/div>\n<\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Second half<\/strong>:<\/h3>\n\n\n\n<div class=\"wp-block-columns are-vertically-aligned-top is-layout-flex wp-container-core-columns-is-layout-2 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-vertically-aligned-top is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\">\n<h4 class=\"wp-block-heading\">Slides:<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2026\/02\/BSc_EA_07_ENG_handout.pdf\" data-type=\"attachment\" data-id=\"2576\">Lecture 7: Graphics pipeline I.<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2026\/02\/BSc_EA_08_ENG_handout.pdf\" data-type=\"attachment\" data-id=\"2577\">Lecture 8: Graphics pipeline II.<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2026\/02\/BSc_EA_09_ENG_handout.pdf\" data-type=\"attachment\" data-id=\"2578\">Lecture 9: Graphics pipeline III.<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2026\/02\/BSc_EA_10_ENG_handout.pdf\" data-type=\"attachment\" data-id=\"2579\">Lecture 10: Geometric modelling I.<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2026\/02\/BSc_EA_11_ENG_handout.pdf\" data-type=\"attachment\" data-id=\"2580\">Lecture 11: Geometric modelling II.<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2026\/02\/BSc_EA_12_ENG_handout.pdf\" data-type=\"attachment\" data-id=\"2581\">Lecture 12: Animation<\/a><\/li>\n<\/ul>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-vertically-aligned-top is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:50%\">\n<h4 class=\"wp-block-heading\">Self-check questions:<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2025\/11\/EA07_self_check_questions.pdf\" data-type=\"attachment\" data-id=\"2541\">Lecture 7<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2025\/11\/EA08_self_check_questions.pdf\" data-type=\"attachment\" data-id=\"2546\">Lecture 8<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2025\/11\/EA09_self_check_questions.pdf\" data-type=\"attachment\" data-id=\"2545\">Lecture 9<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2025\/11\/EA10_self_check_questions.pdf\" data-type=\"attachment\" data-id=\"2544\">Lecture 10<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2025\/11\/EA11_self_check_questions.pdf\" data-type=\"attachment\" data-id=\"2543\">Lecture 11<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cg.inf.elte.hu\/wp-content\/uploads\/2025\/12\/EA12_self_check_questions.pdf\" data-type=\"attachment\" data-id=\"2559\">Lecture 12<\/a><\/li>\n<\/ul>\n<\/div>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Requirements<\/h2>\n\n\n\n<p>Prerequisites: Basic mathematics (linear algebra!).<\/p>\n\n\n\n<p>Attendance is mandatory for everyone by default.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>1st half-exam (1-6 presentations): 7-9th week of semester<\/li>\n\n\n\n<li>2nd half-exam (7-12 presentations): 1st or 2nd week in exam period<\/li>\n<\/ul>\n\n\n\n<p>The lecture grade is derived from two written half-exams:<\/p>\n\n\n\n<p>Retake exam opportunities (from all presentations 1-12!!) will be available<\/p>\n\n\n\n<p>Each exam is 90 minute written exam where 50% of the exercises need actual (hand-)calculations and 50% are theoretical questions.The exact dates will be sent out via Neptun emails and Canvas announcements.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Grading<\/h3>\n\n\n\n<p>On both part-exams, 32-32 points can be obtained, on each, 15 points are needed to pass. If both are passed, then the grading limits are as follows:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><th scope=\"col\">Grade<\/th><th scope=\"col\">Points (\/64)<\/th><th scope=\"col\">Min %<\/th><\/tr><tr><td>2<\/td><td>32 \u2013<\/td><td>50%<\/td><\/tr><tr><td>3<\/td><td>38 \u2013<\/td><td>60%<\/td><\/tr><tr><td>4<\/td><td>46 \u2013<\/td><td>72%<\/td><\/tr><tr><td>5<\/td><td>54 \u2013 64<\/td><td>85%<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Curriculum<\/h2>\n\n\n\n<p>First part<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Human vision, properties of light.<\/li>\n\n\n\n<li>Display devices. Color representation on the computer.<\/li>\n\n\n\n<li>Coordinate systems (Cartesian, polar, spherical, barycentric, homogeneous).<\/li>\n\n\n\n<li>Affine transformations<\/li>\n\n\n\n<li>Projective transformations.<\/li>\n\n\n\n<li>Curve representations: line, segment, parabola, circle, ellipse<\/li>\n\n\n\n<li>Surfaces: plane, sphere, ellipsoid, paraboloid<\/li>\n\n\n\n<li>Raycasting, raytracing fundamentals. Calculating ray directions when casting from the camera. Ray intersections: with plane, triangle, polygon, spheres, and AAB. Ray intersection with transformed objects.<\/li>\n\n\n\n<li>Ray tracing: coherent and incoherent rays. Simplified rendering equation. Optimizing ray intersections: Bounding volumes, intersection with convex polyhedron, hierarchical bounding volumes, space subdivisions.\n<ul class=\"wp-block-list\">\n<li>Note: Calculating exercises about ray-surface intersections belong to the second part, but the theory is also needed for the first part.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p>Second part<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Stages of the graphics pipeline (incremental image synthesis). Pipeline on the GPU.<\/li>\n\n\n\n<li>Local illumination: shading (constant, Phong, Gouraud).<\/li>\n\n\n\n<li>Culling: Point- and segment culling. Culling polygons.<\/li>\n\n\n\n<li>Rasterization: line rasterization, optimizations. Bresenhem algorithm. Triangle filling.<\/li>\n\n\n\n<li>Light sources: ambient light, directional, omni, and spotlight.<\/li>\n\n\n\n<li>Light-reflecting models: diffuse surfaces, reflection, refraction. BRDF.<\/li>\n\n\n\n<li>Texturing: texture mapping and methods, triangle parameterization, general surface parameterization. Perspective-corrected texturing. Texture filtering, mipmap.<\/li>\n\n\n\n<li>Special textures: procedural, non-color textures.<\/li>\n\n\n\n<li>Storing geometry and topology: index buffers, winged edge, and half-edge data structures.<\/li>\n\n\n\n<li>Line strips, splines, subdivision curves.<\/li>\n\n\n\n<li>B\u00e9zier curves, de Casteljau algorithm.<\/li>\n\n\n\n<li>Surface representations. Bilinear and Bezier surfaces. Subdivision surfaces: Doo-Sabin, Catmull-Clark.<\/li>\n\n\n\n<li>Animation types and methods. Animating camera and objects, including position and orientation.<\/li>\n\n\n\n<li>Animation with formulas. Keyframe animation, interpolation. Trajectory animation.<\/li>\n\n\n\n<li>Hierarchical systems: Kinematics, inverse kinematics.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>2025\/26 fall First half: Slides: Self-check questions: Second half: Slides: Self-check questions: Requirements Prerequisites: Basic mathematics (linear algebra!). Attendance is mandatory for everyone by default. The lecture grade is derived from two written half-exams: Retake&#8230;<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"inline_featured_image":false,"footnotes":""},"class_list":["post-2477","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/cg.inf.elte.hu\/index.php\/wp-json\/wp\/v2\/pages\/2477","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cg.inf.elte.hu\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/cg.inf.elte.hu\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/cg.inf.elte.hu\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/cg.inf.elte.hu\/index.php\/wp-json\/wp\/v2\/comments?post=2477"}],"version-history":[{"count":23,"href":"https:\/\/cg.inf.elte.hu\/index.php\/wp-json\/wp\/v2\/pages\/2477\/revisions"}],"predecessor-version":[{"id":2583,"href":"https:\/\/cg.inf.elte.hu\/index.php\/wp-json\/wp\/v2\/pages\/2477\/revisions\/2583"}],"wp:attachment":[{"href":"https:\/\/cg.inf.elte.hu\/index.php\/wp-json\/wp\/v2\/media?parent=2477"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}