[Unity] 조이스틱 추가하기

muchan
muchan
∙∙조회 14
[Unity] 조이스틱 추가하기

유튜브 영상을 좀 찾아봤는데 생각보다 쉽게 됐음..

에셋 스토어에서 조이스틱 팩 다운받기

원하는 프리팹 고르기

종류설명
Dynamic터치한 곳에 생성, 핸들 범위 벗어나면 배경도 같이 이동
Fixed항상 고정된 위치에 존재
Floating터치한 곳에 생성, 배경은 고정
Variable지정한 영역 안 어디서든 터치 가능, 배경 고정

움직임 관련 코드에 joystick 추가하기

csharp
// 필드 선언
public Joystick joystick;

// 움직임 입력 받기
else if (useJoystick)
{
    if (joystick != null)
    moveInput = new Vector2(joystick.Horizontal, joystick.Vertical);
}

//FixedUpdate에서 움직임 실행
{
    Vector3 moveDir = new Vector3(moveInput.x, 0f, moveInput.y);

    if (moveDir.sqrMagnitude > 1f)
        moveDir.Normalize();

    
    Vector3 velocity = moveDir * moveSpeed;
    velocity.y = rb.linearVelocity.y;
    rb.linearVelocity = velocity;
}

저는 Floating 방식을 사용해서 클릭한 곳에 조이스틱 나오도록 했습니다.