15日目
ベースシステムがやっと仕上げに入れそうです。こんばんは。
移動範囲が広すぎるとの指摘を受けて640×480のうち移動できる範囲を320×480に限定。また、描写タイミングをずらして敵機出現時の負荷を軽減。これで出現時の処理落ちはなくなった模様。まだ全体的に重いそうですが…。
今度はキャラサイズ見直しかな? 移動範囲のわりに大きめになってるし。そろそろ自機に残機処理追加しないとな…。
さて、予告通りソースの無料版Delphi6でSTGをつくるためのプログラミング講座のチュートリアルに追加した部分の一部紹介をしていこうと思います。今回は背景処理部分の紹介。Delphiの知識のある方だけお読みください。(笑
↓↓↓↓↓背景処理↓↓↓↓↓
//背景処理wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
if BGY < 0 then begin
BGY:=2.0;
end;
BGY:=BGY-0.005;
Scene.PushSprite(
Vector2D(0, 0),
[
SXVertexSP((ClientWidth div 4), 0, $FFFFFFFF, 0.0,BGY),
SXVertexSP(bgcgtexture.TotalWidth+(ClientWidth div 4),0, $FFFFFFFF, 1.0,BGY),
SXVertexSP((ClientWidth div 4),bgcgtexture.TotalHeight*2, $FFFFFFFF, 0.0,BGY+2.0),
SXVertexSP(bgcgtexture.TotalWidth+(ClientWidth div 4),bgcgtexture.TotalHeight*2, $FFFFFFFF, 1.0,BGY+2.0)
],
bgcgTexture,
sxbAlpha,
true
);
↑↑↑↑↑背景処理ここまで↑↑↑↑↑
某サイトに載っていたものを少し改造したものです。BGYはinteger、360×240で描いてある背景画像をbgcgtextureとして読み込んであります。これで背景を動かせるのですが、なぜか1枚ごとに隙間ができるためそこの処理を考えているところです。どうするかな…。
