- Home /
GUI Texture Changes Position Depending On Screen Resolution?
Hi im making a game that has a hud and im using GUI Textures, but recently i have tested the game on a different screen resolution and my GUI textures have moved from their position i set. I understand why this is happening but i cant seem to get a script to fix my problem. So far i have this
var btexture : Texture;
function OnGUI () {
if (GUI.Button (Rect (20,40,80,20), btexture)) {
}
}
I have had a look on the internet and found some solutions but unfortunately all have been unsuccessful for me one of the solutions i tried was
function OnGUI () {
if (GUI.Button (Rect (ScreenHeight/2 20,ScreenWidth/2 40,80,20), btexture)) {
} }
As i say nothing has worked so far so any help would be really appreciated.
Thanks.
Answer by cdrandin · Jan 15, 2013 at 10:20 PM
Some programs use if statement for the most common resolutions and have it go a certain position. so like 1366x768, 800x600, iPhone size, etc. Or you can make a function to adjust the size depending on the resolution with simple numbers, which alone is frustrating, but is better focusing on the common resolutions.
Actually, you could also do the center of the screen take the difference on the screen sizes height and length. Then subtract the position by the length of your GUI text object.
assuming 800x600 screenHeight = 800 //by UNity's Screen.Height
centerHeight = 800/2
differenceBetweenHeight = screenHeight - centerHeight // this would bee 400
Place GUI centerHeight + differenceBetweenHeight // which would put this below the screen and one pixel being exactly at the max height of the screen. So just take the difference of the height of the Text this part will be trial and error
so.. New placement of GUIText centerHeight + differenceBetweenHeight - 20
Your answer
Follow this Question
Related Questions
Why do my GUI.button Background Colors Not work? 1 Answer
Setting Scroll View Width GUILayout 1 Answer
GUI Display Help 0 Answers
Lowering a variable 1 number lowering it entirely? 1 Answer
GuiTexture Width Change 1 Answer