Hey guys, since I made pong I've been trying to make breakout, but I ran into problems with making a GUI. After a lot of thinking I decided to just make my own Set of Re-Usable classes for Render_Buttons's, Render_Menu's, and Render_Objects (So much more to be added, I've only had today to work on this!), all classes are easily customizable, of course. (Render_Object is there to establish a base for Render_Menu's and other parts of the GUI). It hasn't been completely tested yet, but fixing any bugs should be pretty easy for even a beginner to SFML. I'm having it autoupdate too!
DROPBOX DOWNLOAD (Download GUI_FRAMEWORK Folder)
This was just for personal use for me, but I figured why not let other beginners have it, so they don't have to figure this out themselves. I'll try to update it at least once a week with new features, but I'm hard at work on other games too right now.
I present: SFML SimpleGUI v1.0
Started by superman3275, Sep 30 2012 02:03 PM
4 replies to this topic
#1 Crossbones+ - Reputation: 1373
Posted 30 September 2012 - 02:03 PM
I'm a game programmer and photo editor.
Here's Breakout:
Breakout!
If you need some photo editing done, contact me:
superman3275@gmail.com
if you want some programming help, or are recruiting for a game development team, either PM me on here or email me up there
!
Here's Breakout:
Breakout!
If you need some photo editing done, contact me:
superman3275@gmail.com
if you want some programming help, or are recruiting for a game development team, either PM me on here or email me up there
Sponsor:
#2 Members - Reputation: 878
Posted 30 September 2012 - 02:16 PM
I think this thread belongs in the "Your Announcements" forum, but anyway:
If you want to present something that others will actually want to use, you need to start with good documentation. Without that, I doubt that anyone will even take a look at it.
Also, you should host your project on a service like github, which was designed for that.
If you want to present something that others will actually want to use, you need to start with good documentation. Without that, I doubt that anyone will even take a look at it.
Also, you should host your project on a service like github, which was designed for that.
Edited by Goran Milovanovic, 30 September 2012 - 02:16 PM.
Learn the basics with my Python 3 video tutorial series. Looking for a good game engine, and relevant tutorials? Here you go.
Small and simple Python 3.x media library: pslab
Small and simple Python 3.x media library: pslab
#3 Members - Reputation: 291
Posted 30 September 2012 - 02:21 PM
Well I'm taking a look at it hehe. 
Just started looking at your Render_Button class.
If you use "using namespace sf" you don't need to put the 'fs::' infront of each fs function.
Also when you start with animations there are some times you want to 'update' your Button.
Example: http://www.yasudastu...ttonBlueWM1.gif
so just call it: class Button. Render_Button seems like the button only can render. but has no actions.
Naming classes is a hard part for me also 
My Button looks something like this:
Your button class is decent!
Features can be: rotating trough matrices, move in a formation, etc
I'm not going to look at your other classes, I don't have plenty of time left.
~EngineProgrammer
Just started looking at your Render_Button class.
If you use "using namespace sf" you don't need to put the 'fs::' infront of each fs function.
Also when you start with animations there are some times you want to 'update' your Button.
Example: http://www.yasudastu...ttonBlueWM1.gif
so just call it: class Button. Render_Button seems like the button only can render. but has no actions.
My Button looks something like this:
class Button
{
public:
Button(int posX, int posY);
Button(Image& image, int posX, int posY);
~Button();
void Update();
void Draw();
bool IsHit(); // returns true if you hover your mouse over the button
bool IsPressed(); // returns true if you pressed with your left mouse button on the button
private:
int m_PositionX, m_PositionY;
Image m_Image;
int m_AnimationSpeed; // this name is terrible xD
};Your button class is decent!
I'm not going to look at your other classes, I don't have plenty of time left.
~EngineProgrammer
#4 Crossbones+ - Reputation: 1373
Posted 30 September 2012 - 02:22 PM
Thanks for the tips, I'll try GitHub and some Documentation, but there's only 3 actual classes with very few functions, so I doubt it's hard to understand, but I guess I should start documentation now.
EDIT: Visual C++ 2010 keeps button as a Restricted Classname, so I set it to Render_Button because I didn't want to come up with a good name, sorry ;)
EDIT: Visual C++ 2010 keeps button as a Restricted Classname, so I set it to Render_Button because I didn't want to come up with a good name, sorry ;)
Edited by superman3275, 30 September 2012 - 02:23 PM.
I'm a game programmer and photo editor.
Here's Breakout:
Breakout!
If you need some photo editing done, contact me:
superman3275@gmail.com
if you want some programming help, or are recruiting for a game development team, either PM me on here or email me up there
!
Here's Breakout:
Breakout!
If you need some photo editing done, contact me:
superman3275@gmail.com
if you want some programming help, or are recruiting for a game development team, either PM me on here or email me up there
#5 Members - Reputation: 421
Posted 30 September 2012 - 03:49 PM
That's where namespaces and/or prefixes come in.Visual C++ 2010 keeps button as a Restricted Classname, so I set it to Render_Button because I didn't want to come up with a good name, sorry ;)
SFML has the "sf" namespace to not confuse things like class names.
You could, for example, make a namespace "sg" standing for "Simple GUI".
namespace sg {
class Button {
};
}
Or you could make a prefix.
class sgButton {
};






