Advertisement

Please guide me?

Started by July 22, 2017 03:10 PM
7 comments, last by Temunish 7 years, 4 months ago

I want to pursue my career in game development . I don't know much how to start. Currently , I have knowledge of Java, C ,Python and little bit of javascript. Now I want to know the recommended learning path. I just want to start making simple games .Please recommend some learning too. Thanks

As a start consider a game is much more than code.

In my experience simple games run great in browser. Everybody can play them, they're portable, need no install and nowadays you can get quite far with them I mean pure HTML/JS stuff. OFC you don't use HTML nor JS but some framework, and maybe Dart or Typescript. And there are plenty of frameworks. Plenty.

So you want to go programmer route?

C? Say no to C. You'll get mad very soon. I don't suggest C++ either. C# is kinda good.

Or, you could just play a bit with Unreal, see what you can do, learn a bit about pipeline. Make a few levels learn a bit about gameplay.

Or heck, you could just buy some games off steam or the humble bundle and see what you like. Sketch a plan.

Previously "Krohm"

Advertisement

If you want a career in game development, you need to learn how to make games. The best way to learn how to make games, is to make games. Find yourself a game engine with tutorials that you like. I recommend Unity and C#. The official tutorials are awesome and the Unity Asset store means you don't have to rely on your own programmer-art skills. :)

It looks like the beginner FAQ got pulled from the site. I'll ask about that. But here's an article that is a decent roadmap for how to get better at making games. It tells you which games to make first and why. I can't recommend it enough. :)

https://www.gamedev.net/articles/programming/general-and-gameplay-programming/your-first-step-to-game-development-starts-here-r2976

- Eck

EckTech Games - Games and Unity Assets I'm working on
Still Flying - My GameDev journal
The Shilwulf Dynasty - Campaign notes for my Rogue Trader RPG

Along with making games, and making more games, I'd suggest reading books like: The art of game design, a book of lenses, that gives a great insight into what it means exactly to create games (from a game designer point of view), and how to consider the perspectives of as many people as possible while making games.

And once you've managed making a few games on your own, I'd encourage you to find a team with whom you can do Game Jams (short, often 48h, events where you create a game form start to finish on a given subject). It helped me a lot figure out more precisely how creating a game with a team works, and how to work with a team and be creative.

Good luck!

Aurelien Folie - Odin - Founder of Asgaard Studio

Creator of unique, bespoke experiences

Gentleman Extraordinaire

What is also important that is often overlooked, at least, from what I can see as a person that's new to the field as well, is passion. Specifically, knowing what you want to do in the industry, what you want to bring to the table, and having the nerve and the drive to join or assemble a team with similar goals.

It's... difficult to begin making games by oneself. If you have no one to work with, every skill you would need to make a, "good," game you'd have to provide yourself, be it visual artistry, visual design, gameplay design, composing, coding, writing... Really, whatever is necessary for your project.

Another important thing to have is a willingness to fail. By this I don't mean setting out to fail, of course, but to be able to accept failure, see where you and your team went wrong, and learn from the failures to make your next project better. A lot of times when people get into new things and aren't immediately successful, they're disheartened and all but give up. I especially am guilty of this (i remember trying to learn instruments and quitting after not being perfect after a week) but it's something we as people have to overcome.

As far as suggestions for a first game, I'd suggest taking your definition of simple and simplifying it further, distilling it to a point where if you go any further it's no longer a game, but a picture or video. Par example, your first game could be a one screen platformer where the goal is to literally get across a flat surface. Once you figure that out, step up and add a jump. Achieve that, add a second screen. Add an enemy.

The goal, if you're planning on being a programmer in the field (I assume since you listed your programming credentials), is to figure out how to do little things one at a time and combine them so you have the skillset to tackle bigger and bigger programming challenges. If you put too much on your plate at once and your first goal after deciding to join the industry is to program a game that will be considered a masterpiece and a classic, you'll be overwhelmed and drown in the amount of work you've taken on. I guess the easiest way to sum it up would be take on new things gradually so you have the foundation to build greater games!

You'll do great in the field, just keep pushing yourself forward to fulfill your goals!

when i was a beginner. i followed unity engine tutorial (https://unity3d.com/learn/tutorials/projects/survival-shooter-tutorial) step by step. by the time you reach the end of tutorial, you'll know lot of things. same thing for unreal or other game engines.

Advertisement

If you're looking at handling all aspects of Game Development, then the best thing you can do is create a concept, and blueprint every aspect of your game. Then just start coding!

What language you use doesn't matter, you should use C, or JAVA if you're conformable with it regardless. I'm still making games in C++ for over 15 years. If you're able to move into a higher level language with little transition time, and you're gaining some advantage then go for it, but don't change because of the endless debate of what language you should use. I program in over 7 languages. You're going to be spending a lot of time just learning about game programming in general! Once you learn these concepts you can transition to any language that allows game development to create the same product. Within reason, I can make the same game in a variety of different languages, it just depends on what library I use, wrappers I need for OpenGL if using JAVA, ect...

Working in Game Development in the professional sense isn't the same as a one man operation. There are so many roles, and people who specialize in different aspects. You might have one person who only programs the level editor, another who handles level design, another who works on programming an asset manager, another working on networking, then your sound engineers, artists, vocal talent, script writers, and so forth!

My suggestion is to either take C, or JAVA and get started with basic 2D games as you already know those two languages.

For C: I suggest using Allegro https://www.allegro.cc/ or SDL https://www.libsdl.org/.

For Java: I suggest libGFX http://libgdx.badlogicgames.com/

I believe all of the above will be able to handle time properly for your game loop. You'll want to do research about Time Steps as well. I would recommend learning the following to get you on your way.

- Creating a window in variety of different resolutions, full screen and window mode toggles.

- Handling Window events (Also knowing if your window is in focus or not may be important when dealing with input - I normally program an out of focus feature that disables any input for the game, and normally will pause if it's a single player)

- Creating a Game Loop that handles your input, logic, and draw. I suggest reading up on good game loops because too many new game developers do not separate their input, logic, and draws properly. This will go hand in hand with your time step setup as well.

- Drawing sprite objects to the screen (You should make a habit of creating sprite sheets, and drawing from parts of that texture onto your sprite objects)

- Handling input of those objects

- Working with Bounding Box Collision

- A* Pathfinding

- Drawing Title Maps using a Loop (You can do this in many ways, as an example, a 2D Array with digits that represent a certain tile) - You should also research about drawing tiles that are only in view, or off-map rendering.

The above will get you a starting point for making basic games like pac-man.

I won't get into memory management, but it's important to research this later on depending on the language you're using, especially if you plan on moving to different platforms with limited resources.

As you can see there is so much to game development that no single post can really address. Best of luck!

Programmer and 3D Artist

I may be a little late to the party for this post, but better late than never.

You seem to be going down the same path as I was when I started programming and decided to become a game developer. The first thing I feel like you have to do if you are to continue on the path of a programmer is focusing on one language and really build your skill with that one language. For example, I put a lot of work into C++ and the skills I learned in that language are transferable to many other languages. Of course, I don't know how far you've come in programming therefore this may be useless to you.

In my experience, I find making your own game engine is a very good way to learn how a lot of things work. Learning a shader langauge such as OpenGL is something I found quite useful.

A good engine to start working on games, in my opinion, is Unreal Engine 4. It has all the tools you need to start working on your level and there's a million guides online to make your own game. The Blueprint system in the engine is quite nice to use when starting out. Furthermore, the engine has a lot of templates to make games. The FPS template is really good for anything in first person, for example.

As for learning, practice is everything, which everyone else in the thread has mentioned. Other than that, start working on a game and as you need to learn how to do specific things, just look them up. Google is your best friend when learning. For general guides I found that YouTube tutorials are the best.

If you have any other questions, feel free to message me!

This topic is closed to new replies.

Advertisement