Open1

初めてのSiv3D

黒狐黒狐

OpenSiv3D触ってみた!
とりあえず弾幕作ってみた。

# include <Siv3D.hpp> // OpenSiv3D v0.6.1

/*
* とりあえず最初の弾幕できた・・!
* フレームレート表示してみた
* auto i : step(120)とかでループできる感じ
* Arrayは生成して<<で要素を放り込むことができる
* んで・・これならTimeでもいいんかな。
*/

void Main()
{
	// 背景の色を設定 | Set background color
	Scene::SetBackground(ColorF{ 0.0, 0.3, 0.6});
	Scene::Resize(600, 600);

	int32 count = 0;
	float r = 0.0;
	float x = 0.0;
	float y = 0.0;
	float t = 0.0;

	const int32 N = 240;

	Array<int32> poses;
	for (auto i : step(N)) {
		poses << Random(640);
	}

	while (System::Update()) {

		// FPS表示
		Window::SetTitle(Profiler::FPS());

		for (auto i : step(N)) {
			r = float((count + poses[i]) % 480);
			t = 2.0 * Math::Pi * float(i) / float(N);
			x = r * Math::Cos(t);
			y = r * Math::Sin(t);
			RectF{ Arg::center(300 + x, 300 + y), 8, 4 }.rotated(t).draw();
		}

		count++;
	}

}

実行結果: