Page 1 of 1

Chození po postelích

Posted: 02:02 04. Jan 2012
by Legition
Ahoj, rád bych se zeptal. Chození po postelích. To je tak přímo navržená ta samotná postal z haků? Nebo jste si to nějak zpřístupnily?

Re: Chození po postelích

Posted: 02:31 04. Jan 2012
by Shaman88
Nerozumím otázce - všechno je z haků.

Re: Chození po postelích

Posted: 05:20 04. Jan 2012
by Legition
Jestli to chození po postelích bylo v hacích automaticky, nebo jste si to upravily samy. Pokud jste si to přidělaly sami rád bych si o tom promluvil. Hodně se mi to líbí a rád bych to (s vaším svolením) Přidal i do Sferie...

Re: Chození po postelích

Posted: 09:04 04. Jan 2012
by kokosak
Dělá se to úpravou walkmeshe daného tilesetu. Prakticky jakýkoli povrch, který je vidět, je možné definovat jako pochozí, nebo nepochozí. Dej si vyhledat NWN walkmesh editor a utčitě něco najdeš.

Re: Chození po postelích

Posted: 10:01 04. Jan 2012
by kucik
Je to sada nějakejch dlaždic na vaultu, kterejma se přepíše, nebo doplní dřívější tilesety.

Re: Chození po postelích

Posted: 10:43 04. Jan 2012
by davidsoft
Pokud by si někdo chtěl upravit povrch na jakékoliv dlaždici, jde o osmý parametr každého trojúhelníku v seznamu faces v aabb-uzlu modelu (každý řádek představuje jeden trojúhelník). Příklad: ((...) značí pro stručnost vynechané části kódu)

Code: Select all

node aabb Walkmesh
(...)
  faces 2
    0 1 2 1 0 0 0 20
    0 2 3 1 0 0 0 20
(...)
endnode
V uvedeném příkladu je to číslo 20 pro oba trojúhelníky. Toto číslo odkazuje na řádek souboru surfacemat.2da (naleznete např. v archivu 2dasource.zip ve standardní instalaci NWN), kde ze sloupce Label poznáte, o jaký povrch jde (Grass, Stone, Water apod., je potřeba umět trochu anglicky) a ze sloupce Walk, zda je walkable či non-walkable:

Code: Select all

   Label         Walk   WalkCheck   LineOfSight   Sound   Name   IsWater Visual            
20 Sand          1      0           0             SD      Sand   0       ****              
V tomto případě se jedná o písek (sand), který je walkable. Přepsáním čísla u obou trojúhelníků např. na 2 (Obscuring) dosáhnete, že se dané části dlaždice stanou non-walkable. Pokud tedy chcete učinit nějakou postel walkable, stačí najít v seznamu faces v aabb-uzlu souboru s příponou .wok odpovídající trojúhelníky, změnit jim osmý parametr např. na 5 (Wood) a tutéž změnu provést i v odpovídajícím souboru s příponou .mdl.

Uvedený uzel se nachází u každé dlaždice na dvou místech: v souboru s příponou .wok, kde pak už nebývá žádný další uzel, a v souboru .mdl, který ovšem může být zkompilovaný (binární) a je nutno jej před úpravou dekompilovat. K tomu doporučuji NWN Model Compiler (http://nwvault.ign.com/View.php?view=Ot ... il&id=1212).

Upravenou dlaždici (.mdl i .wok) pak lze umístit do HAKu, ten připojit k modulu a změny se v něm projeví.

Podrobnější informace o syntaxi a sémantice formátu MDL lze nalézt na: http://www.wnwn.net/mdl/ Uzly typu aabb tam nejsou přímo popsány, ale jejich syntaxe je velmi podobná uzlům typu trimesh. U uzlů trimesh ale význam osmého parametru v seznamu faces není znám: The purpose of the final integer is unknown. (http://www.wnwn.net/mdl/faces.html)

P. S.: To, že se vám podaří učinit postel walkable, ještě neznamená, že půjde chodit po jejím povrchu. Na mnoha dlaždicích na takových místech nebývá korektně nastavená výška podlahy, takže se vám může stát, že pak bude postava postelí procházet skrz. Úprava výšky podlahy je ovšem náročnější a v takovém případě bývá nutno použít vhodný editor (např. volně dostupný gmax - http://www.turbosquid.com/gmax), jehož ovládání ovšem není snadné se naučit.

//edit: Ještě drobná poznámka: Walkmesh Editor (http://nwvault.ign.com/View.php?view=Ot ... ail&id=665) lze určitě použít také.

Re: Chození po postelích

Posted: 11:32 04. Jan 2012
by Legition
Děkuji za velmi řádnou a vyčerpávájící odpověď