他の人が言ったように、再生を開始する前にレベルのすべてのデータをロードできれば、パフォーマンスが大幅に向上します。ゲームプレイ中にアセットをロードすることは、フレーム時間のヒッチの一般的な原因です。
読み込み画面で行う一般的なことは、静的な背景画像、非常にシンプルなレベル、再生方法に関するいくつかのヒントとコツ、クイックアニメーションなどです。
APBの読み込み画面は次のとおりです。かなりおかしい。:)
http://www.youtube.com/watch?v=p5STix1t_1E&feature=related
ロード画面にプログレスバーを表示するための擬似コードを次に示します。
LoadScreen::Init()
{
mAssetsToLoad.add("Background.png");
mAssetsToLoad.add("Player.png");
}
LoadScreen::Update()
{
mProgress += 1;
mAssetManager.load(mAssetsToLoad.top());
mAssetsToLoad.pop();
if mAssetsToLoad.empty()
mDone = true;
}
LoadScreen::Draw()
{
for( int i = 0; i != mProgress; ++i)
{
Vector2 pos(i*mProgressPartTexture.Width, 100);
DrawProgressBarPart(pos, mProgressPartTexture);
}
}
ええと、!=の使用を強制されました。これは、<