Guide til Shadows in Unity

Hvis du er en nybegynner Unity-utvikler som er ivrig etter å forbedre den visuelle appellen til prosjektene dine, kan forståelse og implementering av skygger utgjøre en betydelig forskjell. Skygger gir dybde og realisme til scenene dine, og får objekter til å samhandle realistisk med lyskilder. Denne veiledningen vil lede deg gjennom det grunnleggende om å aktivere skygger i Unity og utforske ytterligere optimaliseringer ved å bruke Lightmaps.

Shadows i Unity Editor.

Aktiverer Shadows inn Unity

Trinn 1: Åpne Unity-prosjektet ditt

Trinn 2: Retningsbestemt lysoppsett

  • Finn "Directional Light" i scenehierarkiet ditt. Dette lyset simulerer sollys i Unity.
  • Velg "Directional Light" for å få tilgang til egenskapene i inspektørvinduet.

Trinn 3: Skyggeinnstillinger

  • Rull ned i inspektøren for å finne rullegardinmenyen "Shadow Type".
  • Velg "Soft Shadows" eller "Hard Shadows" basert på dine preferanser.

Trinn 4: Juster skyggeavstand og oppløsning

Skyggeavstand og oppløsning kan justeres i prosjektets kvalitetsinnstillinger.

  • Endre "Shadow Distance" for å kontrollere rekkevidden av skygger.
  • Endre "Shadow Resolution" for å balansere kvalitet og ytelse.

Trinn 5: Deaktiver skygger på objekter

Hvis du ønsker å deaktivere skyggekasting fra bestemte objekter, følger du trinnene nedenfor:

  • Velg et objekt i scenen din.
  • I Inspektøren finner du "Mesh Renderer", eller en hvilken som helst komponent avledet fra "Renderer".
  • Endre "Cast Shadows"-innstillingen til riktig verdi.
  • Det er også mulig å kontrollere om objektet skal motta skygger ved å merke av eller fjerne merket for "Receive Shadows".

Trinn 6: Observer scenen

  • Observer scenen for å se skygger i sanntid.

Feilsøking av Shadows:

Hvis skygger ikke er synlige i scenen din, bør du vurdere følgende:

  • Retningsbestemt lysvinkel: Sørg for at retningslyset er plassert slik at strålene treffer objektene dine. Eksperimenter med rotasjonen.
  • Objektinnstillinger: Sjekk om "Cast Shadows"-alternativet er aktivert på objektene du vil kaste skygger.
  • Lightmap-oppløsning: Hvis du bruker Lightmaps, sørg for at de statiske objektene dine har tilstrekkelig lyskartoppløsning. Øk den om nødvendig.
  • Shader-kompatibilitet: Noen shadere er kanskje ikke kompatible med skygger. Test med Unity's standard shaders eller shaders designet for skyggekompatibilitet.
  • Sanntid vs. bakt: Sanntidsskygger vises kanskje ikke hvis objektet er merket som statisk. Velg enten sanntids- eller bakte skygger.
  • Skyggeavstand i kvalitetsinnstillinger: Sjekk "Shadow Distance"-innstillingen i prosjektets kvalitetsinnstillinger. Hvis avstanden er satt lavere enn gjeldende avstand fra kameraet, kan det hende at skygger ikke er synlige på visse avstander.

Optimalisering av skygger med lyskart

Unity tilbyr Lightmaps som en avansert optimaliseringsteknikk for statiske objekter, noe som reduserer behovet for sanntidsberegninger.

Bakte lyskart i Unity.

Trinn 1: Merk objekter som statiske

  • Velg statiske objekter i scenen din.
  • I Inspektøren merker du av for "Static".

Trinn 2: Konfigurer Lightmap-innstillinger

  • Gå til 'Window -> Rendering -> Lighting' for å åpne belysningsvinduet.
  • Rull ned til "Lightmapping"-delen.
  • Sett "Lightmapper" til "Progressive" eller "Enlighten".
  • Klikk "Generate Lighting" for å bake lyskart.

Trinn 3: Juster sanntid vs. Baked Shadows

  • Bruk sanntidsskygger for dynamiske objekter.
  • For statiske objekter, stol på bakte skygger fra Lightmaps.

Trinn 4: Test og gjenta

  • Trykk på Play for å teste scenen din. Juster innstillinger og iterer for å oppnå ønsket balanse mellom visuell kvalitet og ytelse.

Konklusjon

Du har aktivert skygger i Unity og utforsket lyskart for optimalisert skyggegjengivelse. Eksperimenter med forskjellige innstillinger, observer innvirkningen på scenen din og fortsett reisen din til å lage visuelt imponerende Unity-prosjekter.

Foreslåtte artikler
Hvordan tilordne et kamera til et skript i Unity
Oppdag porten til grenseløs kreativitet med enhet
Introduksjon til partikkelsystem i enhet
Vanlig brukt terminologi i Unity Engine
En introduksjon til prosedyregenerering i enhet
Fiskespillguide for Unity
Introduksjon til Unity Editor UI