ICS162 3D Modeling and World Building

University of California @ Irvine, Winter 2018

T/Th 12:30pm, DBH 1500

Instructor: Shuang Zhao (office hour: Wednesdays 2:00 pm--3:00 pm @ DBH 4214)

Teaching Assistant: Raghu Sai Gudipati (office hour: Fridays 11:00 am--12:00 pm @ ICS 464F)



date topic assignments
9Jan intro (slides) HW0
11Jan representing geometry and transforms (slides)  
16Jan splines and subdivision surfaces (slides)  
18Jan mesh simplification & level-of-detail (slides) HW1
23Jan no class  
25Jan MEL scripting and terrain generation (slides)  
30Jan L-systems and textures (slides) HW2
1Feb materials and lighting (slides)  
6Feb lighting and rendering (slides)  
8Feb rendering (cont'd) (slides)  
13Feb animation (slides) HW3
15Feb animation (cont'd)  
20Feb animation control & synthesis  
22Feb physically-based simulation & particle systems  


There will be 5 projects/homeworks, each worth 20% of your final grade. Homeworks will only be accepted electronically through the EEE dropbox, following the instructions below. The dropbox will have a automatic deadline of 11:59pm on the given due date. No homeworks will be accepted after that time. If you are working down to the last minute, please make sure something is uploaded 10 minutes prior to the deadline to ensure you won't get zero credit.

If you already have Maya installed on your computer, head over to the next section entitled "Introduction to Maya". We highly recommend having your own copy on your computer so that you can work from home on your own schedule.

Downloading Maya

You should also be able to go directly here http://www.autodesk.com/education/free-software/maya

You will need to register with Autodesk in order to gain access to Maya. You will want to register with a valid uci.edu email address. Once registration is complete, login with your newly created account.

From the drop-down menu, select which version you want to download (Windows or OSX). There are not big differences between versions of Maya but for consistency, we will use Maya 2015 for the course.

Download Maya dialog

Once you select your version, you will be taken to the download page. The download should start automatically, but if not, there is a link at the bottom of the page that will manually start the download. Make sure to write down your serial number and product, as you will need them during installation. Maya is a pretty big piece of software (1.2 GB) so make sure you have enough time to download the entire file. I suggest catching up on some reading while you wait.

Installing Maya

Once your download is complete, simply run the installer and follow the on screen instructions. The installer will ask for the serial number from the previous section. After you enter your serial number and product key, Maya will install. You are now the proud owner of Maya 2015.

Maya's activation process can take quite a while. If you encounter any errors, simply try again with the same data. It should eventually work.

Configuring Maya

If you are already using a 3-button mouse, please feel free to skip this section.

Setup the Mouse

The Maya interface makes heavy use of three-buttons. If possible, we recommend acquiring one. If you are using a computer without a three-button mouse, you will likely need to experiment with settings to emulate this behaviour. For example, on a Mac, open up System Preferences. Select Mouse and Keyboard. Select Mouse in the top menu. Set the right-click button to Secondary. Also change the middle mouse button from "Off" to "Button 3". You may need to change this setting twice for it to stick.

Mouse Settings

Enable Infinite Undo

When learning Maya, you're going to make mistakes (no matter how good you are). Pressing Z will undo your last move in Maya. By default, Maya only lets you undo a certain number of moves. To enable infinite undo, Select Windows → Settings/Preferences → Preferences. Select the Undo menu from the side bar and change the Queue to Infinite.

Open Maya

Introduction to Maya

Complete the 7 general excercises listed here on the following:

  • Maya's User Interface (UI)
  • Camera Controls
  • Basic Selection
  • Basic Manipulation
  • Hierarchy
  • Polygon Selection
  • Polygon Editing

These exercises will not be graded, but will be very useful for completing the assigned homeworks, specifically HW1.


Much of this content is based on UCBUGG.

Due date: Tuesday, Jan 30 by 23:59 pm (submit your work to the EEE dropbox named ICS 162 HW1)

This homework involves two components:

Due date: Sunday, Feb 11 by 23:59 pm

See it here.

Due date: Sunday, Feb 25 by 23:59 pm

This homework involves two components:

About CS162

Questions, help, discussion: The instructor is available to answer questions, advise on projects, or just to discuss interesting topics related to the class at office hours and by appointment as needed. For electronic communication we are using Piazza (handy link also at the top of this page).

Academic integrity: We assume the work you hand in is your own, and the results you hand in are generated by your program. You're welcome to read whatever you want to learn what you need to do the work, but we do expect you to build your own implementations of the methods we are studying. If you're ever in doubt, just include a citation in your code or report indicating where some idea came from, whether it be a classmate, a web site, another piece of software, or anything—this always maintains your honesty, whether the source was used in a good way or not. The principle is that an assignment is an academic document, like a journal article. When you turn it in, you are claiming that everything in it is your original idea (or is original to you and your partner, if you're handing in as a pair) unless you cite a source for it.

School can be stressful, and your coursework and other factors can put you under a lot of pressure, but that is never a reason for dishonesty. If you feel you can't complete the work on your own, come talk to the professor, or your advisor, and we can help you figure out what to do. Think before you hand in!

Clear-cut cases of dishonesty will result in failing the course.

For more information see UCI's Policy on Academic Honesty.

Collaboration: You are welcome (encouraged, even) to discuss projects among yourselves in general terms. But when it comes to writing up the homeworks or implementing the projects, you need to be working alone (or only with your partner if you are doing a project as a pair). In particular, it's never OK for you to see another student's homework writeup or another team's program code, and certainly never OK to copy parts of one person's or team's writeup, code, or results into another's, even if the general solution was worked out together.