トップページ > 過去ログ > 記事閲覧
キャラクターアニメ表示速度調整方法
名前:(略して)将軍 日時: 2008/09/01 20:46

こちらに顔を出すのは約3年ぶりとなります、(略して)将軍と申します、その節は色々お世話になりました この度、また新たにDirectXライブラリを使用したゲームを作成しようと思い、練習のものを作成したのですが 歩行アニメーションが想定していたものより早くなってしまいました 歩行アニメーションの際のタイマーを大きくすると、動きがカクカクになってしまうのですが、この場合どう対処すればよいのでしょうか? それと、プログラムの書き方についての鑑定もお願いできますでしょうか? 現在のものは思いつきで書いたものが多く、これが正しい書き方なのか確信がもてないもので お手数おかけしますが、どうかよろしくお願いいたします ttp://page.freett.com/hirokatsu/CTS.lzh

Page: 1 |

Re: キャラクターアニメ表示速度調整方法 ( No.1 )
名前: 日時:2008/09/04 10:37

うーん、時間があればやってみたいけど。 コードを読む時間が...orz
Re: キャラクターアニメ表示速度調整方法 ( No.2 )
名前:maki 日時:2008/09/04 14:06

歩行アニメーションを切替えてるのはPlayerWalk変数ですよね? 今はPlayerWalkをループ内で毎回インクリメントしてるので、何回かに1回インクリメントするとかでいいんじゃないでしょうか。 具体的に言うと、 ActionStageTown関数のWaitTimer( 16 );としている部分の下に以下のようなコードを入れるとかですかね。 WaitTimer( 16 ) ; // ここから追加 static int Wait = 0; if( 3 < ++Wait ) { PlayerWalk++; Wait = 0; } // これはifの中に移動 //PlayerWalk++; こういうことであってますかね?
Re: キャラクターアニメ表示速度調整方法 ( No.3 )
名前:夢夢 日時:2008/09/04 14:09

WaitTimerを使わずに、自分でタイマーを作ってみては? プレイヤーを描画する部分にtimer++;を付け加えて if(timer >= 16){   PlayerWalk++;   timer = 0; } とすれば、処理を止めなくてもアニメーションに間隔を持たせることが出来ます。
Re: キャラクターアニメ表示速度調整方法 ( No.4 )
名前:(略して)将軍 日時:2008/09/04 23:53

makiさん、夢夢さんどうもありがとうございますmakiさんの方法のは3回通るたびにアニメのコマを1つ進めるという方式であってますよね この方法ならば自分の想定どおりに動きそうです 夢夢さんのはタイマーが1通り経過するたびにアニメが更新されるという解釈でよろしいでしょうか? ちなみにこれ、現在のWaitTimerの代わりに入れるということは、外側にWaitTimer(1)置いておかないと駄目なのではないでしょうか?間違っていたらすみません とりあえず、これで現状もう少し進めることができそうです ご回答、どうもありがとうございました

Page: 1 |