Normal Fresnel Demo:
Fresnel Demo with QuickGUI support:
This was taken in release mode from my laptop, using OpenGL, in 800 x 600. I have not yet profiled my new code base, so I'm pretty pleased with the results.
Demo
Here is a binary demo built on windows xp in release mode. Unfortunately I have not tested it on other machines. (Sorry I can't support any other platforms at the moment, I don't even have access to other platforms..)
The demo supports serialization and customization of skins. The layout is loaded from Test.sheet, reloading the app after making changes will show what has changed.
Skinning is very easy to set. Every widget has a "SkinType" property that is a string. The string name references a skin definition in one of the .SkinTypes files. Here is an example of the Sheet's properties:
Code: Select all
Sheet DefaultSheet
{
BrushFilterMode BRUSHFILTER_LINEAR
ConsumeKeyboardEvents false
Dimensions 0 0 800 600
DisabledSkinType
Dragable false
Enabled true
HorizontalAnchor ANCHOR_HORIZONTAL_LEFT
HoverTime 3
MaxSize 0 0
MinSize 10 10
Name DefaultSheet
Resizable false
Scrollable true
SkinType default
TransparencyPicking true
VerticalAnchor ANCHOR_VERTICAL_TOP
Visible true
...
Code: Select all
SkinClass Sheet
{
SkinType default
{
ComponentType hscrollbar
{
ClassName HScrollBar
SkinType default
}
ComponentType vscrollbar
{
ClassName VScrollBar
SkinType default
}
SkinElement background
{
}
}
}
As you can see the SkinElement is empty, which is why the sheet is transparent. This is the standard format for non-empty SkinElement definitions:
Code: Select all
SkinElement default
{
Border_Bottom 2
Border_Left 2
Border_Right 2
Border_Top 2
Texture qgui.button.png
TileBackground false
TileBorders true
}
Hopefully that isn't too complicated. Just open up the text files in the "QuickGUI" folder and mess around with the .SkinTypes and .Sheet file! If you dig around enough, you can see you are able to change ProgressBar properties, Menu properties, resizing properties, etc.
If you manage to change the skin in a cool way, please post!
(If there are problems loading the demo post also, and I can try to help!)