Ainas fona krāsas mainīšana

Lapa atjaunota :
Lapas izveides datums :

Verifikācijas vide

Windows
  • Operētājsistēmā Windows 11
Vienotības redaktors
  • 2020.3.25f1
Ievades sistēmas pakete
  • 1.2.0

Priekšnoteikumi šim padomam

Tālāk norādītie iestatījumi ir veikti iepriekš kā priekšnoteikums šī padoma aprakstam.

Par ainas fona krāsām

Vienotības ainas fona krāsa nepieder ainai, bet ir kameras iestatījums. Ja atlasāt No Main Camera hierarhijas, fona krāsa tiek parādīta vienlaikus ar kameras priekšskatījumu.

Par fona krāsas maiņu

Kameras komponentam ir "fons", no kura to var mainīt.

Programmiska fona krāsas mainīšana

Pēc noklikšķināšanas uz pogas pārvietojiet programmu un mēģiniet mainīt fona krāsu. Skatiet pogas padomus , lai uzzinātu, kā pārvietot pogas noklikšķināšanas procesu. Šeit ir aprakstīta tikai programma.

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

Tā kā mēs mainīsim kameras fona krāsu, mēs vispirms iegūsim kameras komponentu. Ja kameras objektam iepriekš pievienojat skriptu vai kā lauks ir kamera, kods būs nedaudz īsāks, bet gameObject Šoreiz es to meklēju un atsaucos uz to no saites scene uz. Jebkurš kods, kas galu galā var iegūt kameras komponentu, ir labi.

Camera Kad esat ieguvis komponentu, iestatiet backgroundColor rekvizītu Color , lai noteiktu krāsu. Color Konstruktoru var iestatīt uz jebkuru skaitli vai iestatīt iepriekš definēto red un blue .

Darbības pārbaude

Mēģiniet to palaist un pārbaudiet, vai tas maina krāsu.