Projects
Teams
- Flying Spaceship in VR – Kertu Toompea, Märt Häkkinen, David Andugar
- Wrist Watcher – Robin Sulg, Karl Olaf Kuldmaa, Kirill Milintsevich
- Momentum Racing – Lauri Kongas, Semjon Kravtšenko, Märt Mäemees
- Space Generator – Mathias Plans, Karl Marti Toots, Jon Ander Sukia Herrador
- Procedural Earthbending –
Yves Fricker, Juan Carlos Javier Ramos Martinez, Mykhailo Nitsenko - Non-Euclidean Labyrinth –
Mihhail Plohhotnitšenko,Aleks Kožajev,Magnus Valgre - Beautiful (Fractal) Image Generator – Karl Kuusik, Kaarel Loide, Kaspar Valk
- A Walking Man – Karl Martin Kadaja, Marvin Vihman, Silver Laius
- Table Tennis Simulator – Magnus Karlson, Karl Meldorf,
Rivo Raudsik - 3D Comic Rendering – Oliver Vainumäe (via Artineering)
- DBV – Kristo Männa, Andrzej Lippa
Rules
- The project has to be executed in groups of 2-3 people.
- The project provides up to 30 points. You lose points by missing deadlines.
- The project consists of
- A piece of (working) software,
- A short written report (in your project page) describing the topic, the tools and methods used, mentioning the main complications and contributions. Should include a 1-2 min video of the result.
- Discussion about the project with one of the instructors
- A short (10 min) demo presentation.
- The project code must be hosted openly in a repository (I strongly suggest Github or GitLab) and preferably as open source. Meaningful contribution from all team members needs to show in the repo log.
- Exceptions to the rules are possible via personal requests. E.g. if you really think you need 4 people on the team, come and explain why, presenting your plan and preliminary task list.
Deadlines
All deadlines are hard. You may miss them, but you pay with points.
- Oct 20. Registering your idea. Write down [You must be a student in this course to see the link] your initial project idea for others to join. Do not miss this deadline, otherwise you risk not getting to a valid team by Oct 28.
- Oct 27. Forming the team. By this date (23:59 the latest) the team must be formed and project topic chosen. The corresponding information should be [You must be a student in this course to see the link].
- Missing the deadline by up to 1 day: -3 pts.
- 1-7 days: -6 pts.
- 8+ days: -9 pts.
- Nov 17. Initial progress. By this date the team should be able to demonstrate something beyond "Hello World", that can be compiled / launched. At this stage all your team-members must have started working together and produced a proof of concept result. At least 500 LOC. Code + compilation / launching guide should be available in the repository. Also your project's course page should have a link to the repository and a brief illustrated description of your project.
- Missing the deadline by up to 1 day: -3 pts.
- 1-7 days: -6 pts.
- 8+ days: -9 pts.
- Dec 15. Coach Meeting. During the first half of December the entire team needs to meet with one of the instructors and discuss the issues they are having. Instructors will assume to see a 2/3 completed project from you then in order to have a meaningful discussion. Team-specific meetings will be scheduled in November.
- Missing the deadline by up to 1 day: -3 pts.
- 1-7 days: -6 pts.
- 8+ days: -9 pts.
- Jan 5. Final release. By this date the team should submit (make available from the project page) the final release of the project. The release should include a short (1-2 page) report, that can be written on the project page, in the git's readme.md file, or made otherwise easily accessible. Also add a small video, which demonstrates your achieved result.
- Every day missed past the deadline: -2 pts.
- Jan 9 (12:15-20:00, room 111). Project demonstration. All members of the team must be present during the presentation.
- Not presenting a demo results in the overall score of 0 pts for the project.
- Team leads pick a section of the day to present in.
Potential topics
You are free to choose the topic on your own, as long as the resulting project is exciting enough for you, and requires at least 1 full working week (around 40 hrs) per person to complete. Naturally, it should be (at least in part) related to computer graphics. We will discuss your registered ideas in the recap lecture.
Possible ideas
- A game with a sufficient graphical component.
- A created 3D scene, environment, objects (CGI, art).
- An interactive data visualization or simulation.
- Some interesting game mechanic or procedural generation.
- Here are some lists for ideas:
- Three.js - Showcase of things done with Three.js,
- Paul's Projects - Graphics algorithms implemented,
- CG Meetup Gallery - Beautiful short renders,
- The Graphics Codex Projects - More graphics algorithms implemented,
- Spore Prototypes - Procedural generation before there was Spore,
- Chrome Experiments - Cool stuff done on the web.
- Join an ongoing project from the APT Game Generator group: projects.
- Here are the projects from the last times: Fall 2018; Fall 2017; Fall 2016; Fall 2015; Spring 2015; Fall 2013.
- Notable student projects
Topics with a distributed / parallel computing problem (can earn extra 10p)
Distributed and parallel computing systems allow for very high quality animations in interactive multiplayer games. Students interested in pursuing computer graphics projects that make use of distributed and parallel computing are welcome to talk to me to see if something suitable can be found. It is hoped to also create material that may be demonstrated at ISC 2015 , so use of openly available tools is highly appreciated, in particular OpenCL and OpenGL on CPUs and GPUs. - Benson
Possible topics here are:
- Efficient volume rendering algorithms and implementations for visualizing three dimensional fields
- Multiplayer car racing game using Blender and OpenFOAM -- the aim is to allow people to design their own racing car, then simulate the aerodynamics to give realistic handling that will allow others to predict their design. See for example: https://summerofhpc.prace-ri.eu/project-reports-2014-martin/
Contact Benson Muite (benson.muite@ut.ee) for more details and supervision of those topics.