Tutorial #32 - Práce s kamerou |
Autor : Didymos |
Download = Tento tutorial + ukázka |
Málokdo tuší, že samotný editor v sobě ukrývá kameru, se
kterou se dá velmi dobře pracovat. Jen mě opravdu překvapuje, že o
tom za celou éru OFP ještě nikdo nenapsal ani čárku. Buď to bylo
velmi dobře střežené tajemství, protože jak se brzy dočtete, má
to určitý ochranný prvek nebo to je prostě jen náhoda.
Nebýt Paladina, asi by ještě pár dní trvalo, než bych se o tom
dozvěděl, nicméně to někde prasklo, protože už mi o tom psali i
jiní. Já se tu nebudu dále udivovat nad tím, proč to už dávno
není na světě a nebudu ani přemýšlet, kolik hodin práce by mi to
ušetřilo a přejdu k samotnému vysvětlení.
Jediné co potřebujete, je vytvořit si v editoru nějaký
objekt, může to být klidně přímo hráč. Já osobně používám
imaginární jednotu pro lepší mobilitu. Poté si vytvoříte spínač
s nějakou rozlohou a spojíte ho přes F2 s hráčem. Pak už stačí
do pole při aktivaci spínače napsat:
cam Exec "camera.sqs" (kde cam je jméno imaginární jednotky)
pak stačí zapnout misi a kamera se vám objeví 2 metry nad
touto jednotkou. V případě, že místo cam napíšete jméno jiného
objektu, objeví se vám kamera nad tímto objektem. Jak jednoduché a
prosté. Pozor ale na to, abyste v adresáři s vaší misí neměli
skript se jménem camera.sqs, protože v tomto případě to
nefunguje!!! (zajímavé ) Teď se můžete volně pohybovat v celém prostředí OFP pomocí těchto kláves:
šipky = dopředu, dozadu, doprava, doleva
šipky na numerické klávesnici (8, 2, 6, 4) = vám umožní otáčení nahoru, dolů, doprava a doleva
+ a - na numerické klávesnici = přiblížení a oddálení
E nebo to, jak máte nastavený sprint při hraní = rychlé posunutí dopředu
X = rychlý pohyb doleva
C = rychlý pohyb doprava
Q = pohyb nahoru
Y (na české klávesnici) = pohyb dolů
L = vypne středový záměrný kříž
mezerník = kamera zaměří cíl, na kterém je záměrný středový kříž
V = vypne kameru a vrátí vás do hry
Teď už jen stačí nastavit polohu kamery tak, jak si přejete a zmáčknout klávesu: levé Ctrl.
Tímto jste právě uložili pozici kamery. Tuto pozici najdete ve
složce OFP, která je standardně: "C:\Program
Files\Codemasters\OperationFlashpoint..". Tady najdete soubor:
clipboard.txt
V tomto textovém souboru bude vámi právě uložená pozice ve formátu např.:
;=== 16:42:30
_camera camSetTarget [9986.08,114134.09,27.64]
_camera camSetPos [9986.08,4134.09,2.00]
_camera camSetFOV 0.700
_camera camCommit 0
@camCommitted _camera
Tím máte definovanou pozici kamery na těchto souřadnicích:
_camera camSetPos [9986.08,4134.09,2.00]
cíl kamery je na souřadnicích:
_camera camSetTarget [9986.08,114134.09,27.64]
Další řádek udává přiblížení:
_camera camSetFOV 0.700
Implicitní nastavení je 0.700 a přiblížit můžete podle
libosti. Za jak dlouho se přiblížení provede, je definované v
dalším řádku:
_camera camCommit 0
je to hodnota v sec. a tady je 0. Toto číslo neudává pouze
přiblížení, ale i přesun kamery v sec. na další pozici. Další
pozici kamery získáte opět stisknutím klávesy Ctrl. Poslední
řádek chápu jako jakousi kontrolu ukončení kamery, jestliže na
další řádek napíšete:
~5
kamera vydrží na určeném místě ještě dalších pět
sekund. Zde se dají zadávat samozřejmě i jiné hodnoty viz tutoriál
o podmínkách.
Co to celé znamená? Vám stačí nastavit v editoru pozici
kamery tak, jak si přejete. Tuto pozici uložíte ( levé Ctrl) a
můžete přejet pomocí šipek na další pozici kamery. Opět
uložíte aktuální pozici. Přepnete se do souboru clipboard.txt a
obě pozice kamery tady najdete s příslušným časem vašeho
uložení. Teď už záleží pouze na vás samotných a především na
vaší fantazii, jestli to budou dvě samostatné pozice nebo jestli
kamera plynule přejde z první pozice na pozici druhou v době, jakou
zadáte do řádku:
_camera camCommit 0
Můžete provést přiblížení, které provedete pomocí + a -
na numerické klávesnici. Opět je potřeba místo 0 v tom samém
řádku nastavit dobu přiblížení, jak jsem psal výše. Pokud se
přiblížíte zaměřovacím křížkem uprostřed monitoru k
nějakému vámi vytvořenému a pojmenovanému objektu a zmáčknete
mezerník, kamera se automaticky na tento objekt zaměří a vy uvidíte
jakýsi čtvereček. Když tuto polohu uložíte, uvidíte, že se vám
neuložil cíl v podobě souřadnic, ale bude tam jméno právě tohoto
objektu.
Tak to by bylo ve stručnosti k práci s kamerou. Teď vás
bude zřejmě zajímat, jak se na ten filmeček podíváte. Předně
musíte dostat hráče z dosahu spínače, který spouští kameru, pak
si buď vytvoříte soubor init.sqs v adresáři s vaší misí anebo
jakýkoli jiný skript, který ovšem musíte nějakým způsobem
vyvolat. Soubor init.sqs se spouští sám okamžitě po spuštění mise. Nefunguje ale v intru, tady funguje jiný a to s názvem: initIntro.sqs
ten se vám spustí okamžitě po spuštění intra. Teď už vám
zbývá pouze kameru vytvořit, což musíte udělat na samotném
začátku skriptu. Založení kamery vypadá takto:
_camera = "camera" camcreate [0,0,0]
_camera cameraEffect ["internal","back"]
a poté už můžete zadávat samotné pozice kamery. Na konci
vaší práce je zase potřeba kameru zrušit, což se dělá takto:
player cameraEffect ["terminate","back"]
camDestroy _camera
Pro lepší efekt je lepší ještě nad tyto řádky obraz plynule ztmavit takto:
titleCut ["","BLACK OUT",3] (ta trojka na konci udává hodntou v sec. za jakou dobu se obraz plynule ztmaví)
Už toto samotné vám umožní vytvořit v OFP videa, jaká si
přejete, teď vám ještě předám některé mé praktické
zkušenosti, jak tuto práci co nejvíce urychlit. Aby bylo možné v
OFP skriptovat kameru, je za potřebí, abyste neustále sledovali a
kontrolovali, co jste právě vytvořili. To znamená napsat něco do
skriptu, přepnout se do hry a podívat se, jak a co jste vlastně
vytvořili. Přepínání do operačního systému a zpět do hry se dá
pomocí klávesové zkraty Alt + Tab., tady vlastně můžete
listovat mezi spuštěnými aplikacemi. Tento způsob přepínání ale
moc nedoporučuji, protože je to velmi pomalý způsob. Mnohem lepší
je spustit hru OFP přímo ve win. okně (pokud používáte Windows). K
tomu, abyste to dokázali, vám poslouží velmi jednoduchá utilita,
kterých najdete asi víc. Já osobně používám
OFP Launcher od Kegetyse, kde si zaškrtnete tyto položky:
- Skip splash screens - přeskočí reklamy na začátku, při spuštění hry
- Run in a Windows - spustí hru ve win. okně
Pak už jen stačí zadat dolů cestu k exe souboru OFP,
popřípadě Resistance. Tím zajistíte, že můžete v klidu
skriptovat a okamžitě se dívat, jak se to chová.
Klávesové zkratky Ctrl + A, Ctrl + C, Ctrl + X a Ctrl + V tu opravu
popisovat nebudu. Pokusil jsem se jasně a srozumitelně vysvětlit, jak
co nejjednodušeji pracovat s kamerou v editoru OFP. Pro ještě
větší zřetelnost přikládám
ukázkovou misi,
na které to musí pochopi snad už opravdu každý.
Proto, abyste vytvořili kvalitní scutscénu, ale nestačí pouze umět
pracovat s kamerou, ale musíte mít určitou představivost. Musíte
vytvořit a naskriptovat scény, které budete chtít natočit. Musíte
tam zadat podmínky, aby se to nespustilo dříve, než vy sami budete
chtít. Tohle už je ale zase věc jiná, kterou se můžeme zabývat
někdy jindy, někde jinde. Pokud je celá scéna delší, rozdělte si
ji na více na sobě nezávislých scén, protože asi nikoho nebude
bavit dívat se na stále stejný film stále dokola jen proto, abyste
na konci zjistili, kde ta kamera vlastně stojí. Proto si vytvořte na
začátku kameru a pak už jen měňte její pozici s tím, že právě
tvořenou scénu přesunete na začátek skriptu a až ji doděláte,
umístíte ji tam, kam potřebujete. Vyhnete se tím nekonečnému
sledování toho samého stále dokola.
Na závěr mi ještě dovolte, abych poděkoval Paladinovi za
informace o tajemství přímo v srdci editoru a pak Ruprtovi, bez
kterého si editaci už ani neumím představit.
Didymos
|