I Need Help.

Started by
16 comments, last by ISDCaptain01 11 years, 5 months ago
I want to get into programming games, but I have nearly no idea what I should use.
I think I want to begin with C++, but I don't know, I also have no idea how to code, so if one could direct me to the right direction that would be great.
Advertisement
C++ is as hard as it gets, why do you wish to start there?

I personally recommend python as a first language, very easy yet powerful and knowledge gained carries on to learning new languages
Ah thank you, I have heard from somewhere that C++ was easy, must have heard wrong.
While C++ is a hard language, don't let that discourage you if you truly want to start there, just prepare to be in for a lot of hard work if you are teaching yourself
Also, I would suggest you to start programming first, then later thinking about games, graphics, etc. Start small. console applications, text based games. Understand programming logic, learn about vectors, nothing wrong with starting with C++ since lots of languages are C based and you'll not lose any time learning C++, because the knowledge is interchangable.

Later I would suggest going with C#, is a great language, the .net framework is powerfull, and C# is accepted in Unity, which is a great engine.

But take one step at a time.
Every language can be "hard" depending on the person. Personally, C++ was the first language that I learned and it actually seemed pretty easy to me compared to Java and C# (which were the first two languages I attempted learning but quit at the time). There'es absolutely no reason to be afraid of learning C++ as your first language because with the right resources you can pick up the basics pretty quick and have a simple game running. I say start off with some basic C++ and stick with it. You'll learn to love it just like I did :)
Hi,

In the broader picture, popular games have been made in any of many languages. For the beginner, there are a few choices which are outstanding to be able to learn.

Compiled languages friendly for newbies would be the standard recommendation from the industry. The C# is the top choice, but C, Java, and others are also compiled. With a compiled language, you get a standard well supported framework to help you, making the task streamlined - such as .NET Framework, Java Framework, or the Mono Framework. These frameworks have sets of programs and libraries available called Integrated Development Environments (IDE): Visual Studio IDE for .NET Framework and MonoDevelop IDE for Mono Framework, but there is some over lap. However, Visual Studio and .NET target Windows and DirectX while MonoDevelop and Mono Framework are cross-platform. Java and Java Framework are a great cross-platform system, too. Keep mind that there are exceptions and substitutions which can be made, but these are mainstream. The C language would be one of the least that I would recommend and I explain why here...

Garbage collecting languages (Auto memory management) like Java and C# or garbage collection scripting languages such as Python are highly urged for newbies.The C and C++ have libraries which can extend them into garbage collecting, but far beyond the scope of a beginner programmer. Choosing C++ would consume you as the largest language environment in which to get lost. The C# from a garbage collection view would likely save you the most time and bugfixing effort, though Python is close behind.

The C++ area is possible, but when polled most people who started with C++ found it harder than the others that I mention here. The C++ has a managed fork which can be confused in its common language runtime and bytecode implementations, allowing class file compiling in the same program, having extensions in several areas, resulting in most newbies getting lost in the largest language jungle there is in the gaming industry. For pure performance and features, C++/Visual Studio/.NET are extremely hard to beat, but only a team working under a game developer with another artist team in support can even hope to make the typical AAA mega popular PC and XBox compatible game which would actually use the advanced features in the C++ language environment, unless an expert coder indy game developer has many years to spare.

Python (interpreted language) is a great second language, but so is Lua, Tao, and others for scripting language. Wonderful games have been made with them, sometimes in combination with another language. Blender comes with a Python game engine in its environment which you may use as a base. There have been popular games written in the scripting languages. Later you may use scripting for game functionaility on top of a compiled language like C++ or C# for engines. Dynamics languages such as Ruby or the dynamic writing in C# can speed the game making process.

Here's my advice for beginners in gaming languages:

1) Compiled language should come first. Get good with it before moving to the next. Compiled language usually has the highest performance and the class library structure is a must for complex games. The C# is a compiled language with garbage collecting built into it and is the core of the .NET Framework, though you may use other languages.

2) Scripting language, perhaps an interpreted language is a logical next language for game functionality. High or Very high level programming. Higher level frameworks such as Blender support this, but here are many wonderful ones! Beginners should get auto memory managed (garbage collecting) in their first couple languages in my opinion.

3) Managed languages or managed fork of C++ is for experienced programmers after they get the fundamentals understood well. Think of managed language or implementation as you programming much more of the technicalilities, lower level programming.

A game engine may be chosen which allows you to program your own game source code which uses their game engine to create a game:
http://en.wikipedia....of_game_engines


It is possible to make or design games with no programming in using pre-built system. There are many out there, too.

Help notes:

Integrated Development Environments (IDE) may contain Frameworks and Software Development Kits as a complete environment to give the developer the things needed to create a program and make it run in a computer. Examples are Visual Studio, MonoDevelop, Java IDEs, and other

Frameworks - Low Level - contain APIs, language libraries, programs, software, specialized interfaces, and so on, as a layer between hardware and games in order for a game to be programmed to run through an operating system on the machine, using the computers resources. Once or as the game source code is created, more work in the Framework is added to make it run in the computer. Three common examples are .NET Framework, Mono Framework, and Java Framework.

Software Development Kits - Lower level ones such as .NET SDK are a layer between your program (game engine source code) and the computer system which allows you to make it load, compile, execute, and run in your computer. The 3D rendering engines sometimes have an SDK available to help develop programs on their system, for example.

Software Development Kits - Higher level are focused on the game source code to make it run in a computer. Most interpreted languages such as Python have communities which created SDKs to support their gaming vision on their higher level language.

Note: Sometimes a game source code and the game engine source code are integrated.

There are exceptions and blurred boundries in most of the above areas, but this gives you an outline. smile.png


Research provides much advantage through realizing your options and knowing what to do with them.


The proven path:

A) Choose a game creation system which matches your game type and language of choice.

B) Start learning to make programs very soon! Make "Hello World" and so forth.

C) Make simple 2D games like Tic-Tac-Toe, Pong, Defender, Pac-Man, Astoroids, and so forth, starting simple and progressing.

D) Practice making simple 3D games if you like.

E) Start working on your own custom game after you have carefully understood the programming in the previous steps.


Keep enjoying it! smile.png


Clinton

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

3Ddreamer, I would upvote you, but I've unfortunately met my quota (Probably because of all the awesome people on here smile.png).
3Ddreamer is pretty much correct, and I will add I highly recommend C# as a great beginner language, but that's just my opinion. I started with C++, and I'm thoroughly enjoying the experience. It all depends on how well you learn, and your thought process when it comes to programming. There's nothing stopping you from trying out many languages, IDE's, and Game-Development tools, so get started and find out what suits you!

I'm a game programmer and computer science ninja !

Here's my 2D RPG-Ish Platformer Programmed in Python + Pygame, with a Custom Level Editor and Rendering System!

Here's my Custom IDE / Debugger Programmed in Pure Python and Designed from the Ground Up for Programming Education!

Want to ask about Python, Flask, wxPython, Pygame, C++, HTML5, CSS3, Javascript, jQuery, C++, Vimscript, SFML 1.6 / 2.0, or anything else? Recruiting for a game development team and need a passionate programmer? Just want to talk about programming? Email me here:

hobohm.business@gmail.com

or Personal-Message me on here !


There'es absolutely no reason to be afraid of learning C++ as your first language


Yes there are, there are hundreds of reasons.
Thank you all for the advice, also while I am here, how exactly do you compile stuff, I couldn't figure it to save my life.

This topic is closed to new replies.

Advertisement