trying to get resolution independent gui, help needed

i started working on the GUI that has to be resolution independent and has to work on mac and windows on widely used browsers. i need to have new window opened with unity content that will have max width and height area available.

so i know what i want, that was the hard part :wink:

i was searching through the forums about this problem and what i found was few approaches
in getting resolution independent GUI. in both cases GUI.matrix is used.

in what i understood is that i could hard code gui for one resolution and then use GUI.matrix to scale the GUI.
other approach is to use Screen.height and width to manage to get the GUI rez-independent. i used the second method before which i find very hard to code, and it worked nicely but some systems does not display this very well, for example when web page is opened on net books the unity web player is not on the whole page so there is room for scrolling up and down which messes up my middle button scroll functions which is not good. this probably happens because of the strange resolution net books have, but still i want to make my game run on them too.

i guess that opening new window with unity content would solve that problem but how to easy control resolutions and area that is available in different systems, what data i need to get from each system so that unity content is displayed properly?

i broke down this small project in following tasks that i need to do in few weeks, and i am asking your help, when solved it would be of great benefit for other beginners as well.

1.) make a web page that will hold links that open new windows for unity players with different width/height settings for testing on different resolutions
2.) make a unity test scene that will hold the GUI to test in the above links
3.) try different methods and investigate what works best
4.) put sample so that forumers can try it

i need your help though, if you have any suggestions regarding this please let me know!

Yea, I would not recommend using the GUI.matrix as a solution for scaling. The problem is that although the GUI.matrix will scale all the elements fine, it will also scale dynamic text, which is technically not what you want (scaled down text loses a great deal of readability and looks ugly). You want scaling of everything, but you want dynamic text to be drawn with a scaled font size but not a scaled matrix, which is seemingly not possible. Best solution I’ve come up with is not using GUI.matrix, but modifying the font size per use (or by copying the GUISkin and modifying, which is also a pain because you have to copy it ‘manually’), and applying scalers to values used to set control sizes. The disadvantage to this solution is that if you want things like buttons to have scaled borders and such, you’d have to do that manually, but still, this approach is less hacky and annoying than trying to do it without dynamic fonts in 2.6 (although a few additions from UT would help a great deal).