Started with C++, looking for good practice for system-level coding and whatnot
11 replies, posted
So I had never done any programming ever, and for some reason chose C++ as my first language. (I know it's super complicated and a bad language to start with and everything)
So I've got the basics down and just finished Herbert Schildt's beginner book and have everything pretty much mastered, except for bits and binary and everything, as that was a little mind-boggling to me. Now, I'm gearing up to start programming some Windows based applications and games and stuff, and I really have no idea where to start. Is there another language that I should try to prepare me for Windows coding in C++ or is there a great guide or anything?
I've taken a peek at some windows code and the syntax seems so foreign compared to what i'm used to, even though it's the same language
OpenGL was pretty easy for me to understand; you can check out how to install and use it [url=http://www.videotutorialsrock.com/]here.[/url]
Is there an engine I could code with? I don't really understand yet how engine programming works, but I would eventually like to design my own simple engines.
Source engine and Unreal engine are some engines you can work with. You can get the Source SDK from steam's tools tab.
Sweet thanks. I like this tutorial
I don't see any reason to use the Source engine, it's outdated and not quite the most flexible or mod-friendly one either. So unless you already have experience with it or want to make a mod based on a game that uses it, you should look at the alternatives first.
[QUOTE=pebkac;26822321]I don't see any reason to use the Source engine, it's outdated and not quite the most flexible or mod-friendly one either. So unless you already have experience with it or want to make a mod based on a game that uses it, you should look at the alternatives first.[/QUOTE]
that's helpful. thanks
If you've done all the basics in C++, and you're into game programming, you should start trial and erroring using a library like SDL or SFML. Me and , I believe, many others on this forum would suggest SFML.
Start with the tutorials. Play around with them and get a hold of the syntax. Getting a simple image to move around on the screen by using your wasd is an amazing feeling if you're new to it.
I learned my way of game engine programming by reading articles and threads on gamedev and doing my own thing, but if you're a heavy reading nerd then I suggest this book: [url]http://www.tar.hu/gamealgorithms/[/url]
[QUOTE=AtomiC0l;26875430]but if you're a heavy reading nerd then I suggest this book: [url]http://www.tar.hu/gamealgorithms/[/url][/QUOTE]
That's a pretty cool and comprehensive resource, actually - Have a winner!
Sounds like I should get this book. I don't mind reading if it'll help me. :dance:
[editline]23rd December 2010[/editline]
Oh it's an ebook :o
I have the most fun with straightforward projects. Making something like an ID3 tag parser was way more fun than trying to do something open ended like a game.
With the tag parser there was basically only one thing I had to concentrate on rather than having to worry about making several different components work together. And the program had a definitive end, rather than a persistent state.
I remember your ID3 tag parser. I agree with writing straightforward projects, but if I might broaden it to simply writing programs that don't take user input (or barely any).
I wrote an Openbox menu generator and invented a configuration file scripting language as it was really basic. My favourite part of the project was writing the automated parts. User input is really annoying.
I did manage to add a bit in the build procedure to convert a configuration file in to a header so that my application could generate configuration files if the user needed one. However, I used command line utilities to convert the input in to C++-safe code (escaping slashes and double quotes), which also created problems as I was all new to it. [URL="https://github.com/Jookia/obtap"]My project is here.[/URL] I'd like to quote this for a good laugh, though:
[cpp]defaultConfig:
@echo "`cat $(EXAMPLECONFIG)`" > $(DEFAULTCONFIG) # Get the config.
@sed -i "s|\\\|\\\\\\\\\\\\\\\|g" $(DEFAULTCONFIG) # Escape slashes.
@sed -i "s|\"|\\\\\"|g" $(DEFAULTCONFIG) # Escape double quotes.
@sed -i "s|^\(.*\)$ |\"\1\\\\\\\n\"\\\|" $(DEFAULTCONFIG)
@echo -e "#ifndef DEFAULTCONFIG_H\n#define DEFAULTCONFIG_H\n\n"\
"const char* defaultConfig =\n`cat $(DEFAULTCONFIG)`\\\n\"\";\n\n"\
"#endif" > $(DEFAULTCONFIG)[/cpp]
That project taught me more about C++ than my year-old game engine project.
Sorry, you need to Log In to post a reply to this thread.