예제 #1
0
void CChannelMap::SetupSoundChips()
{
	// Add available chips
#ifdef _DEBUG
	// Under development
	AddChip(SNDCHIP_NONE, new CInstrument2A03(), "Internal only (2A03/2A07)");
	AddChip(SNDCHIP_VRC6, new CInstrumentVRC6(), "Konami VRC6");
	AddChip(SNDCHIP_MMC5, new CInstrument2A03(), "Nintendo MMC5");
	AddChip(SNDCHIP_FDS,  new CInstrumentFDS(),  "Nintendo FDS sound");
	AddChip(SNDCHIP_VRC7, new CInstrumentVRC7(), "Konami VRC7");
	// TODO - dan
/*	AddChip(SNDCHIP_N106, new CInstrumentN106(), "Namco 106");
	AddChip(SNDCHIP_S5B,  new CInstrumentS5B(),  "Sunsoft 5B");*/
#else /* _DEBUG */
	// Ready for use
	AddChip(SNDCHIP_NONE, new CInstrument2A03(), "Internal only (2A03/2A07)");
	AddChip(SNDCHIP_VRC6, new CInstrumentVRC6(), "Konami VRC6");
	AddChip(SNDCHIP_MMC5, new CInstrument2A03(), "Nintendo MMC5");
	AddChip(SNDCHIP_FDS,  new CInstrumentFDS(),  "Nintendo FDS sound");
	AddChip(SNDCHIP_VRC7, new CInstrumentVRC7(), "Konami VRC7");
	// TODO - dan
/*	AddChip(SNDCHIP_N106, new CInstrumentN106(), "Namco 106/163");
	AddChip(SNDCHIP_S5B,  new CInstrumentS5B(),  "Sunsoft 5B");*/
#endif /* _DEBUG */
}
예제 #2
0
/**
@brief	カメラ付きでマップを表示する。
*/
void MapObject2D_Camera()
{
	// aceを初期化する
	asd::Engine::Initialize(asd::ToAString("MapObject2D_Camera").c_str(), 640, 480, asd::EngineOption());

	//カメラを設定する。
	auto camera = std::make_shared<asd::CameraObject2D>();

	camera->SetSrc(asd::RectI(0, 0, 640, 480));
	camera->SetDst(asd::RectI(0, 0, 640, 480));

	{
		//マップオブジェクトを生成する。
		auto mapObject = std::make_shared<asd::MapObject2D>();

		auto texture = asd::Engine::GetGraphics()->CreateTexture2D(asd::ToAString("Data/Texture/Sample2.png").c_str());

		//マップオブジェクトに50*50=2500個のチップを登録する。
		for (int i = 0; i < 50; ++i)
		{
			for (int j = 0; j < 50; ++j)
			{
				//チップを生成する。
				auto chip = std::make_shared<asd::Chip2D>();

				//チップにテクスチャを設定する。
				chip->SetTexture(texture);

				//チップの描画先を指定する。
				chip->SetPosition(asd::Vector2DF(i * 40 - 1000, j * 40 - 1000));

				//マップオブジェクトにチップを追加する。
				mapObject->AddChip(chip);
			}
		}

		//レイヤーにマップオブジェクトを追加する。
		asd::Engine::AddObject2D(mapObject);

	}

	//レイヤーにカメラオブジェクトを追加する。
	asd::Engine::AddObject2D(camera);

	// aceが進行可能かチェックする。
	while (asd::Engine::DoEvents())
	{
		//カメラを移動させる
		auto pos = camera->GetSrc();
		pos.X += 1;
		pos.Y += 1;
		pos.X %= 1000;
		pos.Y %= 1000;
		camera->SetSrc(pos);

		// aceを更新する。
		asd::Engine::Update();
	}

	// aceを終了する。
	asd::Engine::Terminate();
}