Undergraduate Course: Computer Graphics: Geometry and Simulation (UG) (INFR11247)
Course Outline
School  School of Informatics 
College  College of Science and Engineering 
Credit level (Normal year taken)  SCQF Level 11 (Year 4 Undergraduate) 
Availability  Available to all students 
SCQF Credits  10 
ECTS Credits  5 
Summary  This course follows the delivery and assessment of Computer Graphics: Geometry and Simulation (INFR11241) exactly. Undergraduate students must register for this course, while MSc students must register for INFR11241 instead. 
Course description 
This course follows the delivery and assessment of Computer Graphics: Geometry and Simulation (INFR11241) exactly. Undergraduate students must register for this course, while MSc students must register for INFR11241 instead.

Entry Requirements (not applicable to Visiting Students)
Prerequisites 

Corequisites  
Prohibited Combinations  Students MUST NOT also be taking
Computer Graphics: Geometry and Simulation (INFR11241)

Other requirements  Enrolled students are assumed to have:
 Basic algebra and geometry (e.g., vectors, rotations, trigonometry etc.). We will publish a concrete list of recommended concepts.
 Physics to understand Newton's Laws of Motion.
Students should be comfortable with programming in Python. 
Information for Visiting Students
Prerequisites  As above. 
High Demand Course? 
Yes 
Course Delivery Information

Academic year 2023/24, Available to all students (SV1)

Quota: None 
Course Start 
Semester 2 
Timetable 
Timetable 
Learning and Teaching activities (Further Info) 
Total Hours:
100
(
Lecture Hours 18,
Seminar/Tutorial Hours 4,
Supervised Practical/Workshop/Studio Hours 4,
Feedback/Feedforward Hours 2,
Programme Level Learning and Teaching Hours 2,
Directed Learning and Independent Learning Hours
70 )

Assessment (Further Info) 
Written Exam
0 %,
Coursework
100 %,
Practical Exam
0 %

Additional Information (Assessment) 
100% coursework
Coursework will comprise programming exercises where each such exercise will comprise a single major algorithm learned in class. Student will be provided a skeleton code and an automatic selfchecker. Examples of possible exercises are:
1. Reconstruction from point clouds
2. Simulation of multiple rigid bodies
3. Discrete shape analysis (visualizing quantities on meshes)
4. Elastic deformation with finite elements
5. Learning functions on meshes
There will be a choice of two such exercises, where a final exercise on fixing and debugging problems in geometry will be mandatory.
The core part of each exercise will cover about 70% of the grade, whereas possible creative augmentations to the exercise might top the grade further. The students will need to write a short single page to demonstrate their outcome on that part.
We will include an 'exercise 0' which is not formally graded (although it will have an autochecker), but that runs through the basics of using the machinery of the course and some basic computational linear algebra. The feedback will be in the form of an automatic checker, where the theoretical aspects will be discussed in the tutorial / lab sessions. 
Feedback 
The students will be able to check their own work on diverse inputs and will have one exercise with specific emphasis on processing feedback from programming in geometry and simulation. 
No Exam Information 
Learning Outcomes
On completion of this course, the student will be able to:
 identify and isolate geometric problems and produce an algorithm to fit
 implement basic method in geometry and simulation which would be adequate for either further research or as an initial knowledge to find work in the relevant industry (example of advanced industry that uses this core knowledge: 3D printing, architectural design, medical imaging, weather simulations, robotics)
 use software and tools (e.g., Python and C++) to implement geometric algorithms and test their results
 identify, fix, and test for possible issues with geometric algorithms in a way that transcends just 'software bugs' but rather problems with a geometric context

Reading List
The course will be selfcontained with no required books;
A list of useful resources:
1. Polygon Mesh Processing (http://www.pmpbook.org/)
2. A Sampler of Useful Computational Tools for Applied Geometry, Computer Graphics, and Image Processing (https://www.routledge.com/ASamplerofUsefulComputationalToolsforAppliedGeometryComputer/CohenOrGreifJuMitraShamirSorkineHornungZhang/p/book/9781498706285#googlePreviewContainer).
3. Physics for Game Developers, 2nd Edition, By David Bourg, Bryan Bywalec.
4. Physically Based Modeling: Principles and Practice (Online Siggraph '97 Course notes) 
Additional Information
Graduate Attributes and Skills 
Knowledge integration: This course will integrate and apply knowledge from more basic courses (e.g., math) and teach basic techniques that will be useful in latter or parallel courses (robotics, vision, bioinformatics).
Problemsolving skills: The students will develop their problemsolving skills by experimenting empirically with complex algorithms and their possible issues. The 'debugging geometry' subject is particularly useful in this aspect.
Critical and analytical thinking: The students will have to deeply understand and analyse the presented methodology so they could bring it into implementation in the practicals. 
Keywords  Computer Graphics,Geometry Processing,Game Physics,Simulation 
Contacts
Course organiser  Dr Amir Vaxman
Tel: (0131 6)50 8286
Email: avaxman@inf.ed.ac.uk 
Course secretary  Miss Yesica Marco Azorin
Tel: (0131 6)505113
Email: ymarcoa@ed.ac.uk 

