B.S. in computer engineering from UIUC - 11 years ago; Looking to "catch up" and design a game

Started by
5 comments, last by Alberth 7 years, 2 months ago

Hello world,

My name is Alex. I graduated roughly a decade ago from the University of Illinois at Urbana-Champaign with a Bachelor's of Science in Computer Engineering. I haven't used any of my skills since then. I learned quite a bit about quite a lot of subjects while at UIUC. I want to get back into game development with a goal of gaining a career in the field.

  • I learned the C programming language and was pretty efficient in it. Got my toes wet in advanced data structures.
  • I learned advanced calculus and differential equations.
  • I studied C++ on my own.
  • I learned x86 assembly language and designed and used it to design and develop a fully-functioning 2D space shooting game (in Windows 2000) that was voted the 3rd best game (out of 50 games) in my advanced computer engineering class.
  • I learned some basic 3D programming... I'm not sure if it was with OpenGL or what.
  • I studied embedded and real-time systems.
  • I partially designed and implemented a microprocessor using software design tools and analytics.

It's been 11 years since I graduated and I have not used ANY of my skills since then.

Things seemed to have evolved and changed so much in the last decade. I am intimidated by the current scale of technology and really have no idea about where to (re)start my education and practice.

My first tangible goal is to design and develop a game (demo).

I would like to develop a game app for the Android platform. I have a Samsung Galaxy S7 Edge.

I would like to develop a PC game as well. I have an efficient Samsung laptop running Windows 10.

I appreciate any and all replies to my post and would like to thank everyone in advance.

Where should I begin? What language should I study/use? What engines should I study/use? etc...

Advertisement
Always start small.

For your specific question:

Language to use?
* Use any language you want. None are 'wrong'. C# has a gentler learning curve and is used in the Unity engine. C++ has a sharper learning curve and is used in the Unreal engine. JavaScript is available in web browsers and web pages can be viewed by anyone. Java is the preferred default language of Android devices, even though most serious games write in c++ with Java wrappers for system calls. Other languages also have their own reason for being, if those interest you feel free to use them.

Engine to use?
* Use whatever engine you want, or no engine at all. None are 'wrong'. Unity and Unreal are very big, popular, and free unless you are making significant money from them. GameMaker Studio and GameSalad are frequently mentioned as being beginner-friendly, but the scripts aren't really transferable. You also have the options of using smaller libraries instead of full engines, or doing it all yourself.

Where to begin?
* You should begin with wherever you are.



Since you don't really remember much of what you used to know, start extremely small as a warm-up exercise. Pick any language you want. Fire off your "Hello, World!", guess the number, and human-v-human Tic Tac Toe. If you have any problems with them at all, learn and grow.

Continue with other games in your ability, whatever that means to you. Maybe Tetris, or snake, or memory, or whack-a-mole, or a drawing/sketching project, or a 2048 or 3's clone, or a block sliding game, or a 'fly up the hill, dive with a button press' game, or something else that has a very simple game mechanic.

Eventually grow into more complex mechanics, gameplay, and environments.

If you really want to get into graphical games first --- which many people do even though they aren't ready for the complexity --- download a free engine like Unreal or Unity and see what you can figure out. I think people are better off getting a grounding outside of that before delving into the advanced tools, but many people want their first game to be an MMORPG that will have millions of players and make a bajillion dollars.

I recommend you start with the smallest thing you think you can build, then slowly increase to bigger things you think you can build.

If you are just coming back, but you have a fair amount of know from the past in C and C++, then going for one of the mayor game engine could be an easy way to refresh your knowledge.

UE4 can build games with Blueprints (Think of them as C++ pre-build chunks of code in the compile). This would allow you to unlock past code usage and get something together quickly. It has the additional benefit of being something in demand, which is never a bad thing to have. Epic Games has posted a ton of tutorials for a great many game styles.

As for the project:

Always start small.

Couldn't have said it better.

Developer with a bit of Kickstarter and business experience.

YouTube Channel: Hostile Viking Studio
Twitter: @Precursors_Dawn

Where should I begin? What language should I study/use? What engines should I study/use? etc...

start with an idea for a cool game. its kinda important to have that first! <g>

but for strictly learning purposes, ramp up, as frob says.

tic-tac-toe, space invaders, that kind of stuff.

then you can get to work on that android clone of black ops for the nintendo DS

I recommend you start with the smallest thing you think you can build, then slowly increase to bigger things you think you can build.

This is "The Way"

Norm Barrows

Rockland Software Productions

"Building PC games since 1989"

rocklandsoftware.net

PLAY CAVEMAN NOW!

http://rocklandsoftware.net/beta.php

I'm in the same boat, graduated 10 years ago with a BS in Computer Science. I made dinky games with DirectX in college but I want to start making them again with higher quality as a hobby or indie dev.

I saw a demo of how to create a game in Unity and was surprised at how easy it is to make games now. I know how to program, that isn't the issue. I want to know the architecture, pipeline flow, design patterns, etc.

Would anyone be able to recommend some public or open source games we could look at and study?

Perhaps we could take one and have a discussion. Newbs can as questions about the architecture and experts could chime in about strengths, weaknesses they see in the code base, etc.

Would anyone be able to recommend some public or open source games we could look at and study?

You could take a look at the Debian game packaging repo. Plenty of Free Software games there as a starting point to keep you busy.

Stephen M. Webb
Professional Free Software Developer

Search for "Unity", eg at github.

This topic is closed to new replies.

Advertisement