Změna barvy pozadí scény
Ověřovací prostředí
- Windows
-
- Systém Windows 11
- Editor jednoty
-
- 2020.3.25f1
- Vstupní systémový balíček
-
- 1.2.0
Předpoklady pro tento tip
Následující nastavení byla provedena předem jako předpoklad pro popis tohoto tipu.
O barvách pozadí scény
Barva pozadí scény v Unity není vlastněna scénou, ale je to nastavení kamery.
Pokud vyberete možnost Z Main Camera
hierarchie, barva pozadí se zobrazí současně s náhledem kamery.
O změně barvy pozadí
Komponenta Fotoaparát má "pozadí", ze kterého ji můžete změnit.
Změna barvy pozadí programově
Po kliknutí na tlačítko přesuňte program a zkuste změnit barvu pozadí. Informace o přesunutí procesu kliknutí na tlačítko najdete v tipech pro tlačítka . Zde je popsán pouze 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);
}
}
Vzhledem k tomu, že budeme měnit barvu pozadí fotoaparátu, nejprve dostaneme komponentu fotoaparátu.
Pokud k objektu kamery předem připojíte skript nebo máte kameru jako pole, kód bude o něco kratší, ale
gameObject
Tentokrát to hledám a odkazuji na něj z odkazu scene
.
Jakýkoli kód, který může nakonec získat komponentu fotoaparátu, je v pořádku.
Camera
Jakmile máte komponentu, nastavte backgroundColor
Color
vlastnost pro určení barvy.
Color
Můžete nastavit konstruktor na libovolné číslo nebo nastavit předdefinované red
a blue
.
Kontrola provozu
Zkuste jej spustit a zjistěte, zda změní barvu.