#1
  1. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Sep 2011
    Posts
    3
    Rep Power
    0

    Looking to start somewhere, need some advice.


    Okay, I'll be more precise, bare with me and please try to read on. I see small teams like Wolfire and Mojang, and it's teams like this I look up to the most. Small teams to who develop games that don't cost millions to make, but don't compromise on quality either. But the best part? they make the games they want to make, no matter how odd or crazy the ideas because they don't have people above them telling them things should be different.

    I'd love to one day find myself in a similar situation. And having loved gaming all my life, I only realised in recent years how gaming has been the one constant in my life. The one thing that I've never lost interest in and that I'm always in the mood for entertainment-wise. So it makes sense to me to hopefully start learning about game development, and eventually trying to develop my own game/mod/whatever. Learn basics, start some small projects etc. see how far I can go with it.

    So, moving on. I wouldn't mind having a general understanding of all aspects of game development so I can eventually do little bits of everything myself. But, and I may be wrong in thinking this so feel free to correct me, but the programming/coding seems like the thing that holds everything else together, and therefore seems like an ideal place to start. The fact that this could take make years to learn doesn't phase me, I'm generally quite determined. But now to be more precise.

    In terms of programming/coding, where the hell do I start? I'd appreciate any helpful information on this, and rest assured any helpful info provided won't go to waste. I'll take it all into account, plant my feet somewhere and get learning.

    Thanks for any help.

    EDIT: If even more specific info is needed, please ask for it and I'll reply ASAP. Again, help very much appreciated.
  2. #2
  3. No Profile Picture
    Lost in code
    Devshed Supreme Being (6500+ posts)

    Join Date
    Dec 2004
    Posts
    8,317
    Rep Power
    7170
    In terms of programming, you start by picking a language to learn.

    Major 3D game engines are written almost exclusively in C or C++. However, unless graphics are your primary interest, you probably won't be programming a game engine. With some of these engines most of the gameplay logic is written in a custom scripting language that is unique to the particular engine. So if your primary interest is gameplay logic that's where you'll be headed. If you end up making a 3D game you'll probably end up using an existing 3D engine for it. For a good example of why writing your own engine in something other than C is a bad idea, play Minecraft and watch how it abuses your system resources.

    With a 2D game your choices are a lot more open. You can easily write a 2D game in Java or C/C++. Although I'm not as familiar with it, I think you could probably do it without too much trouble in Python as well (although Python differs significantly from most of the languages used for game programming).

    With a browser based game your options are completely open. You could use pretty much any programming language on the planet to write one, but something like PHP has benefits of being easy to learn and widely supported. It's also syntactically similar to C/C++.

    C/C++ is a hard programming language to learn as a first language. Java is easier to learn, but a lot heavier on the concepts than C/C++. Unless you want to write a browser based game, my guess is that you will pick Java as a starting language.

    When learning a language you won't be able to go directly to drawing stuff on the screen. Generally you need to start with simple text based programs. Especially if you've never programmed anything before. From there, you can move to more advanced graphical games like pong or snake or some asteroids variant. Once you've mastered those, you'll probably know enough to make a 2D RPG or whatever else you want.

    If you're good at programming you'll probably discover that you suck at graphic design. That just seems to be the way of the world.
    PHP FAQ

    Originally Posted by Spad
    Ah USB, the only rectangular connector where you have to make 3 attempts before you get it the right way around
  4. #3
  5. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Sep 2011
    Posts
    3
    Rep Power
    0
    Originally Posted by E-Oreo
    In terms of programming, you start by picking a language to learn.

    Major 3D game engines are written almost exclusively in C or C++. However, unless graphics are your primary interest, you probably won't be programming a game engine. With some of these engines most of the gameplay logic is written in a custom scripting language that is unique to the particular engine. So if your primary interest is gameplay logic that's where you'll be headed. If you end up making a 3D game you'll probably end up using an existing 3D engine for it. For a good example of why writing your own engine in something other than C is a bad idea, play Minecraft and watch how it abuses your system resources.

    With a 2D game your choices are a lot more open. You can easily write a 2D game in Java or C/C++. Although I'm not as familiar with it, I think you could probably do it without too much trouble in Python as well (although Python differs significantly from most of the languages used for game programming).

    With a browser based game your options are completely open. You could use pretty much any programming language on the planet to write one, but something like PHP has benefits of being easy to learn and widely supported. It's also syntactically similar to C/C++.

    C/C++ is a hard programming language to learn as a first language. Java is easier to learn, but a lot heavier on the concepts than C/C++. Unless you want to write a browser based game, my guess is that you will pick Java as a starting language.

    When learning a language you won't be able to go directly to drawing stuff on the screen. Generally you need to start with simple text based programs. Especially if you've never programmed anything before. From there, you can move to more advanced graphical games like pong or snake or some asteroids variant. Once you've mastered those, you'll probably know enough to make a 2D RPG or whatever else you want.

    If you're good at programming you'll probably discover that you suck at graphic design. That just seems to be the way of the world.
    The gameplay side of things is where I feel most of my interest lies. The gameplay mechanics, and the implementation of them. In which case, using an existing engine seems to be the route I should be taking. I feel it might be ideal later on to eventually build up to learning C or C++, as I believe it wouldn't be a bad idea to at least have an understanding of the languages(s) should the creation of an engine become a necessity (for whatever reason).

    I'm leaning heavily towards UDK having used the original version back in 2000 to make maps for the original Unreal Tournament. Far crom the complexity of coding, no doubt. But having once felt comfortable using it, I feel UDK might be my best chance at getting anywhere.

    So, first question. Would it be ideal to start learning about UDK's own scripting language first, or should I start with some very basic form of scripting/programming that may or may not have anything to do with games or game engines, just to get a feel of what to expect from more intensive languages such as those done in a 3D game engine?

    Second question relating to the first. Would learning to program web-based games or 2D games be a better introduction to game development that jumping in with a 3D engine's own language?

    As for the Minecraft comment, did you mean that the game requires more resources as in more memory/process power than it should for what it is? Meaning it's inefficient?

    As for graphics design, I'm awful at art, or the physical act of drawing at least. I have good taste in art-design, just no means to really express it, yet... I do hope to find myself in a position one day where I can do a bit of everything. Beyond programming, I wouldn't mind teaching myself how to use software like Blender so I'd be able to provide my own art aspects etc. But right now, the focus is on programming for whichever language you suggest might be ideal based on my above questions and end-goals.

    Thanks for the reply too, I appreciate it!
  6. #4
  7. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Oct 2011
    Posts
    8
    Rep Power
    0
    A little late in responding, but this guide should help you get started. It's long, extremely long, but you will come away from it knowing a hell of a lot more than when you went in.

    I want to be a game developer... now what?
  8. #5
  9. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Sep 2011
    Posts
    3
    Rep Power
    0
    Originally Posted by Serapth
    A little late in responding, but this guide should help you get started. It's long, extremely long, but you will come away from it knowing a hell of a lot more than when you went in.

    I want to be a game developer... now what?
    Ahh, cheers buddy. I'll be sure to have a good read one day soon!

    Thanks again!

IMN logo majestic logo threadwatch logo seochat tools logo