Autor Wątek: Zewnętrzny Edytor Kampanii dla Falcon 4.0 AF  (Przeczytany 15567 razy)

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

Odp: Zewnętrzny Edytor Kampanii dla Falcon 4.0 AF
« Odpowiedź #30 dnia: Sierpień 10, 2011, 17:36:11 »
Czytając ten wątek mam chęć zostawić swój projekt kokpitu i wejść do tego projektu. Jednak zdaję sobie sprawę, że to wymagałoby dużego zaangażowania, dlatego zostawiam to kolegom, którzy maja wiedzę na ten temat. Dla mnie jest miłym zaskoczeniem, że koledzy mają tak dużą wiedzę w tym temacie.

Odp: Zewnętrzny Edytor Kampanii dla Falcon 4.0 AF
« Odpowiedź #31 dnia: Sierpień 10, 2011, 18:07:56 »
@EGHI - bądź kolegą i nie drocz się z nami. Że to AF to ja po prostu nie mogę uwierzyć.
Napisz proszę co to i czy gra działa płynnie w takim terenie ? -  pleease :002:

Odp: Zewnętrzny Edytor Kampanii dla Falcon 4.0 AF
« Odpowiedź #32 dnia: Sierpień 10, 2011, 22:50:35 »
@_michał
@Piorun
 To jest AF,  OF korzysta z tego samego zestawu, nie wiem jak to może wyglądać w FF. Wszystko działa płynnie do momentu kiedy dany obszar nie jest rozwinięty o nowe zestawy tekstur, czyli krótko mówiąc foto... Prawdopodobnie dopisanie dodatkowych tekstur ma wpływ na działanie silnika, nie jest to jednak jakiś drastyczni spadek FPS. 
Cały myk polega na zmianie standardowych "płytek", te są podzielone na odpowiednie  Palety ( nazwijmy to obszary). Inaczej mówiąc są to tekstury miast, obszarów wiejskich, odpowiednie dla szczególnych punktów jak lotniska itp. Górskie, morskie itd, itd...
Jeśli chcemy dołożyć nowe ( charakterystyczne dla danego obszaru) trzeba ingerować w kod i "dopisać" do ODS odpowiednie. To nie jest do końca zbadane i nie potrafię odpowiedzieć jaki będzie wpływ na płynność. Chodzi o wielkość obszaru w km.2.( tutaj też mam wątpliwości bo tekstury ładowane są w rzeczywistym czasie) Myślę, że można spróbować zrobić foto-teksturę tam gdzie chcemy mieć w miarę realnie odwzorowane podłoże np. Krzesiny i 100km2 i tym się właśnie zająłem. Reszta to będzie generacja automatyczna, przy czym nie na chybił-trafił. To właśnie po to mapa teatru wykorzystuje pliki xxx.E00 żeby było wiadomo gdzie położyć odpowiednie tekstury.
Jest też kwestia dobrania odpowiednich kolorów, albo robimy to zgodnie z teksturami Falcona ( co mi osobiście nie odpowiada), albo robimy wszystkie nowe i w tej samej kolorystyce. Tutaj kłania się blisko 3000 tekstur ;), jednak nie jest ich aż tyle bo gdyby podzielić to na pory roku, lody a tych jest 4 rozdzielczości, to relatywnie ilość się zmniejsza. Z dwojga "złego" wolę zrobić od podstaw całą paletę, żeby uniknąć takich obrazków"


To tak nie w temacie, tutaj lepiej dyskutujmy o edytorze.
Pozdrawiam.

Odp: Zewnętrzny Edytor Kampanii dla Falcon 4.0 AF
« Odpowiedź #33 dnia: Sierpień 10, 2011, 23:38:27 »
To tak nie w temacie, tutaj lepiej dyskutujmy o edytorze.

Tu się nie mogę z Tobą zgodzić - to było jak najbardziej w temacie. Jeśli w edytorze będzie podgląd płytek to jak już pisałem pozostaje tylko mały krok do pełnej edycji nakładania tekstur terenu. W zasadzie wszystko co się wiąże z tworzeniem nowych map, teatrów i kampanii ma ścisły związek z tym edytorem.

Jeśli chodzi o ilość FPS'ów to zaniepokoił mnie nie tyle problem nowych tekstur (nawet tych foto) co co ilość obiektów terenowych które widać na obrazku z balonem. Nie dam głowy ale to chyba nie tekstura tylko rzeczywiste budynki, drzewa, słupy WN etc. Słowem mnóstwo obiektów które silnik graficzny musi renderować w każdej klatce.

Tekstury terenu są w Falconie trzymane w specjalnym dość dużym cache'u z którego mogą być pobierane do pamięci karty graficznej. Jeśli tych tekstur nie jest za dużo to rezydują one w pamięci VIDEO nawet przez kilkaset klatek. Ale są to tylko te tekstury które aktualnie widać na ekranie. Jeśli zmyślnie dobierzesz odpowiednie zestawy tekstur (tzw Set'y) to żadnego spadku FPS nie powinno się zauważyć. Jeśli jednak pomieszasz swoje nowe Sety z istniejącymi (koreańskimi teksturami) to może się okazać że liczba aktualnie aktywnych Setów się podwoi. Dlatego chyba lepiej zrobić pełen zestaw polskich tekstur (łatwo powiedzieć ale to oczywiście mnóstwo pracy).

Jednak w cache'u tekstur muszą być także tekstury używane przez poszczególne obiekty terenowe. Jeśli na ekranie będzie widać dużo takich samych obiektów to nie ma problemu bo używają one wspólnego zestawu tekstur. Jeżeli jednak widać będzie wiele obiektów różnych typów to pojawi się problem zajętości cache'a.

To dlatego martwię się czy latając nad terenem z "balonem" renderowanie będzie płynne.

Przy okazji - pojawił się pewien nieprzyjemny problem związany z nazwami obiektów. Nazwy miast, wiosek, mostów etc są przechowywane w specjalnym pliku nazw który nie może być większy niż 64 kB. Dla teatrów typu Korea nie było problemu, ale już w Bałkanach plik nazw ma 61 kB. Dla dużych teatrów jak np Europa suma nazw wszystkich obiektów przekracza i to znacznie 64 KB. Zauważyłem że w tym teatrze nazwy posiadają tylko miasta, zaś dla przykładu mosty są bezimienne. Pozornie mały problem, ale jeżeli w misji bombardowania mostu w briefingu chcemy wskazać cel to nie ma jak wyświetlić nazwy dla tego mostu bo jest po prostu pusta.

Nie wiem co z tym zrobić ? :015:


Offline Flanker

  • 13 WELT
  • *
Odp: Zewnętrzny Edytor Kampanii dla Falcon 4.0 AF
« Odpowiedź #34 dnia: Sierpień 11, 2011, 11:38:38 »
Na Bałkanach jest to chyba rozwiązane przez stosowanie zunifikowanej nazwy dla mniej istotnych miejscowości - "Nowhere".

Odp: Zewnętrzny Edytor Kampanii dla Falcon 4.0 AF
« Odpowiedź #35 dnia: Sierpień 11, 2011, 12:01:37 »
Nie w tym kłopot. Każdy obiekt który ma nazwę ma ją zapisaną jako liczbę-odnośnik do tablicy wszystkich nazw. Jeśli ta liczba jest nieokreślona to prawdopodobnie silnik podstawia wtedy odnośnik do nazwy uniwersalnej nazwy "Nowhere" i oczywiście gra działa dalej bez problemów. Tym sposobem można by pozbawić mapę wszystkich nazw i oczywiście wszystko nazywałoby się "Nowhere". Co ciekawe gra by prawdopodobnie działała bez problemu, ale z ludzkiego punktu widzenia nie było by to chyba mile widziane.

W Korei - najmniejszym ale najbardziej dopracowanym teatrze chyba każdy obiekt ma indywidualnie przypisaną nazwę.
Na Bałkanach jest już trochę gorzej, ale i tu mosty mają swoje indywidualne nazwy. W teatrach z sieci, nazwy posiadają chyba tylko miasta (nawet nie jestem pewien czy wszystkie).

Odp: Zewnętrzny Edytor Kampanii dla Falcon 4.0 AF
« Odpowiedź #36 dnia: Sierpień 12, 2011, 16:48:59 »
Chciałbym także zrobić testy w tym edytorze. Co muszę zrobić, jakie pliki kopiować, gdzie rozpakować CampEditPreBeta? Proszę o krótką instrukcję.

Odp: Zewnętrzny Edytor Kampanii dla Falcon 4.0 AF
« Odpowiedź #37 dnia: Sierpień 12, 2011, 20:27:41 »
Cześć Vito! Program możesz skopiować stąd http://www.mediafire.com/?opqhwtr1aq592hm.
Program rozpakuj do dowolnego katalogu na dowolnie wybranym dysku. Lepiej jednak, aby w nazwie katalogu nie było spacji i znaków specjalnych. Po rozpakowaniu zobaczysz niebieską ikonę. Uruchom program z tą ikoną.
W katalogu jest plik readme.txt (niestety po angielsku), ale sądzę, że sobie dasz radę. W przypadku trudności pytaj.
Pozdrawiam
Piorun

Odp: Zewnętrzny Edytor Kampanii dla Falcon 4.0 AF
« Odpowiedź #38 dnia: Sierpień 13, 2011, 21:27:24 »
Piorun,
małe pytanie, do podglądu płytek będziesz korzystać z pliku texture.bin? Zip? Zakładam, że H - texture, mam jednak pytanie a raczej prośbę o pomoc. Muszę w jakiś sposób dopisać moje tekstury do pliku texture.bin. Korzystam z skryptu
tbin2txt.pl, w edytorze Perl odpalam skrypt i niby działa, wszystko zgodnie z PMC/Wiki :
Cytuj
When we have made new tiles to add, then use tbin2txt.pl to produce the text file from default Korean texture.bin like:

./tbin2txt.pl texture.bin >korea.txt

in the end of korea.txt, add your own textures like:

SET 4
HDYNE100.pcx 0 0
HDYNE101.pcx 0 0
HDYNE102.pcx 0 0
HDYNE103.pcx 0 0
HDYNE104.pcx 0 0
HDYNE105.pcx 0 0
HDYNE106.pcx 0 0
HDYNE107.pcx 0 0
HDYNE108.pcx 0 0
ENDSET

Now were ready to create the mytextures.bin, use the Perl txt2bin.pl with command line:

./txt2bin.pl korea.txt >mytextures.bin
Po wpisaniu odpowiedniej komendy powinienem mieć (gdzieś) plik korea.txt, tutaj jest problem, albo mam jakiś błąd w skrypcie, albo najzwyczajniej nie potrafię odnaleźć tego pliku.
W edytorze pojawia się komunikat: Can't open file name=DzSoft+Perl+Editor: No such file or directory at tbin2txt.pl line 6
Czyli linia:
open(FH, $ARGV[0]) || die "Can't open file $ARGV[0]: $!";
Zamieszczam cały skrypt, może ktoś pomoże?
#! /usr/local/bin/perl -w

$byteswap = (pack("N", 42) eq pack("L", 42)) ? 0 : 1 ;

unshift @ARGV, "-" if (@ARGV <= 0);
open(FH, $ARGV[0]) || die "Can't open file $ARGV[0]: $!";

binmode FH;
$offset = 0;
$count = read FH, $rec, 4*2;
$offset += 4*2;
@list = unpack("VVc",$rec);
print "# Start data\n";
printf "# Nsets %d Tiles %d \n", $list[0], $list[1];
$recno = $setno = 0;
while (!eof(FH)) {
    read FH, $rec, 5;
    my($nrec, $x1) = unpack("Vc", $rec);
    $offset += 5;
    print "# Start Set $setno has $nrec tiles, Terrain type $x1\n";
        print "SET $x1\n";
        $setno ++;
    for ($r = 0; $r < $nrec; $r++) {
        read FH, $rec, 20 + 4 + 4;
        my($name, $v1, $v2)  = unpack("A20VV", $rec);
        print "$name $v1 $v2\n";
        $offset += 20 + 4+4;
        for ($i = 0; $i < $v1; $i++) {
            read FH, $record, 16;
            my($v3, $f1, $f2, $f3) = unpack("VVVV", $record);
            ($f1, $f2, $f3) = dofloat($f1, $f2, $f3);
            print "\t$v3 $f1 $f2 $f3\n";
            $offset += 16;
        }
        for ($i = 0; $i < $v2; $i++) {
            read FH, $record, 24;
            my($v3, $f1, $f2, $f3, $f4, $f5) = unpack("VVVVVV", $record);
            ($f1, $f2, $f3, $f4, $f5) = dofloat($f1, $f2, $f3, $f4, $f5);
            print "\t$v3 $f1 $f2 $f3 $f4 $f5\n";
            $offset += 24;
        }
    }
    print "ENDSET\n";
    $recno += 16-$nrec;
}

sub dofloat {
    if ($byteswap == 0) {
        return unpack("f*", pack("N*", @_));
    }
    else {
        return unpack("f*", pack("L*", @_));
    }
}

Nie, wiem co robię źle, ale skrypty Perl u mnie nie działają, może to wina Windowsa, może trzeba robić na Linuxie? A może jest inny sposób edytowania bin?

Odp: Zewnętrzny Edytor Kampanii dla Falcon 4.0 AF
« Odpowiedź #39 dnia: Sierpień 14, 2011, 16:51:21 »
EGHI - przykro mi ale nie bawiłem się jeszcze tym narzędziem. W zasadzie do podglądu i edycji płytek będę zmuszony zaimplementować funkcjonalność tego skryptu w edytorze. Przyznam szczerze że osobiście nie lubię narzędzi opartych na skryptach. Dla mnie to jakby szkic zamiast gotowego obrazu, albo stosując analogię mechanika narzędzie powiązane sznurkiem i drutami. Jeśli ktoś zaprogramował i przetestował jakiś program w wersji skryptowej to powinie zrobić z tego pełnoprawny (binarny) exe, nie wymagający żadnego interpretera czy specjalnego środowiska. Skrypty powinno się stosować wtedy, gdy konieczna jest ciągła modyfikacja sposobu działania programu. W dobrym skończonym programie modyfikację działania osiągamy za pomocą parametrów a nie modyfikacji kodu! (skrypty najczęściej nie mają żadnego zabezpieczenia przed przypadkową modyfikacją kodu za pomocą edytora tekstowego).

Jeżeli możesz, podaj link na ten skrypt (czy skrypty) to się temu przyjrzę. A tak na gorąco - myślę że powinna istnieć w tym skrypcie (i chyba jest) funkcja do tworzenia najpierw pliku txt (stan dotychczasowy tekstur). Następnie ten plik powinno się dać edytować (np notatnikiem). Na tak zmodyfikowany plik napuszczamy pewnie inny skrypt lub skrypt ze zmienionymi parametrami.

tbin2txt.pl - to chyba skrypt do tworzenia pliku tekstowego. Po jego uruchomieniu w katalogu roboczym musi pojawić się plik wynikowy.




Odp: Zewnętrzny Edytor Kampanii dla Falcon 4.0 AF
« Odpowiedź #40 dnia: Sierpień 14, 2011, 17:50:56 »
Jeżeli możesz, podaj link na ten skrypt (czy skrypty) to się temu przyjrzę. A tak na gorąco - myślę że powinna istnieć w tym skrypcie (i chyba jest) funkcja do tworzenia najpierw pliku txt (stan dotychczasowy tekstur). Następnie ten plik powinno się dać edytować (np notatnikiem). Na tak zmodyfikowany plik napuszczamy pewnie inny skrypt lub skrypt ze zmienionymi parametrami.
tbin2txt.pl - to chyba skrypt do tworzenia pliku tekstowego. Po jego uruchomieniu w katalogu roboczym musi pojawić się plik wynikowy.
Właśnie o to mi chodzi, skrypt nie tworzy pliku txt a powinien.
Procedura jest taka:
Odpalam skrypt, w wierszu poleceń (W oknie DOS) wpisuję komendę ./tbin2txt.pl texture.bin> korea.txt
W tym momencie skrypt powinien utworzyć plik korea.txt z dotychczasowym stanem textur. Niestety tego nie robi.
Kolejnym krokiem jest edycja tekstowa tego pliku, czyli dopisanie własnych textur.
Po modyfikacji plik ten traktujemy skryptem txt2tbin.pl który konwertuje txt do bin. Niby nie jest to skomplikowane ale ja wciąż nie mogę dojść co robię źle, stawiam na błąd w skrypcie ale możliwe, że błąd leży w moich działaniach  :005:.
Link do skryptów: http://tactical.nekromantix.com/tactical/wiki/doku.php?id=falcon4:tools:perlscripts
Według opisu "Adding New Textures" próbuję to zrobić: http://tactical.nekromantix.com/tactical/wiki/doku.php?id=falcon4:textures



Odp: Zewnętrzny Edytor Kampanii dla Falcon 4.0 AF
« Odpowiedź #41 dnia: Sierpień 14, 2011, 18:21:59 »
EGHI - spróbuj tak:

Przekopiuj plik tbin2txt.pl do katalogu ....\terrdata\texture.
Teraz odpal sobie okno wiersza poleceń DOS.
Przejdź na dysk Falcona.
Przejdź do katalogu .....\terrdata\texture.
Teraz wprowadź komendę:
   tbin2txt.pl texture.bin
i wciśnij Enter.

Albo pojawi Ci się sensowna zawartość pliku wynikowego, albo pojawi Ci się jakiś błąd.

Jeśli błąd - to pokaż nam go, jeśli sensowny plik to :
wprowadź komendę
   tbin2txt.pl texture.bin > korea.txt
i Enter.
Musi (napewno) pojawić się w tym katalogu plik korea.txt.

Napisz jakie masz wyniki.
Powodzenia - czekam OnLine  :001:

Odp: Zewnętrzny Edytor Kampanii dla Falcon 4.0 AF
« Odpowiedź #42 dnia: Sierpień 14, 2011, 20:03:46 »
Nadal nic  :005:.Nie pojawia się nawet żaden błąd.
Myślę, że to może być wina "Perl Interpreter" który pobrałem tutaj: http://www.dzsoft.com/getperl.htm
Nie wiem co to jest, ale w edytorze skryptu mam takie komunikaty:
Cytuj
Name "main::count" used only once: possible typo at tbin2txt.pl line 10.
Can't open file name=DzSoft+Perl+Editor: No such file or directory at tbin2txt.pl line 6
Linia 10 to -$count = read FH, $rec, 4*2;
Linia 6 -open(FH, $ARGV[0]) || die "Can't open file $ARGV[0]: $!";     

Przy okazji, z jakiego edytora Perl korzystasz? Ja pobrałem DzSoft Perl Editor, wersja testowa do 120 linii, ale ten skrypt ma tylko 54


Odp: Zewnętrzny Edytor Kampanii dla Falcon 4.0 AF
« Odpowiedź #43 dnia: Sierpień 14, 2011, 20:07:20 »
Ja mam ActivePerl-5.8.8.817-MSWin32-x86-257965.msi i na nim chodzi bez problemów.

Nie pamiętam skąd go wziąłem ale jeśli chcesz mogę Ci go wysłać pocztą (niestety 13 MB)

Właśnie dlatego (między innymi) nie lubię skryptów :021:

Odp: Zewnętrzny Edytor Kampanii dla Falcon 4.0 AF
« Odpowiedź #44 dnia: Sierpień 14, 2011, 20:19:41 »
Mam dokładnie to samo.
Dziwna sprawa  :005:, jestem skłonnym zrobić format Windowsa. Możliwe, że tam coś nie tak.
Jeszcze jedno małe pytanie, czy w Twoim edytorze po uruchomieniu skrypty też masz takie komunikaty?

Pomyłka, ja mam -ActivePerl-5.12.4.1205-MSWin32-x86-294981
Właśnie pobrałem, ten co Ty masz i podczas próby instalacji dostaje komunikat, że to nieprawidłowy pakiet instalatora windowsa.