Oświetlenie odgrywa kluczową rolę jeśli chodzi o wygląd sceny. Osiągnięcie zadowalającego efektu wymaga trochę zachodu. Jest masa różnego rodzaju ustawień, wiec po kolei.

Color Space

Zanim zacznie się inne działania, warto zmienić „Color Space” z domyślnego „Gamma” na „Linear”. To działanie poleca większość kursów i poradników. Obraz robi się nieco ciemniejszy i żywszy. Więcej o mniej widocznych na pierwszy rzut oka efektach na oficjalnej stronie.

Aby zmienić Color Space należy wejść w ustawienia projektu (Edit -> Project Settings…), z panelu bocznego wybrać Player, przejść do sekcji Other Settings. Color Space jest na samym początku.

Może się pojawić pytanie, skoro linear color space jest lepszy od gamma, to dlaczego nie jest wybrany domyślnie. Otóż nie wszystkie platformy wspierają ten mechanizm. Problemu nie ma z PC, nowszymi sprzętami mobilnymi i aktualną generacją konsol.

Lighting Settings

Są tu ogólne ustawienia związane z oświetleniem. Dostęp poprzez Window -> Rendering -> Lighting Settings

Environment

W miejscu tym można wybrać Skybox sceny. Skybox to oteksturowany sześcian wewnątrz którego siedzi wszytko na scenie. Widać go w grze – jest niebem – a ponadto może też być źródłem oświetlenia.

W sekcji dostępne są ustawienia związane z oświetleniem globalnym sceny – można je traktować jako oświetlenie otoczenia. Mimo że zazwyczaj nie jest ono zbyt mocne w porównaniu ze światłem np słońca, to ma istotny wpływ na wygląd sceny.

Źródłem tego oświetlenia (Environment Lighting) może być:

Skybox – w subtelny sposób oświetla obiekty. Inaczej będzie wyglądała scena ze skyboxem nieba a w dzień, inaczej z teksturami zachodu słońca. Będzie to widoczne tym bardziej, im słabsze będzie światło słoneczne.

Color lub Gradient – w tym przypadku mamy możliwość samodzielnego określenia koloru lub kolorów oświetlenia otoczenia.

W obiektach wykonanych z gładkich, „szklistych” materiałów, może się odbijać otoczenie. W sekcji Environment Reflections można skonfigurować, co ma być źródłem tych odbić. Domyślny Skybox wydaje się być najlepszym wyborem.

Realtime Lighting i Mixed Lighting

Ustawienia te związane są z pojęciem Global Illumination (GI). Ciekawy efekt a którym można poczytać na oficjalnej stronie. Ogólnie chodzi o to, że światło odbijając się od powierzchni obiektów, barwi obiekty znajdujące się ich pobliżu. Obejmuje to też zjawisko zaciemniania wewnętrznych narożników i krawędzi obiektów. Na razie nie zagłębiałem tematu.

Nie tylko słońce

Domyślnie na scenie znajduje się jedno źródło światła kierunkowego (Directional Light), które odwzorowuje słońce. Dobre efekty daje dodanie dodatkowego źródła światła tego typu, ale padającego przeciwnie do słońca, z mniejszą intensywnością i kolorem niebieskim. Wydobywa to szczegóły znajdujące się w zacienionych (standardowym słońcem) miejscach sceny.

Post Processing

Post Processing to, ogólnie mówiąc, operacjach na wygenerowanej już klatce obrazu. Do takich operacji należy m.in antyaliasing, efekt bloom, rozmycie tła, korekcja kolorów itp. W prosty sposób można dzięki temu poprawić wygląd gry.

Dołączanie pakietu z narzędziami do Post Processingu

Aby mieć dostęp do komponentów związanych z post processingiem należy dołączyć do projektu odpowiedni pakiet. Robi się to w oknie managera pakietów (Window -> Package Manager).

Po otwarciu okna, trzeba chwilę poczekać na dogranie listy dostępnych pakietów. Następnie wybieramy Post Processing i klikamy Install w prawym górnym rogu.

Dołączanie komponentów

Komponenty post processingu dołącza się do kamery. Sprawa teoretycznie prosta, ale może doprowadzić do konsternacji. Wynika to z faktu, że w internecie jest dużo poradników o tym pakiecie (a konkretnie o wersji którą można pobrać z Asset Store), ale dotyczą one wersji 1.xxx. Aktualne wersje Unity (2018+) wykorzystują wersję 2.xxx. Obie robią to samo, ale komponenty (skrypty) inaczej się nazywają a interfejs wygląda inaczej.

W pakiecie są dwa komponenty:

Post Process Layer – (Component -> Rendering -> Post-process Layer)

To można ustawić antyaliasing. Należy też wybrać Layer na Default aby zała reszta działała.

Post Process Volume – (Component -> Rendering -> Post-process Volume)

Tu można dodawać kolejne efekty. Ale najpierw trzeba stworzyć tzw profil. Można to zrobić bezpośrednio w sekcji lub w oknie Assetów (PPM -> Create -> Post-processing Profile) i przeciągnąć w odpowiednie miejsce.

Okno efektów wyglądaja mniej więcej tak:

Close Menu