Nie odpowiadam za szkody psychiczne związane z próbami używania Spacera wynikającymi z instrukcji tego tutorialu.
TL;DR; - na końcu jest filmik pokazujący efekt.
G2NK oferuje prosty efekt odbicia w powierzchniach modeli. Odbijane jest nie otoczenie, ale z góry, globalnie ustalona tekstura. Efekt jest domyślnie paskudnie skonfigurowany (tak że albo nie jest zauważany, albo brany za bug), a u wielu graczy wyłączony. Ostatnio zainteresowałem się jego konfiguracją i z tego co zobaczyłem, niewielką ilością pracy da się go z całkiem dobrymi rezultatami wykorzystać w modach.
1. Globalna konfiguracja
Dwa globalne parametry efektu - to czy jest włączony, oraz jaka tekstura jest odbijana - są przechowywane w gothic.ini. Na potrzeby moda wykorzystującego ten efekt niestandardowo, należy nadpisać je za pomocą sekcji overrides pliku .ini moda. Dodajemy na jego końcu:
[OVERRIDES]
ENGINE.zEnvMappingEnabled=1
ENGINE.zEnvMapTextureName=paladin.tga
Parametrów tych chyba nie muszę tłumaczyć. Tekstura powinna być możliwie uniwersalna, różnorodna i słabo nasycona. Nie sprawdzałem jak działa z przezroczystością i podobnymi kombinacjami. Ja dla testów użyłem paladin.tga, bo czemu nie. Generalnie chyba powinna to być cubemapa, ewentualnie coś o layoucie podobnym jak skybox (on też może być cubemapą, nie pamiętam).
2. Konfiguracja materiału
Z początku byłem przekonany że trzeba by ładować do Spacera zapisane w formacie ascii obiekty zCMaterial z odpowiednimi parametrami. Ku mojemu zaskoczeniu, okazuje się że Spacer w editormode udostępnia normalny edytor zCMaterialów. Znajdujemy nasz materiał w oknie Materials. Jeśli tam go nie ma, za pomocą toolboxa przełączamy okno Objectpages na tryb "Propertypage for polygons (texturing)" i tworzymy nowy. Dla osób które, tak jak ja, nie miały prawie nic do czynienia ze Spacerem - to że non stop crashuje jest najwyraźniej normalne i nie należy się tym przejmować, tylko próbować do skutku, ewentualnie w międzyczasie wysyłając pogróżki do PB. Nie mam pojęcia czy jakieś parametry z tego okna oprócz nazwy tekstury mają znaczenie. Ja bym je olał, jak mają, to się o tym i tak przekonacie. W każdym razie, kiedy już nasz materiał istnieje, wybieramy go w oknie Materials. Tam interesują nas dwa parametry:
environmentalMapping:TRUE
environmentalMappingStrength:1
Efekt możemy podziwiać na bieżąco, o ile naniesiemy ten materiał na jakieś polygony w świecie. Aby to zrobić, klikamy je, tak żeby zaznaczyły się na czerwono, a następnie (z wyłączoną wolną kamerą) klikamy ppm i wybieramy "Apply and deselect". W polu strength możemy wpisać liczbę niższą niż 1 dla delikatniejszego efektu (np 0.5). To jednak stwarza możliwość że gracz go nie zauważy, więc ja tam bym się w takie subtelności nie bawił.
Po ustawieniu tego, wybieramy Settings/Save materialfilter z nadzieją że Spacer nie crashuje od tego. Jeśli pojawi się okno z informacją że zapis został zakończony pomyślnie, to znaczy że mamy halucynacje - Spacer nie wyświetla takich komunikatów. Co najwyżej zafunduje nam Access Violation. Jeśli zapisze materiały, to po prostu nic nie wyświetli.
Plik z naszym zapisanym materiałem zostanie wygenerowany w _Work\Tools\Data. Nazwa będzie taka, jak dla Materialfiltera który wybraliśmy (możemy też stworzyć nowy). Teraz najważniejsze - po co nam ten plik .pml? Co zrobić aby efekty były widoczne w modzie? Nie mam pojęcia! Do tego momentu pisania Spacer crashował mi 6 razy. Mam dość tego szajsu. Nagram już tylko filmik pokazujący efekt w działaniu, kto chce niech się z tym dalej bawi.
Odbijalność nałożona na ostrze, przyłbicę i to coś co osłania uda:
https://www.youtube.com/watch?v=wV2DTmIrEVQ