Materiały - Pliki .mat: Różnice pomiędzy wersjami

Z MaSzyna
Skocz do: nawigacja, szukaj
(Opis kluczy bloków warunkowych)
(Opis kluczy bloków warunkowych)
Linia 60: Linia 60:
 
  <span style="color:tomato;font-weight:bold">winter:</span> {
 
  <span style="color:tomato;font-weight:bold">winter:</span> {
 
     <span style="color:tomato;font-weight:bold">texture1:</span> winter/tex
 
     <span style="color:tomato;font-weight:bold">texture1:</span> winter/tex
    ...
 
 
  }
 
  }
 
Powyższy kod oznacza, że w przypadku ustawienia warunków zimowych w miejsce ''texture1'' ma zostać wczytana tekstura ''winter/tex'' zamiast domyślnej ''example/tex''.
 
Powyższy kod oznacza, że w przypadku ustawienia warunków zimowych w miejsce ''texture1'' ma zostać wczytana tekstura ''winter/tex'' zamiast domyślnej ''example/tex''.

Wersja z 19:02, 11 paź 2018

Plik .mat jest definicją materiału, czyli shadera oraz przypiętych do niego tekstur i parametrów. Posiada prostą składnię klucz: wartość oraz warunkowe bloki wybierane w zależności od ustawień symulacji.

Opis kluczy

Nazwa Wartości Opis Uwagi
shader Ścieżka do pliku shadera (relatywna względem folderu shaders, nazwa bez przedrostka mat_ i rozszerzenia). Ustawia shader używany do renderowania obiektu. Tylko w exe @Milek7. Parametr jest obowiązkowy, jeżeli jednak nie jest podany zostanie to ustawiony zostanie shader default_0, default_1, default_2 (w zależności od ilości podanych tekstur). Nie działa wtedy ustawianie tekstur poprzez alias.
textureX Ścieżka do tekstury lub zestaw ścieżek losowych. Przypina podaną teksturę pod jednostkę wyrażoną numerem X, numerując od 1.
texture_X Ścieżka do tekstury lub zestaw ścieżek losowych. Przypina podaną teksturę pod alias X jednostki zdefiniowany przez shader Tylko w exe @Milek7?
paramX Od jednej do czterech wartości liczbowych. Ustawia parametr X numerując od 1. Tylko w exe @Milek7
param_X Od jednej do czterech wartości liczbowych. Ustawia parametr pod alias X zdefiniowany przez shader Tylko w exe @Milek7
opacity Wartość liczbowa 0-100 Nadpisuje wartość Opacity w submodelach używających tego materiału.
  • 0: oznacza blending
  • inne wartości: wyznaczają próg alpha testu
Tylko w exe @Milek7
selfillum Od jednej do czterech wartości liczbowych. Nadpisuje wartość SelfIllum w submodelach używających tego materiału. Tylko w exe @Milek7
size Dwie wartości liczbowe Nadpisuje wartość rozmiaru tekstury [m] we wpisie node. Wpisanie -1 spowoduje zignorowanie wybranego parametru.

Opis kluczy bloków warunkowych

Bloki warunkowe zawierają definicje własności materiału, które mają być aktywne w warunkach zależnych od ustawień symulacji. Wartościami dla tych kluczy są wybrane pary klucz-wartość z tabeli powyżej, ograniczone za pomocą nawiasów klamrowych. Przykład użycia:

// Pamiętaj o odstępach między klamrami a resztą kodu!
texture1: example/tex
winter: {
    texture1: winter/tex
}

Powyższy kod oznacza, że w przypadku ustawienia warunków zimowych w miejsce texture1 ma zostać wczytana tekstura winter/tex zamiast domyślnej example/tex.

Pory roku

Pora roku określana jest na podstawie ustawienia movelight.

Nazwa Opis
spring Wiosna
summer Lato
autumn Jesień
winter Zima

Warunki pogodowe

Warunki pogodowe zależą od wartości parametru zachmurzenia scenerii overcast we wpisie atmo

Nazwa Opis
clear Bezcmurnie (wartość overcast między 0 a 0.25)
cloudy Pochmurno (wartość overcast między 0.25 a 1.0)
rain Deszczowo (wartość overcast między 1.0 a 2.0)
snow Śnieżnie (wartość overcast między 1.0 a 2.0 w warunkach zimowych)

Tekstury losowe

Oprócz indywidualnych nazw tekstur można podać równieź ich zestaw. W takiej sytuacji wybrana zostanie losowo jedna z podanych tekstur. Przykład:

texture1: [ tekstura_a tekstura_b tekstura_c ]

Jako texture1 ustawiona zostanie losowo jedna z tekstur podanych między nawiasami kwadratowymi.