• Announcements

    • khawk

      Download the Game Design and Indie Game Marketing Freebook   07/19/17

      GameDev.net and CRC Press have teamed up to bring a free ebook of content curated from top titles published by CRC Press. The freebook, Practices of Game Design & Indie Game Marketing, includes chapters from The Art of Game Design: A Book of Lenses, A Practical Guide to Indie Game Marketing, and An Architectural Approach to Level Design. The GameDev.net FreeBook is relevant to game designers, developers, and those interested in learning more about the challenges in game development. We know game development can be a tough discipline and business, so we picked several chapters from CRC Press titles that we thought would be of interest to you, the GameDev.net audience, in your journey to design, develop, and market your next game. The free ebook is available through CRC Press by clicking here. The Curated Books The Art of Game Design: A Book of Lenses, Second Edition, by Jesse Schell Presents 100+ sets of questions, or different lenses, for viewing a game’s design, encompassing diverse fields such as psychology, architecture, music, film, software engineering, theme park design, mathematics, anthropology, and more. Written by one of the world's top game designers, this book describes the deepest and most fundamental principles of game design, demonstrating how tactics used in board, card, and athletic games also work in video games. It provides practical instruction on creating world-class games that will be played again and again. View it here. A Practical Guide to Indie Game Marketing, by Joel Dreskin Marketing is an essential but too frequently overlooked or minimized component of the release plan for indie games. A Practical Guide to Indie Game Marketing provides you with the tools needed to build visibility and sell your indie games. With special focus on those developers with small budgets and limited staff and resources, this book is packed with tangible recommendations and techniques that you can put to use immediately. As a seasoned professional of the indie game arena, author Joel Dreskin gives you insight into practical, real-world experiences of marketing numerous successful games and also provides stories of the failures. View it here. An Architectural Approach to Level Design This is one of the first books to integrate architectural and spatial design theory with the field of level design. The book presents architectural techniques and theories for level designers to use in their own work. It connects architecture and level design in different ways that address the practical elements of how designers construct space and the experiential elements of how and why humans interact with this space. Throughout the text, readers learn skills for spatial layout, evoking emotion through gamespaces, and creating better levels through architectural theory. View it here. Learn more and download the ebook by clicking here. Did you know? GameDev.net and CRC Press also recently teamed up to bring GDNet+ Members up to a 20% discount on all CRC Press books. Learn more about this and other benefits here.
Sign in to follow this  
Followers 0
TheScriptan

Need Help Choosing My Path!

16 posts in this topic

          Hello, so I really need someones opinion about my experience, and where should I start with programming. I was always distracted by other languages and game engines, and now I am struggling with what game engine/framework or programming language should I stick. I had most of the experience in C++, but I forgot some of it, then I have experience in C#, Pascal, Lua. I hate Python, because syntax there is just god awful. Anyways, I used engines/frameworks like: Unity, Blender, Game Maker, Love2D I was working with them but after some time I just stopped... So I want you guys to give me some advice where should I start again? What language would fit me best.

          I am 15 years old and I want to make my carrier with programming or game programming. So please help me decide which one should I choose, I know that I have to choose it by myself because I know only what language/engine fits me the best, but still...

 

EDIT: What language or engine would you suggest for me to start with?

 

I am soooo sorry that my english is low, but I think you can understand it well. smile.png

Edited by thescriptan
0

Share this post


Link to post
Share on other sites

Don't worry about your English. We can make out the meaning just fine.

 

You'll probably want to do C# or Lua. They're much simpler than C++ and as far as I know they have really good support. I don't know about Pascal, but judging by the fact that nobody recommends it to beginners, I image it's not a good option.

0

Share this post


Link to post
Share on other sites

I would recommend asking yourself if this is the right field for you before continuing.  Something as time consuming as developing a video game, let alone understanding how programming works, deserves a lot of your dedicated time.  If you just 'stop', you won't be doing yourself much good going into this field, and I dont think that you will benefit from any of our advice.

 

Assuming that you don't plan on just 'stopping', you should use a language that you already know, and preferably an engine that is written with that language and/or associates itself to further expansion through that language.  For example if you wish to use Unity and you love C# and/or JavaScript then that would be a good choice, or if you like C++/LUA you could go with Leadwerks.

 

Furthermore, you should do some nice reading on Wikipedia and through the articles on GDNet.

 

I cannot however stress the first paragraph of my response enough, you need to dedicate yourself to this field, its not just a hobby its a lifestyle, a very fun one I might add.

Edited by d4n1
1

Share this post


Link to post
Share on other sites

I'll probably get screamed at by a few for this, but the simple truth is that if you're serious about getting into the games industry (which I think it's safe to assume you are - you're here asking for help and you're asking about game engines, no?) then you need to be highly competent with C++. There's no two ways about. 

 

If you're wanting to get into programming in general then yeah, you can afford to be a bit more expansive and study other languages. But honestly I'd just dive right in and get going with C++. You said you had the most experience with it so why not carry on from there? smile.png

 

If you're unsure where to go from your current abilities, why not tell us the sort of stuff you understand so we can point you in the right direction? happy.png There's the standard drivel of programming requiring dedication and time but in my eyes if you're suitably passionate about it (your history with C++ at your age suggests you are) then you can ignore all of that and just drive onwards with your chosen language.

 

Best of luck whichever path you go down dude smile.png

 

 

EDIT: As for engines.. Don't think about them until you're competent with C++. Apologies if you are - if not, get going with some 2D games. Knowing a language isn't enough sometimes - you need to understand game structure and stuff alongside it!

Edited by Dezachu
1

Share this post


Link to post
Share on other sites

Don't worry about your English. We can make out the meaning just fine.

 

You'll probably want to do C# or Lua. They're much simpler than C++ and as far as I know they have really good support. I don't know about Pascal, but judging by the fact that nobody recommends it to beginners, I image it's not a good option.

I mentioned Pascal, because I was starting with it at the very beggining

0

Share this post


Link to post
Share on other sites
If you learnt c++ first and forgot then refresh your knowlege on C++, then lua for scripting.
For 3d game engines, unreal or unity or leadwerks (not free but uses c++ and maybe lua ), blender for game assets.
0

Share this post


Link to post
Share on other sites

I'll probably get screamed at by a few for this, but the simple truth is that if you're serious about getting into the games industry (which I think it's safe to assume you are - you're here asking for help and you're asking about game engines, no?) then you need to be highly competent with C++. There's no two ways about. 

 

If you're wanting to get into programming in general then yeah, you can afford to be a bit more expansive and study other languages. But honestly I'd just dive right in and get going with C++. You said you had the most experience with it so why not carry on from there? smile.png

 

If you're unsure where to go from your current abilities, why not tell us the sort of stuff you understand so we can point you in the right direction? happy.png There's the standard drivel of programming requiring dedication and time but in my eyes if you're suitably passionate about it (your history with C++ at your age suggests you are) then you can ignore all of that and just drive onwards with your chosen language.

 

Best of luck whichever path you go down dude smile.png

 

 

EDIT: As for engines.. Don't think about them until you're competent with C++. Apologies if you are - if not, get going with some 2D games. Knowing a language isn't enough sometimes - you need to understand game structure and stuff alongside it!

My C++ knowledge is like Polymorphism, virtual functions, OOP :)

0

Share this post


Link to post
Share on other sites


My C++ knowledge is like Polymorphism, virtual functions, OOP

 

Good, that sounds like a pretty solid basis for continuing then! 

 

You won't need oodles more to begin making a game then. I'd recommend looking into SFML 2.1 as a library to develop games with. Fairly simple to use and keeps all the nasty OGL stuff away from you ;) Maybe aim for some basic games to begin with and then aim upwards! There's tons of resources online for 2D game development!

0

Share this post


Link to post
Share on other sites
I think I have questions based on this thread. I have always loved game design. I grew up designing my own board and pen/paper RPGs... It's in my blood. Now that I'm learning programming(CS major/business admin minor) I'm starting to work on video games in my spare time.

I would love to develope games, but I don't want to be limited to just those jobs. I would love to assist in developing many different types of systems and maybe just work on small games in my spare time. School started me off with java, but I've also had intro classes in c/c++.

Where should I start with game development? Java or c++? Does working on games in spare time help portfolios when trying to get a job at a non gaming company?
0

Share this post


Link to post
Share on other sites

Believe it or not, there is a huge difference between if you want to learn programming and make games or want to learn programming to make games. The difference being that in the first situation you are equally passionate about both game dev'ing and programming (separately passionate) and want to pursue them both. In the second situation, you are interested in programming, but this as a means to your goal to make games. I have totally separate advice for whichever one you are. Neither way of thinking is better.

 

If you want to learn programming and make games, then I would recommend installing GNU/Linux and using C to start making programs using legendary tools like GCC, make, GNU nano, bash, Emacs, GDB, GNU/Linux itself, etc. This is a whole different topic, but there is still something I must address. I will definitely get a lot of flak here for recommending what I just did, but honestly if you learn this stuff, everything else is just easier and not superstitious. You can then learn C++ if you want to fit in with everyone else, once your projects become too big for C (you can judge this based on what is comfortable size for you). You don't have to use C++ for large projects, it's all preference. C code is valid C++ code, but not vice versa (its like C is the inside layer of a C++ onion). Some might recommend you stick with something like Python, Lua, or Java on Windows ($indows), but if you are passionate about programming separate from games, you might as well learn the mainstays and norms of the modern PC.

 

If you want to learn programming, but programming is just a part of your path to making games, ignore the above paragraph. That would be torture if you really didn't want to learn the stuff. Just go grab something like Unity 3D and use JavaScript, Python, C#, etc. as a scripting language. This is a perfectly legitimate way of making games. I don't care what people say, this is the best option for pretty much all indie devs. The only reason people like me prefer writing our own code is because it is just fun, once you get the train rolling. When using a ready-to-use solution, you also get to sit back in your chair with a pretty HD 3D game after a day or two of work with pride and achievement, whereas going for a homegrown approach you can sit back with pride over your 3D (extremely buggy) game that frequently crashes and has caused you to lose half of your hair (this all after 2 months).

 

Overall, you have some very productive times available to you. Kids have lots of energy at your age, and they also have lots of time. Respond if you want me to elaborate on anything I said.

 

Believe it or not, there is a huge difference between if you want to learn programming and make games or want to learn programming to make games. The difference being that in the first situation you are equally passionate about both game dev'ing and programming (separately passionate) and want to pursue them both. In the second situation, you are interested in programming, but this as a means to your goal to make games. I have totally separate advice for whichever one you are. Neither way of thinking is better.

 

If you want to learn programming and make games, then I would recommend installing GNU/Linux and using C to start making programs using legendary tools like GCC, make, GNU nano, bash, Emacs, GDB, GNU/Linux itself, etc. This is a whole different topic, but there is still something I must address. I will definitely get a lot of flak here for recommending what I just did, but honestly if you learn this stuff, everything else is just easier and not superstitious. You can then learn C++ if you want to fit in with everyone else, once your projects become too big for C (you can judge this based on what is comfortable size for you). You don't have to use C++ for large projects, it's all preference. C code is valid C++ code, but not vice versa (its like C is the inside layer of a C++ onion). Some might recommend you stick with something like Python, Lua, or Java on Windows ($indows), but if you are passionate about programming separate from games, you might as well learn the mainstays and norms of the modern PC.

 

If you want to learn programming, but programming is just a part of your path to making games, ignore the above paragraph. That would be torture if you really didn't want to learn the stuff. Just go grab something like Unity 3D and use JavaScript, Python, C#, etc. as a scripting language. This is a perfectly legitimate way of making games. I don't care what people say, this is the best option for pretty much all indie devs. The only reason people like me prefer writing our own code is because it is just fun, once you get the train rolling. When using a ready-to-use solution, you also get to sit back in your chair with a pretty HD 3D game after a day or two of work with pride and achievement, whereas going for a homegrown approach you can sit back with pride over your 3D (extremely buggy) game that frequently crashes and has caused you to lose half of your hair (this all after 2 months).

 

Overall, you have some very productive times available to you. Kids have lots of energy at your age, and they also have lots of time. Respond if you want me to elaborate on anything I said.

A really nice write up, thanks. :)

0

Share this post


Link to post
Share on other sites

I think I have questions based on this thread. I have always loved game design. I grew up designing my own board and pen/paper RPGs... It's in my blood. Now that I'm learning programming(CS major/business admin minor) I'm starting to work on video games in my spare time.

I would love to develope games, but I don't want to be limited to just those jobs. I would love to assist in developing many different types of systems and maybe just work on small games in my spare time. School started me off with java, but I've also had intro classes in c/c++.

Where should I start with game development? Java or c++? Does working on games in spare time help portfolios when trying to get a job at a non gaming company?

One of the most important things someone looks for when hiring is that you can finish things. So work on a small game and finish it. If I were hiring someone for a programming position, I'd probably pick the person that started and finished a game using an engine with absolutely no programming used over the person who started a game in C++ and never really got anywhere.

 

For Java or C++, it doesn't really matter. If you really need an answer, pick Java if you want to work on Android or C++ otherwise. It's a total joke to learn C++ or Java if you know the other language anyways, so it really, really doesn't matter.

0

Share this post


Link to post
Share on other sites

I'd like to factor in choice here (or the lack of).. If you use CryEngine (With or without Mono) or Unity or Unreal 4 (let's face it, that's the future). You are going to use C#, C++ and C (Maybe Lua if you really feel like it), one for logic another for core functions and another for things like shaders. If you build your own stuff, chances are examples will be in C++ and again for stuff like GLSL C...

 

So if you want to get into games development, I recon the path is already pretty much pre-determined, plus there not all that different from each other.. Once you get around C# then move to C++ sure theres a fair few differences but you'll be able to find your way around and follow tutorials more easily.

0

Share this post


Link to post
Share on other sites

I'd like to factor in choice here (or the lack of).. If you use CryEngine (With or without Mono) or Unity or Unreal 4 (let's face it, that's the future). You are going to use C#, C++ and C (Maybe Lua if you really feel like it), one for logic another for core functions and another for things like shaders. If you build your own stuff, chances are examples will be in C++ and again for stuff like GLSL C...

 

So if you want to get into games development, I recon the path is already pretty much pre-determined, plus there not all that different from each other.. Once you get around C# then move to C++ sure theres a fair few differences but you'll be able to find your way around and follow tutorials more easily.

My pc can't handle CryEngine or Unreal, it almost handles Unity soooo yeah. smile.png

 

 


If you want to learn programming and make games, then I would recommend installing GNU/Linux and using C to start making programs using legendary tools like GCC, make, GNU nano, bash, Emacs, GDB, GNU/Linux itself, etc. This is a whole different topic, but there is still something I must address. I will definitely get a lot of flak here for recommending what I just did, but honestly if you learn this stuff, everything else is just easier and not superstitious. You can then learn C++ if you want to fit in with everyone else, once your projects become too big for C (you can judge this based on what is comfortable size for you). You don't have to use C++ for large projects, it's all preference. C code is valid C++ code, but not vice versa (its like C is the inside layer of a C++ onion). Some might recommend you stick with something like Python, Lua, or Java on Windows ($indows), but if you are passionate about programming separate from games, you might as well learn the mainstays and norms of the modern PC.

 

Just a note but not every C program is a valid C++ program (in fact, it's worse than that: some programs will compile both as C and C++, but produce different output in both cases). This is a common mistake, but C is not a subset of C++. Specifically, C and C++ share a common subset, that's completely different and rather misleading.

 

I think it's a good idea to get used to base tools like gcc, vim, make etc.. (it also tends to let you understand the process of compiling something and how things work at a low level in general) but don't hesitate to use an IDE if the situation calls for it or if you are more productive with an IDE. You should not listen to people who religiously claim you don't need IDE's, as you are not them and they are not you.

 

I have some experience with Vim, I used it with my tablet and app called Terminal IDE, I was learning some Java. smile.png

 

 

Don't forget to check out my project "Learning Programming In 2 Years" I decided with what I am going to start, it is C# -> XNA -> MonoGame (I am learning xna firstly than Monogame, because I want to get my hands warm with it. :) )

 

Link:  http://www.gamedev.net/topic/652498-need-help-choosing-my-path/

Edited by TheScriptan
0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0