Should you be here?
This is a class in computer
graphics. Our goal is to teach you about the science of making and manipulating
images with computers. This course is not about how to use computer graphics.
Put simply, our goal is to teach you to write and understand Photoshop or Maya,
not to use them.
prerequisites are CS367 (Data
Structures) and Math 320 or 340 (Linear Algebra). Basically, in this class you
will need enough programming skills to build fairly large programs, and enough
mathematical skills to deal with the nature of the topic (which does include
basic linear algebra and calculus).
We will require
students to write their programming assignments in C or C++. The programming
language used for projects really is independent of graphics, however, these are
what is most convenient. To put this another way, the language of the class is
English - it could be taught in Japanese, French, or Swahili, but it is more
convenient for us to teach in English.
If you've never
written a program in C++, you will want to invest energy in becoming proficient
in the language before the class begins.
definitely possible to do well in CS559 if
it is your first exposure to C++. Many students (OK, some students) did very
well. In fact, knowledge of C++ beforehand is not a good predictor of how well
students do in 559.
learning C++ and graphics at the same time is
hard. Yes, some can do it,
but they need to work very hard at it.
programming projects for this class are much bigger than those in an
introductory class. For many students, this is the first time they have to write
a substantial program, and that can be hard - this class is about graphics, not
how to write substantial programs. Because people ask, I will tell you that last
year's projects required about 1500-2500 lines of code to do well (and many
students wrote several times that!). Your mileage will vary.
You should be
warned from the outset that this is a hard class. Like many of the upper level
computer science courses, it requires a lot of programming (3 large projects and
some smaller assignments). It also requires you to have a fair bit of
Don't say I
didn't warn you.
complain about having to do too much work in this class. My teaching evaluations
generally tell me there is too much work for a 3 credit class. My department
chair has told me "stop trying to kill the students." However, I am a strong
believer that the only way to learn this stuff is by doing it, and you get out
of a class like this what you put into it. So yes, you will do a lot of work,
but you will learn a lot. For every student who complains about there being too
much work, there's another who thanks me for providing them with such a great
class. If you think you might be in the former category, maybe you should save
us both a lot of pain and drop now.