1,タイトル通りなのですがとりあえずアニメーションを実装してみました。if()文のところがなのですが10ではなくspeed->xという移動速度が速くなればなるほどアニメーションの切り替え速度を上げたいのですがこれはどうすればいいのでしょうか?単純に移動速度の絶対値つまりプラスの値を使ってif(Fps::now() % c == 0)などにすると数字が多いので切り替える速度が遅くなって今います。自分は移動速度の分"早く"切り替えたいのですがどうすればいいのでしょうか?
ちなみにspeed->xはプラス マイナス 上限は15です。
2,計算式などを知ってれば教えてもらいたいです。
3,そもそもアニメーションはどうすればベターなやり方なのかも知りたいです。
/*-------------------------------------------------------------------------------------------------*/ /*0,1,2,3*/ int animation_Clip = 0; /*----------------------------描画-----------------------------*/ void const Player::Draw_Update() { int c = std::abs(speed->x); if((Fps::now() % 10 ) == 0 && c != 0) { animation_Clip += 1; if((animation_Clip >= 4)){ animation_Clip = 1; } }else if(c == 0) { animation_Clip = 0; } if(g_turn == false){ DrawGraph((int)pos->x, (int)pos->y, g_handle[animation_Clip], true); }else if(g_turn == true){ DrawTurnGraph((int)pos->x, (int)pos->y,g_handle[animation_Clip], true); } } /*------------------------------------------------------------*/
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。