Skip to main content Skip to site utility navigation Skip to main site navigation Skip to site search Skip to footer
Menu

Game Programming portfolio

On this page

This page offers detailed information about what's required in your portfolio as part of your application to the Game Programming program. Information on the program itself can be found on the Game Programming program page.

Applying to the Game Programming program? The program’s admission requirements include a portfolio submission. Your portfolio helps NSCC evaluate your abilities to ensure you have a reasonable probability of success in this program. 

Portfolio contents

Your portfolio consists of the following items, to be submitted digitally:

  • A logic and programming exercise
  • A reflection document where your outline your thought process throughout your work

Logic and programming exercise

This exercise contains 4 steps which must all be completed.

Step 1 – Complete the Unity Roll-a-Ball tutorial

In this step, we’re looking for your ability to follow technical instructions and demonstrate problem solving. It’s common to get stuck. If you encounter challenges, use resources such as Unity forums to help you move forward. If you find the Unity tutorial is out of date, it means it has recently been updated by Unity. Tutorial updates are a normal occurrence in software development as software is constantly evolving and changing. We’d like to see how you approach this scenario – do your best to address this challenge by using your problem-solving skills.

game-programming-portfolio-roll-a-ball-tutorial.jpg
Pictured here: Example output at the end of the Unity Roll-a-Ball tutorial.

Step 2 – Showcase your programming skills:

Perform the following additions to the tutorial.

  1. Code an XP / Leveling System that manages the following variables:
    • int XP – stores experience points
    • int level – stores current player level
  2. Add the following functionality:
    • The player gains XP from collectibles.
    • The player level increases depending on XP collected.
    • Display the XP and level values in-game.
  3. Modify at least 1 element of the game content or add new content. Demonstrate programming fundamentals and expand your game with a focus on programming. The following are some examples of what you might look to demonstrate:
    • Create your own variables and functions.
    • Create basic algorithms that perform basic tasks.
    • Translate simple game ideas into code.
    • Add/modify scripts.
    • Add basic game functionality.
    • Demonstrate new logic.
For parts a and b, the relevant area of the tutorial is the ‘Displaying Score and Text’ section.

For part c, it’s not enough to copy and paste existing code and change values. A tip is to start small - it doesn’t have to be complicated, but must show comprehension of basic programming fundamentals such as variables, functions and basic logic.

Step 3 – Build your game for Windows

  • Build your game for the Windows PC platform so the committee can play test your game.
  • Test your build on a Windows PC machine.
  • For assistance with completing this step, review the ‘Building the Game’ section of the Roll-a-Ball tutorial.

Step 4 – Write a reflection document

Create a document (Microsoft Word or PDF, minimum 250 words) outlining your thought process throughout your work. Your thoughts should be reflective and not simply descriptive of what you did. Make sure to cover the following:

  • What went right?
  • What problems/challenges did you face? Did you solve them? How? Where did you look for answers?
  • How did you demonstrate your comprehension of programming? And of Unity?

What to submit

Submit the following:

  • Your build folder and all its contents as a compressed archive .ZIP or .RAR.

The build folder is labelled as “Builds” in the tutorial. All the files and folders inside your build folder make up the playable build of your Roll-a-Ball project. Don't send only the project executable (.exe) file. If your compressed folder doesn't include all the required files, your project won't run. We recommend copying what you intend to submit to another computer for testing before submitting.

  • Source code files (.CS files) – include all C# source files you created or modified.

Do not send source code files created by the tutorial that you didn't modify. We're looking for personal and original work that demonstrates comprehension of the tutorial material. We're not looking for tutorial content unchanged.

  • Your reflection document

How to submit your portfolio

Before you submit your portfolio, review this checklist to ensure your submission is complete:
Completed Portfolio components
Roll-a-Ball build folder (compressed as .ZIP or .RAR file)
C# source code files (.CS) you created
Reflection document (Microsoft Word or PDF, minimum 250 words)

Submit your portfolio using one of the following methods:

File-sharing service

You may use a file-sharing service like Google Drive, Dropbox, etc. to submit your portfolio for assessment. If using this method:

  • Create a main folder using the following name structure: “[Your first and last name] Game Programming portfolio”, e.g., John Smith Graphic Design portfolio
  • Place your builds folder, your .CS files and your reflection document in this main folder.
  • Ensure permissions of your folders are set up to allow anybody with the link to view and download the folder contents, and that access to the link won't expire.
  • Send us the link to the main folder by email to . Add “Game Programming portfolio” as the subject line. Include your name, "W" number, the program you're applying to and the link to the main folder in the body of your email.

Learn how to upload files and folders to Google Drive.
Learn how to add files and folders to your Dropbox account.

Email

You may send your files as attachments to an email. If using this method:

  • Send an email to  with subject line “Game Programming portfolio”. Include your name, "W" number and the program you're applying to in the body of your email.
  • Attach your builds folder, your .CS files and your reflection document to the email.
  • Your email cannot exceed 25MB in size. If it exceeds this limit, please use the file-sharing service option noted above.

Assessment

Learners in the Game Programming program devote many hours to learning programming, game engines and game development. The development of programming skills enables them to code methods, classes, systems, managers, programming patterns and architectures. These skills are used to design and code games within a pre-existing game engine and from scratch.

The admissions committee will look at your portfolio for evidence of your potential to reach this goal and to be successful. Your total combined score for the logic and programming exercise and reflection document must add up to a minimum of 60% for acceptance into the program.

Logic and programming exercise assessment 

The logic and programming exercise component of your portfolio will be evaluated with this rubric and is worth 80% of your total score.
Incomplete:
0 to 1 point
Insufficient:
2 points
Basic:
3 points
Competent:
4 points
Advanced:
5 points

The project is incomplete or is not complete to a level that demonstrates sufficient ability in use of game programming tools.

Insufficient evidence of ability to accurately follow detailed, technical instructions.

The XP/Levelling System was either not implemented or failed to meet basic requirements.

Recommendation: Continue to work on project. Closely follow our directions. Re-apply.

The project is complete but only demonstrates a limited ability to use game programming tools.

Demonstrated limited ability to accurately follow detailed, technical instructions.

XP/Levelling System was incomplete and/or contained critical bugs that prevented it from functioning correctly.

Limited evidence of understanding of programming concepts, characterized by a lack of original code.

Recommendation: Continue to work on project. Focus on original coding. Re-apply.

The project demonstrates a basic ability to use game programming tools.

Shows some ability to accurately follow detailed, technical instructions.

XP/Levelling System met basic requirements but may contain non-critical bugs. The implementation was poorly structured or structured very inefficiently. Code lacked optimization and application of standard code architecture principles.

Evidence of a novice level of understanding and application of programming concepts, demonstrated by the ability to create simple original code that addresses new problems.

The project demonstrates a solid competency in using game programming tools.

Demonstrated good ability to accurately follow detailed technical instructions.

The XP/Levelling System fulfills all requirements. Some instances of good code architecture were noticed; however, they were not consistently maintained throughout the codebase.

Evidence of an intermediate understanding of programming concepts, demonstrated through the development of original and effective code solutions.

The project showcases exceptional competency in game programming tools.

Demonstrated strong ability to follow detailed, technical instructions.

The XP/Levelling System meets all requirements without discernible bugs or flaws. The code was well structured and showcased an advanced understanding of code architecture principles.

Evidence of an advanced understanding of programming concepts, demonstrated by the creation of sophisticated and efficient code solutions.

Total /5

 

 

 

 

Reflection document assessment

The reflection document component of your portfolio will be evaluated with this rubric and is worth 20% of your total score.
Incomplete:
0 points
Insufficient:
1 point
Basic:
2 to 3 points
Competent:
4 points
Advanced:
5 points
No reflection document provided, or incomplete, or not complete to a level that demonstrates reflection, or poorly formatted and/or contains errors. Observations offer minimal insight. The document may contain several grammatical errors and shows only a basic attempt at reflection with limited analysis.
Simplistic observations provide some insight. Some attempts at analysis but lacks depth. Comments may still be more descriptive than reflective, with some grammatical errors. Adequate observations and analysis. The document is structured and clear, with only a few grammatical issues. Demonstrates a good understanding of the content, with reflections that show thought and insight. Sophisticated and thoughtful observations with a high degree of insight and analysis. The document is well-structured, clearly written, and has minimal grammatical errors, reflecting a deep engagement with the content and objectives.
Total /5

Contact us

For inquiries and assistance, contact  

Top