Educational Information

We continue the section of our journal devoted to publications concerning various aspects of education in the area of computer graphics and geometry.
V.Pilyugin


 

Computer Graphics course on the CMC faculty of MSU

 

Eugene V. Shikin,

Moscow State University, Moscow, Russia,

shikin@spa.msu.ru

 

Alex V. Boreskov,

Moscow State University, Moscow, Russia,

avb@ice.ru

 

Sergey B. Berezin,

Moscow State University, Moscow, Russia,

s_berezin@cs.msu.su



 

Abstracts: This paper concerns computer graphics course read to the second year students on the Faculty of Computational Mathematics and Cybernetics of Moscow State University. Here we describe the contents of our course as well as our approach to practical tasks. The article is illustrated by screenshots of students’ works.

Keywords: Computer graphics, rendering, education.

 

Interest to the capabilities of modern personal computers continues to grow and grows rapidly. Besides the informational part of this interest, a good deal of attention is paid to the creative abilities of computer as an effective tool. One of the brightest instrumental characteristics of a computer is its ability to synthesize various scenes and phenomena and to create 3D dynamic images. This part is very attractive to the students. So it is not coincidental that some of the universities include a computer graphics course in their programs. It seems likely that this in part was stimulated by students’ interest to this discipline.

Such lections have been taught for many years at the CMC faculty of MSU. It started as a special course and from 1992/93 it became a regular semester course for all second-year students (4th semester). Since students are separated into two halves, there are two variants of the course taught by different lectors. Despite the fact that the program of the course is the same, there are some variations. This article concerns one such variation (including the whole course structure and exams).

The main goal for the computer graphics course is to give students the practical knowledge and experience of creating the simple dynamic scenes on computer’s screen and acquainting them with corresponding theoretical base.

Despite the introductory nature of the course, it is targeted at software developers. Computer graphics is treated as an effective instrument of studies. Every student has a chance to get a clean understanding of the main graphical characteristics of personal computer and the means to achieve specific goals and also to try him/herself in the field of computer graphics. We have taken the following approach to the course: during one week we give students two lections per day. After these lections the students must write a program (an assignment) based on the contents of the course. The time allowed for the assignment is about 4-5 weeks. The exam marks are based on this assignment.

Lections cover all the main parts of 3D graphics and are divided into two parts – the basics and the advanced part.

The basics part includes transformations and projections, hidden surface removal basics (including advanced topics such as BSP-trees and portals), lighting models and texturing, OpenGL. We admit that initial level of students in computer graphics and their interest to it differ a great deal, so having a basics part in the course is very important. But we observe the overall level increasing every year. The advanced part of the course includes geometric splines and realistic image synthesis using distributed ray tracing, elements of procedural modeling. The form of presenting the material as a crush-course from one point helps students to get “immersed” into the subject (because most of the students usually keep the material in head for a day or two, so the next day the material of previous lection is still present). From the other point, this approach gives students enough time to write his/her own assignment.

These assignments are not predefined, instead we formulate some criteria for exam marks. To a certain degree, these criteria are not something rigid – there are always some very impressive and good works that do not fall under these criteria, but receive an “excellent” mark. In fact we want the students to write a program drawing a dynamic 3D scene with various special effects. The exact theme, libraries and tools students can choose at their will (with some exceptions, so that these libraries won’t do all the work). Every work gets examined in several stages. Such form of an exam is aimed at the development and stimulation of the creative approach among the students. After the time period allowed to an assignment all works (floppies, CDs) are collected and examined in the absence of the students.

As a result, every year we get a good deal of very interesting, appealing and sometimes even professional-looking works. One more observed point is the overall growth of the level of student works. Many of the works show that their authors used some additional material not covered by the course. Among such works we’ve encountered photon maps, shader languages, particle systems and many other effects. All of this shows that such form of the course is able to arouse an interest to the subject and awaken the artistic and creative potential among the students. Working on the chosen assignment gives the student a rare opportunity to really see and estimate what he/she can learn  in a relatively short period of time and compare his/her own results with the works of the others. So in this case the exam marks are not a major part of the course. It can be easily seen when, before reading out a list of marks, we show the best works from this year and several previous years.

Negative elements of this approach to the course include cases of bought or just copied works. So in the last two years we invite a small group of students (whose works look somehow suspicious) to talk about their work details. It seems that this helps students in choosing the ways of making the work. As an illustration we’ve included screenshots of some of the students’ works
in this text.