Zmena farby pozadia scény

Stránka aktualizovaná :
Dátum vytvorenia strany :

Prostredie overovania

Windows
  • Windows 11
Editor jednoty
  • 2020.3.25f1
Vstupný systémový balík
  • 1.2.0

Predpoklady pre tento tip

Nasledujúce nastavenia boli vykonané vopred ako predpoklad pre popis tohto tipu.

Farby pozadia scény

Farba pozadia scény v Unity nie je vo vlastníctve scény, ale nastavenia kamery. Ak vyberiete možnosť Z Main Camera hierarchie, farba pozadia sa zobrazí súčasne s ukážkou fotoaparátu.

Zmena farby pozadia

Komponent Fotoaparát má "pozadie", z ktorého ho môžete zmeniť.

Programová zmena farby pozadia

Po kliknutí na tlačidlo presuňte program a skúste zmeniť farbu pozadia. Pozrite si Tipy pre tlačidlá, ako presunúť proces kliknutia na tlačidlo . Tu je popísaný iba program.

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);
  }
}

Keďže budeme meniť farbu pozadia fotoaparátu, najskôr dostaneme komponent fotoaparátu. Ak k objektu fotoaparátu vopred pripojíte skript alebo máte kameru ako pole, kód bude o niečo kratší, ale gameObject Tentokrát hľadám a odkazujem na to z odkazu scene na. Akýkoľvek kód, ktorý môže nakoniec získať komponent fotoaparátu, je v poriadku.

Camera Keď budete mať komponent, nastavte backgroundColor Color vlastnosť na určenie farby. Color Konštruktor môžete nastaviť na ľubovoľné číslo alebo preddefinované red a blue .

Kontrola prevádzky

Skúste ho spustiť a zistite, či zmení farbu.