[Unity] Input System(2)
![[Unity] Input System(2)](/_next/image?url=https%3A%2F%2Fdata.develog.develrocket.com%2Fupload%2Fdevelog%2Fuser_1777093328305%2F1778688098652-hvy9zq%2F_____2026-05-14_003650.png&w=3840&q=75)

우선 Package Manager에서 Input System을 검색하고 Samples에 들어간다

Simple Demo를 Import한다
그럼 화면이 보라색으로 보이는데 Window - Rendering - Renderer Pipeline Converter 들어가서
마지막거 체크하고 Initialize Converter -> Convert Assets 누르면 됨

그러면 Player오브젝트에 스크립트와 Player Input 컴포넌트가 붙어있다
New Input System 패키지의 핵심 컴포넌트로 플레이어의 입력을 게임 오브젝트에 쉽게 연결해준다

현재 SimpleControls라는 Input Action Asset이 있고
그 안에 gameplay라는 Action Map이 있으며

거기서 fire 액션에는 오른쪽에 보이는 컨트롤과 바인딩 되어있다.

이벤트들을 연결해 Device가 Lost, Regained, Changed 됐을 때 이벤트가 발생되도록 할 수 있다.
public void Awake()
{
// We could use `fireAction.triggered` in Update() but that makes it more difficult to
// implement the charging mechanism. So instead we use the `started`, `performed`, and
// `canceled` callbacks to run the firing logic right from within the action.
fireAction.performed +=
ctx =>
{
if (ctx.interaction is SlowTapInteraction)
{
StartCoroutine(BurstFire((int)(ctx.duration * burstSpeed)));
}
else
{
Fire();
}
m_Charging = false;
};
fireAction.started +=
ctx =>
{
if (ctx.interaction is SlowTapInteraction)
m_Charging = true;
};
fireAction.canceled +=
ctx =>
{
m_Charging = false;
};
}
Update에서 fireAction.triggered를 계속 검사할 수 있지만 차징 공격 같은 기능 구현이 복잡해질 수 있다.
그래서 이벤트 기반 콜백인
를 사용해서 입력 상태를 직접 처리한다
performed
performed는 입력이 실제로 수행되었을 때 호출된다
ctx는 InputAction.CallbackContext로 현재 입력 상태 정보를 담고 있는 객체다
SlowTab이라는 판정이 나왔으면 저 코루틴(BurstFire)을 시작하게 된다

기본 InputSystem_Actions에서 필요한 입력들을 추가할 수 있다
미니 게임 마다 입력 키가 다르면 커스텀 input을 받을 수 있다
Develog는 단순히 글을 쓰는 공간이 아닙니다. 성장의 과정을 기록하고, 그 기록으로 나를 증명하며 원하는 기회를 얻는 곳이길 바랐습니다. 누군가의 꿈으로 향하는 중간다리가 되는 것, 그것이 Develog를 만든 이유입니다.

게임업계 취업을 준비하다 보면 조금 불편한 현실을 마주하게 됩니다. 게임회사에 들어가고 싶은 사람은 많습니다. 특히 신입 채용은 더 그렇습니다. 공고 하나에 많은 지원자가 몰리고, 회사 입장에서는 비슷한 조건의 지원자 가운데 사람을 선택할 수 있습니다. 그래서 다른 산업에서 흔히 이야기하는 “처음부터 연봉을 낮춰 부르지 마세요.” “적극적으로 협상하세요.”

우리들의 게임 발매 이야기
Develog는 단순히 글을 쓰는 공간이 아닙니다. 성장의 과정을 기록하고, 그 기록으로 나를 증명하며 원하는 기회를 얻는 곳이길 바랐습니다. 누군가의 꿈으로 향하는 중간다리가 되는 것, 그것이 Develog를 만든 이유입니다.


게임업계 취업을 준비하다 보면 조금 불편한 현실을 마주하게 됩니다. 게임회사에 들어가고 싶은 사람은 많습니다. 특히 신입 채용은 더 그렇습니다. 공고 하나에 많은 지원자가 몰리고, 회사 입장에서는 비슷한 조건의 지원자 가운데 사람을 선택할 수 있습니다. 그래서 다른 산업에서 흔히 이야기하는 “처음부터 연봉을 낮춰 부르지 마세요.” “적극적으로 협상하세요.”

댓글을 작성하려면 로그인이 필요합니다.
아직 댓글이 없습니다. 첫 번째 댓글을 작성해보세요.