[表示 : 全て 最新50 1-99 101- 2chのread.cgiへ]
Update time : 07/16 06:47 / Filesize : 45 KB / Number-of Response : 142
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【日本携帯】Mascot Capsule/Micro3D【標準】



1 名前:代理ニダ [2005/06/03(金) 13:38:50 ]
Mascot Capsule/Micro3Dについて技術情報交換や質問/回答するためのスレッド。

公式 www.mascotcapsule.com/

2 名前:デフォルトの名無しさん mailto:sage [2005/06/03(金) 13:46:00 ]
使いにくかった。


まぁメモリが少ないせいだけど。

3 名前:立てるまでもない質問スレ952 mailto:sage [2005/06/03(金) 16:29:30 ]
>>1
スレ立て代行ありがとうございまニダ。


さあ張り切ってウリが解る限りの質問に答えるニダよ!!
あくまでも解る限りニダ!!
質問する人はプラットフォームとバージョンも書くニダよ!!


4 名前:3 [2005/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アプリ用サンプルモデル(ttp://www.mascotcapsule.com/toolkit/vodafonekk/tool.htmlから)も表示してみましたが、
この状態でも違和感無く再生できるようなデータにしてあるようにも見えます。
同じような症状に困っている方は居ますでしょうか?
またその場合の対処法についても教えてください。
(私が考える限りだとモーション末尾にダミーのキーフレームを追加し、getMaxFrame()の戻り値を-65536して扱えば良さそうにも思えますが、デザイナが「あんたのバグだ!」と言ってデータを作ってくれないので確認できていません。)



5 名前:3 mailto:age [2005/06/04(土) 16:18:10 ]
保守age

6 名前:デフォルトの名無しさん mailto:sage [2005/06/05(日) 17:29:36 ]
保守党sage

7 名前:デフォルトの名無しさん mailto:sage [2005/06/06(月) 02:02:26 ]
>>4
>currentFrame += 65536 * timeGap * 15 / 1000;
この行がBREW版だけに入っているのはなぜ?


8 名前:デフォルトの名無しさん mailto:sage [2005/06/06(月) 02:27:12 ]
>>4
えーと、釣りですか?
取りあえず釣られてみる。

currentFrame -= maxFrame; の意味が分からん。

ループするモーションなら
currentFrame = 0;

ループしないモーションなら
currentFrame = maxFrame-1;

では?


それからJava(DoJa?)の方はcurrentFrameの更新をしていない。

Micro3Dどころか、プログラムが分かっていないような・・・・。

>getMaxFrame()の戻り値を-65536
フレーム数がマイナスって・・・・・。 orz

9 名前:デフォルトの名無しさん mailto:sage [2005/06/06(月) 07:37:43 ]
>>8
>currentFrame -= maxFrame; の意味が分からん。

え。そこは別におかしくねーでしょ。

10 名前:デフォルトの名無しさん mailto:sage [2005/06/06(月) 10:10:00 ]
>>4
currentFrame += 65536 * timeGap * 15 / 1000;
これなんだがtimeGapって何の単位の数値が入ってるの?
予想だけどmsで使ってるなら(65536 * timeGap * 15 )で桁溢れおこしてない?

>>8
>フレーム数がマイナスって・・・・・。 orz
意図をよく読め。別におかしくない。








[ 続きを読む ] / [ 携帯版 ]

次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<45KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef