3Dモデルのモーションについて

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
mee

3Dモデルのモーションについて

#1

投稿記事 by mee » 12年前

始めまして。

学校の作品制作でDXライブラリを使って3Dアクションゲームを作っているのですが、分からない所があったので質問です。

プレイヤーモデルの中にモーションが立ち止まり・走り・ジャンプ・武器の構え・武器のリロードの4種類あるとします。
そこでゲームでのモーションですが例えば立ち止まり状態での武器のリロードや走りながらのリロード、武器
を構えながらの立ち止まり状態や走りなどなど、2つモーションの組み合わせが色んなパターンがあります。

走りには上半身の腕振り・下半身の足を動かしたアニメーション、リロードには下半身は動かさず腕だけを動かしたアニメーションがあり、
最初は2つのモーションをMV1AttachAnim関数を使ってアタッチし、MV1SetAttachAnimBlendRate関数でそれぞれのモーションを半分づつブレンドしたら
上手くいくかなと思ったんですが、上半身の腕振り動作とリロード動作が混ざって不自然な動きになってしまいました。

2つのモーションの組み合わせパターン分のモーション作る方法も考えたんですが多すぎて制作に時間がかかり過ぎます・・・

何かいい方法ありませんでしょうか?

beatle
記事: 1281
登録日時: 13年前
住所: 埼玉
連絡を取る:

Re: 3Dモデルのモーションについて

#2

投稿記事 by beatle » 12年前

走りを上半身だけのモーションと下半身だけのモーションに分割しておいて、
普通の走りのときはMV1SetAttachAnimBlendRateで両方とも1.0の割合でブレンドし、
走りながらリロードのときは下半身モーションとリロードモーションを、やはり両方とも1.0の割合でブレンドしたら上手く行くのでは、と思いました。
まったく見当違いかもしれませんけども。

史上最悪のデスペナ
記事: 521
登録日時: 14年前

Re: 3Dモデルのモーションについて

#3

投稿記事 by 史上最悪のデスペナ » 12年前

私もかつてそれで悩み、こちらや本家で質問させていただきました

meeさんがモーションを作成するのに何を使っておられるのか分からないのですが、
RokDeBone2である場合、beatleさんの方法ではうまく行きません。
もっとも、上半身と下半身の二つのモデルがある場合は問題ないです。

本家の掲示板で質問した結果はこちら
ということでした。

mee

Re: 3Dモデルのモーションについて

#4

投稿記事 by mee » 12年前

回答ありがとうございます。

モデルやモーションの作成はグラフィックの方が作っていてソフトは3dsMax2010を使用しています。
史上最悪のデスペナさんのリンク先を読んでいて疑問なんですがMV1SetAttachAnimBlendRateToFrame関数というのは
腕や足などの一部のボーンのみを指定して、それだけをブレンドする という解釈でいいのでしょうか?
もしそう言う意味でいいのだったら走りモーションを上半身、下半身に作り分ける必要も無い?のかなと思いました。

史上最悪のデスペナ
記事: 521
登録日時: 14年前

Re: 3Dモデルのモーションについて

#5

投稿記事 by 史上最悪のデスペナ » 12年前

mee さんが書きました:MV1SetAttachAnimBlendRateToFrame関数というのは
腕や足などの一部のボーンのみを指定して、それだけをブレンドする という解釈でいいのでしょうか?
もしそう言う意味でいいのだったら走りモーションを上半身、下半身に作り分ける必要も無い?のかなと思いました。
そのようです。
したがって、
立ち止まり・走り・ジャンプ・立ち止まった状態での(武器構え・リロード)
の5つで十分ということです。

mee

Re: 3Dモデルのモーションについて

#6

投稿記事 by mee » 12年前

なるほど!
しかしまた1つの疑問が出て来まして、走りモーションは体全体が左右に動いているんですがそれにリロードモーションをブレンドするとまた不自然にならないのかな?と思いまして・・・
下半身は左右に動いて上半身は止まったままリロードモーションしているみたいな。

まだ試していないので分かりませんがそこは補完してくれるのでしょうか?

史上最悪のデスペナ
記事: 521
登録日時: 14年前

Re: 3Dモデルのモーションについて

#7

投稿記事 by 史上最悪のデスペナ » 12年前

mee さんが書きました:しかしまた1つの疑問が出て来まして、走りモーションは体全体が左右に動いているんですがそれにリロードモーションをブレンドするとまた不自然にならないのかな?と思いまして・・・
下半身は左右に動いて上半身は止まったままリロードモーションしているみたいな。
おっしゃっているのは走るときの体のブレみたいなものでしょうか?
それですと、確かに上半身はブレない状態でリロードされますね

ただ、おそらく背骨にあたる部分にボーンを入れ、それを左右に回転させることで走るときの左右のブレを出しているのではないかと思いますが(もしくは体全体を回転させて足を微調整?)
要するに肩以降の指先までのボーンが走るモーションではなくてリロードするモーションになればよいので
そのボーンだけを1.0にすれば
「正確な」モーションにはならないかもしれませんがゲームプレイ中には意識しないレベルになるのではないでしょうか?

うまく説明できてる自信がないので夜にでも私がモーション(走る+リロード)を作って動かしたのをUpさせようかと思います
たので、よろしければご覧ください
最後に編集したユーザー 史上最悪のデスペナ on 2012年12月12日(水) 19:46 [ 編集 1 回目 ]

史上最悪のデスペナ
記事: 521
登録日時: 14年前

Re: 3Dモデルのモーションについて

#8

投稿記事 by 史上最悪のデスペナ » 12年前

やっと出来ました。キャプチャするのは面倒だったので実行ファイルを添付します

Qで走るモーション
Wで銃を撃つようなモーション
Eで走りながら銃を撃つモーション

A・Dでカメラ回転

です。

銃を撃つモーションの下手なのは気にしないでくださいませ^^;イメージ的には反動の強いショットガンを腰だめで撃ってる感じです
リロードは作るのが面倒だったので銃を撃つモーションに勝手に代えさせていただきました
添付ファイル
default.zip
(1.23 MiB) ダウンロード数: 199 回

mee

Re: 3Dモデルのモーションについて

#9

投稿記事 by mee » 12年前

わざわざ実行ファイルまで作って頂きありがとうございます!
思ってたよりは自然にモーションがとれていましたね。

こちらも今から修正してみます。
回答していただいたbeatle さん、史上最悪のデスペナさんありがとうございました!

閉鎖

“C言語何でも質問掲示板” へ戻る