Joy Control
Joy Control: 시뮬레이션 게임을 위한 정밀 게임패드 제어 프로그램
⬇ JoyControl.rar (15 MB) ⬇ JoyControl-KO.pdf (862 KB)ENGI Live JoyControl은 윈도우용 프로그램으로, 사용자의 컨트롤러와 게임 사이에 작동합니다. 이 프로그램은 DualShock 4, DualSense, Xbox (XInput) 컨트롤러, 핸들 및 조이스틱 (HID / DirectInput), 그리고 키보드 입력을 읽어들입니다. 프로그램은 입력 신호를 처리하여 ViGEmBus 드라이버를 통해 게임에 Xbox 360 가상 게임패드 신호를 전달합니다.
이 프로그램은 게임 실행 중에 숨겨져 작동합니다. 게임은 일반적인 표준 게임패드를 인식하므로, 모든 시뮬레이션 게임에서 설정이 적용됩니다. 따라서 모드가 필요 없으며, 게임 개발자의 지원도 필요하지 않습니다. 또한, 게임 파일이 변경되지 않습니다.
프로그램의 핵심은 이것입니다. 게임패드의 버튼 이동 거리는 약 2cm이고, 자동차의 페달 이동 거리는 약 10cm입니다. 스틱은 1.5cm만큼 움직이고, 핸들은 반 바퀴 정도 회전합니다. 바로 이 때문에 게임패드에서는 가속과 브레이크 조절이 매우 어렵습니다. 손가락이 50~80밀리초 안에 0%에서 100%까지 전체 범위를 이동하기 때문에, 자동차가 미끄러지거나 바퀴가 잠기는 현상이 발생합니다. Joy Control은 이러한 문제점을 해결하여, 실제 페달의 움직임과 동일한 방식으로 조작감을 제공합니다. 이 프로그램은 단순히 시각적인 효과를 제공하는 것이 아니라, 실제 시간과 반응 속도를 반영합니다.
신호 처리 방식
각 값은 일련의 과정을 거치며, 최종적으로 사용자 정의 게임패드 제어가 가능하게 됩니다.
- 데드존. 프로그램은 설정된 임계값 이하의 모든 원시 값을 0으로 처리하기 때문에, 노이즈나 마모는 게임에 영향을 미치지 않습니다.
- 트리거 상호 작용. 하나의 트리거 값이 다른 트리거 값에서 곱해진 값만큼 차감됩니다.
- 감도 곡선. 이 곡선은 반응의 형태를 결정하며, 부드러운 시작인지 아니면 급격한 반응인지 나타냅니다.
- 임계값 및 출력 제한. "최소" 값보다 낮은 값은 0으로 처리되고, 나머지 값은 전체 범위에 걸쳐 분포됩니다. "최대" 값은 출력의 상한을 제한합니다.
- 부드러움 조절 구간. 이 설정은 단위당 밀리초 단위의 변화 속도를 지정하며, 버튼을 누를 때와 뗄 때 각각 다른 값을 설정할 수 있습니다.
- 매크로 및 동작 매핑. 하나의 제어 요소가 다른 제어 요소에 영향을 미칩니다.
- Xbox 360 가상 게임패드. 처리된 결과는 게임으로 전송됩니다.
게임패드 입력은 약 120~125Hz의 주파수로 읽어들입니다. 모든 지연 시간은 고정밀 타이머를 사용하여 계산되며, 시간 누적 기능이 포함되어 있어, 프레임 간에도 0.1밀리초 단위의 정확한 제어가 가능합니다.
프로그램의 기능
- 모든 종류의 입력 장치 지원. PS4 및 PS5는 자동으로 인식되며, Xbox는 XInput을 통해 연결됩니다. 스티어링 휠과 조이스틱은 HID 및 DirectInput을 통해 작동하며, 키보드는 게임패드를 대체합니다. 조이스틱은 원하는 만큼 연결할 수 있습니다. 각 조이스틱은 고유한 ID를 가지며, 각각 별도의 설정이 가능하므로, 동일한 게임패드라도 두 개를 연결해도 각각 독립적으로 설정할 수 있습니다.
- 독립적인 트리거 설정. 브레이크와 가속은 각각 개별적으로 설정되며, 두 기능을 모두 제어하는 단일 슬라이더로는 조절되지 않습니다.
- 최대 10개의 부드러움 구간 설정 가능. 각 구간은 0부터 255까지의 범위에서 설정되며, 버튼을 누를 때와 뗄 때 각각 다른 값을 가질 수 있습니다. 각 구간의 지연 시간은 0.1밀리초에서 1000밀리초까지 설정 가능합니다.
- 감도 조정 곡선. 트리거의 경우 감도 조정 범위는 -20에서 +20까지, 각 조이스틱 축의 경우 -10에서 +10까지 설정할 수 있습니다.
- 스티크의 완전한 설정. 내부 및 외부 데드존, X축 및 Y축 범위 제한, 전체 스트로크까지의 확장, 그리고 특정 축에 대한 최대값 강제 설정 기능이 제공됩니다.
- 매크로. "따라가기", "고정", "펄스", "토글", "터보", "비활성화" 및 "시퀀스" 모드를 지원합니다. "시퀀스" 모드는 최대 16단계까지의 일련 동작을 타이밍과 함께 설정할 수 있습니다. 각 규칙은 최대 4가지 조건(버튼, 트리거, 아날로그 스틱)을 가질 수 있으며, 범위 설정을 통해 "L1 버튼을 누르고 L2 버튼을 반만 누른다"와 같은 복잡한 조합도 하나의 규칙으로 정의할 수 있습니다. 또한, 규칙의 우선순위, 지연 시간(마이크로초 단위), 그리고 다른 매크로와 결합하는 방식(최댓값, 대체, 덧셈 등)을 설정할 수 있습니다. "연결" 기능을 사용하면 하나의 규칙 실행 결과가 다른 규칙을 트리거하도록 설정할 수 있습니다.
- 동작 매핑. 모든 입력은 모든 출력과 연결될 수 있으며, 작동 임계값, 유지 조건, 그리고 작동 전후의 지연 시간을 설정할 수 있습니다.
- 실시간 오실로스코프. 그래프에서 최근 3초 동안의 데이터를 보여주는데, 회색으로 표시된 부분은 컨트롤러에서 직접 받은 원본 값이고, 색으로 표시된 부분은 게임에 실제로 적용되는 값입니다. 설정이 명확하게 보여서 사용자가 추측할 필요가 없습니다.
- 게임패드의 인터랙티브 이미지. 트리거, 스틱, 버튼 또는 터치패드 영역을 클릭하면 해당 설정 창이 열립니다.
- 프로필. 설정은 로컬 SQLite 데이터베이스에 저장되며, 각 프로필은 고유한 16자리 코드를 가집니다. 파일 교환은 JSON 형식을 통해 이루어집니다. 각 게임마다 별도의 프로필을 설정하는 것이 편리합니다. 각 조이스틱의 설정은 별도의 파일로 저장되며, 이 파일은 어떤 프로필의 어떤 조이스틱에도 적용할 수 있습니다.
- 14개 언어의 사용자 인터페이스 지원. 이 프로그램은 하나의 실행 파일로 구성되어 있으며, 설치가 필요하지 않습니다.
- 자동 저장. 모든 변경 사항은 즉시 적용되고 저장되므로, 게임을 종료하지 않고도 설정을 변경할 수 있습니다.
시뮬레이션 게임에서 이 프로그램이 더 나은 이유
일반적인 버튼 재매핑 프로그램은 반응 형태, 즉 곡선만 변경합니다. Joy Control은 반응 속도까지 변경합니다. 즉, 각 이동 구간에서 목표에 도달하는 데 걸리는 밀리초 수를 조절합니다. 이는 완전히 다른 수준의 제어이며, 이 기능이 게임패드를 사용하는 시뮬레이션 게임에서 흔히 발생하는 문제를 해결합니다.
- 가속 페달을 밟았을 때 차량이 갑자기 미끄러지는 현상이 발생하지 않습니다. 손가락이 즉시 가속 페달을 밟았고, 힘이 서서히 전달되면서 차량은 마치 운전자가 부드럽게 페달을 밟는 것처럼 힘을 받습니다.
- 제동력은 잠금 직전의 수준으로 조절됩니다. 처음 30% 구간에서는 제동이 빠르고 반응이 즉각적이지만, 마지막 30% 구간에서는 제동이 느려집니다. 가장 끝부분에서는 바퀴가 잠기는 지점에 도달할 수 있는데, 이는 손으로 직접 조작하는 것보다 훨씬 정밀하게 제어됩니다.
- 트리거 해제 기능은 가속 페달 또는 브레이크 페달 작동과 별도로 설정됩니다. 실제 가속 페달이나 브레이크 페달은 가속 또는 감속되는 속도와 다르게 해제됩니다. 코너 진입 시 부드럽게 브레이크를 떼거나, 오르막길에서 부드럽게 가속을 줄이는 기능은 각각 별도의 설정 영역을 가집니다.
- 부드러운 작동 방식은 비상 상황 발생 시에도 지장을 주지 않습니다. 특정 설정 옵션을 통해 극한 위치에서의 지연 시간을 해제할 수 있습니다. 트리거를 완전히 놓는 즉시, 브레이크가 즉시 해제됩니다.
- 조향 장치에 관성이 발생합니다. 스틱을 갑자기 움직여도 바퀴가 즉시 회전하지 않습니다. 그 이유는 스틱 자체에 움직임의 부드러움 구간이 존재하기 때문입니다. 즉, 스틱을 움직이는 각도와 중앙으로 돌아오는 각도 모두 부드러운 변화를 거치게 됩니다.
- 조작 정확도가 향상됩니다. X축 범위 제한 기능은 스틱의 전체 이동 범위를 60~70%의 회전 각도로 제한하며, 동일한 거리를 움직일 때 조작 정확도가 두 배로 향상됩니다.
- 모든 게임에서 작동 방식은 동일합니다. 처리는 게임 시작 전에 이루어지며, 가상 컨트롤러 수준에서 작동하므로 게임 내 설정이나 모드가 필요하지 않습니다.
- 왼쪽 발은 브레이크 페달 위에 둡니다. 하나의 트리거를 다른 트리거에서 빼면, 가속 페달과 브레이크 페달이 충돌하거나, 반대로 가속 페달을 밟은 상태에서 약간의 제동을 걸 수 있는 효과를 냅니다.
가속 및 브레이크 설정
왼쪽 트리거 L2 / LT는 브레이크, 오른쪽 트리거 R2 / RT는 가속입니다. 각 버튼은 별도의 창에서 설정되며, 모든 매개변수는 독립적으로 조정됩니다.
| 매개변수 | 기능 | 시뮬레이션 게임에 적합한 설정 |
|---|---|---|
| 데드존 | "원시 값"이 임계값 아래이면 0으로 간주됩니다. | 새 게임패드의 경우, 데드존은 3~8 단위로 설정됩니다. 마모되어 가속이 제대로 작동하지 않는 트리거의 경우, 데드존을 10~15 단위로 높여야 합니다. |
| 최소값과 최대값 | "최소"는 입력 임계값입니다. 이 값 아래에서는 출력이 0이 되고, 남은 범위는 0~255로 늘어납니다. "최대"는 출력의 상한을 제한합니다. | "최소" 설정은 마모된 스위치의 떨림을 5~10단위로 줄여주지만, 작동 범위를 단축시키지는 않습니다. "최대" 설정은 빗길 주행이나 강력한 후륜 구동 차량의 경우 255단위 중 190~210단위로 설정하면, 풀 가속이 불가능하게 됩니다. |
| 감도 곡선 | 반응 특성을 -20에서 +20 사이의 범위로 설정합니다. 음수 값은 부드러운 출발과 초기 단계에서의 정확성을 제공하고, 양수 값은 급격한 가속을 가능하게 합니다. | 가속 페달의 경우, 곡선 레벨을 -6에서 -10 사이로 설정하고, 브레이크 페달의 경우 -3에서 -6 사이로 설정합니다. 양수 값은 드물게 사용되며, 예를 들어 버튼식 수동 변속기에 사용될 수 있습니다. |
| 터치 영역 | 0에서 255 사이의 범위에서 최대 10개의 구간을 설정할 수 있으며, 각 구간마다 밀리초 단위의 지연 시간을 가질 수 있습니다. 구간 외의 영역에서는 값이 즉시 변경되지만, 구간 경계에서는 지연 시간이 누적됩니다. | 참고: 255단위당 1밀리초의 지연 시간을 가지면, 전체 작동 범위에서 약 0.26초의 지연이 발생합니다. 가속 페달의 경우, 0.3에서 2밀리초, 브레이크 페달의 경우 0.5에서 3밀리초의 지연 시간을 설정하는 것이 일반적입니다. |
| 방출 구역 | 별도의 구간을 설정하여 값의 감소를 조절할 수 있습니다. | 일반적으로 브레이크 페달에서 발을 떼는 속도가 페달을 밟는 속도보다 빠릅니다. 보통 0.5에서 1밀리초 정도의 차이가 납니다. 코너링 시 부드러운 브레이크 작동을 위해, 페달을 떼는 속도를 높이는 값을 조정할 수 있습니다. |
| 즉시 0 값과 즉시 최대값 | 트리거가 완전히 밟히거나 풀렸을 때, 부드러운 작동 기능을 해제합니다. | 브레이크는 비상 제동을 위해 활성화되며, 가속 페달은 일반적으로 비활성화됩니다. |
| 트리거 제거 및 곱셈 계수 | 브레이크는 가속 페달의 작동을 약화시키거나, 가속 페달은 브레이크의 작동을 약화시킵니다. 이 비율은 설정 가능합니다. | 0.5에서 1.0 사이의 배율 값은 왼쪽 발로 브레이크를 밟는 것과 같은 효과를 내며, 가속 페달을 짧게 밟는(킥다운) 기능을 모방합니다. |
미리 설정된 트리거 옵션
| 옵션 이름 | 작동 (밟기) | 해제 (떼기) | 용도 |
|---|---|---|---|
| 부드러운 제동 | 0–80: 0,5 · 80–180: 1,5 · 180–255: 3,0 | 120–255: 1,0 · 0–120: 0,5 | 서킷 레이싱 및 잠금 임계값에서의 정밀한 제어. |
| 부드러운 가스 | 0–60: 0,3 · 60–200: 1,0 · 200–255: 2,0 | 0–255: 0,8 | 후륜 구동 차량의 코너링 시, 미끄러짐 없이 빠져나올 수 있도록 지원. |
| ABS는 무엇인가요 | 0–128: 0,2 · 128–255: 2,5 | 순간적으로 | 빠른 제동 시작과 느린 추가 제동. |
| 안녕하세요 | 0–128: 2,5 · 128–255: 0,2 | 순간적으로 | 시작 시 느린 가속과 높은 회전수 범위. |
표에 있는 숫자는 각 출력 단위당 밀리초 단위의 지연 시간을 나타냅니다. 프리셋은 시작점으로 사용되며, 이후에는 각 차량에 맞춰 세부 조정이 이루어지며 오실로스코프를 통해 확인합니다. 회색 선은 조작을, 색상 선은 게임에서 받는 값을 보여줍니다.
조이스틱 설정
자동차 시뮬레이터에서 왼쪽 조이스틱은 스티어링 휠처럼 작동하고, 오른쪽 조이스틱은 시야 또는 카메라를 제어합니다. 각 조이스틱은 기하학적 구조(데드 존), 범위, 곡선, 그리고 X축과 Y축 각각에 대한 구간별 부드러움 정도를 개별적으로 설정할 수 있습니다.
| 매개변수 | 기능 | 시뮬레이션 게임에 적합한 설정 |
|---|---|---|
| 내부 데드존 | 중앙 부분의 드리프트를 제거합니다. | 새 조이스틱의 경우 3~6%, 마모된 조이스틱의 경우 8~12%로 설정합니다. 값이 작을수록 차량이 직진을 더 정확하게 유지합니다. |
| 외부 데드존 | 최대값이 약간 일찍 도달하도록 범위를 제한합니다. | 92%에서 97% 사이의 값으로 설정하면, 전체 회전 범위에서 대각선까지 완벽하게 작동합니다. |
| 축 방향의 최대 범위 | X축 또는 Y축 방향의 회전 범위를 제한합니다. | 조향 시 가장 중요한 설정은 X축 방향으로 60%에서 75% 사이의 값을 사용하는 것입니다. 이렇게 하면 핸들이 최대 회전 각도에 도달하지 않아 정확도가 크게 향상됩니다. |
| 최대한의 가동 범위까지 스트레칭 | 경계 부분을 잘라낸 후, 신호를 다시 최대값으로 늘립니다. | 넓은 시야각이 필요한 경우에 활성화됩니다. |
| 축 방향 민감도 | -10에서 +10 사이의 값을 설정하여 곡선을 조정합니다. 음수 값은 중앙 부분을 늘려 반응을 부드럽게 만들고, 양수 값은 반응을 더 빠르게 만듭니다. | 조향 시 X축 방향의 곡선 값은 -4에서 -7 사이로 설정하는 것이 좋습니다. 시야 확보를 위해 오른쪽 스틱은 +2에서 +4 사이로 설정하여 빠르게 회전할 수 있도록 합니다. |
| 편차 영역 | 중앙에서 부드럽게 벗어나는 정도를 설정합니다. 0에서 255 사이의 값은 중앙에서 최대 회전 각도를 나타내며, 각 구간은 X축 및 Y축 방향에 대한 자체 설정을 가집니다. | 조향에 적합한 지연 설정은 다음과 같습니다: 0-60: 0.4ms, 60-160: 1.2ms, 160-255: 2.5ms (단위). 스틱은 중앙 부근에서는 빠르게 반응하지만, 최대 회전 각도에서는 반응이 느립니다. |
| 반환 구역 | 중심으로의 부드러운 복귀를 유도합니다. | 단위당 0.5에서 0.8 밀리초의 지연은 전체 시스템에서 바퀴의 자동 복귀 기능을 시뮬레이션하는 것입니다. 카메라의 경우, 복귀 속도는 움직임보다 빠릅니다. |
| 축 방향의 최대 값 | 축 방향으로 약간의 오차가 발생하더라도, 설정된 범위 내에서 최대값을 출력합니다. | 아케이드 게임이나 디지털 방식으로 방향을 조작해야 하는 게임에 적합합니다. |
| 스틱 완전 비활성화 | 스틱은 게임에 적용되지 않지만, 설정된 매크로 기능은 계속 작동합니다. | 조종간은 거치대에 놓고, 스티커는 매크로 기능을 위한 도구로만 사용하는 것이 편리합니다. |
X축과 Y축은 함께 또는 개별적으로 조정될 수 있습니다. 각 섹션에는 "X" 및 "Y" 플래그가 있으며, 겹치는 섹션은 지연 시간을 더합니다. 설정 옆에는 -255에서 +255까지의 범위를 표시하는 오실로스코프가 함께 작동합니다. 조이스틱을 움직여 보면서 출력 신호가 손가락 움직임과 얼마나 차이가 나는지 확인해 보세요.
작업을 하려면 무엇이 필요할까요
- Windows 10 또는 11 운영체제 (64비트 버전).
- ViGEmBus 드라이버 버전 1.22.0입니다. 이 프로그램은 해당 드라이버가 설치되어 있는지 확인하고, 설치되어 있지 않은 경우 한 번의 클릭으로 설치할 수 있도록 안내합니다.
- 케이블, 어댑터 또는 블루투스를 통해 연결된 컨트롤러.
프로그램은 한 번 실행할 때마다 20분 동안 체험 모드로 실행됩니다. 모든 기능을 사용하려면 영구 라이선스인 engi.live를 구매해야 합니다.
그림과 함께 설명된 사용 설명서: 각 버튼의 위치
아래에는 프로그램의 모든 창에 대한 단계별 설명과 함께 스크린샷이 제공됩니다. 이 사용 설명서는 PDF 형식으로 다운로드할 수 있으며, 페이지 상단에 있는 버튼을 클릭하여 다운로드할 수 있습니다.
1. 드라이버: ViGEmBus 및 HidHide
- ViGEmBus는 가상 게임패드 드라이버입니다. 이 드라이버가 없으면 프로그램은 Xbox 게임패드를 생성할 수 없습니다. 창 하단의 상태 표시줄에 "ViGEmBus 드라이버: 정상"이라고 표시되어야 합니다. 그렇지 않은 경우, 설치 버튼이 해당 위치에 나타납니다.
- HidHide 기능은 필수가 아닙니다. 이 기능은 게임이 실제 게임패드와 가상 게임패드를 동시에 인식하고, 캐릭터가 중복으로 나타나는 경우에만 필요합니다. 자세한 내용은 15장에서 확인하실 수 있습니다.
2. 메인 창

- 상단 패널: 프로필 선택, 프로필... (프로필 설정), 프로필 전체 저장 및 불러오기, 동작 매핑, 기본값으로 재설정, 사용자 인터페이스 언어.
- 왼쪽에는 입력 장치가 있습니다. 모든 프로필 조이스틱, 해당 ID, 체크 표시 및 그룹 작업 기능이 있습니다.
- 오른쪽에는 게임패드의 그림이 있습니다. 이 그림은 선택한 게임패드로부터 게임이 받는 정보를 실시간으로 보여줍니다. 그림을 클릭하면: 트리거, 스틱 또는 버튼을 클릭하면 해당 설정으로 이동합니다.
- 이미지 아래에는 선택된 조이스틱의 매크로 설정이 표시됩니다. 각 아이콘은 하나의 규칙을 나타내며, 클릭하면 해당 규칙의 출처를 확인할 수 있습니다.
3. 여러 개의 조이스틱 및 해당 ID
이 프로그램은 모든 종류의 게임 컨트롤러를 지원합니다. 각 컨트롤러는 고유한 ID를 가지며, 블루투스 게임패드의 경우 해당 ID는 MAC 주소입니다. 따라서 동일한 모델의 DualShock 컨트롤러라도 서로 다른 ID를 갖습니다. 프로그램은 컨트롤러가 연결되면 자동으로 해당 컨트롤러의 설정을 찾아 적용하며, USB 포트가 변경되더라도 동일하게 적용됩니다.

| 행 요소 | 기능 |
|---|---|
| × | 설정과 함께 프로필에서 제거합니다. |
| 첫 번째 체크박스 | 작동 방식: 조이스틱을 사용하여 가상 Xbox 게임패드를 사용할 수 있습니다. |
| 두 번째 체크박스 | 선택됨: 그룹 활동에 참여합니다. |
| 이름 | 클릭: 이 조이스틱을 설정합니다. 더블 클릭: 이름을 변경합니다. |
| ID | 클릭: ID를 클립보드에 복사합니다. |

그룹 작업
- 선택 항목 적용 - 선택된 (▶) 조이스틱의 모든 설정을 "선택됨"으로 표시된 조이스틱에 복사합니다.
- 모두 선택 / 모두 해제 - 빠르게 체크 표시를 설정/해제합니다.
- 조이스틱 → 파일 - 설정 값을 저장합니다. 하나의 조이스틱 설정 값을 별도의 파일 .joy.json에 저장합니다.
- 파일 → 조이스틱 – 파일에서 설정을 불러올 때, 선택된 조이스틱에만 적용합니다. 다른 조이스틱도 선택되어 있다면, 프로그램은 선택된 모든 조이스틱에 적용할지 묻습니다. 일반적인 프로필 파일도 사용할 수 있습니다. 프로필 파일에 여러 조이스틱 설정이 포함되어 있다면, 프로그램은 어떤 조이스틱의 설정을 사용할지 선택하도록 안내합니다.
4. 프로필 및 파일
프로필은 모든 조이스틱과 각 조이스틱의 설정이 포함된 완전한 세트입니다. 프로필은 여러 개 만들 수 있으며, 예를 들어 다양한 게임에 맞게 사용할 수 있습니다.

- 활성화, 새로 만들기, 복제, 이름 바꾸기, 삭제 - 프로필 관리.
- 파일로 저장... / 파일에서 불러오기... - 전체 프로필.
- 조이스틱 설정 블록: 특정 조이스틱의 설정을 파일로 저장하거나 불러와서, 어떤 프로필(활성 상태가 아니어도)에 적용하고, 프로필에서 삭제할 수 있습니다.
- ● (원) - 조이스틱은 자체 설정을 가지고 있습니다. ○ (빈) - 아직 설정되지 않았으며, 프로필의 기본 설정을 사용합니다.
5. L2/R2 버튼

| 설정 | 작동 방식은 다음과 같습니다 |
|---|---|
| 최소 | 최소값 설정: 설정된 값보다 낮은 값은 0으로 처리되며, 나머지 범위는 0부터 255까지의 전체 범위를 사용합니다. 예시: "최소값 = 10"으로 설정하면 노이즈를 줄일 수 있지만, 여전히 가속 페달은 최대 속도를 제공합니다. |
| 최대 | 상단 제한: 게임의 점수는 이 값보다 더 높아질 수 없습니다. |
| 데드존 | 원시 값이 임계값 아래로 떨어지면, 늘어나는 현상 없이 0으로 변환됩니다. |
| 곡선 | -20: 부드러운 시작, 초기 움직임에서 정확한 제어. +20: 즉각적인 반응. |
| 즉시 0으로 / 최대값으로 | 트리거를 완전히 당기거나 끝까지 누르면 즉시 작동합니다. |
| R2에서 L2를 빼세요 | 레이싱용으로 제작된 경우: 브레이크는 가속을 약화시키고, "곱하기" 값은 힘의 크기를 결정합니다. 반대되는 설정도 가능합니다. |
| 누르기 / 놓기 | 부드러움 구간: 선택된 구간에서 값은 즉시 변하는 것이 아니라, 밀리초 단위로 지연되면서 증가하거나 감소합니다. 최대 10개의 구간을 설정할 수 있으며, 구간들이 서로 겹쳐질 수 있습니다. |
6. 스티키 현상과 드리프트 현상

- 리매핑/사용자 데드존 설정 사용 - 이 옵션을 선택해야 합니다. 이 옵션을 선택하지 않으면 데드존 설정이 적용되지 않습니다.
- 내부 데드존 (Dead Zone)은 스틱 중앙 부분의 움직임 범위를 조정하는 기능입니다. 일반적으로 8~15% 정도의 범위를 설정합니다.
- 외부 데드존은 스틱이 최대한 끝까지 밀려 들어간 상태를 의미하는 영역입니다.
- X/Y 축의 최대 범위, 늘리기, 항상 최대값 - 각 축의 이동 범위를 제한하거나 확장합니다.
- X축/Y축 감도는 응답 곡선입니다.
- 편향/반환 – 트리거와 유사한 부드러운 곡선 영역입니다. 각 영역에는 X축과 Y축에 대한 체크 표시가 있으며, 이는 해당 영역이 어떤 축에 영향을 미치는지 나타냅니다.
7. 매크로: 기본
매크로는 "소스가 특정 상태일 때"라는 규칙을 의미하며, 이 규칙에 따라 "다른 요소에 대한 동작"이 수행됩니다. 여기서 "소스"는 다음과 같은 것일 수 있습니다:
- 작동 조건 (스위치 또는 트리거): 매크로는 해당 범위 내의 값이 유효한 동안 실행됩니다.
- 버튼 - 매크로는 버튼이 눌려 있는 동안 계속 실행됩니다 (11절).
스틱 또는 트리거 영역에 매크로 설정
- 스틱 또는 트리거 창을 열고 영역을 생성합니다.
- 구역 번호를 클릭하세요. (예: 1+).
- 게임패드 이미지가 나타납니다. "대상" (버튼, 트리거 또는 조이스틱)을 클릭하세요. 조이스틱을 선택한 경우, 방향을 지정하세요.


규칙의 모든 매개변수

| 매개변수 | 의미 |
|---|---|
| 대상: | 매크로가 적용되는 요소를 지정합니다. |
| 모드 | 목표에 실제로 어떤 일이 발생하는지: 8절 참조. |
| 스틱 방향 | 소스 스틱의 경우: 모든 방향 가능, 또는 위/오른쪽 방향만, 또는 아래/왼쪽 방향만. |
| 출력 / 입력 | 목표 값의 변화는 다음과 같습니다. "역전": 원천(소스) 값은 증가하고, 목표 값은 감소합니다. |
| 물리적 값과 결합 | 큰 값; 물리적 값 대체; 더하기 — 물리적으로 누르는 값에 더하고, 다른 매크로에도 동일한 우선순위와 "더하기" 모드로 적용. |
| 우선순위 | 하나의 목표에 여러 매크로가 적용될 경우, 더 큰 값의 매크로가 우선 적용됩니다. 값이 같을 경우, "비활성화" 옵션이 가장 강력합니다. |
| 지연 시간 | 작동 및 해제 시간: 10,000 = 10 밀리초. 작동 시, 소스는 지정된 시간 동안 해당 범위 내에 있어야 합니다. |
8. 매크로 모드
| 모드 | 기능 | 예시 |
|---|---|---|
| 따르다 | 이 기능은 원본 데이터의 범위를 참조하여 대상 데이터의 범위를 설정합니다. 이 기능은 스틱 또는 트리거 데이터에만 적용됩니다. | 스티어링 휠을 부드럽게 조작하며 가속 페달을 밟습니다. |
| 잡다 | 소스가 활성화되어 있는 동안, "출력까지" 옵션이 선택된 상태입니다. | L1이 L2를 고정하고 있습니다. |
| 맥박 | 지정된 시간 동안 목표 범위에 진입하면, 목표가 한 번 눌립니다. | 조이스틱을 갑자기 움직일 때, A 버튼을 짧게 누르면 됩니다. |
| 토글 (Toggle) | 각 입력은 특정 기능을 활성화하거나 비활성화합니다. | 한 번 누르면 앉고, 한 번 더 누르면 일어섭니다. |
| 터보 | 소스가 활성화되어 있는 동안, 목표 지점이 설정된 주기로 눌렸다 풀립니다. | 자동 발화. |
| 비활성화 | 목표가 차단되었으며, 물리적으로 버튼을 눌러도 작동하지 않습니다. 전체 스틱에도 동일하게 적용됩니다. | L2 버튼을 누르고 있는 동안에는 스틱 작동을 중단합니다. |
| 시퀀스 (순서, 연속) | 다음은 단계별 설정: 요소, 값, 유지 시간, 일시 정지 – 10절. | 단일 버튼 조합 공격. |
9. 조합: 조건
다음 조건들은 "두 개 이상의 요소를 동시에 선택했을 때 어떻게 해야 할까요?"라는 질문에 대한 답변을 제공합니다. 매크로는 모든 조건이 충족될 때만 실행됩니다. 조건은 다음과 같을 수 있습니다:
- 버튼 - 버튼이 눌렸습니다.
- 트리거 또는 스틱은 특정 값을 가지는 상태를 나타내며, 예를 들어 "L2 버튼이 절반 이상 눌린 경우: 128–255"와 같이 범위를 통해 표현됩니다.
- 체크 표시가 없는 항목은 버튼이 눌리지 않았거나 값이 지정된 범위를 벗어났음을 의미합니다.
하나의 규칙에 대해 최대 4개의 조건을 설정할 수 있습니다.

10. 시퀀스
하나의 동작은 일련의 시간 기반 작업들을 포함합니다. 각 단계는 다음과 같은 요소를 가집니다: 요소, 값 (버튼의 경우 0보다 큰 값은 눌린 상태를 의미), 유지 시간, 그리고 일시 정지 시간. 최대 16개의 단계를 설정할 수 있습니다. "반복" 옵션을 선택하면, 설정된 조건과 소스가 유지되는 동안 해당 동작이 반복됩니다.


11. 버튼 매크로

- + 매크로 (컨트롤러에서 선택): 규칙을 추가하고 대상을 선택합니다.
- 버튼 완전히 비활성화: 게임 내에서 버튼 기능이 작동하지 않지만, 해당 버튼에 연결된 매크로 기능은 계속 작동합니다. 이를 통해 버튼 전체를 다른 기능으로 재정의할 수 있습니다.
- 모든 모드, 조건 및 시퀀스는 스틱 및 트리거와 동일한 방식으로 작동합니다.
12. 모든 매크로 및 연결

- 활성화, 우선순위, 설정(⚙) 및 삭제(×) 기능은 표에서 바로 사용할 수 있습니다. 소스에 클릭하면 해당 창이 열립니다.
- 빨간색으로 표시된 부분은 충돌을 나타냅니다. 동일한 우선순위를 가진 두 개의 매크로가 하나의 목표를 향하고 있을 때, 누가 승리할지 불분명한 경우 충돌이 발생합니다.
- 모든 매크로 삭제 - 처음부터 다시 시작합니다.
- 매크로 연결: 하나의 규칙의 결과가 다른 규칙의 입력으로 사용됩니다. 예를 들어, "× → L2"와 "L2 범위 → R1" 규칙이 연결되면, "×" 버튼을 한 번 누르면 두 규칙이 순차적으로 실행됩니다. 기본적으로 이 기능은 비활성화되어 있으며, 이는 기존 프로필이 이전과 동일하게 작동한다는 의미입니다. 연결 깊이는 최대 3단계로 제한되며, 무한 루프는 방지됩니다.
조이스틱 이미지에서 매크로의 작동 방식을 확인할 수 있습니다
- 녹색 선은 시작점에서 목표 지점까지 이어집니다. 선의 순서대로 각 요소에 연결되며, #1, #2, #3은 각 단계의 번호를 나타냅니다.
- 요소 아래의 막대: 0부터 255까지의 범위를 나타냅니다. 소스(출력원) 부분의 녹색 막대는 작동 범위를, 대상 부분의 주황색 막대는 출력 범위를 표시합니다.
- 녹색 점은 해당 요소에 매크로가 적용되어 있음을 나타냅니다.
13. 동작 매핑
간단한 "입력 → 출력" 매핑 기능을 제공하며, 트리거 임계값, 유지 시간 및 타이밍 설정을 지원합니다. 이러한 설정은 프로필 전체에 적용됩니다.

14. 미리 설정된 레시피
조이스틱 드리프트 제거
스틱 → 리맵/사용자 데드존 설정 → 내부 데드존: 10~12%. 실시간 그래프를 확인하십시오. 정지 상태에서는 출력 선이 0에 위치해야 합니다.트리거 떨림 제거 (전체 이동 범위 유지)
트리거 값 → 최소 값은 5~10입니다. 이 값보다 낮으면 0이 되고, 나머지 값은 255까지 늘어납니다.레이싱 게임용 부드러운 가속
R2 값을 0부터 255까지의 범위로 나누어 N개의 구간으로 분할합니다. 각 구간은 "눌림" 상태로 유지되며, 첫 번째 구간에서는 1~3ms의 지연 시간이 적용됩니다. 정확한 시작을 위해 -5 ~ -10의 곡선을 사용합니다. 필요에 따라 L2 값을 R2 값에서 빼줄 수 있습니다.두 버튼 조합: L1 + × → R2
"×" 버튼 → "매크로 설정" → R2 버튼, "유지" 모드 → ⚙ (설정) → 조건: L1. L1 버튼을 누르지 않으면 "×" 버튼은 평소와 같이 작동합니다.하나의 버튼으로 연타 가능
버튼 → 매크로 → ⚙ → 시퀀스 모드 → 단계 수 × → □ → △ (각 60/60 밀리초). 연속 실행의 경우, 반복 기능을 사용합니다.자동 발사 기능
R1 버튼 → R2 매크로 실행 → 터보 모드 → 80~120ms 간격.두 명의 플레이어가 두 개의 게임패드를 사용
두 개의 게임패드를 모두 연결하면, 각 게임패드는 고유한 ID와 함께 목록에 표시됩니다. 첫 번째 게임패드를 설정한 후, 두 번째 게임패드를 선택하고 "선택됨" 체크박스를 표시한 다음, "선택 항목 적용" 버튼을 누르세요. 이후 각 게임패드는 개별적으로 설정할 수 있습니다.설정을 새 컨트롤러로 옮기기
오래된 조이스틱 → 조이스틱 → 파일. 새로운 조이스틱은 이름 클릭 → 파일 → 조이스틱.15. 문제가 발생했을 경우
| 증상 | 원인 및 해결 방법 |
|---|---|
| "작동하지 않음" 오류 수정 | 대부분, 사용하지 않는 컨트롤러가 설정 중이라는 의미입니다. "설정 중"이라고 표시된 부분이 주황색으로 나타납니다. 연결된 컨트롤러의 이름을 클릭하세요. |
| 트리거 버튼이 자동으로 작동하는 경우 | 컨트롤러의 매크로 설정을 확인하세요. 스틱 움직임이 매크로를 실행할 수 있습니다. 스틱의 데드존(6번 항목 참조) 또는 매크로 소스의 범위를 10으로 설정해야 합니다. |
| 게임 내에서 캐릭터가 두 개로 보이는 경우 | 이 프로그램은 실제 게임패드와 가상 게임패드 모두를 인식합니다. HidHide를 설치하려면: "애플리케이션" 탭에서 "+" 버튼을 클릭하고 "JoyControl.exe"을 추가합니다. 그런 다음 "장치" 탭으로 이동하여 "무선 컨트롤러" 옆의 확인란을 선택하고 게임패드를 다시 연결합니다. 순서가 중요합니다. 먼저 프로그램을 허용 목록에 추가한 다음, 숨김 기능을 사용해야 합니다. |
| 게임에서 게임패드를 인식하지 못함 | ViGEmBus 드라이버를 확인하세요. 조이스틱이 정상적으로 작동하는지 확인하고, "작동 중"이라는 표시가 있는지 확인하십시오. |
| 다섯 번째 게임패드가 게임에서 인식되지 않음 | Windows의 제한 사항: XInput은 게임에 최대 4개의 게임패드만 연결할 수 있습니다. |
| 두 번째 DualShock 컨트롤러가 블루투스로 연결되지 않음 | 블루투스 설정에서 기존의 "무선 컨트롤러" 항목을 삭제하고, 게임패드의 뒷면에 있는 L2 버튼 옆의 작은 구멍에 클립을 넣어 게임패드를 초기화하십시오. 그런 다음, Share 버튼과 PS 버튼을 동시에 길게 눌러 페어링 모드로 진입합니다 (LED가 빠르게 두 번 깜박일 때까지). 또는, 케이블을 사용하여 연결하십시오. |
