トップページ > 過去ログ > 記事閲覧
.xファイルのアニメーションについて
名前:ペッパー 日時: 2012/10/30 11:26

どうか知恵のご教授をお願いします。 xファイルに含まれるアニメーションの再生についてなのですが、 棒立ち->歩き、等のアニメーションの変化の際にモデルが収縮->元の大きさになってから次のアニメへ。 という感じになってしまいます。 アニメーションのプログラムは3Dアクション基本そのままです。 xファイル自体はblenderで作成したものなのですが、ファイル自体に 問題があるのでしょうか? 必要であればxファイルも添付しますのでどうかお力を貸してください。

Page: 1 |

Re: .xファイルのアニメーションについて ( No.1 )
名前:管理人 日時:2012/10/31 00:25

(時間が無いため簡易レスです、すみません) お言葉に甘えて件の現象が発生するxファイルをご提供していただいてもよろしいでしょうか? もしメールで送っていただけるということでしたら BQE00322(あっとまーく)nifty.com ( (あっとまーく)を@に置き換えてください ) に送ってください m(_ _)m
Re: .xファイルのアニメーションについて ( No.2 )
名前:ペッパー 日時:2012/10/31 22:49

メールにてお送りさせて頂きました。 もしかしたら迷惑メール扱いさせる可能性もあります。 もし正常にお送りできていなかった際にはお手数ですが、ここで御一報お願いします。
Re: .xファイルのアニメーションについて ( No.3 )
名前:管理人 日時:2012/11/04 00:43

メールありがとうございます、送っていただいたxファイルで3Dアクションを試してみました が、特にペッパーさんが遭遇された問題は発生しませんでした 変更点は ・アニメーションが二つなので、関数 Player_PlayAnim の引数を 0 か 1 に変更 ・モデルが DxChara.x より小さいので MV1SetScale で 40.0f 倍に拡大 ・DxChara.x の歩き・走りモーションとは違いルートフレームに移動値は入っていないので  関数 Player_Process の冒頭にある「ルーとフレームのZ軸方向の移動パラメータを無効にする」  の部分をコメントアウト ・#define PLAYER_PLAY_ANIM_SPEE が 250.0f では速すぎるので、0.5f に変更 以上の通りですが、特にご報告頂いたような現象を回避するような変更はしていません こちらに上記変更を加えたソースをアップしましたので、よろしければペッパーさんの 環境でも正常に動作するかお試しになってみてください m(_ _)m https://dxlib.xsrv.jp/file/3DAction_maid.cpp もし上記プログラムでも駄目でしたら、現在私の手元にある最新版のライブラリでは正常に動作 するのかもしれませんので、もしそのときはこちらの最新版をお試しになってみてください http://homepage2.nifty.com/natupaji/DxLib/DxLibVCTest.exe // VisualC++ 用 http://homepage2.nifty.com/natupaji/DxLib/DxLibBCCTest.exe // BorlandC++ 用 http://homepage2.nifty.com/natupaji/DxLib/DxLibGCC_DevCppTest.exe // Dev-C++ 用 http://homepage2.nifty.com/natupaji/DxLib/DxLibGCC_MinGWTest.exe // MinGW 用 http://homepage2.nifty.com/natupaji/DxLib/DxLibDotNet.zip // .NET用 http://homepage2.nifty.com/natupaji/DxLib/DxLibMakeTest.exe // ソース (中身を既存のライブラリのファイルに上書きして、BCCをお使いの 場合は『再構築』を、VCをお使いの場合は『リビルド』を、 Dev-C++をお使いの方は「Rebuild All(Ctrl+F11)」をして下さい)
Re: .xファイルのアニメーションについて ( No.4 )
名前:ペッパー(解決) 日時:2012/11/04 16:34

態々ソースまで作って頂き、誠に有難うございます。 結果から申し上げますと、無事、縮小現象を回避することが出来ました。 原因としては、blenderでアニメーション付き.xを出力した場合、 .xのAnimationKeyが、Position,Rotation,Scaleの3つに 分割されて出力されることだったようです。(私の知識不足でした。) 結果、Player_Processにある「ルートフレームのZ軸方向〜」の部分でRotation部分のz軸が無効化され アニメーション時に大きさがズレるという事でした。 よって、上記部分をご指示の通りコメントアウトすることで解決しました。 この度は有難うございました。

Page: 1 |