Na pierwszy rzut oka najłatwiejsze jest wykonywanie głównej tekstury (zewnętrznej). Problemy dopiero się robią jak chcemy stworzyć pliczek o pospolitej długości trzech znaków mający rozszerzenie
.CTI(pisane z małych liter

).
Sam plik .cti nie jest aż tak trudny do stworzenia. Wystarczy spytać jedną z osób znających się na teksturach albo można skopiować gotowca i zmodyfikować go do odczytywania swojej tekstury.
Mając już gotową teksturę, przechodzimy do katalogu Texture (katalogu wszystkich tekstur danego autobusy), następnie do Repaintów (czyli dodatkowych tekstur niemodyfikujących tych podstawowych). Ogólnie ścieżka do nich wygląda następująco:
Dysk na którym mamy zainstalowane OMSI\Program Files (x86)\Steam\SteamApps\common\OMSI 2\Vehicles\Folder naszego autobusu\Texture i odpowiednio
rep,
Repaint itp.
W folderze
rep mamy podfoldery z elementami graficznymi naszej tekstury oraz jakieś pliki (no akurat na zdjęciu pokazana jest ikonka Notatnika

).
To są nasze pliki .cti powodujące odczytanie wszystkich elementów naszej tekstury oraz ukazujące je w grze. Otwórzmy jakiś plik .cti aby sprawdzić jaka jest w nim zawartość:
Coś nam się pokazało. Są to kolejne wiersze odczytujące naszą teksturę. Każdy element oraz modyfikacja mają swoje wartości nakazane przez autorów modelu w odpowiednich plikach (Model oraz Scripts). Np. wartość
[item] repaint_aussen_18 odwołuje się do naszej tekstury zewnętrznej (niem. aussen - na zewnątrz) Solarisa Urbino 18. Ogólnie odwołanie wartości zmiennej łatwo jest odczytać, często może być przydatny translator w przypadku modeli spoza polski.
Sam plik .cti składa się z trzech elementów:
- Nazwy grupy tekstury (nie jest wymagane, ale warto to dodać)
- Odwołań odczytujących elementy naszej tekstury
- Zmiennych włączających lub wyłączających dodatkowe modyfikacje (np. kołpaki)
Przeanalizujmy to

:
Cytat:***************************************
Mobilis #A747 Warszawa
***************************************
Nazwa naszej grupy. Czyli wszystkie elementy mające taką samą nazwę czyli
Mobilis #A747 Warszawa są częścią naszej głównej tekstury.
Cytat:[item]
Mobilis #A747 Warszawa
repaint_haupttextur
Mobilis #A747/Mobilis #A747-tablice.tga
[item]
Mobilis #A747 Warszawa
repaint_siedzenia
Mobilis #A747/body_wew.png
[item]
Mobilis #A747 Warszawa
repaint_aussen_18_fenster
Mobilis #A747/Mobilis SU18 Szyby.png
Kolejne elementy naszej tekstury.
item jest wymagane! Jest to zmienna określająca, że kolejne trzy linijki są częścią elementu naszej głównej tekstury.
Mobilis #A747 Warszawa - nazwa grupy
repaint_haupttexture - wartość odwołująca się do tekstury, w głównym folderze Texture o nazwie
03.png (dlaczego? O tym w kolejnych linijkach poradnika)
Mobilis #A747/Mobilis #A747-tablice.tga - ścieżka do naszego elementu tekstury głównej. Ukośnik prawo-, lewostronny wymagany w przypadku znajdowania się tekstury w folderze. Jeśli podamy złe rozszerzenie, OMSI nie znajdzie pliku oraz jego nie załaduje (pokaże się biała tekstura)(o odnajdywaniu tego problemu w dalszej części poradnika).
Cytat:[setvar]
klima_nowa
1
[setvar] - zmienna określająca wybór (włączenia/wyłączenia) dodatkowych elementów naszej tekstury. W tym przypadku setvar powoduje pojawienie się nowego klimatyzatora na dachu autobusu. Domyślna wartość setvaru wynosi
0, czyli jeśli mamy np. 10 dostępnych wpisów, a chcemy mieć włączonych tylko 6 to wystarczy zamieścić w .cti te, które będą zmienione (czyli jeśli dla czwórki nic nie zmienimy to nie potrzeba ich wpisywać).
Modyfikowanie oraz dodawanie wartości dla naszych tekstur:
Pokazane powyżej wartości tekstur repaint_aussen_18_fenster, repaint_haupttextur... można zmienić w bardzo łatwy sposób. Jednocześnie jeśli zmodyfikowaliśmy np. teksturę wyświetlaczy z koloru pomarańczowego na biały zapisując ją w głównym folderze Texture spowodowalibyśmy, że wszystkie autobusy miałyby teraz nowy kolor wyświetlaczy czyli biały.
Aby tego uniknąć cofamy się dwa foldery do tyłu (czyli do katalogu naszego autobusu) i przechodzimy do folderu Model. Pokazało nam się bardzo dużo plików oraz kilka folderów. My poszukujemy pliku/plików odczytujących cały nasz autobus jako model, oraz ustalających jaka wartość odnosi się do jakiej tekstury z folderu głównego Texture. Jw. pokazałem .cti z Solarisa Urbino 18, więc otwieramy dowolny plik tego pojazdu. Czyli np.
model_Urbino 18_4doorsMOKI.cfg.
Wszystko poniżej
Textur-Changes oraz posiadające
[CTCTexture] odwołują się do wartości zawartych w pliku .cti. Jak można zauważyć w .cti mieliśmy wartość repaint_aussen_18 tutaj, też ona jest. Z tego wynika, że
możemy dodać dowolną teksturę do której będziemy się odwoływać w oddzielnych grupach tekstur. Czyli? Możemy dodać dowolną teksturę, nadać jej dowolną wartość, która potem będzie taka sama w .cti, gdzie dzięki tej operacji możemy tworzyć nowe tekstury bez modyfikowania głównych.
Cytat:########################################
Textur-Changes
########################################
Zostawiamy w tej samej postaci
Cytat:[CTC]
Colorscheme
Texture\repu18
0
[CTC] - typ wprowadzający do określenia umiejscowienia katalogu naszej tekstury
Colorscheme - typ określający umiejscowienia katalogu naszej tekstury (czyli gdzie jest i do którego katalogu się odwołujemy)
Texture\repu18 - ścieżka katalogu (główny folder Texture oraz folder z repaintami)
0 - ponieważ nie odwołujemy się do żadnej tekstury
Cytat:[CTCTexture]
repaint_aussen_18
01-18m.png
[CTCTexture] - typ wprowadzający do wartości naszej tekstury
repaint_aussen_18 - dowolna wartość odwołująca się do naszej tekstury (
musi być taka sama jak w .cti)
01-18m.png - ścieżka do tekstury, którą będziemy zastępować w pliku .cti (bez odwoływania się do głównego folderu Texture, ponieważ jest to ustawione w kodzie gry, że zawsze odwołujemy się do tego katalogu).
Posiadając taką wiedzę mając w podstawowej wersji modelu (wydanej przez autora) np. 4 wartości, możemy dodać ich tyle ile jest wszystkich tekstur w folderze Texture. Oczywiście, niektóre tekstury nawet jeśli je poprawnie dodamy mogą się nie pokazać. Jednym z takich przypadków są np. wyświetlacze na pulpicie Solarisa, których nie można zastąpić przez .cti.
Warto pamiętać, że w przypadku pojazdów posiadających ilość sekcji>A, należy zmienić wartości w każdym pliku model... .cfg. Czyli jeśli mamy autobus przegubowy i zmieniamy wartości w sekcji A to trzeba też zmienić wartości w pliku sekcji B (dodam, że mają być takie same).
Znane błędy oraz ich odnajdywanie:
Biała tekstura(nie pojawianie się tekstury) - częsty błąd. Wystarczy, że wejdziemy do .cti tekstury, która się nie ładuje. Przechodzimy do wartości odpowiadającej błędu (czyli jeśli to tekstura zewnętrzna, to wiadomo na co mamy patrzeć). Otwieramy katalog z naszą teksturą. Porównujemy nazwy. Jeśli są różne to jedną z nich musimy zmienić do takiej samej nazwy jaką ma druga.
- Sposób 1. - poprawiamy nazwę (ścieżkę) w .cti odpowiadającej nazwie katalogu oraz nazwy tekstury (wymagany restart gry)
- Sposób 2. - poprawiamy tylko nazwę katalogu i/lub tekstury tym samym nie zmieniając ścieżki w .cti (wystarczy ponownie postawić autobus w grze)
Również pod postacią białej tekstury może się kryć rozszerzenie .jpg, które nie jest odczytywane przez OMSI w przypadku niektórych kart graficznych. Wystarczy zmienić rozszerzenie na inne (dokonując zmian oczywiście w pliku .cti).
Niepokazywanie się tekstury, pokazuje się tekstura podstawowa - błąd wynikający ze złej nazwy elementu grupy. Jeśli mamy dwie nazwy SOLARIS#12, a trzecia to SOLARIS#13, gdzie nazwa grupy zwie się SOLARIS#12 to w grze ukarzą się tylko dwie pierwsze. Wystarczy poprawić nieprawidłową nazwę (czyli w tym przypadku SOLARIS#13).
To chyba tyle w kwestii plików. cti