ページ 11

STG 背景のスクロールスピードを遅くしたい

Posted: 2014年12月22日(月) 15:17
by スーパーぽんぽこたぬきZ
以前もこの掲示板で質問させていただきお世話になった者です。
今回STGの背景の描写スピードについて質問させていただきたいのです。
使用しているのはVisual Studio2012です。
まず現在のプログラムは以下の通りです。

コード:

	SetDrawArea(16, 16, 464, 464);
		if (count% 480 == 0)
		{
			bflag += 1;
		}
		DrawGraphF(16, count% 480+ 16.0 - 480, back[bflag + 1], TRUE);
		DrawGraphF(16, count% 480+ 16.0, back[bflag], FALSE);
	
龍神録の作り方で紹介しているものとほぼ同じです。
count はint型で毎ループごとに1ずつ増えています。
背景の画像の大きさは480×480です。
私はもっと背景画像をスクロールさせるスピードを遅くしようと思い
countをdoubleかfloat型で宣言するように変更し、毎ループごとに0.5ずつ増やしていけばいいのではと考えました。
しかし「式には整数型または対象範囲外の列挙形を使う必要があります」というエラーがでてきて上手くコンパイルできません。これはどういう意味なのでしょうか?
そして他にもっと上手いやり方ってありませんかね・・・?

Re: STG 背景のスクロールスピードを遅くしたい

Posted: 2014年12月22日(月) 15:38
by MoonGate
実数型変数の余りは%では計算できません。
fmod関数を使用してください。

ただ、半分にしたいのであればcountが加算されるのをフレーム毎ではなく、2フレームに一回という方にするほうがスマートかと思います。

Re: STG 背景のスクロールスピードを遅くしたい

Posted: 2014年12月22日(月) 22:06
by nullptr
オフトピック
質問に対する回答ではないので、書き込むのをためらいましたが、耐え切れず書かせていただきます。

「 スーパーぽんぽこたぬきZ」というハンドルネーム、最ッッ高にクールですね!!!