Jump to content

PFWGui - Source Code Now Available


#1
Patrik

Patrik
  • Developer
  • 32 posts
PFWGui is an OpenGL gui library. The library has been mainly developed and tested in the LeadWerks engine under Windows operating system. The goal is to support any OpenGL engine but LeadWerks is the only one I've tested it with so far. A DirectX version is also planned. The library is still in a very early stage and no thorough testing has been done yet so use at your own risk.

PFWGui makes use of FTGL for font rendering, Simple OpenGL Image Library (SOIL) for image loading and ksignal for the signal/slot mechanism in the gui.

PFWGui + Source code is available at my google code page: http://code.google.com/p/pfwgui//

Posted Image


Features:
- Several gui components
- Event driven
- No dependencies to leadwerks
     - (should run in any opengl applications)
- All "painting" is done by one class + one for font rendering.
    - Could be switched to allow it to run in DirectX applications also, not tested yet
- Signals & slots
- True Type Fonts
- Customizable colors & Shapes (rounded corners)
- Window Management
- Window Layouts
  

Current supported gui components:
Labels
Buttons
Checkboxes
ComboBoxes
EditBoxes
ListBoxes
ProgressBars
ScrollBars
Sliders
TextBoxes
RadioButtons
PieCharts
BarCharts
LineCharts
Images
GridView

Attached Files

  • Attached File  demo.rar   4.99MB   311 downloads


#2
Pixel Perfect

Pixel Perfect
  • Members
  • 2,028 posts
That looks very nice.  I'll have a play with your demo.  Thanks!
Intel Core i5 2.66 GHz, Asus P7P55D, 8Gb DDR3 RAM, GTX460 1Gb DDR5, Windows 7 (x64), LE Editor, GMax, 3DWS, UU3D Pro, Texture Maker Pro,  Shader Map Pro. Development language: C/C++

#3
Pixel Perfect

Pixel Perfect
  • Members
  • 2,028 posts
I think you forgot to include the shaders.pak file as it wouldn't work without that.

Very nice demo though :)
Intel Core i5 2.66 GHz, Asus P7P55D, 8Gb DDR3 RAM, GTX460 1Gb DDR5, Windows 7 (x64), LE Editor, GMax, 3DWS, UU3D Pro, Texture Maker Pro,  Shader Map Pro. Development language: C/C++

#4
franck22000

franck22000
  • Developer
  • 226 posts
Will you release this library ? :D

Quote

You guys are going to be the death of me.  Josh Klint

#5
Patrik

Patrik
  • Developer
  • 32 posts

Quote

I think you forgot to include the shaders.pak file as it wouldn't work without that.

Very nice demo though :)

Thanks, ok I must remember to include that one in the next demo then.  :D


Quote

Will you release this library ? :)

If I get it to such a state that I would feel comfortable releasing it and if there are people that want to use it. I would most likely make a library of it and and release it.

#6
franck22000

franck22000
  • Developer
  • 226 posts
Thanks for the  answer Patte ! Your work is great ! Looking forward for the release !

Quote

You guys are going to be the death of me.  Josh Klint

#7
Rekindled Phoenix

Rekindled Phoenix
  • Developer
  • 431 posts
This GUI looks wonderful! I can't get it to work. Could you include / update the appropriate shaders in the RAR file?

#8
franck22000

franck22000
  • Developer
  • 226 posts
just copy the shader.pak file of LE SDK inside the folder and it should work :)

Quote

You guys are going to be the death of me.  Josh Klint

#9
Patrik

Patrik
  • Developer
  • 32 posts
I've uploaded a new demo in the first post. Now it contains the shader.pak & the used materials. No new functions or other content though. Yet...

#10
VeTaL

VeTaL
  • Developer
  • 632 posts
Troubles with picture, as for me

PS: its ok now
Working on LeaFAQ  :)

#11
Patrik

Patrik
  • Developer
  • 32 posts
New updates:
- Radio Buttons
- Bar Charts & Pie Charts

New demo coming when I've implemented Line Charts also.

Posted Image

Posted Image

#12
flachdrache

flachdrache
  • Developer
  • 416 posts
Now that i actually dealing with "constructing" a menu i realised that all kinds of glsl shaders are "not" reachable with in 3rd party solutions ... if you just use leadwerks build in commands it would be xtreemly nice to share your work here. :)

anyways, keep it up.

AMD 64 X2 Dual 5k - 4GB - XFX GForce9800GT - nv196.21 - WinXP Sp3
zBrush4R2 - Silo2Pro - Unwrap3DPro - Gile[s] - MaPZone2.5


Posted Image

Xxploration FPS in progress ...


#13
Mumbles

Mumbles
  • Developer
  • 658 posts

View PostPatte, on 29 June 2011 - 08:15 AM, said:

View Postfranck22000, on 28 June 2011 - 07:25 PM, said:

Will you release this library ? :)

If I get it to such a state that I would feel comfortable releasing it and if there are people that want to use it. I would most likely make a library of it and and release it.

Oh believe me,  there will be people interested in this. I am for starters.

A more important question would be: is it going to be free?  :rolleyes:

The only bit of a GUI I've managed to do is a progress bar... with blocks and rounded edges! (rather than a solid fill with sharp edges) Some achievement huh? This however, is exceptional stuff
LE Version: 2.50 (Eventually)

#14
flachdrache

flachdrache
  • Developer
  • 416 posts
imho the style would be quit nice for a HUD too and i might snatch the idea.
Number 47 uses such hud which makes it look just funktional inGame - these kinds do suffer quit easy from over doing things however.

AMD 64 X2 Dual 5k - 4GB - XFX GForce9800GT - nv196.21 - WinXP Sp3
zBrush4R2 - Silo2Pro - Unwrap3DPro - Gile[s] - MaPZone2.5


Posted Image

Xxploration FPS in progress ...


#15
Patrik

Patrik
  • Developer
  • 32 posts
Update:
- The gui is now completely event driven. No need to poll input etc.
- No dependencies to leadwerks anymore. Should run in any OpenGL application.
- All gui "painting" is handled by one class. Can be switched out to a DirectX "painter" to allow it to run in DirectX applications also.

New Components:
- Line Charts
- Image component
  - allows scaling, zooming & panning

Screen shots

LineCharts
Posted Image Posted Image

Image component
Posted Image Posted Image Posted Image



Quote

Oh believe me, there will be people interested in this. I am for starters.

A more important question would be: is it going to be free?

That's nice to hear.  :)  I haven't decided yet, but most likely it will be a free library.

#16
franck22000

franck22000
  • Developer
  • 226 posts
Very nice like always, you will made the life easier for hundreds of LE owners with this lib ! I want it now :)

Quote

You guys are going to be the death of me.  Josh Klint

#17
VeTaL

VeTaL
  • Developer
  • 632 posts
What about layout editor? :))))))
Working on LeaFAQ  :)

#18
Patrik

Patrik
  • Developer
  • 32 posts

Quote

Very nice like always, you will made the life easier for hundreds of LE owners with this lib ! I want it now

Thanks. There are still some features missing before I can release a test version.


Quote

What about layout editor? )))))

Maybe later. First I need to get window management and component layout implemented.  :)

#19
ZioRed

ZioRed
  • Developer
  • 563 posts
Very good work!

View PostPatte, on 01 August 2011 - 08:36 PM, said:

I haven't decided yet, but most likely it will be a free library.
When you will be ready with a cool visual editor I would think a little more on this, it could reveal a nice earn if you sell it on Asset Store even at low price, I hate to see only models and textures on the store and I'd like to see specialized libraries and scripts there to let it grow up.
FRANCESCO CROCETTI
Founder at Skared Creations
http://skaredcreations.com

#20
Patrik

Patrik
  • Developer
  • 32 posts
Ok finally some updates  ;)

The gui now supports basic window management. Resizable & movable windows.
The windows can also have layouts assigned to them. The layouts handles the components attached to the window i.e. positions and rescales the components in relation to the window.

A new demo is available for download in the first post if you want to check out the new features.

Example

Posted Image

Posted Image

Posted Image