プロフィール

Na-7

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


アクセスカウンター


最新記事


最新コメント


最新トラックバック


月別アーカイブ


カテゴリ


DATE: CATEGORY:スポンサー広告
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
DATE: CATEGORY:三国志軍記開発
弓兵モデル作成15
開発中の弓兵モデル
Softimageではまともに動くが、XNAで再生すると崩れる。
その原因は…?



◎キーセットの再作成

Softimageでは弓アニメがきちんと再生されますが、XNAで再生すると崩れます。これがなかなか修正できずに苦戦しましたが、キャラクターキーセットを再作成してなかったことに気付いて実施すると

弓兵モデル作成11

変化はありましたが、まだオカシイです。

センター機能を使用してしまったのが原因かと疑ったのですが、原点に戻しても直りません。

まだ何かあるのか?う~ん…(ーー;



◎チェインルートの位置調整

しばらく悩みまくったのですが、アクターのリセットを実行した状態でボーン位置をよく観察すると、弓中央ボーンと弓上下ボーンの初期位置が異なることに気付きました。

弓兵モデル作成12

弓中央チェインルートの下層に弓上下チェインが配置された階層構造なので、弓中央チェインの位置を動かすと、弓上下チェインも(Softimage内では)自動的に連動します。しかしXNAはチェインルート非サポートのため、チェインルートの位置が異なると、XNAで崩れるようです。

チェインルートやメッシュの位置を調整します。

1 すべてのコンストレイントを削除
2 弓チェイン階層を一時解体
3 エンベロープ削除
4 チェインルートとボーンの位置を調整
5 メッシュの位置を調整
6 弓チェイン階層を戻す
7 エンベロープ再設定
8 リファレンスポーズ再設定
9 コンストレイント再設定

その後弓を手に持たせてアニメキーを付加すると、腕の動きに合わせて弓が伸縮しました。

これで直った!…と思いきや、アクターのリセットを実行して再度アニメを再生すると

弓兵モデル作成13

Softimageでも弓がおかしくなりました。
先程まできちんと動いてたのに(泣)



◎初期ポーズ不定の影響

Softimageには初期ポーズ設定用のニュートラルポーズ機能がありますが、XNAはこの機能をサポートしておらず、設定するとXNAで崩れます。よって、初期ポーズ不定のまま編集作業継続を強いられるわけですが、これが混乱を招く要因の1つと言えます。

例えば、(例え最終フレームであっても)腕の一部を動かすと、そのポーズが初期状態と言うか、そのまま再生されます。マウス操作をちょっと誤っただけで悲惨なことになりかねないので、編集中は常に神経を尖らせます。但し、腕にアニメキーが(フレームの前後に関係なく)1度でも付いていれば、前述の話は完全に無視されます。

結論としては「全ての稼働ボーンにアニメキーを付けろ!」となりますが、一個所でも付け忘れると、何かの操作(セーブ/ロード、アクターのリセット、Publish等)後に思いもよらない崩れ方をするので混乱します。また、キー付加後にモデルを編集した場合も崩れやすいです。



◎原因判明

で、今回もキーの付け忘れか、或いはキーの付け直しが必要かもしれない(アニメキーが初期ポーズからの相対座標だとしたら、初期ポーズ変更する度にキーの付け直しが必要?)と疑ったのですが、今回は違いました。

今回こうなった原因を、時系列で記述します。

1 弓中央チェインルートをマウス操作で移動した
  →階層下の弓上下チェインルートも自動的に移動

2 弓中央チェインルートにアニメキーを付与した
  →弓上下チェインルートにも付与すべきだった?

3 アクターのリセットを実行すると、
  各チェインルートはリセット時の位置に戻る

4 アニメを再生すると、
  弓中央チェインルート:アニメキーの位置から再生
  弓上下チェインルート:リセット時の位置から再生
  →弓上下エフェクタにコンストレイントが働くので、
   崩れ方が不可解に見える

そうか…そういうことだったのね。

Softimageモデルは、これまで何度も崩れまくって、その度に強引に修正(モーション再作成し、わけもわからずあちこちにアニメキーを付けまくり、XNAで動作確認)してました。

完成したはずのモーションを何度も作り直すのは、大変なストレスです。「直してもまた崩れるんじゃないか?」という不安もあり、やる気を無くす要因でもありましたが、今回初めて原因が分かりました。



◎対処

原因は判明しましたが、仕様には納得しきれてません。1番で階層下のものが連動するなら、4番でも連動してしかるべきと思うのですが…。

それはともかく、対処を進めましょう。

2番に記述した方法もありますが、それだと弓を移動する度にアニメキーを3回付与する必要があります。手間がかかるし、忘れそうですね。

というわけで、弓上下チェインルートにも位置コンストレイントを設定し、弓中央チェインルートに連動するようにします。

弓兵モデル作成14   弓兵モデル作成15

Softimageでは直りました。しかしXNAでは崩れます。

…さすがXNA連携。まだ何かあるのね(ーー;



◎次回予告

話が長くなるので、続きは次回とします。

スポンサーサイト

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

コメント

コメントの投稿


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

トラックバック


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



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