How to begin the game programming?

Started by
6 comments, last by Onpolyx 8 years, 6 months ago

Hello guys,

I'm 16 years old and I program a lot of programming languages since I was 13. For two months I'm learning c++ and I'm creating a videogame on Unreal Engine.

In future I would like to work in a Software House (Gameplay Programmer) but I don't know where study game development.

I'm uncertain between continue with Unreal Engine or work with Directx or OpenGL.

Could anyone give me some advice on how to continue my learning?

What you studied when you were a beginner?

Thansks smile.png

Advertisement

I am not really sure there are any advantages to starting directly from DirectX or OpenGL unless you really want to know the guts of a game/game engine. If your goal is to make games then the existing engines (like Unreal) are a great place to start and will enable you to be productive very quickly. Using Unreal gives you many thousands of development hours worth of work for free and it allows you to start from a stable and well developed toolset. The initial release of the "Unreal Engine" was 17 years ago in 1998... It is on its fourth version... While I doubt much of the original code is still there, I think it speaks to the level of effort involved.

"On August 17, 2005, Mark Rein, the vice-president of Epic Games, revealed that Unreal Engine 4 had been in development since 2003." .

Unreal Engine 3 was around 2 million lines of code. I bet Unreal Engine 4 has more. Let's assume you can code 50 lines of code per day (which in some estimates is five times more than average). That would mean it would take 40,000 days or 109 years of your time to create something with 2 million lines of code if it took you wrote 50 lines of code a day (and every day at that). If you were some ultra talented programmer who could magically turn out 500 lines a day every single day it would still take 11 years of nonstop time.

The thing to remember is that games are software. I always think it is good to really understand the programming fundamentals. It can be good to focus on the basics of a language (make console applications, ect) to really understand how the language works.

Make sure you understand if statements, loop statements, arrays, data structures (lists, maps, sets, ...), file I/O, functions, and OOP concepts. These things will help you a lot when it comes to programming a game.

Hello Showthisdialog,

thanks a lot for your reply.

I read one book and I watched a lot of videos on c++ console application. Now my objective is create a game programmer portfolio because I would to became a programmer in a software house. I do not know the way to do it and so I'm opening this topic. Do you thing that create game with unreal engine can give me the possibility to work for a game company one day? Can you recommend books to read that might help me in this?

Thanks :)

Don't aim too much for a future job, just enjoy programming games, and develop yourself.

Write small games, and scale up slowly to more complicated programs. Also publish your games.

Learn about programming, play with other languages.

A good programmer has a diverse skill set rather being good at just one trick.

It's important to have a good portfolio when you start to begin an advanced programmer and not before, the goal on the start is to become better and better.

You will become better and better until your death, we learn all days and we learn a lot from others.

Don't go for an advenced project on the start, breakout and pong are 2 little good project to understand mechanism of the game programming.

I can only recommend you to use unity or unreal to understand the basis of game programming, don't go for directx and opengl directly.

If you do things step by step you will win lot of time during your learning step.

Thanks a lot Alundra, maybe you changes my life :)
Last question: why use opengl or directx and not unreal engine if is more difficult and unreal has a wonderful graphic?
Thanks again!

This is what I said about my recommendation : Don't use DirectX and OpenGL but use a higher level API to understand all in a first step (unreal or unity).

Once you will see how unreal or unity works you will have a better view of all, making a breakout or a pong.

Engine Programmer is a completely different view than Game Programmer.

You can make a game alone but an engine needs a team and lot of time.

Like most of the other people have answered: Just keep coding and become better.
Aslong as you don't stick to things like kismet in the Unreal engine, but instead go deeper and learn how to create your own C++ scripts for the engine. This will take you along way, since it not only teaches you alot more about the C++ syntax but also how the engine itself is structured and the thought-process of the developers

But mainly focus on widening your portfolio and learn as much as you can, a task that may seem daunting right now will most likely seem like a piece of cake if you just keep pushing on and learn more.

If you're thinking about getting an education in the field I would actually suggest going the route of software development rather than gamedevelopment, since this will widen your scope, you'd be suprised how many that has started studying as a game developer and when they're finally done they can't stand the thought of developing games...

Aslong as you got the portfolio to show that you've got skill in game development it's often not a problem.

Oh, and if you can, try to find other people around you that shares your interest for gamedevelopment! This is not necessary but you'd be suprised what could be made when a good programmer finds a good graphical artists and they start working together! smile.png

This topic is closed to new replies.

Advertisement