NOTA! Questo sito utilizza i cookie e tecnologie simili.

Se non si modificano le impostazioni del browser, l'utente accetta. Per saperne di piu'

Approvo

Unity 3D - Come mettere un'immagine di sfondo 2D, fissa (no Sky Box), nelle scene

 

Unity 3D - Come mettere un'immagine di sfondo 2D, fissa (no Sky Box), nelle sceneINTRODUZIONE

I PASSI DA SEGUIRE

ESEMPIO PRATICO

LINK E ALTRE RISORSE UTILI

 


 

INTRODUZIONE

In questo post vediamo come impostare un'immagine di sfondo 2D, quindi non un'ambientazione 3D (Sky Box) che varia se cambiamo l'orientamento della telecamera, ma fissa (uno sfondo statico, utile ad esempio per schermate di menù, giochi 2D, eccetera) nelle scene di un'applicazione realizzata con il motore di gioco Unity 3D 4.2 (istruzioni valide anche per le versioni precedenti del programma).

 

I passi da seguire sono 7 e qui di seguito li elenchiamo velocemente per realizzarli immediatamente se avete dimestichezza con Unity e i suoi elementi; subito sotto, invece, trovate gli stessi passi intervallati con gli screenshot, per individuare facilmente pulsanti e strumenti nell'interfaccia.

 


 

I PASSI DA SEGUIRE

Per impostare un'immagine 2D come sfondo fisso in una scena Unity 3D:

  1. creare, oltre alla telecamera principale di default (Main Camera), una seconda telecamera, chiamandola ad esempio "TelecameraSfondo2D".
  2. Creare un oggetto GUI Texture (da Game Object).
  3. Dopo aver (ovviamente) caricato l'immagine da utilizzare nel Project, trascinarla nello slot "Texture" dell'Inspector della GUI Texture inserita un attimo fa.
  4. Creare un nuovo Layer, chiamandolo ad esempio "sfondo".
  5. Selezionare l'oggetto "TelecameraSfondo2D" e assegnarlo al Layer "sfondo".
  6. Con l'oggetto "TelecameraSfondo2D" selezionato, nell'Inspector, impostare "Solid Color" per "Clear Flags", poi "Nothing" per "Culling Mask" (per deselezionare velocemente tutte le voci), quindi cambiare la stessa "Culling Mask" in "sfondo" (nome del Layer creato al punto 4); cambiare in -1 il valore di "Depth".
  7. Selezionare ora la "Main Camera", la telecamera principale dell'applicazione, e impostare nell'Inspector: "Depth Only" per "Clear Flags"; deselezionare il Layer "sfondo" in "Culling Mask"; cambiare in 1 il valore di "Depth".

 

Cliccando su Play si avrà l'immagine di sfondo nella vista Main Camera; qualora dovesse essere necessario ridimensionarla, sempre restando in modalità Play (per vedere le modifiche in tempo reale nella schermata Game), selezionare l'oggetto GUITexture e, nell'Inspector, variare i valori di Pixel Inset per specificare l'origine XY (attenzione: nella GUI, l'origine è il centro dell'inquadratura, quindi i valori X e Y saranno tipicamente negativi) e larghezza e altezza dell'immagine.

 


 

ESEMPIO PRATICO

Passiamo alla versione con screenshot; qui, ad esempio, sto utilizzando "La grande onda" di Hokusai come sfondo di un'app.

Unity3D-Immagine-Sfondo-2D-Hokusai-La-grande-onda 

 

 

Passi da seguire:

  1. creare la telecamera "TelecameraSfondo2D".
    Unity 3D Q&A: Immagine di Sfondo 2D; 01: TelecameraSfondo2D 
  2. Creare la GUI Texture per lo sfondo.
    Unity 3D Q&A: Immagine di Sfondo 2D; 02: Creare GUITexture 
  3. Impostare l'immagine texture desiderata come Texture della GUITexture.
    Unity 3D Q&A: Immagine di Sfondo 2D; 03: Impostare immagine texture 
  4. Creare il Layer "sfondo".
    Unity 3D Q&A: Immagine di Sfondo 2D; 04: Creare Layer Sfondo 
  5. Assegnare "TelecameraSfondo2D" al nuovo Layer.
    Unity 3D Q&A: Immagine di Sfondo 2D; 05: Layer sfondo per telecamera 
  6. Impostare "Clear Flags" a "Solid Color", "Culling Mask" (2 passaggi: prima "Nothing" per deselezionare velocemente tutte le voci, poi "sfondo") e "Depth" a -1 per la telecamera "TelecameraSfondo2D".
    Unity 3D Q&A: Immagine di Sfondo 2D; 06: Telecamera sfondo culling mask 
  7. Impostare "Clear Flags" a "Depth Only", deselezionare il Layer "sfondo" nella "Culling Mask" e portare a 1 il valore di "Depth" per la telecamera principale ("Main Camera").
    Unity3D-QA-Immagine-Sfondo-2D-07-Main-Camera-culling-mask

Premere Play per visualizzare il risultato; per ridimensionare l'immagine, sempre in modo Play (osservando le modifiche in tempo reale nella vista Game) selezionare la GUI Texture e, nell'Inspector, cambiare i valori dei campi Pixel Inset (tipicamente, per X e Y dovrete usare valori negativi pari a metà larghezza e altezza dell'inquadratura, perché l'origine dell'immagine è al centro dell'inquadratura), come visibile nelle immagini seguenti.

  Unity 3D Q&A: Immagine di Sfondo 2D; 08: Ridimensionare Immagine 

 


 

LINK E ALTRE RISORSE UTILI

 

COMMENTI, DOMANDE, ALTRE RISORSE, ...

Per commenti, domande o altro, accedere al Forum del sito (cliccare qui); per informazioni sulla Registrazione al sito, cliccare qui.

 

 

 
Vai all'inizio della pagina