Introduction to Computer Graphics

Description: Lecture, four hours; discussion, two hours; outside study, six hours. Enforced requisite: course 32. Basic principles behind modern two- and three-dimensional computer graphics systems, including complete set of steps that modern graphics pipelines use to create realistic images in real time. How to position and manipulate objects in scene using geometric and camera transformations. How to create final image using perspective and orthographic transformations. Basics of modeling primitives such as polygonal models and implicit and parametric surfaces. Basic ideas behind color spaces, illumination models, shading, and texture mapping. Letter grading.

Units: 4.0
1 of 1
Overall Rating 4.0
Easiness 3.7/ 5
Clarity 2.7/ 5
Workload 3.7/ 5
Helpfulness 3.3/ 5
Most Helpful Review
Winter 2017 - Let me just start by saying that I loved this class and that Scott is a true homie. However, that does not mean this class is easy, even if it is an easy A. Let me also preface this with the fact that I had 0 graphics experience before this class. *** TL;DR: Easy to get an A, but not necessarily an easy class. Not a lot of projects, but projects can take a while depending on how good you are at graphics. Exams are easy. Final project is group project, so either take class with friends or hope the group you get in does their work. You don't need the textbook. Uses Piazza. *** Grading is broken down into 4 assignments, the final term project, and optional midterm and final exams. The class is graded on a point system, aka you need 950 for an A-, 1000 points to get an A, 1100 for an A+. The four assignments are worth a total of 350 points including 50 points of extra credit (so 300 points without EC). The final project was out of 600 points, and the midterm was 150 points. The final was 140 points. I believe in past quarters you only needed 900 or 950 to get an A, so it's a bit harder to get an A nowadays. *** The four assignments are broken down as follows: 0. A joke. Literally just make it run and you get a startling total of 0 points. Lol. 1. One of the harder assignments in the sense that you have no idea what you're doing (unless you have previous experience). Looking back, it was a pretty simple project, but at the time I was like wtf how do I render a cube idk man. Once you get "boilerplate" aka "hello world" up, it's smoother sailing from there. This was 100 pts w/ 30 pts EC. 2. Cool planet assignment. TA gave us template code that was useful and made the project much easier. 150 pts, no EC. 3. Simple texturing assignment. Easy. 50 pts, 20 pts EC. The reason it's easy to get an A is that if you do the assignments and do the exams, you will get the points. It's very clear whether or not you're going to get the points… either you implemented the requirement listed, or you didn't. If you don't do the assignments, then you're not going to get the points and you won't get the grade you want. Easy as that. Scott writes out the point values of each feature you have to implement, so it's really all on you to get the points you need. *** The midterm and final exams are "optional" in the sense that if you need the points, then take them and get those points. If you don't, don't. If you don't want an A, then you don't need to take the exams. Etc. etc. etc. The midterm was either a paper exam with short answers or a hackathon for up to 4 hours with the theme "data visualization". You could choose either option. The final was 40 MC, 3 points each with 20 pts EC. Both exams were open note. *** Scott's lectures are more theoretical, but his slides tell you everything you need to know for exams. Starting assignments with just his slides can be more challenging, but TAs in discussion show you some example code and help you get started. Most of the material can be found in the textbook, which is NOT required to get because there is no mandatory reading and it isn't really helpful for the assignments. Discussion is generally a bit of theory and then the TAs show how to implement some feature. Not critical, but helpful for the final project to get special topics implemented. *** The final project was 600 points, but there were EC points for most impressive and class favorite. Only the projects with the top 3 votes in each category got points, but I think it would have been better if for every vote, the team got like 10 EC points. The group project could be 3-5 people, and more people meant more features you were required to implement. Group members grade each other, too, but otherwise get the same score on the projects. It could basically be any project you want, but you have to submit a proposal to Scott to get confirmed as an acceptable project. *** I think the class was worth taking, and the final project is definitely something worthy of a resume (unless you don’t put any effort into it). Definitely cool to learn WebGL and once you know how, pretty easy to create something to stick into any website.
Overall Rating 3.9
Easiness 3.5/ 5
Clarity 3.7/ 5
Workload 3.1/ 5
Helpfulness 3.8/ 5
Most Helpful Review
Fall 2020 - I thought this course provided a good introduction to computer graphics, though it was quite heavy on the conceptual side and less "practical" (don't expect to be working with modern graphical frameworks -- for the projects in the course, we had to use a simplified version of WebGL called tiny graphics for learning purposes). The projects were also cool but I ultimately didn't feel like I got a realistic sense of modern graphical programming. For course content, the first half involves reviewing basic linear algebra matrix transformations and an introduction to each step of the graphics rendering pipeline (how a 3D scene gets rendered to a 2D image). The early projects are really simple and can be done in a few hours, especially if you attend the discussion sections where the TAs basically give a mini walkthrough of each assignment. The second half covers a wide array of topics like object lighting, texture mapping, and ray tracing, which made me really appreciate the complexity of the work involved in this field. The professor is quite good at explaining the concepts in an easy to understand manner, and I was able to follow along his mathematical derivations without trouble even though I do not consider myself a math person by any means. It's clear he has had years of experience teaching this material because concepts are made intuitive through his explanations. Sometimes though he would go a bit fast (especially when we would start to fall behind) so the lecture recordings were great for those times. What's strange about this class is that the exams involve a lot of math computations (they're simple, but still there's a lot to remember) but there's little to no practice material made available. So you should definitely try to get a copy of the older exams to practice as the professor likes to reuse questions. Also, a large part of your grade and the work in the class is your group project, which is graded based on features and creativity, so make sure to choose teams wisely and spend time on it. Overall, not a bad class to take if you have any interest/curiosity in computer graphics. I can't speak for other professors in this course, but I definitely would recommend you taking it with Professor Law.
1 of 1

Adblock Detected

Bruinwalk is an entirely Daily Bruin-run service brought to you for free. We hate annoying ads just as much as you do, but they help keep our lights on. We promise to keep our ads as relevant for you as possible, so please consider disabling your ad-blocking software while using this site.

Thank you for supporting us!