Jednoduché koľajové vozidlo


Stavba koľajového vozidla vo svojej podstate nieje zložitou vecou. Samozrejme modelovania je tu trochu viac ako na domčeku či inom statickom objekte. Taktiež je vhodnejšie spájať časti do jedného celku, nezabúdať zvárať vertexy a celé vozidlo riešiť ako monolit ak to samozrejme ide a čo záleží hlavne od zložitosti.
Aj tu nieje nutné modelovať každý drobný detail pretože mnohé sa dá riešiť vhodnou textúrou. A tak je aj možné, že sa nevyhnete dvojitému modelovaniu na vytvorenie 3D textúry pokiaľ nepoužijete foto textúru. V nasledujúcom tútoriale nebudem rozoberať každý prvok modelovania do detailu, lebo väčšinu nájdete v iných tútoriáloch. Skôr sa zameriam na celok a spojenie do funkčného celku v TRS s pantografom a nápravami.
Čo do textúr je možné použiť foto-textúru z kolmého pohľadu na ktorej máme jeden bok, jedno čelo a strechu, interiér a prípadne ďalšie časti v spoločných, alebo samostatných bitmapách.


 
               

Nebudem tu uverejňovať všetky použité textúry. Je ich príliš veľa a u každého modelu boli v podstate použité iné. Ak chcete môžete si ich pozrieť v modely električky BEUS18, ktorého beta verziu si môžete objednať.
Čo je ale dôležité všetky alfa kanálové textúry nesmú byť súčasťou iných normálnych bitmáp a špeciálne na sklo doporučujem použiť textúru s jemným vzorom aby sa simulovalo zašpinenie okna tak že alfa kanál bude vlastne negatív.




A ďalšou asi najdôležitejšou textúrou bude bočný, čelný a horný pohľad najlepšie priamo presný technický výkres, alebo presná kresba kde sú zachované pomery, podľa ktorej budeme stavať.



Preto si ako prvé vytvoríme tri plane prekrižujúce sa vo svojom strede a strede scény, o dĺžke šírke a výške presne podľa skutočných rozmerov vozidla ktoré budeme modelovať, resp. textúru musíme namapovať tak aby dodržiavala tieto rozmery.



Z kriviek vymodelujeme pôdorys zo všetkými priečnymi stenami,  pomocou OUTLINE zdvojíme steny a pomocou EXTRUDE vytiahneme do požadovanej výšky. Môžeme však samozrejme modelovať aj polygónovým modelovaním, modelovaním z jednoduchých kvádrov, alebo akokoľvek inak. Záleží to od vozidla a jeho zložitosti a je už jedno či to bude hneď od začiatku jeden celok, alebo ho spravíme po častiach.



Teraz si objekt prevedieme na EDITABLE POLY a vytvoríme niekoľko kvádrov o veľkosti okien a vôbec všetkých otvorov. Tie umiestnime na pozíciu okien, pričom aj tu sa riadime nákresom



Nakoniec pomocou BOOLEAN modelovania vyrežeme otvory do tela vozidla.



Pred použitím BOOLEAN je dobré previesť objekt na EDITABLE POLY a neodstraňovať z objektu žiadne prebytočné  polygóny. Gmax má občas totiž tendenciu poposúvať vertexy, a nesprávne previesť prepočty pri zložitejších tvaroch, resp.  chybe v modelovaní ktorú prehliadnete.
Ako ďalšie si vymodelujeme podlahu, ako aj všetky súčasti  interiéru. Zároveň interiér otextúrujeme pretože sa textúruje výrazne jednoduchšie v tejto časti.



Po dokončení interiéru pokračujeme podobne so súčasťami podvozku, nárazníkmi a pod.



Doplníme ostatné súčasti interiéru, a prípadne i exteriéru na hlavnej skrini ako sú spätné zrkadielka, dvere, svetlá a všetky ešte nevymodelované vnútorné prvky prv ako vnútorné osvetlenie, držadlá a pod. prv než vymodelujeme strechu



Tá by mala nasledovať ako posledná v čase keď je interiér kompletne vymodelovaný a otextúrovaný.



Nakoniec doplníme súčasti ktoré sú umiestnené na streche, pričom ako aj u ostatných súčasti je vhodnejšie jednotlivé časti modelovať externe a nakoniec ich importovať do scény vozidla.



Ako poslednú súčasť pridávame zložky obsahujúce alfa kanál. Teda okna, vnútorné sklá a ostatné súčasti kde je použitý alfa kanál.
Model máme takto vlastne dokončený a pristúpime teda k poslednej fáze a to sú pomocné body ktoré definujú okrem iného napríklad kde bude ktorá externá  zložka pripojená.
Ako prvé si zadefinujeme body pre pasažierov. Zvlášť pre sediacich a zvlášť pre stojacich. Sediacich umiestňujeme tesne pri sedadle pričom dodržiavame pravidlo orientácie bodu aby cestujúci skutočne sedel na sedadle a nie vo vzduchu.



Bordovou farbou je označený okraj sedadla, zelené body sú pre sediacich pasažierov a fialové v strede pre stojacich pasažierov. Podobne by ste postupovali pri nákladnom vozni s bodmi pre tovar.
Body pre sediacich pasažierov si označte ako a.sitpoint0a až a.f, a 1 až n podľa počtu miest na sedenie. Na státie body pomenujte ako a.standpoint0 až n podľa počtu miest na státie.
Ako ďalšie definujeme pomocné body pre pripojenie podvozku a pantografu. Tie musia byť označené ako a.bog0 pre prvú a a.bog1 pre druhú nápravu. Umiestňujú sa na pozíciu Z=0 a X=0. Y je podľa umiestnenia. Tento bod je zároveň stredom nápravy okolo ktorého sa otáča v zákrutách. Musí korešpondovať so stredom nápravy.



Pantograf sa označuje ako a.pant0 pre prvý a a.pant1 pre druhý pantograf a umiestňuje sa na miesto kde sa má pripojiť k modelu. Aj tu rovnako ako u podvozku je dôležitá X,Y,Z orientácia a centrovanie na stred v X ose.



Ďalšie dôležité body sú a.limfront a a.limback určujúce pripojenie ďalšieho vozňa a teda začiatok a koniec modelu (bordová farba),  a.light0 a a.light1 určujúce hlavné biele svetlo (žltá farba), a.driver0a.driver1 určujúce pozíciu vodiča čo sa dosadí do kabínky (zelená farba) a a.cabfront a a.cabback určujúca pohľad z cabu (ružová farba). Aj tu je bod ako u drivera vo výške očí. Tieto body hra automaticky hľadá a na ich pozíciu pripája príslušné externé časti. Bodov je samozrejme ďaleko viac a ich presné pomenovanie a využitie si pozrite v CCG k TRS. Ja som popísal akurát tie najhlavnejšie.



Teraz si vytvoríme adresár kde bude vozidlo exportované a do neho dva podadresáre. Do jedného takto dokončené vozidlo exportujeme ako im súbor teda nas_model\elektricka_body\elektricka_body.im  kde budú aj všetky textúry a do druhého podadresáru  nas_model\elektricka_art\ umiestnime ikonu modelu 64x128 pixelov zloženú z plnofarebného tga obrázku a alfa kanálového obrázku.




a textový textúrový súbor elektricka_art_icon.texture.txt,  ktorý bude obsahovať nasledovné

Primary=elektricka_art_icon.tga
Tile=st
Hint=Dynamic
Alpha=elektricka_art_icon_a.bmp

Súčasťou modelu je aj tieň, alfa čísla, prípadne animácia dverí, nakladania a vykladania a podobne. Všetky tieto súčasti sú samostatne modelované súbory v samostatných adresároch. Animácie dverí napríklad ako ďalší podadresár body podadresáru. Tieň je v podadresáre nas_model_shadow a alfa čísla v podadresáre nas_model_alpha_numbers. O ich použití ako aj o ďalších súčastiach modelu ako podvozok, pantograf a pod. sa zmienim možno v pokračovaní tohoto tútorialu ak o to bude záujem, alebo samostatných tútorialoch niekedy neskôr. Preto ešte popíšem stručne confing.txt. Ten je umiestnený v hlavnom adresáre.

kuid                                       <kuid:XXXXX:XXXXX>
category-class                        "AL"
category-region-0                   "SK"
kind                                         "traincar"
category-era-0                        "1930s"
category-era-1                        "1940s"
origin                                       SK ELEKTRICKY
engine                                      1
name                                        "BEUS31"
mass                                        23000
company                                  "BEUS Bratislava"
bogey                                       <kuid:XXXXX:XXXXX>
interior                                     <kuid:XXXXX:XXXXX>
enginespec                                <kuid:XXXXX:XXXXX>
enginesound                            <kuid:XXXXX:XXXXX>
hornsound                                <kuid:XXXXX:XXXXX>
pantograph                              <kuid:XXXXX:XXXXX>
asset-filename                        "beus31"
kuid-table {
}
obsolete-table {
}
queues {
    passengers {
        size                    60
        initial-count                15
        passenger-queue                1
        product-kuid                <kuid:-3:10060>
        attachment-points {
            0                        "a.sitpoint0a"
            1                        "a.sitpoint1a"
            2                        "a.sitpoint2a"
            3                        "a.sitpoint0b"
            4                        "a.sitpoint1b"
            5                        "a.sitpoint2b"
            6                        "a.sitpoint0c"
            7                        "a.sitpoint1c"
            8                        "a.sitpoint2c"
            9                        "a.sitpoint0d"
            10                        "a.sitpoint1d"
            11                        "a.sitpoint2d"
            12                        "a.sitpoint0e"
            13                        "a.sitpoint1e"
            14                        "a.sitpoint2e"
            15                        "a.sitpoint0f"
            16                        "a.sitpoint1f"
            17                        "a.sitpoint2f"
            18                        "a.sitpoint0g"
            19                        "a.sitpoint1g"
            20                        "a.sitpoint2g"
            21                        "a.sitpoint0h"
            22                        "a.sitpoint1h"
            23                        "a.sitpoint2h"
            24                        "a.standpoint00"
            25                        "a.standpoint01"
            26                        "a.standpoint02"
            27                        "a.standpoint03"
            28                        "a.standpoint04"
            29                        "a.standpoint05"
            30                        "a.standpoint06"
            31                        "a.standpoint07"
            32                        "a.standpoint08"
            33                        "a.standpoint09"
            34                        "a.standpoint10"
            35                        "a.standpoint11"
            36                        "a.standpoint12"
            37                        "a.standpoint13"
            38                        "a.standpoint14"
            39                        "a.standpoint15"
            40                        "a.standpoint16"
            41                        "a.standpoint17"
            42                        "a.standpoint18"
            43                        "a.standpoint19"
            44                        "a.standpoint20"
            45                        "a.standpoint21"
            46                        "a.standpoint22"
            47                        "a.standpoint23"
            48                        "a.standpoint24"
            49                        "a.standpoint25"
            50                        "a.standpoint26"
            51                        "a.standpoint27"
            52                        "a.standpoint28"
            53                        "a.standpoint29"
            54                        "a.standpoint30"
            55                        "a.standpoint31"
            56                        "a.standpoint32"
            57                        "a.standpoint33"
            58                        "a.standpoint34"
            59                        "a.standpoint35"
            60                        "a.standpoint36"
            61                        "a.standpoint37"
        }
    }
}
trainz-build                        1.3
username                        "BEUS 31"

Dôležitý je tag engine ktorý v podstate určuje či vozidlo ma alebo nemá definovaný engin motoru teda či sa jedná o lokomotývu, alebo ťažné vozidlo.
Tag bogey určuje kuid existujúcej nápravy (náprav), tag  interior určuje definovaný cab, tag  enginespec určuje kuid enginu, enginesound kuid zvuku motora, hornsound zvuk klaksónu a pantograph kuid pantografu.   
Časť queues  definuje pasažierov pričom size určuje maximálny počet pasažierov - bodov pre pasažierov v modely,         initial-count počiatočnú inicializačnú hodnotu počtu pasažierov pri postavení vozidla na koľajnice v editore,         passenger-queue zdroj,  product-kuid  kuid číslo tovaru - pasažierov a časť attachment-points {} definuje body ktoré sme vytvorili v modely pre pasažierov.                       
Ak ste postupovali správne a máte vytvorené všetky externé súčasti (viac sa dočítate v CCG), tak sa vám v hre v editore objaví váš prvý model funkčného vozidla pričom sami spoznáte, že to nielenže nieje nič zložité, ale aj že je to v zásade to isté  ako modelovať akýkoľvek iný objekt do TRS.



Viac o plnej sade električiek nájdete tu. Ak máte nejaké otázky kľudne mi pošlite email.