Thread: A little guidence needed

  1. #1
    Master n00b Matty_Alan's Avatar
    Join Date
    Jun 2007
    Location
    Bloody Australia Mate!
    Posts
    96

    Smile A little guidence needed

    Basicly i'm learning to program on my own iv'e learnt C and Allegro, and am currently learning the win32 api, but i'm a little stuck on where to go next . ultimately i want to program games (thats why i posted this in the game programming thread) and im trying to cover all the basics before i move into any advanced stuff.
    So yea i'm manly asking advise and guidance on where to go from here.


    -Cheers Matty_Alan

  2. #2
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    In case you want to program games, you should probably learn C++, since that's what the majority of games are written in.
    Then you might pick your gaming API of choice and learn it (OpenGL, DirectX, SDL).
    When you have sufficient knowledge in both areas, you might look into some stuff about making games and start practicing!
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  3. #3
    Master n00b Matty_Alan's Avatar
    Join Date
    Jun 2007
    Location
    Bloody Australia Mate!
    Posts
    96
    I was always under the impression that those API's (OpenGL, DirectX, SDL) were a little to advanced for begginers :s

  4. #4
    The Right Honourable psychopath's Avatar
    Join Date
    Mar 2004
    Location
    Where circles begin.
    Posts
    1,071
    It can be advanced as you want it to be. If you start small and try not to get ahead of yourself and attempt anything "fancy", you should be fine. Starting with 2D (which the APIs are quite capable of) seems to be the typical advice to beginners. There are also tutorials online that can show you how to use different features.
    M.Eng Computer Engineering Candidate
    B.Sc Computer Science

    Robotics and graphics enthusiast.

  5. #5
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by Matty_Alan View Post
    I was always under the impression that those API's (OpenGL, DirectX, SDL) were a little to advanced for begginers :s
    Well, all games are typically made in one of those APIs.
    So you would have to learn them eventually. Just start small and it should be fine.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  6. #6
    chococoder
    Join Date
    Nov 2004
    Posts
    515
    Those APIs may seem advanced, but that's because game programming is an advanced topic.
    Just because a million schoolkids all think they can write the next megabux making game on their own in a few nights after school doesn't make it so, those things require teams of dozens or even hundreds of experienced professionals months or years to create and budgets of many millions of dollars.

    Start small, master one section of one API at a time.
    No need to get all confused by tackling 3D graphics, physics engines, sound, networking, AI, etc. etc. all in one go.
    Learn each separately, then learn to combine them into more and more complex demos.
    When you think you have a basic understanding of all the concepts, write your design documents, and work from those to create a technical design and finally start writing that game.

  7. #7
    Master n00b Matty_Alan's Avatar
    Join Date
    Jun 2007
    Location
    Bloody Australia Mate!
    Posts
    96
    Cool, thanks guys. i'll probably start with OpenGL because I have some very basic knowlage of that already.

    How much of a disadvantage is knowing C compared with C++ for gaming?
    In books that i read I constantly hear C programmers making fun of C++ programmers and reverse, it's hard to get an unbiased(sp?) opinion.

  8. #8
    The Right Honourable psychopath's Avatar
    Join Date
    Mar 2004
    Location
    Where circles begin.
    Posts
    1,071
    Quote Originally Posted by Matty_Alan
    In books that i read I constantly hear C programmers making fun of C++ programmers and reverse, it's hard to get an unbiased(sp?) opinion.
    Sure it wasn't the GD board here you were reading?

    I would argue C++ would be a better tool for writing more complete engines later. But for learning an API just to get a feel for making small-scale games and things, use whatever you're the most comfortable with. C won't put you at a disadvantage.
    M.Eng Computer Engineering Candidate
    B.Sc Computer Science

    Robotics and graphics enthusiast.

  9. #9
    Making mistakes
    Join Date
    Dec 2008
    Posts
    476
    I know some C++ too. But I love the way C++ problems can be solved in C. I wouldn't advise you to learn that whole bunch of features C++ offers yiu now. Start small, as stated before. SDL, OpenGL etc. are really written for both.

  10. #10
    Woof, woof! zacs7's Avatar
    Join Date
    Mar 2007
    Location
    Australia
    Posts
    3,459
    It's really got nothing to do with the APIs at all. Anyone can read a manual, it's the concepts, design and math side of it that is the challenging part.

    As all the APIs are fundamentally similar it really doesn't matter which one you use so long as you understand what's going on.

  11. #11
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by Brafil View Post
    I know some C++ too. But I love the way C++ problems can be solved in C. I wouldn't advise you to learn that whole bunch of features C++ offers yiu now. Start small, as stated before. SDL, OpenGL etc. are really written for both.
    Solving a C++ problem in a C-way is usually a bad thing™.
    And all those APIs were written with C in mind (which is stupid imho), and not C++.
    C++ works for it simply because it's backwards compatible.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  12. #12
    chococoder
    Join Date
    Nov 2004
    Posts
    515
    many of those APIs were written with C in mind rather than C++ for a reason, and a good one it was.
    There were no (decent) C++ compilers for many platforms those libraries aimed to support at the time they were created (and for some they were designed/created before the C++ standard was finalised).
    To support the greatest variety of platforms it was thus not feasible to shoot for a C++ only library at the time, and as C++ can interact with C it was a natural choice to go for a C library as a result.

  13. #13
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    At the time, yes. Today, no.
    And yet so many a great a things are designed for C, still. Utter foolishness.
    And Microsoft keeps insisting on using their stupid COM.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  14. #14
    chococoder
    Join Date
    Nov 2004
    Posts
    515
    backwards compatibility, the bane of this entire blighted industry...

  15. #15
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Hmm... yes, and yet so necessary. 'Tis a shame.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. free needed or not?
    By quantt in forum Linux Programming
    Replies: 3
    Last Post: 06-25-2009, 09:32 AM
  2. C Programmers needed for Direct Hire positions
    By canefan in forum Projects and Job Recruitment
    Replies: 0
    Last Post: 09-24-2008, 11:55 AM
  3. Battleship Game (Win32 EXP Needed)
    By ElWhapo in forum Projects and Job Recruitment
    Replies: 2
    Last Post: 01-15-2005, 10:10 PM
  4. C++ help needed
    By Enkindu in forum Projects and Job Recruitment
    Replies: 3
    Last Post: 08-31-2004, 11:24 PM
  5. Help Needed With Windows GUI
    By edselman in forum Windows Programming
    Replies: 5
    Last Post: 08-22-2002, 09:38 PM