主にウディタを使ってのゲーム製作についてのブログです ※更新は不定期
[PR]
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
指定フレームで値を指定値まで変化させる処理
今回は指定したフレームで値を指定した値まで変化させるときの
現フレームの値を求める処理について書きます。
さっそくですが計算式書きます。
『新しい現在の値 = (相対値 * 現在の経過フレーム数) / 処理フレーム + 初回値』
上記の式で求めることができます。
たとえば
X座標20のオブジェクトAを60フレームかけて
X座標100まで移動したい。
このときの24フレーム経過後のオブジェクトAの
X座標は?
これを求めるとした場合
「24フレーム後のX座標 = ((100-20) * 24) / 60 + 20」
という風な式になります。
最初X座標が20なので
初回値には「20」を割り当てています。
X座標が20→100と変化させたいので
相対値には「80」を割り当てています。
もし100→20と移動させたい場合は相対値を「-80」にします。
これでなぜ座標が求まるかというと
経過フレームと処理フレームの割合をもとに算出されているからです。
「経過F/処理F」によって割合が求まります。
この割合と最大値を掛け算することによって
割合に応じた値が算出されます。
分かりやすく例えると
「6*(1/2) = 3」
これは6*1/2、つまり6の半分の値が求まります。
この「1/2」が割合に相当します。
これがもし「2/2」だった場合、1になり
「6*1 = 6」
最大数の6が求まるわけです。
この計算を処理に応用した式が
『新しい現在の値 = (相対値 * 現在の経過フレーム数) / 処理フレーム + 初回値』
というわけです。
現フレームの値を求める処理について書きます。
さっそくですが計算式書きます。
『新しい現在の値 = (相対値 * 現在の経過フレーム数) / 処理フレーム + 初回値』
上記の式で求めることができます。
たとえば
X座標20のオブジェクトAを60フレームかけて
X座標100まで移動したい。
このときの24フレーム経過後のオブジェクトAの
X座標は?
これを求めるとした場合
「24フレーム後のX座標 = ((100-20) * 24) / 60 + 20」
という風な式になります。
最初X座標が20なので
初回値には「20」を割り当てています。
X座標が20→100と変化させたいので
相対値には「80」を割り当てています。
もし100→20と移動させたい場合は相対値を「-80」にします。
これでなぜ座標が求まるかというと
経過フレームと処理フレームの割合をもとに算出されているからです。
「経過F/処理F」によって割合が求まります。
この割合と最大値を掛け算することによって
割合に応じた値が算出されます。
分かりやすく例えると
「6*(1/2) = 3」
これは6*1/2、つまり6の半分の値が求まります。
この「1/2」が割合に相当します。
これがもし「2/2」だった場合、1になり
「6*1 = 6」
最大数の6が求まるわけです。
この計算を処理に応用した式が
『新しい現在の値 = (相対値 * 現在の経過フレーム数) / 処理フレーム + 初回値』
というわけです。
PR
COMMENT
- 無題
- from: たかねぇ
なんかめっちゃ難しそう!Σ( ̄□ ̄;)
- 2014/06/07 17:12 |
- 編集 |
- *Res
■ Woditoride - April Fool's Day Edition
┗最新版公開日 : 2018/04/01
■ WoditorOptimizer - Ver2.0.1
┗最新版公開日 : 2017/08/31
■ WoditorOptimizer - Ver1.00 -
┗旧バージョン : 2015/04/18
■ WECDeletor - Ver1.01 -
┗最新版公開日 : 2012/11/03
HN:
K-Shin07
性別:
男性
趣味:
ゲーム製作
自己紹介:
趣味でゲームを作っています
プログラマーです
開発ツール・使用言語等
・WOLF RPG エディター
・HSP
・C
・VB
・Java
・C++
・C++/CLI
・C#
・アセンブラ
・Haskell
・PHP
・Ruby
・WPF
・DirectX( 9.0c )
・PhysX( 3.X系 )
Mail
k07.alpha.stella[あっとマーク]gmail.com
プログラマーです
開発ツール・使用言語等
・WOLF RPG エディター
・HSP
・C
・VB
・Java
・C++
・C++/CLI
・C#
・アセンブラ
・Haskell
・PHP
・Ruby
・WPF
・DirectX( 9.0c )
・PhysX( 3.X系 )
k07.alpha.stella[あっとマーク]gmail.com
(2018/08/07)
(2018/07/21)
(2018/04/01)
(2017/08/27)
(2016/10/16)
(2016/10/14)