![]() |
|
NFO - alternatywny język niskiego poziomu plików .grf - Wersja do druku +- OpenTTD #Polska - Polskie forum gry OpenTTD [ARCHIWUM] (https://forum.openttd.pl) +-- Dział: OpenTTD (https://forum.openttd.pl/forumdisplay.php?fid=1) +--- Dział: Dyskusje ogólne (https://forum.openttd.pl/forumdisplay.php?fid=4) +--- Wątek: NFO - alternatywny język niskiego poziomu plików .grf (/showthread.php?tid=2301) |
NFO - alternatywny język niskiego poziomu plików .grf - yard - 03-12-2018 Nieco przybliżenia w temacie NFO , ale nie jestem w tym zaawansowany, a jakby ktoś znał linki do polskich tłumaczeń to można dodać i fragment cytatu . Sprite i ich edycja np. pod : https://www.tt-wiki.net/wiki/GraphicsTutorial (wersja angielska) N.F.O brzmi jakby niezidentyfikowane formy objektów !. Nie mam pojęcia o tym określeniu , ale ważne by przy jego użyciu powstał funkcjonalny plik *.grf . Grf to właśnie rozszerzenie pliku zakodowanego lub odkodowania z grfcodec . Instrukcje wykonywane w nim były znacznie wydajniej niż z cyframi dziesiętnymi. Dlatego to tak złożony (skomplikowany) język do pisania , coś jak posługiwanie się symbolami w asemblerze . Dzięki temu konwersja na binarny ciąg dla urządzeń elektroniki zużywa w algorytmach mniej pamięci i czasu. Hex inaczej system szesnastkowy to specyfika NFO. Przydatne w czynnych procesach tych "podprogramów" NFO . W coraz nowocześniejszych smartfonach już nie tyle istotne . Do składania czegoś w NFO dorobione były aplikacje z graficznym "interfejstem" i kontroli nforenum , ale nie są to 'rozbudowywalne' IDE (przyrząd developerski) przy ewoluującym ottd. Poza tym właściwie rozwijany jest NML z grupy nie low-level . Aktualnie zaleta nad nml jest przede wszyskim kolejowa logistyka. W nml praktycznie NewGrfr z sygnalizacją nie do zrobienia . I tu można zastosować NFO . Zajrzenie do Kod: pliku.nfoRE: NFO - alternatywny język niskiego poziomu plików .grf - yard - 19-04-2019 W załączniku wstępnie dokonany przyrząd programowalny . Do "e-kodowania" z NFO na .grf i dekodowania (odwrotnie ; *.grf ~> NFO ) przydatne narzędzia - Za linkiem m.in. grfcodec jako program w linii poleceń (wskazówki po wpisaniu np. grfcodec.exe ) lub grfWizard z przyjaznym okienkiem pod Windows (wymaga tylko krótkiego skonfigurowania). Jeden z prostszych plików nfo , który może posłużyć do skompilowania .grf to przykład w pakiecie JGR's w katalogu [data] - progsignals.grf , a po odkodowaniu : Kod: GrfCodec -d progsignals.grfotrzymane : Kod: // Automatically generated by GRFCODEC. Do not modify!Ponieważ określają rozmaitości tego pliku NFO powinny tam być nie zmodyfikowane . Więcej można zając się tym później . Do sygnalizacji wystarczy skopiować i wkleić . Kod: ...Kolejne linie od 0, 1 ... etc (numeracja troche jak BASIC) to instrukcje opisujące sprite czyli konkretne rysowanie ( obrazek.png ) Za ścieżka do pliku , wpisane są różne właściwości w odstępach (tj. głębia kolorów, współrzędne, "gabaryty" czy wersja zbliżenia etc). Istnieją tez spirites bez przypisanej wizualizacji , mogą powodować zmiany wszelkich stanów jak sytuacje dźwiękowe etc. O tym może innym razem . Wtedy linia 0 (zero) to tzw. pseudosprit wstawiony z * (gwiazdką) . Następna cyfra w tym wierszu to liczba sprit'ów całkowicie , ogółem (w pliku .nfo ) . Jeśli zastosowane będą 4 oznacza się tak : Kod: ...Choćby dokładniej następna linia w takim układzie posiada ID - Kod: ...Różne wyszczególnione na GRFspecs . Jeśli wstawione zostaną dodatkowe grafiki (z innych modów) można uzyskać nowszą oprawę semaforów - Kod: ...Gotowy 'beta' Newgrf otrzymany po wklepaniu: Kod: GRFCODEC -e -g 2 progsignals.grfOczywiście powstały progsignals.nfo do ulepszenia - w dalszym poście . Najlepiej do tego edytor psPad . Aby działał 'F9' jako zautomatyzowane uruchomienie kompilacji (lub przycisk na "belce") do zrobienia dwie czynności. W folderze [syntax] dorobiony plik definicji dla rozszerzeń .nfo (np. użycie zawartoscii od pliku intranet.ini i poprawienie) : Kod: ...A w menu tools ~> ustawienia podświetlania , zakładka kompilator - parametry kompilacji: ... %Name%.grf . (ze wskazaniem dostępu do GRFKodeka manualnie). Nie koniecznie , ale z zaznaczeniem opcji : "przechwyt okna komunikatów wyjściowych" . Osobnym niuansem jest wykorzystanie makr - M4NFO dla pewnych animacji migających "diod" ..
RE: NFO - alternatywny język niskiego poziomu plików .grf - yard - 22-04-2019 ___ . . ___ |Ctrl| & |F9| , zamiast samo 'F9' powinno być z 'Control' . ----- . . ---- Potem tak nawiasem doprecyzowując coraz większa złożoność w/g , w pseudosprites .nfo (wers , w którym zamiast ?.png jest tylko *, a więc nie jest to rzeczywisty sprite ) trzeci znak określa długość danych po nim, a od czwartego ciąg tych danych (szesnastkowo) Kod: 33 * 4 00 00 ...Bywa , że pierwsza linia to: 0 ... z ... * ... i ... 4 ... czyli potem chyba "ta czwórka" przeważnie w notacji heksadecymalnej: ... 00 00 00 00 z tym , że w miejsce 2 grup zer ,łącznie real~sprite ze pseudosprite może być 1F ... , ( hex=0000 001F wyodrębnione na wspak ) No i te w pozycji 'action' , odnotowane działania, które są realizowane do obrazu albo w związku z czymś . Nr 8 przyporządkowuje unikatowy GRFID, Nazwę i opis . Kod: 1 * 8 08 06 ...Odnośnie sumy grafik jest działanie Nr 1 Kod: 2 * 4 01 ...
RE: NFO - alternatywny język niskiego poziomu plików .grf - yard - 24-04-2019 Zdaje się , że railtypes to jest 10 (00 train) . Natomiast w miarę przerabiania, pamięci nie pochłaniają marginalizmu i okazuje się przejrzystość przyswajalna . Ponadto Grfcodec utworzy podkatalog [sprites] gdy wcześniej nie dekodowano. Standardowo umieszczane są tam zawartości "prze_konwertowane" z .grf W paczce z grfcodec dołączony jest nforenum.exe, który częściowo rekonstruuje zawiłości. wywołany w asyście: Kod: nforenum sprites\nazwapliku.nfo(niektóre punkty) ~kiedy można sklecić jakiś nie za bardzo skomplikowany .grf , który może kreować nie tylko do JGR's (tudzież OpenTTD-YPS z wariantem "decoupling"). source - Kod: // Automatically generated by GRFCODEC. Do not modify!Przygotowanie zdekodowanego 32bpp_ez-0.1.grf , to wszystko wytworzy aplikacja grfWizard, jak minimalna instalacja experckiego kalkulatora. Większość przetworzenia w .nfo sposobem schowek/Clip-board . Ilustracje przetransferowane zgodnie z ich przesunięciami- ponumerowanie w pliku nfo jest powiązane z "kontenerami" obrazowymi (zbiór). Zaznaczenie obejmuje zwykle poprzedzające pseudosprites (linie z * nad realsprites -dawniej.pcx). Na koniec kompilacja kliknięciem w kwadracik to oznajmujący. Z racji ,że poniższa linia : ... 1 * 54 14 "CINFOBVRSN" 04 00 02 ... -identyfikator nie może powtarzać się w dwóch .nfo /.grf . -teoretycznie mogłoby się obejść , to w ramach unormowanego schematu -jest zmieniona ostatnia cyfra (tylko zwiększona o 1), choć zalecane po-edytować dowolnie , żeby nie było identycznie. Po ogarnięciu tego, jako tako, warto ponownie przejrzeć informacje o action 8, 14 { linki wyżej } , wyszperać kontynuacje . |