画面の端にUIを表示させる【Unity, uGui】
uGuiのボタンなどを画面端に固定して表示させます。
スクリプト
左・中央・右、上・中央・下の画面端に固定させることが出来ます。
このスクリプトをuGUIのゲームオブジェクトにアタッチします。
UGuiPositionSetter
using UnityEngine;
using System.Collections;
public class UGuiPositionSetter : MonoBehaviour {
public enum PositionX {
LEFT,
CENTER,
RIGHT,
FREE
};
public enum PositionY {
TOP,
MIDDLE,
BOTTOM,
FREE
};
[SerializeField]
public PositionX positionX = PositionX.FREE;
[SerializeField]
public PositionY positionY = PositionY.FREE;
public bool isUpdate = false;
public Vector2 margin;
private RectTransform _rt;
void Start () {
_rt = GetComponent<RectTransform>();
}
void Update () {
if (isUpdate)
setPosition();
}
private void setPosition() {
Vector2 pos = _rt.anchoredPosition;
switch (positionX) {
case PositionX.CENTER:
pos.x = 0f;
break;
case PositionX.LEFT:
pos.x = - Screen.width * 0.5f + _rt.rect.width * 0.5f + margin.x;
break;
case PositionX.RIGHT:
pos.x = Screen.width * 0.5f - _rt.rect.width * 0.5f - margin.x;
break;
}
switch (positionY) {
case PositionY.MIDDLE:
pos.y = 0f;
break;
case PositionY.BOTTOM:
pos.y = - Screen.height * 0.5f + _rt.rect.height * 0.5f + margin.y;
break;
case PositionY.TOP:
pos.y = Screen.height * 0.5f - _rt.rect.height * 0.5f - margin.y;
break;
}
_rt.anchoredPosition = pos;
}
}
使い方
使い方はこんな感じ。
プルダウンで場所を選ぶとそこに固定される。
結果
Author And Source
この問題について(画面の端にUIを表示させる【Unity, uGui】), 我々は、より多くの情報をここで見つけました https://qiita.com/kwst/items/dd50dc58ae8d1a51fb24著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .