글쓴이 보관물: sangkle

리눅스 스팀에서 X-Box 패드 사용하기

PC에서 X-Box One 패드를 쓰고 있다. 윈도에서 사용할 때는 별 문제 없이 잘 인식하고 잘 썼는데, 리눅스 스팀(steam)에서 게임을 하다보면 잘 되다 말다 한다.

스팀 게임인 Portal 2에서 패드를 쓰려고 하는데 아예 인식이 안 됐다. 그래서 Portal 2에 인게임 로그를 보니 패드는 인식을 하는데 움직여도 반응을 하지 않는다. 아래 그림을 보자.

[startCode]Found joystick ‘Microsoft X-Box One pad’ (030000005e040000d102000001010000), but no recognized controller configuration for it.[endCode]

인식된 컨트롤러가 없다고 한다. 그래서 구글!

컨트롤러 설정은 SDL_GAMECONTROLEERCONFIG 환경 변수에서 정한다. 예를들어 X-Box One 패드인 경우엔 다음과 같이 설정한다.

export SDL_GAMECONTROLLERCONFIG=”030000005e040000d102000001010000,Microsoft X-Box One pad,platform:Linux,x:b2,a:b0,b:b1,y:b3,back:b6,guide:b8,start:b7,dpleft:h0.8,dpdown:h0.0,dpdown:h0.4,dpright:h0.0,dpright:h0.2,dpup:h0.0,dpup:h0.1,leftshoulder:h0.0,leftshoulder:b4,lefttrigger:a2,rightshoulder:b5,righttrigger:a5,leftstick:b9,rightstick:b10,leftx:a0,lefty:a1,rightx:a3,righty:a4,”

물론 이 환경 변수는
$HOME/.profile, $HOME/.xprofile, /etc/environment
와 같은 설정 파일에 설정하거나, 스팀이면 스팀 시작 스크립트 파일에 추가해 준다.

X-Box One 패드가 아닌 경우는 아래 링크에서 장치면이 같은 줄을 복사해서 사용하자.

SDL Game Controller DB