Game Programming
Firstly, learn a programming language. I recommend something easy to start off with like Python or similar, or, develop your C and C++ skills as far as you feel you can. Then, whilst learning to program, read this.
Learn the basics, create some simple games, and grow and develop each time you create something new.
Don't be afraid to try something that you feel is outside your skill level, this is how we learn!
Lastly, if you get stuck, you're in the right place to ask questions!
Good luck!
Games/Projects Currently In Development:
Discord RPG Bot | D++ - The Lightweight C++ Discord API Library | TriviaBot Discord Trivia Bot
You will undoubtedly find that I am the most patient, easy-going, kindest, and nicest person here. If anyone disagrees that I am the least violent person in the world then he or she had better be packing a knife—that’s all I have to say.
L. Spiro
I restore Nintendo 64 video-game OST’s into HD! https://www.youtube.com/channel/UCCtX_wedtZ5BoyQBXEhnVZw/playlists?view=1&sort=lad&flow=grid
horses for courses, still i'd generally think sticking with c++ is going to be a better choice than avoiding it. i never thought the transition from BASIC to c++ was that momentous.
i do not know about modern "environments," from an old and slow-to-change vantage, i stick with my OS sdk, but i understand that coding for browsers may be a good choice if portability is a plus.
start simple, put an object on the screen, take user input, modify stuff. easy!
Character base roguelikes are a good starting point to explore game programming as they can be as simple or complex as you want to make them, they can get real complex depending on how far you want to push them. They will also expose you to AI, Route finding and the like using nice uniform 2D grids :)
C# is a good entry into C like languages as you don't have to worry about memory management as you do in C and C++, C# also has a great IDE in Visual Studio 2013 community edition, which is free. VS will also allow you to develop in C/C++ should you pick that route
Pick a simple game to imitate. Preferably 2d or a text mud. Keep expectations low, and make it your own. Once you get a game running, you'll have the bug.
Ask here if you run into problems.
Pygame in python is an easy place to start. Java or c# forms apps are also easy.
I may get laughed at for this one, but a good way to learn the basics of programming is a tool called Scratch. Its designed to teach children to program computers through an intuitive visual programming style using "blocks" of code that are stacked together. Although most of its users are junior high and high school aged, many professional programmers use it on the side as a kind of hobby. If your looking to learn the basic conventions of programming, https://scratch.mit.edu/ is a good place to begin.
Hi,
1) Pick a game engine. Select a beginner friendly coding language which is native to that game engine and well supported. (Raw beginners should almost never start with C++) Example languages are C#, Python, Java, Lua, Ruby, and so forth which are higher level languages and have garbage collection ( Auto-memory management, which means that dead memory is cleaned to open memory for future use. ) Your game engine should have a fairly active online community, tutorials, and respond to your questions.
List of Game Engines:
http://en.wikipedia.org/wiki/List_of_game_engines
2) Spend time in that language making applications (such as "Hello, world!", indexer, sorter, randomizer, and learn algorithms, etc.) This should take you weeks or a couple months. A course or a several tutorial series is good for helping to prevent bad coding habits and learn efficiently. Be sure to quiz yourself on what you learned so you are sure that you actually learned them.
3) Return to your game engine and make some simple games. If you can, then work in this order - making a few in each stage: Single player 2D games, multiplayer 2D games, single player 3D games, multiplayer 3D games.
Tips: Take things in manageable goals.... daily, weekly, monthly, and by stages.
Diversify your sources of help and information, but work progressively and methodically.
Save backup copies of your work on a frequent basis! If you make a huge mistake, then you will have lost only hours or even minutes if you have a backup regimen.
Start early with a rudimentary version control, even if you must start with your own custom system by using folders named by you: Version_0.01, Version_0.02, V0.03, V0.04....V1.0, V1.1, V1.2, etc. It would be far better than nothing. There is GIT and other version control (source control) systems which you may use when you reach intermediate and advanced level, but that will come in due time. I recommend keeping a separate work folder for doing actual saving of work on a frequent basis and when you are confident then make backups to a version control folder hourly or daily - by your preference.
Research and debugging are very important, so don't neglect them.
Read by below signature.
Personal life and your private thoughts always effect your career. Research is the intellectual backbone of game development and the first order. Version Control is crucial for full management of applications and software. The better the workflow pipeline, then the greater the potential output for a quality game. Completing projects is the last but finest order.
by Clinton, 3Ddreamer