Jump to content

  • Log In with Google      Sign In   
  • Create Account


I present: SFML SimpleGUI v1.0


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
4 replies to this topic

#1 superman3275   Crossbones+   -  Reputation: 2011

Like
0Likes
Like

Posted 30 September 2012 - 02:03 PM

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'm a game programmer and computer science ninja ph34r.png!

Here's my 2D RPG-Ish Platformer Programmed in Python + Pygame, with a Custom Level Editor and Rendering System!

 

Here's my Custom IDE / Debugger Programmed in Pure Python and Designed from the Ground Up for Programming Education!

Want to ask about Python, Flask, wxPython, Pygame, C++, HTML5, CSS3, Javascript, jQuery, C++, Vimscript, SFML 1.6 / 2.0, or anything else? Recruiting for a game development team and need a passionate programmer? Just want to talk about programming? Email me here:

hobohm.business@gmail.com

or Personal-Message me on here smile.png!


Sponsor:

#2 Goran Milovanovic   Members   -  Reputation: 1104

Like
2Likes
Like

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.

Edited by Goran Milovanovic, 30 September 2012 - 02:16 PM.

+---------------------------------------------------------------------+

| Game Dev video tutorials  ->   http://www.youtube.com/goranmilovano |
+---------------------------------------------------------------------+

#3 EngineProgrammer   Members   -  Reputation: 295

Like
2Likes
Like

Posted 30 September 2012 - 02:21 PM

Well I'm taking a look at it hehe. Posted Image
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. Posted Image
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. Posted Image Naming classes is a hard part for me also Posted Image

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! Posted Image 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. Posted Image


~EngineProgrammer

#4 superman3275   Crossbones+   -  Reputation: 2011

Like
0Likes
Like

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 ;)

Edited by superman3275, 30 September 2012 - 02:23 PM.

I'm a game programmer and computer science ninja ph34r.png!

Here's my 2D RPG-Ish Platformer Programmed in Python + Pygame, with a Custom Level Editor and Rendering System!

 

Here's my Custom IDE / Debugger Programmed in Pure Python and Designed from the Ground Up for Programming Education!

Want to ask about Python, Flask, wxPython, Pygame, C++, HTML5, CSS3, Javascript, jQuery, C++, Vimscript, SFML 1.6 / 2.0, or anything else? Recruiting for a game development team and need a passionate programmer? Just want to talk about programming? Email me here:

hobohm.business@gmail.com

or Personal-Message me on here smile.png!


#5 diventurer   Members   -  Reputation: 815

Like
0Likes
Like

Posted 30 September 2012 - 03:49 PM

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 ;)

That's where namespaces and/or prefixes come in. :)
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 {

};





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.



PARTNERS