De achtergrondkleur van een scène wijzigen
Verificatieomgeving
- Ramen
-
- Voor Windows 11
- Unity Editor
-
- 2020.3.25f1
- Input systeem pakket
-
- 1.2.0
Vereisten voor deze tip
De volgende instellingen zijn vooraf gemaakt als uitgangspunt voor de beschrijving van deze tip.
Informatie over achtergrondkleuren van scènes
De achtergrondkleur van een scène in Unity is geen eigendom van de scène, maar is de camera-instelling.
Als u Uit Main Camera
de hiërarchie selecteert, wordt de achtergrondkleur tegelijk met het cameravoorbeeld weergegeven.
De achtergrondkleur wijzigen
De cameracomponent heeft een "achtergrond" van waaruit u deze kunt wijzigen.
De achtergrondkleur programmatisch wijzigen
Nadat u op de knop hebt geklikt, verplaatst u het programma en probeert u de achtergrondkleur te wijzigen. Zie de knoptips voor het verplaatsen van het klikproces op de knop. Alleen het programma wordt hier beschreven.
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);
}
}
Omdat we de achtergrondkleur van de camera gaan veranderen, krijgen we eerst de cameracomponent.
Als je vooraf een script aan het cameraobject bevestigt of een camera als veld hebt, zal de code iets korter zijn, maar
gameObject
Deze keer ben ik aan het zoeken en verwijs ik ernaar van gekoppeld scene
aan.
Elke code die uiteindelijk de cameracomponent kan krijgen, is prima.
Camera
Zodra u de component hebt, stelt u de eigenschap in backgroundColor
om de Color
kleur te bepalen.
Color
U kunt de constructor instellen op een willekeurig getal of de vooraf gedefinieerde red
en blue
.
Controle van de werking
Probeer het uit te voeren en kijk of het van kleur verandert.