Programming Department

Every game needs code. No matter how they play, the foundation of every game is planning, hard work, and a metric ton of curly braces.

If you're the technical type and like to focus on developing a game to work as intended and designed, welcome to the Programming Department! You'll fit comfortably here!

What do we do?

Our department is committed to teaching you everything you need to start programming video games from the ground up. We hold workshops multiple times per week that will teach you both programming skills and general game engine skills.

We also offer help with the programming-side of your game projects, using Git, and managing version control.

In addition to workshops, each officer also holds weekly office hours, during which you can come and chat about programming or ask us questions. You can also stop by our channel #programming on the VGDC Discord server at any time to ask programming related questions. There is usually at least one programming officer available, so you can get any further questions answered there.

What do we teach?

In our workshops, we'll teach you how to code game mechanics, manage projects with version control, harness the graphics pipeline, and design robust systems. We have workshops for Unity, Godot, and Unreal, so you can learn about whichever engine you’re interested in with hands-on activities and discussions.

During the Fall, our workshops tend to cover the basics of these game engines and some good programming practices. We also cover source/version control, and how to manage your project versions through Git.

In the Winter and Spring, we branch out to much more in-depth and advanced topics.

Industry Relevance

If you're going into the programming-side of game development, you can expect careers in the industry like:

Networking Programmer

Technical Artist

Gameplay Engineer

Graphics Engineer

Unreal Developer

Unity Developer

UI Engineer

AI Engineer

Physics Engineer

Software Architect

Software and Tools

Here are some of the applications we use for work in the Programming Department.

FAQs

What experience do I need to have before joining this club, and this department?

None! We teach everything from the ground up, so people of all skill levels are welcome.


What programming languages do you use?

We mainly focus on relevant scripting languages for each engine. Unity uses C#, Unreal uses C++ and blueprints, and Godot uses primarily GDScript (which is similar to Python). We’ve also had language-specific workshops, such as a series on Rust.


How can I get started programming games?

Start by just messing around in your favorite game engine. Open some sample projects to see how they work, then try programming some of your own basic mechanics. Once you’re ready to create a full game, start with something small, like a space shooter or mini platformer, and work your way up to more complicated projects.


What should I do if I'm concerned with a project being too difficult for me?

Worry about scope more than difficulty. Often, the largest challenge is not any particular programming problem, but the number of programming problems you’re facing. There are resources online to help you with individual programming challenges, but pushing through the development of a large game with an overwhelming scope is much more difficult because you're tackling multiple problems at once.


Help! I can’t figure out what’s causing this bug in my script!

Programming can be a difficult and time-consuming task. Try running through your code a second time with print statements and the debugger. We’ll do our best to run through your code and see if you slipped up somewhere, but we unfortunately can’t help you debug your entire game.

Header banner by Florian Olivo @ Unsplash.com