Jump to content

  • Log In with Google      Sign In   
  • Create Account

Anyone have one tip for a beginner programmer?

Old topic!

Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
8 replies to this topic

#1   Members   


Posted 01 January 2013 - 07:44 PM

Hi all,

I just started learning C++, got myself the C++ for dummies book that has 7 "minibooks" which go thru the basics of C++ programming.
i do have a couple questions if anyone would care to answer them.
First of all I want to make a 2D RPG/SideScrolling game, what API do you suggest?
Also i want to make a audioEditing and music creation software, what API would be suggested for that?

Edited by Ghostly, 01 January 2013 - 07:55 PM.

#2   Members   


Posted 01 January 2013 - 08:12 PM


SFML would be a good choice for C++ based game development: http://www.sfml-dev.org/


Although you should focus on learning the basics of C++ first. Also keep in mind that there are many higher level alternatives (Game Maker, Unity, ect) for game creation.


In terms of audio editing/music creation, there is the Qt framework: http://qt-project.org/ 


Here is a forum thread on real time audio processing: http://qt-project.org/forums/viewthread/7679


Although Qt is really good for the GUI development and not necessarily the whole sound/audio buffer editing side of things. It might be better to integrate something like STK: https://ccrma.stanford.edu/software/stk/index.html

or CLAM: http://clam-project.org/ with QT.


There are many other choices, but these are the ones that I have experience with.


Good luck.

Edited by shadowisadog, 01 January 2013 - 08:41 PM.

#3   Members   


Posted 01 January 2013 - 09:18 PM

I second both of shadowisahedgehog's suggestions. SFML is great for 2D games, and Qt is great for non-game applications.

Edited by Servant of the Lord, 01 January 2013 - 09:20 PM.

It's perfectly fine to abbreviate my username to 'Servant' or 'SotL' rather than copy+pasting it all the time.
All glory be to the Man at the right hand... On David's throne the King will reign, and the Government will rest upon His shoulders. All the earth will see the salvation of God.
Of Stranger Flames - [indie turn-based rpg set in a para-historical French colony] | Indie RPG development journal | [Fly with me on Twitter]

#4   Prime Members   


Posted 02 January 2013 - 01:26 AM

C++ for dummies book


Those dummy books typically dont cover everything, I am not sure if there is even a up to date version for C++, im not saying they are bad, they imo are excellent basic books and have a really decent way of explaining to beginners but you might want to consider a more advance book after reading it and practicing a lot before you consider making a game / audio editor.


First of all I want to make a 2D RPG/SideScrolling game, what API do you suggest?


This section is flooded with questions much like this, you will likely get different answers for different reasons, most of the reasons have been mentioned in other threads and theres usually about 3 "what shall I pick?" threads or similar created a day.


directx, opengl, sdl, sfml, ogre, panda3d etc. They all have their pros and cons, theres obviously other options, some that require minimum or no programming.


Im a DirectX fan but I think its overkill for what you require


Also i want to make a audioEditing and music creation software, what API would be suggested for that?


This could be achieved with Fmod however im not certain, I havent done much work with audio programming but if I were I would probably look to see what fmod can offer


As for making apps, while this may not be the best option based on your language choice, I would recommend WPF, never used Qt but I guess thats good too.

#5   Members   


Posted 02 January 2013 - 04:16 AM

If you want some help with the game or need to bounce some ideas , you can ask me-  or add me on skype.

I am currently refreshing on Java to make a browser mmo, so we are in the same position. :P


FL studio is a decent audio editor. Ive never used it for making custom game sounds though.

add me on skype, i need some new associates for coding.

skype: daniel.lamonds

c++, Visual basic, fortran, html/5, css, php,java script, sql, others......

#6   Members   


Posted 02 January 2013 - 01:53 PM

Just remember though that Qt doesn't use standard C++ (it requires preprocessing by an external tool like qmake) which is a little tacky and may lead to maintainance issues in years to come. For this reason I suggest wxWidgets (or gtk(mm) if you only intend to target UNIX.)

Since the C++ language is pretty standardised and stable, the dummy books will probably still help but I highly recommend "The C++ Programming Language" by Bjarne Stroustrup. (The dummy series of books might be better for "mid-code reference" however).

As for sound... dunno, I like OpenAL and libogg for playing sounds but it seems like you are planning to do more advanced things than that :)

Edited by Karsten_, 02 January 2013 - 02:19 PM.

http://tinyurl.com/shewonyay - Thanks so much for those who voted on my GF's Competition Cosplay Entry for Cosplayzine. She won! I owe you all beers :)

Mutiny - Open-source C++ Unity re-implementation.
Defile of Eden 2 - FreeBSD and OpenBSD binaries of our latest game.

#7   Members   


Posted 03 January 2013 - 05:40 PM

learncpp.com is the best tutorial I've found for C++ on the internet and cppreference is great for a language reference site, both of which helped me massively when learning the language

#8   Members   


Posted 04 January 2013 - 06:03 AM

One beginners tip? Comment your code as you're going along.


Coming back to a project a year later and trying to figure out what the heck you were doing back then when you wrote it is never fun (and wastes time). If you take a moment to add method comments describing what the method is for, what algorithm it's using and maybe a link to any websites you've been learning from then it'll be a good habit to get into. A line or two is often all it needs.


This might not seem important now but there are a several reasons why this habit will help in the long term:

- Memories are bad, so anything you can add to speed up work on old projects will help (or when reusing work from old projects).

- You'll get better. A year later and you'll probably be a completely different programmer. What made sense when you wrote it often looks simple, silly or confusing compared to what you're capable of now.

- People coming to work on your projects will have an easier time getting up to speed.

- Employers like to see evidence of good commenting in your code portfolio (at least they do where I work).


This is true regardless of which language you decide to work in :)

Tim Cooper - software developer, project manager and occasional iOS app developer.

Creative Shadows Ltd - My hobby company website


Try my game "Happy Landings" on iTunes - Land balloons in a simple, top-down view game.

#9   Members   


Posted 04 January 2013 - 07:13 PM

Think in terms of compartments where each is a kind of module which could in the future be removed as a section of code and replaced with better or different in the future. Keep an index of work done in the game source code with reference numbers to the code lines, which can be more detailed than commenting but use brief commenting as well in your coding.  You should be able to copy such modules for future games or replace them in the same game to transform it. If done well, these changes should take hours, minutes,  or even seconds.  Plan early to use interfaces as a habit of enabling your own plug-ins or third party plugins, even if very simple in the first few games.  You have no idea yet how much this will accelerate your capabilities. 

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

Old topic!

Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.