C++ Where to go from here?
Hey guys,
I recently started learning C++. I had prior basic knowledge of pascal/delphi and visual basic, so I picked up the basics of C++ pretty quickly.
In fact I actually learnt the basics while coding a program I wanted to make, it turned out pretty well in my opinion. Obviously it wasn't amazing, but i'll place a link to it at the bottom of this post for the curious. The program is to do with twitch plays Pokémon in case anyone's wondering.
Now to the subject of the post, I'm interested in moving on to more complex stuff I guess. Stuff that handles a graphical interface and stuff like moving a sprite when clicking a button. But I can't for life of me find where to get started on this, like do I create a windows form application and go from there or what? I'm just stuck in this constant limbo of console application tutorials but can't find any simple stuff that involves graphical data.
So can anyone point me in the right direction on what to do, links to resources etc. Any help would be great.
Thanks in advance.
link to thread containing above mentioned program - http://www.reddit.com/r/twitchplaysp...s_to_simulate/
Re: C++ Where to go from here?
I have to get to class, but windows form applications, if you want to work a desktop application, are the way to go for easily creating a GUI. You can either drag and drop controls onto forms and set their properties through a nice UI or code them in all yourself.
Re: C++ Where to go from here?
Winforms are, quite frankly, an abomination or at least somehow people writing Winforms manage to make their application do the most horrendously stupid things. I don't know why but I have yet to see/use the winforms app that doesn't lock up the entire UI when it is trying to save/load data or perform a network request or run a complex computation.
I'd pick something like Qt or wxWidgets.
Re: C++ Where to go from here?
I've used Winforms before. They're outdated now. Use WPF instead because it directly uses graphic memory from your video card to give you responsiveness and more control over GUI. TC asked a good question, I'm interested too.
Re: C++ Where to go from here?
C++ isn't exactly the easiest language to start writing GUIs with, as unlike languaes like Java and C# there isn't anything embedded into any of the standard library to facilitate it.
That said, there's a multitude of free libraries out there to aid in creating simple applications. wxWidgets and Qt have already been mentioned. If you're more Linux orientated you might also want to look at gtk. You'll get various opinions over which is best to learn and pick-up, but if you do your research I'm sure you'll find one which is right for you!
Quote:
Originally Posted by
Tellos Athenaios
Winforms are, quite frankly, an abomination or at least somehow people writing Winforms manage to make their application do the most horrendously stupid things. I don't know why but I have yet to see/use the winforms app that doesn't lock up the entire UI when it is trying to save/load data or perform a network request or run a complex computation.
That's because whomever wrote that application didn't bother multi-threading it. Using WinForms out the box means everything happens on the main thread. If commands are delegated out, then nothing in the GUI will ever lock up.
Quote:
Originally Posted by
dead_zombies
Use WPF instead because it directly uses graphic memory from your video card to give you responsiveness and more control over GUI.
My gut instinct is that if you have a desktop application which is requiring graphics card resources then you've badly designed your software. Windows forms are fine for their purpose. Sure, they aren't flashy, but if you just want to create a simple application fast they're very convenient. The main problem is that if you want to use C++ like the OP, you have to delve into mixed assemblies in order to use them.
Re: C++ Where to go from here?
Quote:
Originally Posted by
dead_zombies
I've used Winforms before. They're outdated now. Use WPF instead because it directly uses graphic memory from your video card to give you responsiveness and more control over GUI. TC asked a good question, I'm interested too.
WPF is radically different and far more advanced than other GUI toolkits - you don't code GUI in WPF, instead you define rules and templates and styles to present the model of your application. It's in the same stock as Windows Phone / Metro Apps and Silverlight, unfortunately none of them seem to have a bright future and WPF remains very obscure and difficult to find good tutorials despite its many advantages and maturity.
Learning GUI is much easier than learning C++ basics. In fact it's overkill to use C++ for that.
Re: C++ Where to go from here?
Re: C++ Where to go from here?
Thanks everyone, I've decided to start working with QT. It seems much better than windows forms from what I've been looking at.
Re: C++ Where to go from here?
Quote:
Originally Posted by
Aaronbaron
Hey guys,
I recently started learning C++. I had prior basic knowledge of pascal/delphi and visual basic, so I picked up the basics of C++ pretty quickly.
In fact I actually learnt the basics while coding a program I wanted to make, it turned out pretty well in my opinion. Obviously it wasn't amazing, but i'll place a link to it at the bottom of this post for the curious. The program is to do with twitch plays Pokémon in case anyone's wondering.
Now to the subject of the post, I'm interested in moving on to more complex stuff I guess. Stuff that handles a graphical interface and stuff like moving a sprite when clicking a button. But I can't for life of me find where to get started on this, like do I create a windows form application and go from there or what? I'm just stuck in this constant limbo of console application tutorials but can't find any simple stuff that involves graphical data.
So can anyone point me in the right direction on what to do, links to resources etc. Any help would be great.
Thanks in advance.
link to thread containing above mentioned program -
http://www.reddit.com/r/twitchplaysp...s_to_simulate/
To be honest C++ is as complex as it gets, I'd take a step back if I were you as you are going to find it incredibly difficult later on if you don't ease into it more.
To get started with moving sprites around and things like that I'd reccomend C#. C# is just like C++ except it's a bit easier, less bug prone and not as powerful (for stuff like memory management)
Even though Microsoft has discontinued XNA, I'd look up tutorials on how to make a simple XNA game. It's pretty easy, teaches you ALOT about coding and is a great intro into C# and c++.
Either that, or look at making a .NET game. Similar to XNA style stuff.
I know you've started with QT below, but seriously consider this.
Re: C++ Where to go from here?
Quote:
Originally Posted by
DarrenTotalWar
Even though Microsoft has discontinued XNA, I'd look up tutorials on how to make a simple XNA game. It's pretty easy, teaches you ALOT about coding and is a great intro into C# and c++.
Just a note, with a bit of work (and a visual c# express 2010 install) you can get xna working with more current version of visual studio. I've got it working with VS2012 and although I haven't tried yet, the same procedure should work for VS2013.