マルチタッチ - Siv3D/Reference-JP GitHub Wiki
マルチタッチは、タブレット PC やタッチパネルディスプレイで利用できます。
# include <Siv3D.hpp>
void Main()
{
if (!Input::SupportsMultiTouch())
{
MessageBox::Show(L"マルチタッチに対応していません。");
return;
}
while (System::Update())
{
}
}
# include <Siv3D.hpp>
void Main()
{
if (!Input::SupportsMultiTouch())
{
MessageBox::Show(L"マルチタッチに対応していません。");
return;
}
while (System::Update())
{
const auto touches = Input::GetTouches();
for (const auto& touch : touches)
{
Circle(touch.pos, 40).draw(HSV(touch.id * 36));
}
}
}
# include <Siv3D.hpp>
void Main()
{
if (!Input::SupportsMultiTouch())
{
MessageBox::Show(L"マルチタッチに対応していません。");
return;
}
Image image(640, 480, Palette::White);
DynamicTexture texture(image);
while (System::Update())
{
const auto touches = Input::GetTouches();
if (!touches.empty())
{
for (const auto& touch : touches)
{
const Point pos = touch.clicked ? touch.pos : touch.previousPos.value();
Line(pos, touch.pos).write(image, 8, HSV(touch.id * 36));
}
texture.fill(image);
}
texture.draw();
}
}