Page 1 of 1 [ 11 posts ] 

Adamantium
Veteran
Veteran

User avatar

Joined: 6 Feb 2013
Age: 1026
Gender: Female
Posts: 5,863
Location: Erehwon

13 Jul 2015, 7:32 pm

My son wants to learn game programming and is interested in C++.

I can show him some Lynda.com training, but I wondered if anyone had any recommendations for accessible C++ books/tutorials particularly with a focus on game development?



Adamantium
Veteran
Veteran

User avatar

Joined: 6 Feb 2013
Age: 1026
Gender: Female
Posts: 5,863
Location: Erehwon

14 Jul 2015, 7:36 am

Any favorite tutorials?

It doesn't have to be game or teenager oriented, I only include this detail because if there is something you think is good but very dry and dull, it's probably not the best for a young teenager.

Or is this more of an old school C crowd?



Ailurus
Hummingbird
Hummingbird

User avatar

Joined: 21 Jun 2015
Age: 39
Posts: 23

14 Jul 2015, 11:32 am

I'll try to help, but I am not an expert. I am casually learning how to make video games by myself and I do not have very specific goals in the process. However, based on my experience I might recommend to check out Unreal Engine and Unreal Engine tutorials: https://docs.unrealengine.com/latest/IN ... index.html.

If he wants to make video games, he will need an engine and, from my researches, UE4 is the most accessible and also one of the most powerful if not the most powerful. You get the full version free, but if your son ends up publishing his game there is a 5% royalties, which is more than reasonable if you consider the price of other engines. It's quite enjoyable. They have made a lot of efforts to make it easier to grasp on by self-learners. They produce plenty of tutorials that assume you know nothing either by written step-by-step guides or videos. They also have a very helpful and knowledgeable community.

It offers visual scripting through a Blueprints system, which is a visual C++ inspired scripting interface. That's what I am learning currently. It is not as powerful as C++, but it is much easier to understand at the beginning. For my personal needs, it is more than enough. With that said, if his goal is to work as a professional coder, I would not suggest to use blueprints that much as it is very likely the industry will not engage professional Blueprints coders anytime soon if ever... I think it was intended for casuals like myself or for artists who could start adding minor things on their own without having to bother the programmers. I find that Blueprints can be a nice step that can eventually lead to C++ as it offers the same kind of procedural thinking which is at the base of every computer language, except that it's visual, it offers you some tool tips and other helpful things. It might be a good idea to look it out and see what he would prefer to start with.

Further more, you can't do much with just code. While I am learning a little bit of everything to be able to do it all by myself, it is really not a very efficient way to do it. It's only because I can't stand to share my creative process with anyone. It's always good to know a little bit of everything that is required in the production of a video game, but usually people will focus into one aspect and work in team. Regardless, it is still possible to learn a bit of everything, be better at one thing and still make small good games alone with time and patience.

Finally, while Unreal Engine is getting more and more accessible, it still has a rather rude learning curve at the beginning. It can be both frustrating and overwhelming at first. Perseverance is the key. At some point, the learning curve gets more reasonable. I have found it helpful to be aware of that as it can be a struggle to do the simplest thing at the beginning.

Good luck to your son.


_________________
My first language is not English. Sorry for the mistakes.


Adamantium
Veteran
Veteran

User avatar

Joined: 6 Feb 2013
Age: 1026
Gender: Female
Posts: 5,863
Location: Erehwon

14 Jul 2015, 12:55 pm

Thanks Ailurus!

Excellent advice and information.

He wants to learn fundamentals of programming and has a friend who works in C++.

He is also interested in working with Arduinos and robotics, so he is pretty flexible. He loves games and wants to start with some kind of side scrolling or 2D platform type thing. More for exploring concepts at this point.

He would be totally thrilled to anything in Unreal Engine, but I think that's probably more for next summer, after he gets his bearings.



morslilleole
Veteran
Veteran

User avatar

Joined: 17 Dec 2011
Age: 37
Gender: Male
Posts: 511
Location: Norway

14 Jul 2015, 5:10 pm

I think it's improtant to experiment, making simple things, solving problems and generally having fun with it. Then when he gets a feeling for it, he can movie into some more game related stuff. A good place to start is either SDL2 or SFML. They are simple libraries that makes it very easy to start getting something on the screen.

I have a blog on SD2L, but it's generally aimed at people who have done a little bit of programming beforehand. It only describes SDL2, not C++ or programming in general.


_________________
Want to learn to make games? http://headerphile.com/


Adamantium
Veteran
Veteran

User avatar

Joined: 6 Feb 2013
Age: 1026
Gender: Female
Posts: 5,863
Location: Erehwon

14 Jul 2015, 6:20 pm

Wow!

Your blog is great morslilleole!

I just read through a couple of examples and I know I can help him to get this.

He likes Terraria and Starbound, so he will be very happy with some collision detection examples like this!

:D



iliketrees
Veteran
Veteran

User avatar

Joined: 16 Mar 2013
Gender: Female
Posts: 2,155
Location: Earth

22 Jul 2015, 4:38 pm

Sorry for a late reply but I remembered seeing this when it was first posted and just this second I came across this on imgur. It's got 5 links and people also share ideas in the comments but I'm afraid I haven't checked them out. But anyway:

http://imgur.com/gallery/VJmeyAU



Adamantium
Veteran
Veteran

User avatar

Joined: 6 Feb 2013
Age: 1026
Gender: Female
Posts: 5,863
Location: Erehwon

24 Jul 2015, 8:41 am

iliketrees wrote:
Sorry for a late reply but I remembered seeing this when it was first posted and just this second I came across this on imgur. It's got 5 links and people also share ideas in the comments but I'm afraid I haven't checked them out. But anyway:

http://imgur.com/gallery/VJmeyAU


Thanks for these!



AsahiPto17
Velociraptor
Velociraptor

User avatar

Joined: 20 Oct 2013
Gender: Male
Posts: 476

02 Aug 2015, 12:37 pm

I know something that is really helpful to have are some good books, they seem more cohesive than (free) internet information. I read though several chapters of Accelerated C++ (people recommend it a lot online) and found that I learned a lot about C++ quickly, I suppose that's why they named it so. It's general C++ programming, not game programming, but having a good foundation in C++ is good regardless.



Adamantium
Veteran
Veteran

User avatar

Joined: 6 Feb 2013
Age: 1026
Gender: Female
Posts: 5,863
Location: Erehwon

03 Aug 2015, 3:55 pm

AsahiPto17 wrote:
I know something that is really helpful to have are some good books, they seem more cohesive than (free) internet information. I read though several chapters of Accelerated C++ (people recommend it a lot online) and found that I learned a lot about C++ quickly, I suppose that's why they named it so. It's general C++ programming, not game programming, but having a good foundation in C++ is good regardless.


Thanks for the suggestion, I will check it out.



AsahiPto17
Velociraptor
Velociraptor

User avatar

Joined: 20 Oct 2013
Gender: Male
Posts: 476

13 Aug 2015, 3:27 am

Another thing to keep in mind is that C++ is kind of hard, and so is game dev. It might be good to start with game dev and a less difficult language. Something like Unity3d I believe let's you make games with C#, js and I think C++ too, so you can learn how the game engine works and try different languages with it if you feel compelled to.