QCファイルを学ぶ

テクスチャリングに疲れたので、QCファイルについて学びましょ。
http://developer.valvesoftware.com/wiki/View_Models:jp
の一番下のを読み解いていく。

幸いQCコマンドの解説が日本語化されている。
http://developer.valvesoftware.com/w/index.php?title=.QC_Commands:jp&redirect=no
最新版はたぶん英語だからこれも見とこう。
http://developer.valvesoftware.com/wiki/.QC_Commands

所で、最後のスクリーンショットはどうみてもこれまでの例とは別物なんだが・・・。
独立していた項目をひとつにしたのかな?

では、読んでいくぞ。

QCファイルを読む(1)

$modelname weapons/v_shotgun.mdl
モデル名を指定する。フォルダは必ずweapons/*.mdlとなっていないといけない。
ここではshotgunのモデルを指定してるようだ。
(具体的にどんなモデルかは知らん)
$body studio "Shotgun_reference.smd"
nameはstudio。
smdファイルを読み込む。
$origin 0 0 68
モデルをセットする座標。
$attachment "muzzle" "ValveBiped.Muzzle" 0 0 0 rotate -90 0 0 rigid
マズルフラッシュのエフェクトをつける。
nameはmuzzle。
読み込みファイル名はValveBiped.Muzzle。中身はboneのようだ。
あとは座標系の指定。
$attachment 1 "ValveBiped.Eject" 0 0 0 rotate 180 0 0 rigid
薬莢排出のエフェクトをつける。
nameは1。(1って・・・プロがつける名前とはちょっと思えないんだが)
読み込みファイル名はValveBiped.Eject。中身はboneのようだ。
$sequence idle01 "Idle01" loop fps 30 activity ACT_VM_IDLE 1 node 0
アニメーションの配列にアニメーションを突っ込んでるみたい。
これは30fpsでIdle01というファイルをloopで読ませるACT_VM_IDLEを定義してるみたい。
node 0 は理解不能。
$sequence fire01 "Fire01" fps 30 snap activity ACT_VM_PRIMARYATTACK 1 { event AE_MUZZLEFLASH 0 "SHOTGUN MUZZLE" } node 2
アニメーションを突っ込んでる。
マズルフラッシュを引っ付けてるようだ。
node 2 は理解不能。
$sequence altfire "Alt_fire01" fps 30 snap activity ACT_VM_SECONDARYATTACK 1 { event AE_MUZZLEFLASH 0 "SHOTGUN MUZZLE" } node 2
アニメーションを突っ込んでる。
セカンダリの設定みたい。
これもマズルフラッシュ付き。
$sequence draw "Draw" fps 30 snap activity ACT_VM_DRAW 1 node 0
これもアニメーションを突っ込んでる。
Drawってなんだ?
味方に対して銃を引っ込めるアニメ?
$sequence holster "Holster" fps 30 activity ACT_VM_HOLSTER 1 node 0
これもアニメ(ry
銃を収めるときのアニメみたい。
$sequence reload1 "Reload_start" fps 30 activity ACT_SHOTGUN_RELOAD_START 1 node 0
リロード開始のアニメだね。
$sequence reload2 "Reload_load_shell" fps 30 activity ACT_VM_RELOAD 1 node 0
リロード中のアニメだね。
$sequence reload3 "Reload_finish" fps 30 activity ACT_SHOTGUN_RELOAD_FINISH 1 node 0
リロード終了のアニメだね。
$sequence pump "Pump" fps 30 activity ACT_SHOTGUN_PUMP 1 { event 6001 5 "2" } node 0
ポンプアクションのアニメ?
$sequence dryfire "Dryfire" fps 30 activity ACT_VM_DRYFIRE 1 node 2
弾切れ?
$sequence lowered "Non_threat_idle01" loop activity ACT_VM_IDLE_LOWERED 1 node 1
アイドル時のなにか。
$sequence lowered_to_idle "Non_threat_to_idle01" activity ACT_VM_LOWERED_TO_IDLE 1 transition 1 0
アイドル時のなにか。
$sequence idle_to_lowered "Idle01_to_non_threat" activity ACT_VM_IDLE_TO_LOWERED 1 transition 0 1
アイドル時のなにか。

結局半分も理解できてないゾ。
正直、誰かに教えて欲しい(泣
最終更新:2008年07月14日 16:33