ゲームプログラマーの寄り道

ゲームプログラマの寄り道

ソースコード公開系ブログ

ソースコード公開系ブログ

C++でゲームコントローラを取得

#pragma comment(lib, "winmm.lib")

#include <stdio.h>
#include <windows.h>

int main() {

	JOYINFOEX JoyInfoEx;
	JoyInfoEx.dwSize = sizeof(JOYINFOEX);
	JoyInfoEx.dwFlags = JOY_RETURNALL;

	for (unsigned int i = 0; i < joyGetNumDevs(); i++) {//サポートされているジョイスティックの数を返す
		if (JOYERR_NOERROR == joyGetPosEx(i, &JoyInfoEx))
			printf("ジョイスティック No.%d 接続されています\n", i);
	}
	Sleep(1000);

	while (1) {
		if (JOYERR_NOERROR == joyGetPosEx(0, &JoyInfoEx)) { //0番のジョイスティックの情報を見る
			printf("address = %d\t", &JoyInfoEx);
			printf("dwXpos = 0x%x\t"
				"dwYpos = 0x%x\t"
				"dwButtons = 0x%x\n",
				JoyInfoEx.dwXpos,
				JoyInfoEx.dwYpos,
				JoyInfoEx.dwButtons);

		}
		else {
			printf("エラー\n");
		}
		Sleep(100);
	}
	return 0;
}