ゲームを作るにあたって、いくつかの点を通例としてあげられる。
updateとは、移動処理などの、裏方の処理である。
drawとは、描画処理である。
drawは、基本的に60回/sec実行すればよく、それ以上は無意味なことが多い。
updateは、開発者の意向により実行間隔は異なる。
そのため、これらは混ぜるべきではない。updateの処理においてdrawする、あるいはその逆はあまりよい書き方とは言えない。
描画処理は非常に重い処理である。そのため、update処理とdraw処理を同時に行おうとすると、処理時間である1/60秒内に処理できない部分が発生する。
ただ単に描画できなかっただけなら問題はないが、updateさえされていないなら問題だ。
そのため基本的には、updateが全て終わった後にdrawを実行、あるいはフレーム落ちということにしてdrawせずに次のupdateを行う。
//疑似コード
void main()
{
while(true)
{
update();//モデルのアップデート
sleep();//drawを始める時間まで待機
draw();//描画
}
}
void update()
{
updatePlayer();
updateEnemy();
}
void draw()
{
drawPlayer();
drawEnemy();
}
追加してください...
最終更新:2013年04月29日 17:57