- Symulator MaSzyna -

Symulator EU07 (i nie tylko) => Bieżące Symulatorowe => Wątek zaczęty przez: Milek7 w 04 Lipca 2018, 13:56:35

Tytuł: Ulepszony renderer - Materiały
Wiadomość wysłana przez: Milek7 w 04 Lipca 2018, 13:56:35
W ulepszonym rendererze właściwiości materiałów (ambient, diffuse, specular) wylatują z t3d/e3d. Wpis "Map: none" w t3d nie będzie miał sensu, bo jak to, model bez materiału?
Plik materiału .mat jako najważniejsze podaje shader którego użyć.
Do tego wpisy textureX definiują jakie tekstury podpiąć do shadera.
Do shadera można też podać dodatkowe parametry, czyli w praktyce właściwości oświetlenia do których nie jest przypięta żadna tekstura lub jako mnożniki wartości w teksturze. Proponuję w param1 definiować kolor, a w param2 mnożniki właściwości: ambient, diffuse, specular, emission.
W takiej konwencji dla przykładu materiału z mapami diffuse, normal, i reflection będzie to wyglądać tak:
shader: bp_diffuse_normal_reflection
texture1: coś_d
texture2: coś_n
texture3: coś_r
param1: 1.0 1.0 1.0 1.0
param2: 1.0 1.0 0.3 0.0
A na przykład dla materiału bez tekstury (głównie autka):
shader: bp
param1: 0.8 0.8 0.0
param2: 1.0 1.0 0.1 0.0

To planuję zaimplementować w rendererze, ale może ktoś ma jakieś sugestie co trzeba zmienić.

edit1:
Przeniesiona zostanie też obsługa opacity z submodelu pod klucz opacity: w .mat

edit2:
ze zmianami na wiki: https://wiki.eu07.pl/index.php/Materia%C5%82y_-_Pliki_.mat