Course Exam—Comp 390 (Computer Graphics)

COMP 390 (Computer Graphics) is a three-credit senior-level computer science course that introduces the concepts and implementation of computer graphics.  As one of the important subject areas of the study of computer science and information systems, this course focuses on the theoretical aspects and implementation of computer graphics using OpenGL

Students should note that COMP 206, COMP 306, or professor approval is required to register into this course.  Also, COMP 390 cannot be taken for credit if credit has already been obtained for COMP 392.This course is not available for challenge.

Computer Graphics is made up of twelve units, four assignments weighing ten percent each, one programming project worth thirty percent, and a final examination worth thirty percent.  The twelve units within this course cover topics including 2D graphics, lighting, surface rendering, the transformation and viewing of 3D graphics, object modeling and visible surface detection of 3D graphics, and color systems and shading.  To receive credit for COMP 390 students must achieve an average grade of at least fifty percent on the assignments, at least fifty percent on the project, and a grade of at least fifty percent on the final examination.

Note that the final exam for this course must be taken online with an AU-approved exam invigilator at an approved invigilation center.  It is your responsibility to ensure your chosen invigilation center can accommodate online exams.  For a list of invigilators who can accommodate online exams, visit the Exam Invigilation Network.

Basit Bada started studying at Athabasca University in the summer of 2017.  He states, “I am not a full-time AU student, I just take courses from AU and transfer them to my university.  I take AU courses because, though it could be a lot more work, it is more flexible and it allows me to easily combine school with work and get good grades.  AU also grants me the opportunity to take elective course that are related to computer science and allows me to take some necessary courses that are unavailable in some semesters in my physical school.”

He continues, “I started COMP 390 in May of 2018 but I completed my first Tutor Mark Exercise (TMA) in June because it took me time to download and install the necessary OpenGL software required for the course.  It also took me a while to grasp the concept of OpenGL graphics.  Furthermore, after downloading the necessary ‘Visual Basic 2013’ software, the license expired after one month, so I had to download another one which also expired after one month.  I think I fixed this by downloading the ‘not-recommended’ 2017 version, which did not have any programming issues or of signing in with my school email.  I completed my project and wrote my exam in September because I was on vacation in August.”

He explains the course, stating “The course is about how to create computer graphics using OpenGL which is a cross-platform application programming interface used for creating 2D & 3D graphics.  The course requires that you download some OpenGL libraries that work with C++.  At first, you will just need to use basic C++ programming language and the OpenGL libraries to create shapes by plotting lines from one coordinate to another, as if you were plotting lines on graph.  Later on, in the course, it becomes complex when you have to do your own calculations in TME4 and depend less on the OpenGL libraries.”

When I asked him to provide some insight to the structure of the course, Basit Bada explains, “All the Tutor Marked Assignments (TMA’s) are Programming exercises.  TMA1 and TMA2 where relatively easy and interesting after grasping the concept of OpenGL graphics; meanwhile, TME3 was more challenging and confusing.  However, I still did well in TME3.  TME4 was long, difficult, and frustrating but I was able to complete it too.  TME1 is based on Anti-aliasing and 2D Graphics Transformation.  TME2 is based on Object Modeling and Transformation & Projection.  TME 3 is based on Lighting Elements & Surface Materials, Calculating Specular Contribution, and loading a textured background.  TME4 is based on Recursive Reflection and Shadows.  TME4 was the most difficult.  You will need to use a difficult technique called Ray Tracing and it requires a lot of calculations.  You would have to be a patient person and a good debugger to get a good mark on TMA4.”

He continues, “Basically, you have to follow the study guide, which was specifically designed to aid students with the course.  Even if you have prior knowledge of OpenGL, you cannot take the study guide for granted and pass the course.  The instructor posts a lot of example code in the study guide that would be important for the assignment.  Some of the example codes even have to be copied and pasted.  The project was much more flexible; it requires you to use the techniques you have learnt throughout the course to complete one of three exercises.  You have to try to be unique with the project; create something unique that looks very different from your TMA’s, or else you might be engaging in self-plagiarism.”

As for the final exam, Basit says it was easy, explaining “You just need to follow the study guide (that is what everyone says and that is all I can say too).  The final exam was a three (3) hour, closed book exam with five parts.  Part one of the final exam is worth ten percent and has ten true/false questions.  Part two is worth ten percent and has five multiple-choice questions.  Part three is worth sixty-four percent and has eight short answer questions.  Part four is worth ten percent and is a question related to your project.  Part five is worth six percent and consists of argumentative questions.  No calculators allowed or needed as there are no calculations.  There are also no programming questions on the examination; part 1 to part 3 is based on the concepts in the course.”

When I asked him who he would recommend this course to, he stated “I do not recommend this course for anyone who has not taken a C++ course.  In fact, COMP 206 or COMP 306 is the required prerequisite to COMP 309.  I would recommend the course for anyone who is experienced in C++ programming and especially with OpenGL.”

I asked whether he enjoyed taking the course or not and he stated “Once I understood the basics of OpenGL graphics, I started to enjoy the course.  I enjoyed following the instructor’s questions and directions and producing the desired graphics results in Visual basic.  Though, the course does get harder and less interesting has the topics progress.”

Basit Bada provided some useful tips for students, stating “You can use OpenGL, google search, and any OpenGL YouTube Topics as an assistance resource for the TMAs and for understanding the concepts of OpenGL topics for your exam.”

Whether COMP 390 is a required course for your degree or program, or if the topics above are of interest to you, this course will introduce you to concepts and implementation of computer graphics!