Autor Wątek:  [INNE] Konwersja paczki pctga do wariantu dds/e3d  (Przeczytany 762 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

Offline Hirek

  • Wydział Repozytorium
  • Wiadomości: 178
  • ugułem to siemens fajne wozy robi
    • Zobacz profil
    • Kanał YT
  • Otrzymane polubienia: 92
[INNE] Konwersja paczki pctga do wariantu dds/e3d
« dnia: 14 Kwietnia 2022, 12:26:13 »
Paczki dds/e3d od czystej pctga różnią się krótszym czasem wczytywania, czy mniejszym rozmiarem. Oto jak taką konwersję przeprowadzić. Udostępnienie narzędzi z załącznika i napisanie poradnika za zgodą @Milek7.
Tak więc co nam będzie potrzebe?
Aby móc przejść przez proces kompilacji paczki do wariantu dds/e3d, czyli takiego, który zwykle zajmuje dużo mniej miejsca na dysku niż wersja tga/t3d (dalej pctga) potrzebujemy następujących rzeczy:
  • Pobrane repozytorium pctga (można pobrać za pomocą TortoiseSVN)
  • Windows Subsystem for Linux 2.0 (poradnik instalacji)
  • trochę cierpliwości i wolnego czasu
  • Narzędzia z załącznika

Od czego zacząć?
Przygotowanie:
Najprościej można zacząć od utworzenia gdzieś na dysku pustego folderu. W środku tworzymy foldery: build, eu07, oraz pctga. Folder pctga powinien zawierać pliki z repozytorium, folder eu07 pliki wymagane do uruchomienia exe maszyny (tzw. kiedyś: bin_x64, czy też bin_x86). Do folderu roboczego wypakowujemy archiwum z narzędziami z załącznika. Po przygotowaniu wszystkich plików struktura folderu roboczego powinna wyglądać następująco:
└── folder roboczy/
    ├── build/
    ├── eu07/
    ├── pctga/
    ├── e3dize
    ├── make_recipe
    ├── make_diff
    └── dump_structure
Aby wszystko dalej działało potrzebujemy uruchomić terminal linuxa (w moim przypadku ubuntu 20.04 pod WSL). Instalujemy wymagane zależności następującym poleceniem:
sudo apt-get update
sudo apt-get install nvidia-texture-tools vorbis-tools imagemagick python3 ninja-build
Zainstaluje nam ono wszystkie wymagane narzędzia wymagane do konwersji plików do odpowiednich formatów. Teraz musimy przygotować exe maszyny do konwersji t3d >> e3d. W tym celu wchodzimy do folderu eu07 i tam wrzucamy zawartość naszego bin_x64 (lub bin_x86). Następnie z nazwy pliku wykonywalnego symulatora kasujemy dopisek “.exe” (eu07.exe powinno zamienić się w samo eu07).  Powracamy do głównego folderu roboczego i wpisujemy następujące polecenie: sudo chmod +x * - pozwoli to nam na uruchomienie narzędzi.

Właściwe kompilowanie paczki:
W tym momencie jedyne co pozostaje to przejść do folderu roboczego w terminalu linuxa. W tym celu korzystając z komend cd (change directory) nawigujemy do katalogu /mnt/ w którym znajdują się litery naszych dysków w naszym komputerze. Dalej podążamy za ścieżką windowsową. W moim przypadku ścieżka do folderu roboczego według windowsa wyglądała następująco: E:\Hirek\Games\eu07-pack\, natomiast na ubuntu będzie wyglądała tak: /mnt/e/Hirek/Games/eu07-pack/.
Aby rozpocząć kompilację wpisujemy polecenie ./make_recipe - wygeneruje nam ono plik kompilacji (build.ninja). Następnie uruchamiamy kompilację poleceniem ninja -j4Liczba 4 oznacza ilość wątków procesora, jakie ninja będzie mógł wykorzystać. Można sobie regulować do woli :). W tym momencie czekamy na skompilowanie się paczki. Po pewnym czasie (u mnie 15h) w folderze build otrzymujemy gotową do spakowania paczkę dds/e3d.

Jeśli coś byłoby nie zrozumiałe to można napisać w odpowiedzi - wytłumaczę. W przypadku jakiegoś większego błędu poprawię posta. W zrozumieniu tego procesu pomógł @Milek7.

Edit 22.05.2022: Poprawiony załącznik - zapomniałem o jednej libce...
« Ostatnia zmiana: 22 Maja 2022, 15:21:37 wysłana przez Hirek »
Z maszyną od PC 08.13