4年前から解決策が見つかってない難問誰か解いてat GAMEDEV
4年前から解決策が見つかってない難問誰か解いて - 暇つぶし2ch1:名前は開発中のものです。
20/01/16 19:39:22.13 R1+QguPT.net
c++、DXlibな者です。
メインループ内で
x*=0.9f;
なりをまわすとぬるっとxが0に近づいていく。
ぬるっとしてるのでUIがリッチっぽくなるけど、
x+=0.1f;
などと違い、フレームレートが変動しても
fps=35;
x+=0.1f*60.f/fps;
みたいに補正することができない。
対策として、フレームレートに応じた値を保持しといて入れ替える
std::array<float,60> temp;
とか、
マリオのジャンプ式
x+=y;
y--;
みたいなのを考えていた。でも、
前者はメモリを食うし小数点以下を考えるとつらみ。
後者も等加速度直線運動なんで精度に難がある。

2:名前は開発中のものです。
20/01/16 19:40:28.14 R1+QguPT.net
誰か対策を…そして4年の呪縛から解き放ってくれ…

3:名前は開発中のものです。
20/01/17 03:08:10.39 xbKTeYck.net
HTML5のCSSアニメーションには多様なパラメータが用意されていて
少ないコード量で膨大なパターンを手軽に試行錯誤することができる
今回の件であれば
キーフレーム(何ミリ秒後にどういう状態にしたいか)の概念を取り入れるとか、
途中の状態の計算方法としてイージング(ease)を使ってみるとか

4:名前は開発中のものです。
20/01/17 10:48:45 878dgjlU.net
よくわからない、ガンダムで例えてくれ...

5:名前は開発中のものです。
20/01/17 17:44:47.78 dI55HHmX.net
>>4
ガンダムがアムロの動きに合ってくれないのでマグネットコーティングの塗り方教えてくれ

6:名前は開発中のものです。
20/01/17 20:49:46.75 YRNiJPaW.net
アムロ父が酸素欠乏症だった感じ

7:名前は開発中のものです。
20/01/18 19:55:44.33 vHCBk4qI.net
よくわからないガンダム=武者ガンダム

8:名前は開発中のものです。
20/01/19 12:41:27.38 naY6xUXg.net
x*=0.9f ^ (60/フレームレート)
じゃダメなのか?

9:名前は開発中のものです。
20/01/19 12:55:01.10 naY6xUXg.net
cだと^はビット演算なのか
x*=pow(0.9f, 60/fps)ね

10:名前は開発中のものです。
20/01/19 18:43:23.28 6oYVQhv+.net
p+=x*60.0f/fps
x*=pow(0.9f,60.0/fps)
これで行けたわ、9サンガツ
(試験用にHSPで組んだやつ)
repeat 2
if(cnt=0){ fps=60.0 : color 0,0,255 }
else{ fps=75.0 : color 255,0,0 }
p=0.0 : q=0.0 : x=1.0
line 0,0,0,0
repeat int(fps)
q+=60.0/fps
p+=x*60.0/fps : x*=powf(0.9,60.0/fps)
line q*10,p*10
loop
loop
stop

11:名前は開発中のものです。
23/10/12 15:30:48.02 Sd4ANNLC.net
~~~-y(  -)^^) ブチュッ

12:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています


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