【日本携帯】Mascot Capsule/Micro3D【標準】at TECH
【日本携帯】Mascot Capsule/Micro3D【標準】 - 暇つぶし2ch4:3
05/06/03 17:05:56
EZアプリ(BREW) 2.1 SDKとDoJa3.5(SDKは4.0使ってますけど3.x系APIを使ってます)の両方で意図しない動作が発生して困っています。
デザイナから渡された.mbac/.mtraを表示しているのですが、
最終フレーム付近でモーションが更新されません。
モーションデータの最終フレームの一つ前のフレームから最終フレームまでの間、一切モーションが更新されないのです。

// Brew
int maxFrame = IMICRO3D_ActTable_getNumFrames(m_pMicro3D, &m_Actions[0], 0);
currentFrame += 65536 * timeGap * 15 / 1000;
if (currentFrame > maxFrame)
{
currentFrame -= maxFrame;
}
IMICRO3D_Figure_setPosture(m_pMicro3D, &m_Figures[0], &m_Actions[0], 0, currentFrame);

// Java
int maxFrame = m_Actions[0].getMaxFrame(0);
if (currentFrame > maxFrame)
{
currentFrame -= maxFrame;
}
m_Figures[i].setPosture(m_Actions[i], 0, currentFrame);

ほぼサンプル通りに書きましたがBrewtoJavaで同じ症状が出ます。
キーフレームが10個ある場合でいうと(655360 - 65536)から(655360)までの間に常に(655360 - 65536)のモーションのままになってしまうという感じです。
HIのサイトのVアプリ用サンプルモデル(URLリンク(www.mascotcapsule.com)から)も表示してみましたが、
この状態でも違和感無く再生できるようなデータにしてあるようにも見えます。
同じような症状に困っている方は居ますでしょうか?
またその場合の対処法についても教えてください。
(私が考える限りだとモーション末尾にダミーのキーフレームを追加し、getMaxFrame()の戻り値を-65536して扱えば良さそうにも思えますが、デザイナが「あんたのバグだ!」と言ってデータを作ってくれないので確認できていません。)




次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch