🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

Some courses questions

Started by
6 comments, last by jeskeca 9 years, 2 months ago

There's a few short courses going on at City University that grab my interest.

My intention is to move headlong into Game Development using C++. I have plenty experience using VB.Net and a little C#. I also just completed two courses on my main degree course in Java (both distinction grades). I also do .Net development as a job.

I have scant experience using C and C++, which needs to be improved.

I did this course last year at City:

http://www.city.ac.uk/courses/short-courses/introduction-to-programming-with-c

It was more of a "how to program" class rather than "how to program with C" class. In fairness I found it maybe a little too easy for me. Apart from pointers which I am now happy with, there wasn't anything I didn't already know or some syntax I couldn't have worked out. But I quite liked the classroom environment.

City also offers these two short courses which I am considering:

http://www.city.ac.uk/courses/short-courses/object-oriented-programming-using-c.html

This is the "part 2" to the course I did. I'm not sure if this will be more of the same, "how to program". I know OOP principles albeit not necessarily in C++. I've done some of these things in Java in my courses and some at work using .Net.

Is it worth having this sort of accellerated classroom learning? Or can I just as easily get it via books?

They also offer this:

http://www.city.ac.uk/courses/short-courses/game-development-using-unity-3d

... but I think I'd do just as well using the tutorials if I want to go down the road of Unity.

Advertisement

I should probably add into this where I want to go...

I'm currently doing a distance learning degree and my final project is coming up. I am intending on making a game for the final project, something my tutor seems to be fairly excited about.

I may resort to Unity (I don't mean that in a derrogatory fashion) ergo why I mention the Unity course at City University. It could be a nice quick way to get into the engine instead of trawling through the tutorials (the cost of the courses aren't a problem).

I have made a few text-based games in C. Mainly tic-tac-toe (drawing the grid with - and | symbols), hangman (again same sort of drawing) and things like that. I need to make the leap to graphical games, I was thinking about Arkanoid/Breakout as a simple primer. Another book on my radar is this one here:

Programming 2D Games - Charles Kelly

http://www.amazon.co.uk/dp/146650868X/ref=wl_it_dp_o_pC_S_img?_encoding=UTF8&colid=51SVXM8RDFE0&coliid=I3083I7T465CJR

From the reviews and other research I've done, it seems this is pretty good for covering some C++ concepts while getting into the graphics side of things. The game I want to make is a 2D top down type game, but with a bit of a community gaming spirit to it. No need for it to run on mobiles (mobile gaming has never interested me), happy sticking with Windows or Linux.

So as for an ultimate question, I aim to skill up really in the next 6-7 months between evenings and weekends (I am good at studying things). I don't envisage myself making the next Grand Theft Auto 5 in that time, but enough to be dangerous would be great :)

I'd resort to a books. Especially like Scott Meyers "Effective (Modern) C++", "Effective STL", Herb Sutter "Exceptional C++" (you can find bibliography on authors' wiki pages). Plus a book that'll help you to get basics you might not know (templates? stl? memory management(!) + RAII). Plus you might need to take a look at Boost. Broadly speaking, C++ and C# are somewhat similar. So if you know one you'll be able to shift to the other one without spending alof ot time on learning how to write a for-loop. But there are alot of pitfals in C++ and these pitfals are described by the authors I listed. To program in C++ you need to feel its spirit and these books will help you to do it smile.png (and I am not sure the courses will help here). Of course, before reading them you must be sure you know basics (so at least brief reading of a tutorial book on C++ is a plus).

Another thing to mention is a book on assembler or at least a book that briefly describes how processors are working. If you're thinking to write engines you'll most probably need it.

Thanks for the awesome response. I don't recognize the terms you mentioned, so maybe a grasp of the syntax is good place to start from instead.

I am familiar with CPU operations from when I first started programming (68k assembler on the amiga platforms). So I know the main components ALU, Program Counter, buses, etc. Though it's been ten years so I'm more than likely well out of date especially with x86 type CPUs.

I should probably add into this where I want to go...


Good, but you didn't mention whether you're looking to get hired in the game industry or go indie. If the former, the thread should be moved to another forum. If the latter, it can stay in For Beginners.

-- Tom Sloper -- sloperama.com

I should probably add into this where I want to go...


Good, but you didn't mention whether you're looking to get hired in the game industry or go indie. If the former, the thread should be moved to another forum. If the latter, it can stay in For Beginners.

Hi. I will expand on this.

In many years (not being specific) I would like to try my hand in the gaming industry. For this I will concentrate on learning C++ and using some sort of game engine. But that's a long term ideal and not something I will be looking for anytime soon.

In the shorter term, I have my university final project starting this November and I intend to do a game. My tutor has been advising me so far and my project scope is acceptable.

The game idea I have is basically a top-down dark maze/map type thing. A protagonist that can pick up power ups, move around the maze until he finds the exit, various baddies that try to look for him and kill him, so concept of energy bars, etc.

So given a programming background (non game programming), I want to get skilled up enough to produce something when the project term starts. I would imagine Unity may be the easiest thing to "learn" in the next six months in order to pull off this sort of a project. But given I have six months of study time (evenings and weekends), if you think one could learn enough C++ in conjunction with some sort of engine (SDL? Dx?) to pull something out of the barrel, then that's the sort of advice I need. OK that's like asking what does the crystal ball say, but more want to be realistic in terms of my goal.

So from an initial perspective, I'm not trying to make the next GTA-V or HL3. I just spec'd this game to serve as something easily achievable given my skillset with enough meat to it to make it worthy of a project. There are other bits attached to the project which aren't too relevant in terms of community gaming but don't read that as MMORPG or network play. This is a single player game.

So given what I have said, the fact that I've been programming largely in Java, dot Net and a few other languages over the years, what would you recommend?

NB: I have been reading the beginners forum, it's helped me formulate a lot of questions and answers which I never thought of! Great site is this!

Hi

I think that Unity is the future of game programming not only for independent developers but also for professionals(Unity/Ubisoft, Unity/Microsoft).

I would not say that Unity is the easiest way to learn.

Unity itself is complicatet and not really esasy to use. The programming language is C#.

I think the basic idea of your game project is good and you can realize it in half a year, maybe.

If you develope your game project in a Microsoft environment, you can also take XNA.

I know that XNA ist deprecated, but the framework runs under Windows 8.1 and Visual Studio Express 10 and it is a good way to learn something about game loops, scenes, nodes, camera ,sounds etc.

There you got a basic example of a platformer game where a protagonist is running arround, collecting items and battle against baddies.

The programming language is C#.

Otherwise you take a look at other game engines like Wintermute or Advanced Game Studio, where you get a basic structure of rooms, scenes and nodes, and basic scripts to interact.

I think it will be much easier to start with an structure because the basics in game programming are rather the same.

If you want it from bottom up , you can try graphic engines like Ogre or Irrlicht.

But whatever your decision is. It is not wrong to learn Unity.

Matthias

You might find it easier to code directly in 2d using gdi+ or monogame/xna in C#.. Rather than learn unity.

Unity is a really capable 3d engine, but with 3d comes complexity, both in programming and asset creation, you may get overwhelmed by.

In raw gdi or monogame/xna, you can do a 2d top down rogue-like with just block walls and an ascii map format.

This topic is closed to new replies.

Advertisement