Масштабирование и положение в соответствии с размером экрана - PullRequest
0 голосов
/ 06 мая 2020

как масштабировать и позиционировать в соответствии с размером screen.as picture При масштабировании экрана у объектов будет изменяться положение и масштаб. Большое спасибо. Извините engli sh my bad. enter image description here

Ответы [ 2 ]

1 голос
/ 06 мая 2020

На вашем холсте есть компонент, называемый масштабатором холста, и у него есть свойство, называемое UI Scale Mode, измените его на масштабирование с размером экрана. После этого вы должны установить точки поворота и привязки ваших элементов пользовательского интерфейса.

Я предлагаю проверить эту статью , она описывает все шаг за шагом точно для вашего примера. Я уверен, что после прочтения этой статьи у вас будет действительно хорошее понимание.

0 голосов
/ 06 мая 2020

Это один из способов сделать это. Прикрепите этот скрипт к кругу на холсте и настройте переменные.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class UiElementScaleManager : MonoBehaviour
{

    private RectTransform rectTransform = null;
    [SerializeField] [Range(-200, 200)] private float offsetX = 85f;
    [SerializeField] [Range(-200, 200)] private float offsetY = 5f;
    [SerializeField] [Range(0, 200)] private float width = 10f;
    [SerializeField] [Range(0, 200)] private float height = 10f;
    [Tooltip("If checked then height variable will not be used.")]
    [SerializeField] private bool preserveAspect = false;

    private void Start()
    {
        rectTransform = GetComponent<RectTransform>();
        rectTransform.pivot = Vector2.zero;
        rectTransform.anchorMax = Vector2.zero;
        rectTransform.anchorMin = Vector2.zero;
    }

    private void Update()
    {
        rectTransform.sizeDelta = new Vector2(Screen.width * width / 100, ((preserveAspect) ? Screen.width * width : Screen.height * height) / 100);
        rectTransform.anchoredPosition = new Vector2(Screen.width * offsetX / 100, Screen.height * offsetY / 100);
    }

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...