강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

j.a.d.e님의 프로필 이미지
j.a.d.e

작성한 질문수

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진

플레이어 설정

Input 적용과 관련하여 질문 있습니다.

작성

·

71

0

Q&A 답변을 참고하면서 세팅 및 코드를 수정했지만 여전히 transform 움직임이 적용되지 않아 질문 드립니다.

 

  1. Player Input을 new로 변경하기

  2. Player에 Script 적용하기

 

위 방식으로 모두 수정해봤으나, 캐릭터가 움직이지 않습니다. AI의 답변 중 새로운 Input 문법으로 시도해 보라는 답변이 있어서 아래와 같이 코드를 수정했으나 적용이 되지 않는 상황입니다. 어떤 부분을 수정하면 될까요?

 

    void Update()
    {
        if (Input.GetKeyDown(KeyCode.W))
            transform.position += new Vector3(0.0f, 0.0f, 1.0f);
        if (Input.GetKeyDown(KeyCode.S))
            transform.position -= new Vector3(0.0f, 0.0f, 1.0f);
        if (Input.GetKeyDown(KeyCode.A))
            transform.position -= new Vector3(1.0f, 0.0f, 0.0f);
        if (Input.GetKeyDown(KeyCode.D))
            transform.position += new Vector3(1.0f, 0.0f, 0.0f);
    }

퀴즈

56%나 틀려요. 한번 도전해보세요!

게임 오브젝트의 이동 계산 시 Time.deltaTime 값을 곱해주는 주된 이유는 무엇일까요?

캐릭터의 최대 이동 속도를 제한하기 위해

모든 컴퓨터에서 초당 이동 거리를 일정하게 유지하기 위해

물리 엔진 계산의 정확도를 높이기 위해

오브젝트의 회전 상태에 따라 이동 방향을 결정하기 위해

답변 1

0

j.a.d.e님의 프로필 이미지
j.a.d.e
질문자

강사님, 해결했습니다! new가 아니라 both로 옵션을 선택했더니 동작합니다.

Rookiss님의 프로필 이미지
Rookiss
지식공유자

네 맞습니다. 언리얼과 비슷한 새로운 방식의 InputSystem을 밀어주고 있어서
옛날 Input도 같이 동작하려면 설정을 만져줘야 하는데 잘 찾으셨네요

j.a.d.e님의 프로필 이미지
j.a.d.e

작성한 질문수

질문하기