Game Physics
Semester: |
SS 2020 |
Type: |
Pro-Practical |
Lecturer: |
|
Credits: |
6 ECTS |
Contact: |
longva@cs.rwth-aachen.de |
Find a list of current courses on the Teaching page.
Type |
Date |
Room |
---|---|---|
Course | Tuesday, 14:30 – 16:00, starting 21.04.2020 | Room 5052 (2356|052), Building E2 |
Due to the present situation regarding COVID-19, our courses and seminars for the summer semester 2020 will take place on digital platforms. We primarily intend to use Zoom to facilitate real-time teaching activities and group meetings. You may download the Zoom client for your platform at https://zoom.us/download. Prospective course participants should make sure that they are members of the course room in RWTHmoodle by contacting the instructors if they have not already been added. The connection details (room URL/ID and password) for each course's Zoom room will be provided to students through RWTHmoodle. In order to support RWTH students and staff with the use of digital tools like Zoom, the CLS group has made available a number of handbooks and guides at the following URL: https://video.cls.rwth-aachen.de/gebrauchsanweisungen/.
We would like to remind students that the use of digital platforms for teaching introduces additional privacy concerns. In particular, it is strictly prohibited to make recordings of live teaching sessions, or to use additional tools such as screen-capture software or film cameras to circumvent this is.
Modern video games continually push the boundaries of interactive entertainment. The ever-growing need for increased immersion and realism demands that the simulation of physics in the game world delivers predictable, realistic results in a very short amount of time. Whether responsive ragdoll physics, destructible environments or fluid simulation, sophisticated algorithms and careful trade-offs enable unprecedented interactive experiences.
Interactive physics simulation is not limited only to games, however. Largely the same kind of algorithms and techniques are employed in numerous industrial projects, such as training simulators and virtual prototyping applications, or even in the movie industry in the form of special effects and animated movies.
In this software pro-practical, students will work in teams to build a simple game built on top of an established game development framework. Students will learn the basics of game physics first by working with the game physics provided by the framework, then later through their own implementation of the physics necessary for the game they will develop. While the focus of the course is on the game physics, students are also responsible for leveraging the framework to handle mouse/keyboard input, a minimal user interface and the rendering of the game.
Throughout the course, students will learn to collaborate on a software project together using version control software. The students must also prepare presentations in which they at regular intervals showcase their progress. By defining and planning subgoals that should be met, the students will gradually build their game. At the end of the course, each group will present their final product, along with a report discussing the techniques used in the course of the project.
Organizational Details
- Meetings: In every meeting each group has to present their implementation and results of the current topic and should discuss their problems and insights. Attending these meetings is mandatory.
- Groups: Students will work in groups of 2-3. Each group is collectively responsible for the project.
- Report: At the end of the course, students must submit a report detailing their work.
- Implementation: The implementation should only consist of original code written by the group members, unless approval for using third party code has been obtained from supervisors. However, we would like to encourage the groups to discuss problems and to exchange information about their solutions with other groups.
Requirements
- Experience with object-oriented programming
- Basic knowledge of numerics, algorithms and data-structures
- Basic knowledge of graphics programming recommended
Material
Will be announced in the introductory meeting.