Как реализовать настройки графики в Unity3d? через UI Button?

В юнити поставил 3 уровня графики Low, Normal, High и соответственно 3 UI Button.
Через Gui это выглядит так.
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour {
    void OnGUI() {
        string[] names = QualitySettings.names;
        GUILayout.BeginVertical();
        int i = 0;
        while (i < names.Length) {
            if (GUILayout.Button(names[i]))
                QualitySettings.SetQualityLevel(i, true);
            
            i++;
        }
        GUILayout.EndVertical();
    }
}


Ну и я создал отдельный скрипт и написал public void QualitySettings.SetQualityLevel(1);
и кинул на UI Button, но кнопка его не видит, подскажите как это через Ui сделать?
  • Вопрос задан
  • 987 просмотров
Решения вопроса 1
BasmanovDaniil
@BasmanovDaniil
Геймдизайнер-телепат
Button не умеет вызывать статические методы, поэтому для изменения настроек графики вам нужно написать обёртку:
using UnityEngine;

public class Test : MonoBehaviour
{
    public void SetQualityLevel(int index)
    {
        QualitySettings.SetQualityLevel(index, true);
    }
}

В инспекторе это будет выглядеть так:
g2TSy
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@p4p
Скачай последнюю версию unity и используй ugui там такое делать просто. Элементы создаются как игровые обьекты.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы