uibk_703807-Advanced-CXX/assignment2
2021-02-16 14:46:39 +01:00
..
images Add assignment 2 2020-10-01 16:15:00 +02:00
metroidvania_specification.md Add assignment 2 2020-10-01 16:15:00 +02:00
README.md Assignment 2: Include spec 2021-02-16 14:46:39 +01:00
rpg_specification.md Add assignment 2 2020-10-01 16:15:00 +02:00

Assignment 2

due on 19 February 2021

For the second assignment you can either pick one of the two provided specifications or come up with your own. Yes, you are free to come up with a topic for the second assignment. However, doing so requires you to put together a specification similar to the ones provided and get my approval. The specification doesn't have to be bulletproof. But it must contain a bullet list of goals (with points to score) at the bottom which can be checked / evaluated. You can also adjust one of the provided specifications.

You are allowed to work in teams, yet the team size has to correspond to the amount of work (features) of the topic. For the provided specifications the recommended team size is 3.

You are allowed to use:

Feel free to ask me about other libraries / tools.

Your application should work either on Linux (64-Bit) or Windows (64-Bit), preferably both unless there is a specific reason why it cannot be cross-platform. For Linux, assume a recent version of Ubuntu Desktop and that the required dependencies are installed via the system's package manager. Use the corresponding CMake find_package mechanism to find them. Prefer pkgconf over custom FindPackage scripts. For Windows you can simply ship pre-built libraries that are picked up by CMake automatically.

You must use CMake as build system.

Use ClangFormat to automatically format your code using the provided .clang-format configuration.

Team Composition + Specification

Send me an email with your team composition and your specification as early as possible. Use the following link:

📧 send email

Submission

Packaging

Assuming you are using Git to manage your code, please use the git archive command to package your project. Use the following command, replacing XX with your team number (with leading zero, e.g. 02).

git archive --prefix=team_XX_assignment_2/ --format=zip HEAD > team_XX_assignment_2.zip

Build Test Submission

Submit a non-final version of your project around 2 weeks before the final deadline. I will verify that your project builds on my test system(s) and let you know if I run into any issues. Use the following link, again replacing XX with your team number.

📧 send email

Final Submission

Verify that the packaged version is working. Use the following link, again replacing XX with your team number.

Include your specification in the package, even if it was initially provided with the course material.

📧 send email