GUI Skins

General area for talk about ZSNES. The best place to ask for related questions as well as troubleshooting.

Moderator: ZSNES Mods

Nach
ZSNES Developer
ZSNES Developer
Posts: 3904
Joined: Tue Jul 27, 2004 10:54 pm
Location: Solar powered park bench
Contact:

GUI Skins

Post by Nach »

I was just looking over our GUI code before, and I realized it may not be that hard to implement a skinning system.

Basically you could put a.png in a certain directory, and it would override how the letter a looks if the a.png was conforment to our requirement for fonts.

And you can do checkbox.png to override the checkbox, but those type of images would have a different set of requirements.

This would require a few hours of work, but shouldn't be too difficult.

Would you guys want such a thing? Think it's worth it?
May 9 2007 - NSRT 3.4, now with lots of hashing and even more accurate information! Go download it.
_____________
Insane Coding
Clements
Randomness
Posts: 1172
Joined: Wed Jul 28, 2004 4:01 pm
Location: UK
Contact:

Post by Clements »

Sounds good to me, it'll allow for even more customisation. :)
Aerdan
Winter Knight
Posts: 467
Joined: Mon Aug 16, 2004 10:16 pm
Contact:

Post by Aerdan »

And one could compress the whole thing in *.gui [renamed .tar.bz2 for size, or renamed .zip for those lusers that can't produce .tar.bz2's], and have a path to find the particular gui to use...

Speaking of GUIs, does anyone know of a cross-platform video API that's relatively simple to use in OO C++? I've looked at allegro, but it doesn't want to work with g++ on my system for some reason [perhaps due to something gentoo did when I emerged it and allegrogl]...
Dolphin
Rookie
Posts: 39
Joined: Thu Aug 26, 2004 8:55 pm

Post by Dolphin »

Cool! Wonder how many are not lazy and will actually create skins?(Im lazy, thats one down :D)
MisterJones
Trooper
Posts: 387
Joined: Fri Jul 30, 2004 6:25 am
Location: Mexico
Contact:

Post by MisterJones »

While a skinning system that its low on memory would be cool, I would be happy enough with just being able to recolor everything (ie: fonts, checkboxes and such), rather than just three parts of the gui.
_-|-_
nailbiter
Rookie
Posts: 21
Joined: Wed Jul 28, 2004 7:06 pm
Location: Oregon

Post by nailbiter »

Cool, my suggestion for skinning Zsnes has come back, and by Nach no less. I had a different username at the time I made the suggestion though. It had quite a bit of debate, over 100 posts in the topic I believe.

Ahh, but that is besides the point. Yes I think skinning Zsnes would be cool, assuming that it doesn't increase the cpu or memory usage by much. I wouldn't mind trying to make skins but you must remember that my artistic skills are suxors, though I suppose I wouldn't need to make picture's, just edit one's I have. Or mabey I could change some colors and fonts.
The board is cursed, and so am I.
[quote="kilivipin"]I clean my blocked up toilet with a magic boner, too.[/quote]
MaxSt
ZSNES Developer
ZSNES Developer
Posts: 113
Joined: Wed Jul 28, 2004 7:07 am
Location: USA
Contact:

Re: GUI Skins

Post by MaxSt »

Nach wrote: Basically you could put a.png in a certain directory, and it would override how the letter a looks if the a.png was conforment to our requirement for fonts.
When you only have 5x5 cells, there is not much freedom to create different-looking fonts.

MaxSt.
Nach
ZSNES Developer
ZSNES Developer
Posts: 3904
Joined: Tue Jul 27, 2004 10:54 pm
Location: Solar powered park bench
Contact:

Re: GUI Skins

Post by Nach »

MaxSt wrote:
Nach wrote: Basically you could put a.png in a certain directory, and it would override how the letter a looks if the a.png was conforment to our requirement for fonts.
When you only have 5x5 cells, there is not much freedom to create different-looking fonts.
Very true. But hey, some people are creative.

About additional memory requirements for this thing, ZSNES will have additional code to convert the PNG to ZSNES graphic format, and this code will be launched when ZSNES loads causing ZSNES an extra load time of 200 milliseconds or whatever.

Now I just need to read up on the PNG format so I can implement this :P
May 9 2007 - NSRT 3.4, now with lots of hashing and even more accurate information! Go download it.
_____________
Insane Coding
Tallgeese
Justice is Blind
Posts: 620
Joined: Wed Jul 28, 2004 3:33 pm
Location: Test
Contact:

Post by Tallgeese »

Won't you need to keep the PNGs in memory though, besides running the game? Some people may be anal about that... After all, its kinda what Winamp's skins do.

I'd be for it myself... Also give options to potentially change the color! Hehe.
Nach
ZSNES Developer
ZSNES Developer
Posts: 3904
Joined: Tue Jul 27, 2004 10:54 pm
Location: Solar powered park bench
Contact:

Post by Nach »

Metatron wrote:Won't you need to keep the PNGs in memory though, besides running the game? Some people may be anal about that... After all, its kinda what Winamp's skins do.
No I wouldn't. I'd load a PNG, see if it matches requirements, and if it does, convert it to ZSNES format and have it overwrite the built in graphic ZSNES uses, then forget the PNG.
May 9 2007 - NSRT 3.4, now with lots of hashing and even more accurate information! Go download it.
_____________
Insane Coding
Tallgeese
Justice is Blind
Posts: 620
Joined: Wed Jul 28, 2004 3:33 pm
Location: Test
Contact:

Post by Tallgeese »

What would you do with the color GUI options then? Have them not work while a skin is loaded?
Nach
ZSNES Developer
ZSNES Developer
Posts: 3904
Joined: Tue Jul 27, 2004 10:54 pm
Location: Solar powered park bench
Contact:

Post by Nach »

Metatron wrote:What would you do with the color GUI options then? Have them not work while a skin is loaded?
The skin is for the buttons and font. That has nothing to do with the GUI color options.
May 9 2007 - NSRT 3.4, now with lots of hashing and even more accurate information! Go download it.
_____________
Insane Coding
byuu

Post by byuu »

If you decide to do this, I will volunteer to rewrite an old hack I did for ZSNES years ago and make the font variable-width. The only potential problem is that the menus are hardcoded, I had to manually change all the menu positions by hand to make the font+interface work. It was scrapped because the ATI/nVidia filter made the font too hard to read in DS modes.
I was also never able to fix the string widths on the load box, that was hardcoded in at least 5 places, some of which I couldn't find.
Please take a look here, Nach: http://snes9x.com/phpBB2/viewtopic.php?t=1138
I can volunteer some time if you want to try and make something like that a reality. A 512x448 window for skinning could result in some really nice interfaces, including a Win32 clone for people who require that sort of thing.
MaxSt
ZSNES Developer
ZSNES Developer
Posts: 113
Joined: Wed Jul 28, 2004 7:07 am
Location: USA
Contact:

Re: GUI Skins

Post by MaxSt »

Nach wrote: Very true. But hey, some people are creative.
Even big talent won't be able to overcome such limitations.
KaOSoFt
Rookie
Posts: 12
Joined: Wed Aug 18, 2004 2:07 pm
Location: Colombia
Contact:

Re: GUI Skins

Post by KaOSoFt »

Nach wrote:This would require a few hours of work, but shouldn't be too difficult.

Would you guys want such a thing? Think it's worth it?
Well, if it really does not take too much time/effort from you, it would be a nice extra feature.
To be human is to know the fear of death, yet keep on fighting.
Nach
ZSNES Developer
ZSNES Developer
Posts: 3904
Joined: Tue Jul 27, 2004 10:54 pm
Location: Solar powered park bench
Contact:

Post by Nach »

byuusan wrote:If you decide to do this, I will volunteer to rewrite an old hack I did for ZSNES years ago and make the font variable-width. The only potential problem is that the menus are hardcoded, I had to manually change all the menu positions by hand to make the font+interface work. It was scrapped because the ATI/nVidia filter made the font too hard to read in DS modes.
I was also never able to fix the string widths on the load box, that was hardcoded in at least 5 places, some of which I couldn't find.
Please take a look here, Nach: http://snes9x.com/phpBB2/viewtopic.php?t=1138
I can volunteer some time if you want to try and make something like that a reality. A 512x448 window for skinning could result in some really nice interfaces, including a Win32 clone for people who require that sort of thing.
I saw that image already, I thought it was nothing more then some concept art you whipped up in paintbrush.

If you really have a patch for something like that i would be quite interested.
May 9 2007 - NSRT 3.4, now with lots of hashing and even more accurate information! Go download it.
_____________
Insane Coding
ThunderClaw
I know where you live.
Posts: 148
Joined: Thu Aug 19, 2004 4:51 am

Post by ThunderClaw »

ZFE exists. What the hell is the point of this?

I really don't understand what all the fuss is about the GUI. It's simple, it's functional, and you're probably looking at it for 5% or less of your total time using ZSNES. How about getting things like the timing overhaul done, or other such functionally based things, instead of these rather pointless extras that really just boil down to stroking the ROM kiddies?
FireKnight:I'm pretty sure a 1KG 24k gold brick costs less than that.

phonymike: well the same amount of raw metals used in a car costs a fraction of the price of a new car idiot. I'm gonna take away your posting privileges and replace them with my balls on your chin.

I smell spray paint.
Nach
ZSNES Developer
ZSNES Developer
Posts: 3904
Joined: Tue Jul 27, 2004 10:54 pm
Location: Solar powered park bench
Contact:

Post by Nach »

ThunderClaw wrote: I really don't understand what all the fuss is about the GUI. It's simple, it's functional, and you're probably looking at it for 5% or less of your total time using ZSNES. How about getting things like the timing overhaul done, or other such functionally based things, instead of these rather pointless extras that really just boil down to stroking the ROM kiddies?
You're right. But then again, I'm not one who can do the timing overhaul.
May 9 2007 - NSRT 3.4, now with lots of hashing and even more accurate information! Go download it.
_____________
Insane Coding
blackmyst
Zealot
Posts: 1161
Joined: Sun Sep 26, 2004 8:36 pm
Location: Place.

Post by blackmyst »

Ugh, reading that was painful. I'll never prefer the slow, ugly, glitchy, samey windows GUI over the Zsnes one. I wonder why all these people scream that they like it so much better.
[size=75][b]Procrastination.[/b]
Hard Work Often Pays Off After Time, but Laziness Always Pays Off Now.[/size]
Aerdan
Winter Knight
Posts: 467
Joined: Mon Aug 16, 2004 10:16 pm
Contact:

Post by Aerdan »

We were having a discussion about the ZSNES GUI and graphics libs a couple days ago, and he showed me MGL, then some screenshots. I said it looked nice, but that I wanted to replicate the current GUI, since a number of users [including me] hate Windows passionately and don't want to use a Windowsy GUI.
Nach
ZSNES Developer
ZSNES Developer
Posts: 3904
Joined: Tue Jul 27, 2004 10:54 pm
Location: Solar powered park bench
Contact:

Post by Nach »

No matter what we do with the GUI, I would want the current look to always be avalible.
May 9 2007 - NSRT 3.4, now with lots of hashing and even more accurate information! Go download it.
_____________
Insane Coding
MaxSt
ZSNES Developer
ZSNES Developer
Posts: 113
Joined: Wed Jul 28, 2004 7:07 am
Location: USA
Contact:

Post by MaxSt »

What I would like to change in GUI is to make shadows always match the background color (close to background color), to text is always filtered correctly by HQ filters.

I'm just not sure how hard that would be to implement.

(and make "filtered gui" on by default)
Nach
ZSNES Developer
ZSNES Developer
Posts: 3904
Joined: Tue Jul 27, 2004 10:54 pm
Location: Solar powered park bench
Contact:

Post by Nach »

MaxSt wrote: (and make "filtered gui" on by default)
Done.
May 9 2007 - NSRT 3.4, now with lots of hashing and even more accurate information! Go download it.
_____________
Insane Coding
AspiringSquire
Born to Rule... Impatiently
Posts: 265
Joined: Wed Nov 17, 2004 8:21 pm
Location: Everywhere I want to be.
Contact:

Post by AspiringSquire »

MaxSt wrote:(and make "filtered gui" on by default)
I think that could easily bother newcomers to ZSNES, if they don't like the way the GUI looks with the filter they use for playing and they don't know that there is the option to disable that.

I don't like all the methods of filtering requiring that the same one be used both for in-game playing and for the GUI. Could an option be added to use two separate filters between the GUI and games?
[url=http://board.zsnes.com/phpBB2/viewtopic.php?t=3298][color=brown]My [u]NES palette[/u][/color][/url] - better colors with any emulator.

"the more you know, and the more you can do... the more you are."
- [url=http://www.danielbohman.com][color=brown][u]daniel bohman[/u][/color][/url]
Player1
Hazed
Posts: 74
Joined: Sun Oct 03, 2004 10:03 pm
Contact:

Post by Player1 »

I think the Zsnes Skin is just good as it is. Arn't there more important things to fix first?

If Nach likes it and want to spend the time he should implement it. But in my oppinion there are more usefull things.
Post Reply