Змінення кольору тла сцени

Сторінка оновлюється :
Дата створення сторінки :

Середовище перевірки

Вікна
  • вікна 11
Редактор єдності
  • 2020.3.25f1
Пакет системи введення
  • 1.2.0

Передумови для цієї поради

Наступні настройки були зроблені заздалегідь як передумова для опису цієї поради.

Про кольори тла сцени

Колір фону сцени в Unity не належить сцені, а є налаштуванням камери. Якщо вибрати параметр З Main Camera ієрархії, колір тла відображатиметься одночасно з попереднім переглядом фотокамери.

Про зміну кольору тла

Компонент «Камера» має «фон», з якого його можна змінити.

Програмне змінення кольору тла

Після натискання кнопки перемістіть програму і спробуйте змінити колір фону. Перегляньте підказки кнопок , щоб дізнатися, як перемістити процес натискання кнопки. Тут описана тільки програма.

using System.Linq;
using UnityEngine;

public class ButtonEvent : MonoBehaviour
{
  public void OnClick()
  {
    // カメラコンポーネントを取得
    var cameraObject = gameObject.scene.GetRootGameObjects().FirstOrDefault(obj => obj.GetComponent<Camera>() != null);
    var camera = cameraObject.GetComponent<Camera>();

    // 背景色を変更
    camera.backgroundColor = new Color(0.3f, 0.0f, 0.1f);
  }
}

Оскільки ми будемо змінювати колір фону камери, ми спочатку отримаємо компонент камери. Якщо заздалегідь прикріпити скрипт до об'єкта камери або мати в якості поля камеру, код буде трохи коротше, але gameObject Цього разу я шукаю та посилаюся на нього з посиланням scene на. Будь-який код, який в кінцевому підсумку може отримати компонент камери, цілком підійде.

Camera Отримавши компонент, встановіть backgroundColor властивість Color для визначення кольору. Color Ви можете встановити конструктор на будь-яке число або встановити заздалегідь визначені red та blue .

Перевірка операцій

Спробуйте запустити його і подивіться, чи не змінить він колір.