プロフィール

Na-7

Author:Na-7
SE(システムエンジニア)として約15年間システム系ソフト会社を勤めあげ、2008年3月退社。現在、ゲーム制作会社設立を目指して活動中。


アクセスカウンター


最新記事


最新コメント


最新トラックバック


月別アーカイブ


カテゴリ


DATE: CATEGORY:スポンサー広告
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
DATE: CATEGORY:Softimage Mod Tool
ホウ徳
ホウ徳
馬騰、馬超配下の将であったが、曹操が漢中を平定した際に帰順した。荊州戦では漢水氾濫により関羽に敗れるが、最後まで投降勧告を拒否し、その忠義は死後絶賛された。



◎キーフレームの編集操作

キーフレームのコピーや貼り付けは、画面下部のタイムライン上で操作できそうな気がするんですが、右クリックするとコピー/カット/貼り付け等が薄文字で表示されていて使えません。薄文字状態になっている原因は不明です。

タイムライン上で右クリック

ちなみに、メインメニューの編集>切り取り/コピー/貼り付けは、選択したオブジェクトが対象です。オブジェクトを選択しないとこちらも薄文字状態で使えません。

CTRL+Kで表示されるLocal Transformのウィンドウでは、キー項目のアイコンを右クリックするとアニメーションのコピー/貼り付け等が選択できますが、フレーム情報のコピー/貼り付けではないようです。

画面右側のツールバーを「KP/L」に切り替えると、指定したフレームの数値情報が表示されています。この数値を1つ1つ選択してコピー/貼り付けは可能ですが、いくら何でもこれは効率悪過ぎですよね…。

結局、アニメーションエディタのドープシート(DopeSheet)でキーフレームのコピーや貼り付けが出来ることが分かったので、今はそちらを使用しています。対象のキー項目を選択しながら領域単位で編集可能なので、これはこれで便利なんですが、個人的には画面下部のタイムラインで作業出来るとさらに手軽で便利なんですけどね。

AnimationEditorのDopeSheet
アニメーションエディタのドープシート


今は一事が万事こんな感じです。主要操作が一通り出来るようになるには時間かかりそうだなぁ…。



◎DirectX書き出し機能の検証

モデルやアニメの編集操作は徐々に覚えていくとして、先にSoftimage Mod Toolで作成したモデルやアニメをXNAで再生する方法を検証します。折角作ってもきちんと再生できなかったら意味無いですからね。

というわけで、まずはDirectX書き出し機能から。

1.A地点からB地点に球モデルが移動するだけの
  シンプルなキーフレームアニメを作成

2.DirectX書き出し機能で出力

3.DirectX Viewer及びMesh Viewerでモデル及び
  アニメーションが表示されるか確認

しかしどちらもやたら高速に動いて、フレームが飛ばされているようにも見えます。全体のフレーム数を5倍に増やして遅い動きにしてみましたが、結果は変わりませんでした。

ヘルプの機能概要やオプション設定を確認しましたが、特に気になる記述は見当たりません。DirectXのバージョンとの相性なんですかね?先行きが不安です。



◎XNAでの表示

とりあえずXNA3.0の標準機能で先のxファイルを表示すると、モデルは正常に表示されました。テクスチャは貼り付けていませんが、この様子なら多分大丈夫でしょう。それよりも心配なのはアニメーションです。

XNA標準ではアニメーション機能は無いので、ACLで動かしてみようと思いますが、その場合モーション名は何になるのでしょうか?自分で設定した覚えはありませんし、出力時のオプションにも該当項目は無さそうですが、何かデフォルトの名称が付いてるのかな?

SoftimageのExplolerでシーンの中身を確認すると、アニメーションデータは「Kinematics」の中に入っているようですが、これをモーション名として指定すると「指定されたキーはディレクトリ内に存在しませんでした」とエラーになりました。

xファイルの中身を確認すると「AnimationSet」に続くキーワード(モーション名に該当)が空でした。これじゃACLで表示できませんね。



◎複数のアニメーション

もしかしたら、Softimageで複数のアニメーションを作成すれば、それぞれ名前が付くかもしれません。

複数のアニメーションと言っても、Softimageではいろいろな形態がありそうですが、とりあえずアニメーションミキサーで複数のトラックをコピーして結合し、出力しました。

するとxファイルの中に「AnimationSet」は存在せず、DirectX Viewer等でも全く動かなくなりました。再度試すと、どうやら「アクション>格納>変換-Fカーブの操作」を行った段階で、DirectXでアニメしなくなるようです。

どの操作がどう影響するのか、まだ見当も付かないので、これ以上はやめておきます。



◎ACLで強引に表示する

モーション名を正式に付加する方法が不明なので、xファイルを書き換えて強引にモーション名を追加しました。XNAで読み込むと、先程のエラーは通ったものの、エフェクト関連で別のエラーが発生。

ちょっと心当たりがあったので、BasicEffectかBasicPaletteEffectか判別してエフェクト設定するように書き変えたら、エラーは通ってモデルが正常に表示されました。

そうか~このモデルはBasicEffect扱いだったのね!
RokDeBone2のサンプルはBasicPaletteEffectだったのですが、出力ツールによって違うのかな?

ACLで強引に表示した画面

一応ACLで画面に表示したものの、ぴくりとも動きません。やはりこんな方法じゃダメみたいです。



◎次回予告

「DirectX書き出し機能」だとダメっぽいので、次回は「XNA Game Studio機能」を探ります。

何故初めからそうしなかったのかって?
ヘルプには一切記述が無くてよくわからないし、ACLとバッティングしたらイヤだな~と。xファイルを読み込んでそのまま動いてくれれば問題無かったのですが、そうもいかないみたいですね。

スポンサーサイト

テーマ : ゲーム製作 関連 - ジャンル : ゲーム

コメント

ModToolのDirectxについて

Na-7さん
はじめまして、いつも楽しみに拝見させてもらってます

ModToolのXファイルなんですが
AnimTicksPerSecondという記述が無いため
高速再生になってしまってるんだと思います
また、ModToolのXファイルはUVのV値が反転してしまったり、右手座標か左手座標かが選べ無かったりと
結構不具合が多いです
もちろん、アニメーションセットも書き出されないので
後にテキストでアニメーション情報だけをコピペする必要があります

これは、XSIの3.0くらいからそうみたいなので
改善される可能性は低いと思いますよ

ModToolを使う場合は、公式のdotXSIコンテントパイプラインを使うか
FBXを使ったほうが安心できるかもしれません

長文失礼しました

直りました!

LAGさん、はじめまして。Na-7です。
御愛読頂きましてありがとうございます。
今後ともよろしくお願い致します。

>AnimTicksPerSecondという記述が無いため
>高速再生になってしまってるんだと思います

Xファイルの中程に
AnimTicksPerSecond {
1;
}
上記の記述を追加したら綺麗に再生されました!
どうもありがとうございました(^^)


>これは、XSIの3.0くらいからそうみたいなので
>改善される可能性は低いと思いますよ

ええ~そうなんですか?!
意外とやる気ないんですね~
細かいことは自分達で調整しろってスタンスなのかな?

>ModToolを使う場合は、公式のdotXSIコンテントパイプラインを使うかFBXを使ったほうが安心できるかもしれません

試してみます。どうもありがとうございました!

コメントの投稿


管理者にだけ表示を許可する

トラックバック


この記事にトラックバックする(FC2ブログユーザー)



copyright © ゲーム制作の舞台裏 all rights reserved.Powered by FC2ブログ
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。