THREE DIMENSIONAL MODELING
|
News:
- [23/5/2012]: The code for the 3D hand animation can be downloaded here. It was developed by Tomas Hodan and Marries van de Hoef, and is useful for those who are interested in the kinematic and skeletal animation. The code is provided so that you can have fun with your 3D hand model. A more advanced topic in skeletal animation: youtube | official website | student project page.
- [23/5/2012]: Exercise 6 and 7 are now available in the lecture schedule. If you have difficulties with the questions, or want to have feedback for your answers/implementation, you should e-mail me.
- [22/5/2012]: For UU master students: there are a few topics for experimentation and thesis projects. If you're interested, please e-mail me. Information about the topics is available here, while the past and present projects can be looked at the project pages.
- [22/5/2012]: As for the grades of assignment 1, we expect to announce them by June 1, 2012.
- The old news is accessible by clicking "Old News" tab below.
1. Description
3D modeling is one of the most important pillars of game technology and computer graphics. It creates 3D objects and 3D scenes of virtual worlds, which is essential for visualization and simulation.
In 3D modeling, the processes of creation, acquisition, representation and manipulation of 3D data are crucial. Creation and acquisition of 3D data can be done either by creating a model using mathematical models, or by directly scanning a real-world 3D object. The acquired data is normally in a raw form, such as 3D point clouds, voxels (volumetric data), etc. To be able to manipulate and display the raw data efficiently, we need to transform it to other forms like meshes and do an operation like surface simplification or subdivision. Having more efficient representations, we can animate the 3D objects virtually and realistically.
All these processes will be studied in the 3D Modeling course. We expect by passing the course, the students have the theoretical knowledge and practical skills necessary for manipulating and animating 3D spatial data. These knowledge and skills are vital when working in 3D aspects of games technology, computer graphics, computer vision, medical image analysis, robotics, etc.
To follow the course, students are required to have strong knowledge in: linear algebra (i.e., matrices and vectors operations), basic mathematics, and programming skills in C/C++. This implies, they have passed the computer graphics course. Prior knowledge of a modeling package (such as Blender) and OpenGL is useful, but not required. For those who do not know C/C++, there will be a brief introduction in the lectures as well as in the practical sessions.
All materials and lectures are in English. Should there be any questions, e-mail to tanrobby (at) gmail.comLecturer: Robby T. Tan (e-mail: tanrobby (at) gmail.com)
Practical Assistants: Anne Driemel | Benny van der Vijgh
Related website: 3D Modeling Course
2. Assessment and Grading
Assignments:
During the course, students are expected to finish a few assignments.
Programming skills in C/C++ and OpenGL are required to finish the assignments.
Written Exam:
There is a written exam in the end of the course (final exam).
Academic Honesty:
Academic honesty is compulsory in accomplishing the assignment,
projects, and the exams. Exchanging codes for different groups are not
allowed. Using codes from the previous year or from the internet is
prohibited, unless stated otherwise in the lectures. Copying texts of
the reports from other groups is strictly prohibited. Generally,
cheating, academic misconduct, plagiarism, and fabrication of any
submitted material (including code and text) are not tolerated. We
will use software to detect any code or text plagiarism. Any violation
to the academic honesty will imply a fail to pass the course.
Grading:
The final grade is average of the following assessments:
- 40%: Assignments
- 60%: Exam (there is only one final exam)
Retake exam:
to participate in the retake, the original final grade must be no less than 4.
3. Lecture Schedule
- The schedule below should be used as a rough guideline. The lectures will emphasize more on clarity rather than strictness in following the schedule.
- Acknowledgements: major parts of the slides and materials used in the lecture are taken from various internet sources. The lecturer thanks those people who made the materials available.
- Time and Locations:
- 09.00-10.45: Tuesday [AARD-KLEIN]
- 13.15-15.00: Thursday [AARD-KLEIN]
| | | | |
|---|---|---|---|
| 1 | 24-4-2012 |
Introduction (motivations, applications, overview, and logistics) Additional Materials: |
|
| 2 | 26-4-2012 |
C/C++ and OpenGL: Introduction Additional materials:
|
(The contents of the slides are taken from this website). |
| 3 | 1-5-2012 |
Spline Curves: Introduction Mandatory reading materials:
|
lecture summary 3 exercise 3 |
| 4 | 3-5-2012 |
Spline Curves: Bezier Curves Mandatory reading materials:
|
de Casteljau's alg. exercise 4 |
| 5 | 8-5-2012 |
Spline Curves: B-spline Curves Mandatory reading materials: Additional Materials: |
lecture summary 5 exercise 5 |
| 6 | 10-5-2012 |
Rational Splines and Spline Surfaces Additional Materials: |
lecture summary 6 exercise 6 |
| 7 | 15-5-2012 |
Spline Curves: Interpolation 1 Additional materials:
|
lecture summary 7 exercise 7 |
| 17-5-2012 |
no class | ||
| 22-5-2012 |
no mid-term exam and no class | ||
| 8 | 24-5-2012 |
Spline Curves: Interpolation 2 Mandatory reading materials: Additional materials: |
|
| 29-5-2012 |
no class | ||
| 31-5-2012 |
no class | ||
| 9 | 5-6-2012 |
Modeling with Patches Additional Materials:
|
lecture summary 8 slide 8 |
| 10 | 7-6-2012 |
Modeling Deformable Objects: Introduction + Mass-Spring Models Additional Materials: | |
| 11 | 12-6-2012 |
Modeling Deformable Objects: Fluid Simulation + Particle Systems | |
| 12 | 14-6-2012 |
Model Acquisition, Representation and Data Structure Additional Materials: | |
| 13 | 19-6-2012 |
Mesh Simplification Additional Materials:
| |
| 14 | 21-6-2012 |
Mesh Subdivision Additional Materials: | |
| 15 | 26-6-2012 |
Procedural Modeling Additional Materials: Implicit Surfaces | |
| 28-6-2012 |
| ||
| 5-7-2012 |
Final Exam : EDUC-ALFA (16.00-19.00) |
4. Tutorial Schedule
- Any questions regarding the assignments must be asked in the practical sessions.
- Time and Locations:
- 11.00-12.45: Tuesday [BBL-109, BBL-112]
- 15.15-17.00: Thursday [BBL-109, BBL-112]
- The below schedule should be used as a rough guideline. For example, students who have already known C/C++ are encouraged to start with OpenGL or with the assignments.
| | | | |
|---|---|---|---|
| 1 | 24-4-2012 |
Blender
| |
| 2 | 26-4-2012 |
Blender | |
| 3 | 1-5-2012 |
C/C++
| |
| 4 | 3-5-2012 |
C/C++ | |
| 5 | 8-5-2012 |
OpenGL
|
|
| 6 | 10-5-2012 |
OpenGL | |
| 7 | 15-5-2012 |
Bezier Curves
| Example of the possible visualization: applet |
| 17-5-2012 |
no tutorial | ||
| 22-5-2012 |
no tutorial | ||
| 8 | 24-5-2012 |
Bspline Curves | |
| 29-5-2012 |
no tutorial | ||
| 31-5-2012 |
no tutorial | ||
| 9 | 5-6-2012 |
Rope Simulation | |
| 10 | 7-6-2012 |
Rope Simulation | |
| 11 | 12-6-2012 |
Cloth Simulation | |
| 12 | 14-6-2012 |
Cloth Simulation | |
| 19-6-2012 |
no tutorial | ||
| 21-6-2012 |
no tutorial | ||
| 26-6-2012 |
no tutorial | ||
| 28-6-2012 |
no tutorial |
5. Old News
- [08/5/2012]: I have fixed some typos in 05_bspline1.pdf. Thanks for those who informed me. If you find some mistakes in the notes, please do not hesitate to let me know.
- [08/5/2012]: The maximum file size for submitting your assignments through submit is 40MB.
- [02/5/2012]: The instructions of assignment 2 are now fixed (including the deadline). You are encouraged to start as soon as possible, since it can take time to finish, particularly part 2.
- [01/5/2012]: The summary of the lecture today is available here. It is based on this article.
- [30/4/2012]: Exercise 3 is available in the lecture schedule. During or after the lecture, try to answer the exercise questions. The final exam's questions will mostly taken from the exercises.
- [27/4/2012]: A simple example of CMake file (CMakeLists.txt) can be downloaded here. It can be used on either linux or windows.
- [26/4/2012]: A few GLUT/OpenGL examples from the lecture are available here.
- [24/4/2012]: Those who do not have a partner for the practical assignments should email me, so that I can pair you up.
- [24/4/2012]: For the practical sessions, we encourage you to be in either BBL-112 or BBL-109. Since the assistants will be stationed in those two rooms. Only when there is no enough space, you can go to another room (which on Tuesday is BBL-103, and on Thursday is BBL-115).
- [24/4/2012]: The purpose of the practical sessions is to help the students with the practical assignments. Therefore, there is no tutorial for the theoretical/mathematical problems. If you have questions regarding the theoretical/mathematical problems, you should ask directly to the lecturer.
- [15/4/2012]: For the practical sessions on 24/4 and 26/4, students are required to bring headphones/earphones, since the tutorial is partially given through youtube clips.