スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

BlenderでBVHを使ってみる

Blenderには標準でBVH読み込み機能がついているようだ。

早速読み込んでみるとボーン(Armature)とモーションがしっかり再生される。
さて、、、どうやってこれを使うか・・

せっかくBVHが大量にあるので、この際だしBVHで生成されるボーンの名前にそったリグを作成してしまうことにした。

初めてゲームを作成するのなら私が作成した順の逆から攻めたほうが効率が良かったのかもしれない。

効率的だと思われる順
モーションを作ったりBVHを集める→ボーンを作る→影響度を考えてモデルを作成→テクスチャを張る


私がやった順
テクスチャを作成したり書きかたを勉強→モデル作成→ボーン作成→影響度を入れ→モーション作成


・・・・・・・


私の持っているBVHファイルはすべてのフレームにキーが打ってあるため綺麗だが重い。
そんな時のために一定間隔で飛ばしながら選択してくれるスクリプトを書いた。
これを実行してdelキーでフレームを削除すれば飛び飛びにキーが打ってある状態になる

~スクリプト~(countを変えると間隔が変わります)
コピーの際全角スペースに注意してください。Fc2ブログは半角スペースやタブがはいらんとです!

import Blender

### koko ####
count=5
############

winid = Blender.Window.GetScreenInfo(Blender.Window.Types.ACTION)[0]['id']

Blender.Window.SetKeyQualifiers(Blender.Window.Qual.CTRL+Blender.Window.Qual.ALT)
Blender.Window.QAdd(winid, Blender.Draw.PKEY,1)
Blender.Window.QHandle(winid)
Blender.Window.QAdd(winid, Blender.Draw.PKEY,0)
Blender.Window.SetKeyQualifiers(0)

for i in range(Blender.Scene.getCurrent().getRenderingContext().endFrame()):
  if (i%count)!=0:
    Blender.Set('curframe',i+1)
    Blender.Window.SetKeyQualifiers(Blender.Window.Qual.CTRL)
    Blender.Window.QAdd(winid, Blender.Draw.KKEY,1)
    Blender.Window.QHandle(winid)
    Blender.Window.QAdd(winid, Blender.Draw.KKEY,0)
    Blender.Window.SetKeyQualifiers(0)

Blender.Redraw(Blender.Window.Types.ACTION)


すごいの期待した人いたらごめんなさい。
載せるまでも無いようなスクリプトです(涙
テキストエディタにでもコピペしてAlt+Pを押すと実行できます(試してないけどアクションエディタがどこかに無いとエラーになるかも)


これで軽くなったら自分の好きな速さに調整します。
(アクションエディタでフレームを最初に合わせてS→shiftを押しながら好きな場所でクリック)
FPS弄っても全然OKですが一定で書き出さないとゲーム側でFPSを考慮して作成しなくてはいけません。(そういえば以前そういう風に作ったっけ・・・)

使わないモーション部分を消したら読み込み完了。あとは好きに弄るだけですね。
(フレーム線の前後をAlt+右クリックで選択が楽にできる またタイムラインエディタでSやEを押すことで現在のフレームをstartやendに一発設定できる)




またもや文字だらけブログでした~


ねよっと。

コメントの投稿

非公開コメント

プロフィール

あしゅ

Author:あしゅ
ぷぃぷぃ日常。
いつのまにか雑記ブログに。

カテゴリ
最新記事
検索フォーム
最新コメント
リンク
このブログをリンクに追加する
ブロとも申請フォーム

この人とブロともになる

カウンター
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。