User interface 所有屏幕分辨率的GUI按钮

User interface 所有屏幕分辨率的GUI按钮,user-interface,unity3d,screen-orientation,unityscript,User Interface,Unity3d,Screen Orientation,Unityscript,我在一款汽车游戏中使用OnGUI按钮,并在上面附加了前进和后退按钮。但他们在所有屏幕上都不停地调整 我尝试过各种在线解决方案,但都失败了。我用的是: GUI.RepeatButton (new Rect (Screen.width - 780, Screen.height - 130, 120, 120), LeftBtnTexture, TransparentStyle) 我知道这是错误的,所有屏幕的可选宽度和高度设置是什么: 看看Screen.dpi- 它将允许您以英寸为单位指定按钮大小。

我在一款汽车游戏中使用OnGUI按钮,并在上面附加了前进和后退按钮。但他们在所有屏幕上都不停地调整

我尝试过各种在线解决方案,但都失败了。我用的是:

GUI.RepeatButton (new Rect (Screen.width - 780, Screen.height - 130, 120, 120), LeftBtnTexture, TransparentStyle)

我知道这是错误的,所有屏幕的可选宽度和高度设置是什么:

看看Screen.dpi-

它将允许您以英寸为单位指定按钮大小。但请注意,dpi不可用可能等于零,甚至可能不正确,因此您应该进行一些合理性检查。例如:

public float sizeInInches = 0.5;
float dpi = Screen.dpi;
if (dpi < 25 || dpi > 800) {
    dpi = 150;
}
float sizeInPx = sizeInInches * dpi;
在某些情况下,您可能希望以屏幕尺寸的百分比设置GUI元素大小,如sizeInPx=screen.width*0.1