Omdrejningspunkter
For at de animationer, som vi laver i det
følgende, skal fungere rigtigt, og alle lokomotivets dele også vises på deres
rette plads i MSTS, må vi sikre os, at alle pivotpunkter er, hvor de skal
være. Hjulsættenes og kobbelstængernes pivotpunkter
er på plads. De må under ingen omstændigheder ændres mere. For at positionere pivotpunkterne korrekt går
vi ind i Hierarchy værktøjskassen og trykker på knappen Affect
Pivot Only. Ved hjælp af forskydeværktøjet og Transform Type-In
vinduet nulstiller vi efter tur positionstallene for alle delenes
pivotpunkter, med undtagelse af hjul og kobbelstænger. De enkelte dele
kan vælges efter tur via valglistevinduet (H-tast). Derefter
inaktiveres Affect Pivot Only ved et nyt klik herpå. Bemærk!
Skulle et af pivotpunkterne for hjul eller
kobbelstænger ved et uheld blive nulstillet, kan vi rette fejlen ved, at vi
for pågældende hjul eller kobbelstænger vælger Center to Object. |
|
|
Hierarkiet fastlægges
For at TrainSimulator kan håndtere
lokomotivet, må de enkelte dele stå i det rigtige, hierarkiske forhold til
hinanden. For MSTS gælder: På det øverste hierarkiske niveau, det såkaldte Root-
(rod-) niveau, må der kun findes ét objekt med navnet Main. Til dette
objekt knyttes ("linkes") alle andre objekter. Først markerer vi kobbelstængerne og klikker i
hovedværktøjsbjælken på ikonen Select and Link, og trykker på H-tasten.
Select Parent vinduet åbnes. Her vælger vi Wheels2 og klikker
på Link. Herefter markerer vi et efter et alle lokomotivets øvrige
dele, med undtagelse af Main, og linker dem på samme vis til Main. |
|
|
|
Nu aktiverer vi igen markeringspilen i
hovedværktøjsbjælken og trykker på H-tasten. Når vi sætter
"hak" i Display Subtree, vises hierarkiet som følger: |
|
|
Nu kommer animering ind i billedet
Efter at vi har lukket objektvalgs-billedet
med Cancel, skal vi til at lave animationen. Vi åbner Time Configuration
vinduet (uret for neden til højre). I sektionen Animation indstiller
vi på følgende værdier:
Animationen af hjulrotationen foretages i
trin, de såkaldte Frames (rammer). Firmaet Kuju, som har udviklet MSTS,
foreskriver for hjulanimation 9 animationstrin à 45 grader, hvor det første
trin (trin 0) skal være identisk med det sidste (trin 8). Under simulationen
beregner MSTS selv mellemstillingerne. Advarsel!
Det er muligt at animere hjulene med et andet
antal trin, og dermed også en anden drejningsvinkel. Dette fraråder jeg på det kraftigste!
MSTS er indrettet således, at hjulradius
svarende til den foreskrevne animation i 45 graders skridt skal indsættes i
den fil, som beskriver køretøjet (.eng-filen). Ved en animation med andre
vinkler må denne værdi justeres tilsvarende, for at hjulet kan rotere med den
rigtige hastighed i MSTS. Dette kan godt lade sig gøre. Da denne værdi
(WheelRadius) i MSTS også indgår i køreegenskaberne, kan lokomotivets
kørselsforhold påvirkes uheldigt. |
|
|
Først hjulene ...
Vi aktiverer Left vinduet og klikker på
knappen Animation for neden til højre. Vinduet får en rød ramme, og animationsknappen
bliver rød. Det første animationstrin (trin 0) forbliver, som det er. Vi
trækker skyderen under vinduet til stillingen 1/8 (trin 1 af 8 trin).
Dernæst markerer vi alle tre hjulsæt. Hold Ctrl-tasten nedtrykket og
marker hjulsættene efter hinanden. Efter at vi har aktiveret vinkelmagneten og og
rotationsværktøjet, peger vi med musen nøjagtigt på midten af det midterste
hjul, og trækker med nedtrykket musetast langsomt nedad. Alle tre hjul skal
nu dreje sig. Træk musen langsomt nedad, indtil Z-værdien viser 45 grader. NB!
Da kobbelstangen
er linket til det midterste hjulsæt, drejer den med. Det er som det skal være, og vi korrigerer det senere. |
|
|
|
Derefter sætter vi animationsskyderen på 2/8
og drejer videre 45 grader. |
|
|
|
Dette gentager vi for alle skyderindstillinger
... |
|
|
|
... indtil vi er kommet tilbage til
udgangsvinklen. |
|
|
|
Så sætter vi animationsskyderen tilbage til 1/8
og markerer kobbelstangen. Denne drejer vi nu -45 grader i hvert trin,
således at den hele tiden forbliver vandret. |
|
|
|
Når vi er færdige med dette, inaktiverer vi
igen animationsknappen. Med skyderen kan vi nu iagttage animationen. |
|
|
Forberedelse af eksporten til MSTS
Vi bruger de originale data for GP38 til vores
lokomotiv. Først laver vi under stien C:\Programmer\Microsoft Games\Train
Simulator\TRAINS\TRAINSET\ en mappe med navnet gtd1. Hertil
kopierer vi mapperne SOUND og CABVIEW samt filerne gp38.eng
og gp38.sd. |
|
|
|
Så omdøber vi filen gp38.eng til gtd1.eng,
og gp38.sd til gtd1.sd, og åbner filen gtd1.sd med en
Unicode Editor (i Win2000 kan man bruge Notepad (Notesblok), i andre systemer
WordPad). Her ændrer vi oplysningerne i tredie og syvende linie som følger:
Oplysningen ud for shape angiver, hvad
den fil hedder, som indeholder modellens 3D-data. Det er den såkaldte Shape-
(form-) fil. Den kan kendes på, at den ender på .s. Tallene i
ESD_Bounding_Box definerer en usynlig kasse, som omslutter lokomotivet. Den
tjener blandt andet til kollisionskontrol. Tallene angiver fra venstre til
højre:
Så gemmer vi filen. |
|
|
|
I filen gtd1.eng, som beskriver
køretøjet, ændrer vi følgende linier således:
Linierne er spredt vidt omkring i
gtd1.eng-filen. *)
"Diesellok aus dem gmax Tutorial von Volker M. Bollig" =
Diesellokomotiv fra Gmax-vejledning af Volker M. Bollig NB!
Sæt parenteserne nøjagtigt som vist ovenfor. Gem filen og kopier derefter filen gtd1.ace
til folderen C:\Programmer\Microsoft Games\Train
Simulator\TRAINS\TRAINSET\gtd1. |
|
|
Lokomotivet
synliggøres
For at lokomotivet skal kunne ses i MSTS, må
MSTS vide, ved hvilken afstand fra betragteren de enkelte flader i
lokomotivet skal indlæses i grafikkortets arbejdslager. Da alle køretøjets
detaljer alligevel ikke kan ses på større afstande, behøver alle flader
heller ikke at indlæses på en gang. Dette kunne føre til den frygtede,
sekundlange stilstand i simulationen. Kuju anbefaler at indlæse store dele
ved 500 - 1000 meters afstand, og derefter mindre dele efterhånden, med
aftagende størrelse. F.eks.:
Dette opbygger vi ved hjælp af den såkaldte Level
of Distance Manager (LOD-Manager), i vinduet Trainsim 1 LOD Tool.
Det finder vi under menupunktet Train Simulator: |
|
|
|
Først markerer vi det komplette lokomotiv og
klikker i LOD Tool på det store plus-tegn (Add LOD Level). Så indtaster vi i
feltet LOD Distance værdien 50. |
|
|
|
Denne proces gentager vi med de andre værdier
200, 500 og 1000. Statuslinien i LOD Tool viser nu Level (niveau) 4 af 4. |
|
|
|
Nu er afstandene indtastet. Så skal vi fortælle
MSTS, hvilke flader der skal vises ved hvilke afstande. I MSTS indlæses
lokomotiver for det meste, før de kommer ind i kameraets synsfelt. Derefter
skal der med aftagende afstand hele tiden vises flere og flere flader. Kører
lokomotivet bort fra kameraet, så fjernes fladerne efterhånden igen. Det er
ud fra sidstnævnte situation, at vi betragter fladernes tilstand i
LOD-Manager. Først betragter vi altså det tilfælde, hvor
lokomotivet har nået den korteste afstand (indtastning i LOD-Manager). Dette var
50 meter. Her skal alle flader vises. Derfor skal der heller ikke ændres
noget i modellen her. Med pilene i LOD-Manager bladrer vi til Level 200
meter. |
|
|
|
Her fjerner vi nu alle flader, som ikke mere
skal være synlige på en afstand større end 50 meter (forrige niveau).
I vores tilfælde er det fladerne i kobbelstængerne og pufferne. Efter tur
markerer vi objekterne, går i polygontilstand, markerer alle polygoner eller
faces med en markeringsramme, og sletter dem med Delete-tasten. Hvis Gmax
spørger, om isolerede vertices skal slettes (Delete Isolated Vertices?),
svarer man Ja. Advarsel!
Fjern aldrig objekter, kun polygoner.
I det næste billede kan vi ikke se puffere og
kobbelstænger mere, men i LOD-Manager's hierarki-vindue ser vi som før
oplysningerne om objekterne Cylinder01 og -02 (pufferne) samt kobbelstængerne
(Kuppelstangen). |
|
|
|
Bladrer vi tilbage til Level 50 meter (med
pilene), ser vi, at puffere og kobbelstænger stadig er der. Men på afstande
mellem 50 og 200 meter vil de nu være skjult. |
|
|
|
Nu skifter vi til LOD Level 500 meter og
fjerner på samme måde ikke alene puffere og kobbelstænger, men også hjulene.
Det vil sige, at kommer vi nærmere lokomotivet end 200 meter, indlæses og
vises hjulene. |
|
|
|
Ved LOD Level 1000 meter fjerner vi yderligere
fladerne i tag og pufferplanker. |
|
|
|
I statuslinien ser vi, hvor mange polygoner
der vises ved de forskellige afstande. Ved 1000 meter er det kun 68 polygoner
... (Man skal bladre en gang tilbage og frem igen
med pilene for at få ajourført dette tal. O.a.) |
|
|
|
... ved 500 meter er det 160 polygoner ... |
|
|
|
... ved 200 meter helt op på 592 polygoner ... |
|
|
|
.. og så ved 50 meter alle 1640 polygoner. |
|
|
|
(En lidt nemmere måde at lave disse LODs på er at lave niveauerne ét ad gangen. Altså først niveau 1 med det hele. Så tilføjer man niveau 2 og tager polygoner ud, inden næste niveau tilføjes. Så tilføjes niveau 3 o.s.v. På den måde slipper man for at tage de samme polygoner ud flere gange, for den kopierer fra forrige niveau, når et nyt laves. O.a.) Sammenlægning af ikke-animerede objekter
For yderligere at hæve billedfrekvensen
(Framerate) i MSTS, kan vi slå ikke-animerede objekter sammen. Så eksporteres
de i en fælles "matrix". Det betyder, at selv om objekterne fortsat
er separate objekter i Gmax, behandles de i grafikkortet som ét. Så behøver
grafikkortet ikke at beregne objekternes pivotpunkter m.v. hver for sig. Det sparer værdifuld
beregningstid. For at opnå dette behøver vi blot, ligegyldigt
i hvilket LOD-Level vi er, at markere objekterne Fahrgestell, Aufbau,
Dach og pufferne Cylinder01 og Cylinder02 ét ad gangen i
listen i LOD-Manager, og sætte et hak i Collapse Node for hvert. |
|
|
|
Med File - Export to .S eksporterer vi
modellen til mappen C:\Programmer\Microsoft Games\Train Simulator\ TRAINS\TRAINSET\gtd1,
under navnet gtd1.s. Husk at gemme arbejdet! (Her er der vist en fejl i Gmax MSTS Game
Pack: Det er bedst at gemme FØR man eksporterer - ellers risikerer
man, at programmet bryder ned. Og et tip: Man bør bladre tilbage til LOD
Level 1, før man gemmer. O.a.) |
|
|
Prøvekørsel
Til prøvekørslen må vi først lave en
togstamme, en såkaldt Consist, eller downloade den her. Consist-filen gtd1_solo.con kopierer vi til
mappen C:\Programmer\Microsoft Games\Train Simulator\TRAINS\CONSISTS. I MSTS udvælger vi lokomotivet gtd1 og
begiver os ud på prøveturen. |
|
|
Til lykke!
Vores første lokomotiv kører! Uuuups....
... vi har jo rent glemt lygterne. ;-) Kapitel 3, simple konstruktioner - et
diesellokomotiv er hermed slut. Den
nøjagtige rækkefølge af de følgende emner har jeg endnu ikke fastlagt
præcist. Det ville glæde mig i en ikke alt for fjern
fremtid at se en eller anden model, som er lavet med udgangspunkt i denne
vejledning. Spørgsmål til denne vejledning og til
MSTS-Lok- og objektbygning, så vel som forslag hertil, kan fremsættes i
forumet på Sebastian Frey eller pr. e-mail til mig. God fornøjelse
|