Data Structures and Design Patterns for Game Developers

share ›
‹ links

Below are the top discussions from Reddit that mention this online Coursera course from University of Colorado System.

Offered by University of Colorado System. This course is a stand-alone course that builds on the knowledge included in the C# Programming ... Enroll for free.

Reddsera may receive an affiliate commission if you enroll in a paid course after using these buttons to visit Coursera. Thank you for using these buttons to support Reddsera.

Taught by
Dr. Tim "Dr. T" Chamillard
Associate Professor
and 12 more instructors

Offered by
University of Colorado System

Reddit Posts and Comments

0 posts • 1 mentions • top 1 shown below

r/Unity3D • comment
1 points • tonicinhibition

I'm a 15+ year software dev who moved into Unity/VR development a couple of years back. I would recommend against a Bootcamp. Coding Bootcamps tend to be focused on getting you up and running in a particular industry and are usually specific to a framework or tool-chain. If you wanted to crank out websites using Rails or React, then a Bootcamp can help you tune out some of the complexity and focus on the core tasks necessary to create a minimal project. I've seen a few Bootcamps for 3D modelling. Ultimately someone is holding your hand in order to minimize the time it takes you to produce something tangible. They aren't great for deep learning.

You have two tasks before you:

  1. Building Stuff in Unity
  2. Learning Basic CompSci

My suggestion is to approach these separately. You won't be making use of data-structures / algorithms at all during the initial stages of learning Unity development. Mostly you will be following tutorials on YouTube and getting familiar with the Unity Editor, setting up your IDE (likely Visual Studio or VSCode) and learning the fundamentals of C#. I suggest choosing a very simple type of game which interests you and look for tutorials - you'll find plenty. This will be rewarding.

For data-structures and algorithms, you'll want to either take an online course or just start working through an introductory textbook. These topics are largely independent of a particular language, so go with whatever you are most comfortable with. Some books use pseudo-code which you can then translate into Python or JavaScript or Java, whichever has the least amount of friction for you. It makes sense to use C# if you're aiming for Unity. In the past decades most CS departments converged on Java for these introductory classes, and the languages are so similar that those resources will be very helpful.

Udemy Data Structures & Algorithms - C#

Coursera Data Structures... for Game Developers (Starts Jan. 2nd)

For practicing these concepts independently I recommend CodeWars: https://www.codewars.com/

Split your time between these two tasks for the first 4-6 weeks. After that you can use your toy game as a test-bed for the things you learn in the course. Ideally as you work through data-structures / algos, you'll want to ask yourself "How might this be useful in a game?" Try to imagine as many applications as possible for every structure you encounter.

Through programming generally you will get an intuitive sense over time for when certain structures are useful. Notably the most used structures are baked into any modern languages and you will use them without even noticing as you follow tutorials. Do you think a Linked List might be a useful for an inventory system? Find a simple inventory system tutorial on YouTube. It will almost certainly use a List in the code. Take the data structure you wrote from your Udemy/Coursera course and copy/paste it in. Try adding functionality to your game using your own data structure implementations.

Did you make a 2D space shooter? Add some collectable weapon upgrades and manage them. Are you making a top-down adventure game? Add arrows and potions. Does your course feature a sorting algorithm? Try sorting the items in your inventory by cost, or weight, or damage.

There's a book called Data Structures for Game Programmers if you need some inspiration. Many years ago I found a pirated copy and just browsed it to get a sense of what was inside.