new to game programming

Started by
8 comments, last by Hodgman 16 years, 4 months ago
though i'm new to game programming, i'm not new to programming in general. i have worked quite a bit with html, though i'm not a master of it, but i know how programming works. i've recently installed Visual Basic 6 my friend gave me, but i do not know if it's a good version, or if Visual C++ 2005 from the Microsoft website is better. also, because i'm new to this kind of programming, i will probably require a lot of help and would like to know some ppl who could help me, and would like to know places on the net that could help me get started. of course i know learning C++ generally is better than delving into the whole "game design" deal right off, so places that teach C++ would be nice. i plan on working with OpenGL so that when i publish a game i will have a bigger audience because i have heard that DirectX is only applicable (not sure if that's the right word) on any system other than Windows. Also, to my understanding, OpenGL works with only graphics, so if someone could tell me where to go for sound libraries and other libraries i may need for a good game, please let me know. i have heard of SDL and OpenAL, but don't know which is better. and one more thing ... tho i plan on working with OpenGL, would DirectX be better? r there really many ppl out there that use another OS than Windows? because i haven't seen any other kind of OS except at schools that use iMacs and old (really old) Macintosh computers, tho they're starting to change to Windows now too.
Advertisement
Quote:Original post by Seikimatsu
i have worked quite a bit with html, though i'm not a master of it, but i know how programming works.

HTML is not a programming language, and doesn't really have anything to do with programming (unless you're using &#106avascript/ECMA Script inside your HTML)... It's a mark-up language, like Latex or BB-Code...

Quote:Original post by Seikimatsu
i've recently installed Visual Basic 6 my friend gave me, but i do not know if it's a good version, or if Visual C++ 2005 from the Microsoft website is better.

That depends if you want to learn Visual Basic, or C++...
If you're new to programming languages, it's probably going to be easier to learn VB first (as C++ is a much more complex language). Alternatively, lots of people seem to be going for C# as a beginners language these days, because it's similar to C++, but not as difficult to learn.

Quote:Original post by Seikimatsu
OpenGL works with only graphics, so if someone could tell me where to go for sound libraries and other libraries i may need for a good game, please let me know. i have heard of SDL and OpenAL, but don't know which is better.

SDL is a whole bag of goodies for doing all sorts of "multimedia" stuff.
OpenAL only handles sound (just as GL only handles graphics).
If you're going to do some networking, a high-level network library such as RakNet will also come in handy.

However, it's going to be hard to use these libraries until you master the basics of the programming language that you choose.

Quote:Original post by Seikimatsu
r there really many ppl out there that use another OS than Windows?

About 90% of PCs use Windows, the other 10% is mostly Mac OSX and Linux.
i thank u for ur reply, and truthfully, i know html is not programming, but in a way it is close when it comes to "designing" because in the same way a programmer "designs" a program, a web designer can "design" web pages, and i have thought of learning java, but C++ and game programming seemed like a better use of my time.

i have heard C# is good for beginning, but what's the point if u'll just end up learning another language later, or is C# close to C++ in a way?

also, thank u on clarifying about SDL and OpenAL. makes things easier for me. i know i won't use the libraries until i get into the hardcore stuff, but i like to be prepared ahead of time, no matter how far ahead it is. also, thanks for the link, i'll check out RakNet too. it should come in handy if i try building a single-player game sometime and decide to make it an MMO (i rather start single-player and work my way up, seems easier).

and thanks for the percentage on PC users. i think i'll keep with the OpenGL idea in case one of those small percentage Mac and Linux users decide to test my games out, unless someone knows another graphics library i can use that's better than OpenGL but works for all OS PCs.

now i'm curious about something else ... when i manage to learn the language and start my own game projects, about how long do u think it would take to make a full-fledged game using an entire team, with graphics, sounds, cutscene videos, etc.?
Quote:Original post by Seikimatsu
i have heard C# is good for beginning, but what's the point if u'll just end up learning another language later, or is C# close to C++ in a way?


I see this concern raised by a lot of people wanting to learn to program. People tend to learn things by practicing: people tend to learn programming games by programming games, regardless of the language, platform, OS, etc. used.

When you learn to ride a bike, don't you use training wheels? Why bother using training wheels if you're just going to take them off in the future?
Quote:
i know html is not programming, but in a way it is close when it comes to "designing" because in the same way a programmer "designs" a program, a web designer can "design" web pages

Incorrect. Program design has alot of differences then web designing.

Quote:
i have heard C# is good for beginning, but what's the point if u'll just end up learning another language later, or is C# close to C++ in a way?

C++ is a very good language, but it is also very easy to develop bad programming habits in C++ as well. By learning an easier language, such as C#, one can focus on learning and understanding the basic programming concepts without the problems of C++.

Besides that, you can make very good games with C#[smile]

Quote:
now i'm curious about something else ... when i manage to learn the language and start my own game projects, about how long do u think it would take to make a full-fledged game using an entire team, with graphics, sounds, cutscene videos, etc.?

This depends on so many factors, it is impossible to know. It can take from several months, to several years to develop.
how is program designing different from web designing? i can understand how using if/else statements and loop statements r a difference, but most of it's the same, don't u think? u have to tell the html text how u want ur page to look just like u have to tell the program code how u want the game to look, and navigation is somewhat the same. and when planning, i use for a site what programmers would call "pseudocode" to plan what i'm going to make/do. but if u say it's different, i assume that's from an experienced hand in programming. but anyway ...

i'm sure u can learn bad habits using any kind of programming, depending on where u learn it. but is it just the habits that make C++ hard? i can learn to overcome any habits just by asking around. (in case no one knew, i like taking the hard routes.) also, i have been at C++ for maybe a month and have recently found this site, and so far nothing seems too hard. i've managed my own "Hello World" program, a program to average numbers, and a program to compare 2 integers. that's all so far because it's been off and on.

i think i'll stick with C++ for a while longer, and if it later becomes too difficult, i may check out C# to see how much easier it is and switch back to C++ again later.

also, another question that wasn't answered before: is C# close to C++ in a way?
Quote:You have to tell the html text how you want your page to look just like you have to tell the program code how you want the game to look model, texture, and level files how you want your game to look.

As I've hinted to, creating an HTML document is not programming. HTML describes how a document is supposed to look much in the same way that a bitmap describes how an image is supposed to look.

Quote:
I'm sure you can learn bad habits using any kind of programming depending on where you learn it. But is it just the habits that make C++ hard? I can learn to overcome any habits just by asking around.

It is true that bad texts and tutorials can teach you bad habits (especially the tutorials). C++ is a lower level language which can either be good, bad, or both: C++ is much closer to the data than, for example, python or C#. This allows you to be very efficient (good) and clever (good, bad, or both) with your code when you know what you're doing. However, C++ is a very complex (bad) language with a large amount of undefined behavior (bad) which can lead to very irritating bugs (bad).

Quote:
is C# close to C++ in a way?

C# is close to C++ in the way that both share a C-like syntax. However, there are vast differences between the two. Coming from a heavy C++ background, I found a lot of these differences to be quite annoying (no implicit typecast from double to float or from a numeric type to boolean, for example). Some of these differences can also be quite nice such as the easy interoperability with other .NET languages and much more useful arrays.
Trying to choose between C++ and C#? Check out my signature below the line. If you don't understand the metaphor, PM me.

Oh, I'm barracking for C#!
Nick Wilson - Junior C# Developer | See my crappy site
Quote:Original post by NickHighIQ
if you can't pick up chicks in English, what makes you think Italian is going to help?


Perhaps Italian is one's native tongue. Picking up chicks in Italian would then be much easier. :)

Cheers,
Matt

Quote:Original post by Seikimatsu
and truthfully, i know html is not programming, but in a way it is close when it comes to "designing" because in the same way a programmer "designs" a program, a web designer can "design" web pages, and i have thought of learning java, but C++ and game programming seemed like a better use of my time.

I guess so... But that's a fairly abstract comparison. In the same sense, architecture is similar to grid-iron football...
I get your meaning though, but when designing programs you're going to use different methods. E.g. A programmer might map out a design using UML class diagrams, whereas a web-designer (or a GUI programmer) might use traditional storyboards.

Quote:Original post by Seikimatsu
i have heard C# is good for beginning, but what's the point if u'll just end up learning another language later, or is C# close to C++ in a way?

Once you've learned to program in one language, it's infinitely easier to learn new languages. For example, on one job I was hired for my C++ skills, but was expected to learn Unreal-Script (which is similar to C++) within a few days of starting...

BTW C++ was the first "real" high-level language that I learnt, so it is possible, as long as you're determined to succeed. It can be very painful when you get stuck on things though...

Quote:Original post by Seikimatsu
now i'm curious about something else ... when i manage to learn the language and start my own game projects, about how long do u think it would take to make a full-fledged game using an entire team, with graphics, sounds, cutscene videos, etc.?

It depends on the experience of the team, and the scope of the game (i.e. how many features, levels, etc...).
An experienced team of professionals can take 4 years to make the kinds of MMOs and FPSs that you see on store shelves.
An inexperienced team of beginners can take 4 years to make the kind of FPS that you saw on store shelves 5 years ago...

It's best to start small, making "arcade-style" games that don't have a large scope... Start with pong or asteroids or frogger! Everyone learns by mistakes, so it's best to be working on a smaller project when you're going to be making the most mistakes / doing the most learning.
Don't even think about an MMO to begin with, unless it's going to be text-based or something! (Well, you can think about one from a design point of view, but don't bother trying to actually make one until you've got some intermediate 3d games under your belt!)

This topic is closed to new replies.

Advertisement