Jump to content
  • Advertisement
Sign in to follow this  
xlrustylx

Complete Noob with Questions

This topic is 3762 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi there, A friend and I are interested in developing video games and going independent. The problem is, neither of us have any software development experience, only a little bit of web. So, we figured we should first learn C++ then move onto C#, since those seem to be the leading languages for Windows games. We were thinking about developing a simple 3D engine and toolset for the engine after we got a grasp on C++ and C# so we can begin developing games truly of our own. So, is this a bad, good, or different approach to game development? Thanks, Jared

Share this post


Link to post
Share on other sites
Advertisement
Quote:
So, is this a bad, good, or different approach to game development?
Bad. You underestimate programming. Go the standard route every wanna-be game programmer does. Start with Python or C#. Learn the language. Write small programs. Gain experience. At some point, you can start writing practice apps. See if both of you are still interested by that point. Come back then.

Share this post


Link to post
Share on other sites
Okay, makes sense. One more question, you said start with C#, why not C++? A lot of games I know of are made with C++.

Share this post


Link to post
Share on other sites
You can use whatever language you want. Make some research, read about them and decide. If you're going to stick to programming, you will most probably learn C++ as it is still very important, but C#,Python and other languages are considerned more friendly to beginners, not that it is impossible to start with C++ of course. The choise is yours though.

Share this post


Link to post
Share on other sites
I agree, start with Python, C# or Java, follow a tutorial or book to get to grips with one of them. Then, assuming you haven't given up (many people aren't made to be programmers) you can start making games. Making engines is a road to nowhere. [smile]

C++ is rather confangled for a first time (any!) programmer and lacks the expressivity to properly 'dive into' game development IMO.

Share this post


Link to post
Share on other sites
Quote:

Okay, makes sense. One more question, you said start with C#, why not C++? A lot of games I know of are made with C++.

C++ isn't a very good language for beginners -- it is laden with subtle pitfalls and gotchas that can make things confusing and difficult to somebody just learning about the fundamentals of programming, it's old, riddled with legacy cruft, and low-level.

Languages like Python and C# are generally considered better for beginners because they are higher level, incorporate modern programming language concepts that C++ simply does not have, or has only as library features (sometimes via complex libraries, like Boost, which can be a hurdle for beginners).

Basically, higher level languages let you get off and running more quickly; you're not burdened with having to learn low level implementation detail concepts (versus fundamental, abstract, high level ones), and you can see results you will find more compelling and encouraging -- most likely -- a lot sooner. C++ in particular tends to encourage some extremely poor habits and instil some misinformation in the mind of a beginner, because there is a lot of bad and incorrect information about C++ out there (largely by virtue of C++'s age and installed base).

You see many games written in C++ because it's popular, especially in the industry proper, among professionals. There are a lot of reasons for that, but none of them are relevant to you, as a beginner. A good programmer knows multiple languages, so you should not feel that you are limiting yourself by focusing on a language other than C++; languages are simply tools, the more you know how to use, the more problems you can solve correctly and efficiently. The more important thing is to start learning rather than dawdle trying to pick the 'best' language. If you are serious, you will learn many.

That said, there's a good reason that martial arts disciplines start off their neophytes on dummy weapons instead of live blades. The analogy to programming isn't entirely invalid.

Share this post


Link to post
Share on other sites
Quote:
Original post by xlrustylx
We were thinking about developing a simple 3D engine and toolset for the engine after we got a grasp on C++ and C# so we can begin developing games truly of our own.


Be warned: There are no simple 3d engines. You're much better off starting with 2d games, which are much easier to program.

Also, you'll need to learn a 3d graphics API (either Direct3d or Opengl) before you start 3d games.

Share this post


Link to post
Share on other sites
Quote:
Original post by lol

Be warned: There are no simple 3d engines. You're much better off starting with 2d games, which are much easier to program.

Also, you'll need to learn a 3d graphics API (either Direct3d or Opengl) before you start 3d games.


Thanks for the heads up. That especially helpful since I have no clue what API means, showing I should start with 2D.

Share this post


Link to post
Share on other sites
API = Application Programming Interface

I agree, start learning a language like C#, Java or Python. You could as well use an existing engine or 3D library like Java3D, OGRE etc., since you'll need to either learn a 3D api for hardware accelerated 2D games or at least some GUI model (e.g. Java's Swing) or software drawing API (for drawing your custom game world).

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!