오늘의 할일 정하는 방법

1. 해야 할 일을 미리 목록으로 적어 둔다

2. 그날 하고싶은 일을 목록에서 고른다

3. 한다


어제 한 것

 -해상도 고정해서 프로토타입 빌드 완성

 -키 바인딩 UI 설정

 -https://gall.dcinside.com/m/game_dev/130415

뉴비 26일 전부터 게임 만들기로 함 - 인디 게임 개발 마이너 갤러리

26일동안 한 것들인게임 기능 구현 12일레벨디자인 2일UI 6일벌레잡기 1일아무것도 안 하기 무려 4일그리고어제 한 것 -로고 다듬기 -상호작용 키 튜토리얼 만들기 -https://gall.dcinside.com/m

gall.dcinside.com




1. Input Manager에서 Input System 패키지로 옮기기


viewimage.php?id=2abcdd23dad63db0&no=24b0d769e1d32ca73cea81fa11d02831e8c8ccee733edc9dd120524d4425b279dabe88cb1bf0688a1d17c3c5fa582097db685be2136adcc40ae563a00fde2667760f2bea

이 input manager는 큰 단점이 있어

바로 인게임에서 조작법을 못 바꾼다는 거야

예전엔 게임 시작 전 팝업으로 키바인딩을 설정할 수 있었는데, 지금은 그 팝업도 사라졌어


viewimage.php?id=2abcdd23dad63db0&no=24b0d769e1d32ca73cea81fa11d02831e8c8ccee733edc9dd120524d4425b279dabe88cb1bf0688a1d17c3c5fa582097db685be2136adcc459b535a35cde2131538ae300

따라서 조작 설정을 구현하려면 기존의 Input Manager 설정 대신 Input System 패키지를 사용해야 해


1-1. 패키지 설치하기

패키지를 적용하면

viewimage.php?id=2abcdd23dad63db0&no=24b0d769e1d32ca73cea81fa11d02831e8c8ccee733edc9dd120524d4425b279dabe88cb1bf0688a1d17c3c5fa582097db685be2136adcc40fb133f4098d236395b89b46

이런 오류가 떠

무슨 오류인고 했더니

viewimage.php?id=2abcdd23dad63db0&no=24b0d769e1d32ca73cea81fa11d02831e8c8ccee733edc9dd120524d4425b279dabe88cb1bf0688a1d17c3c5fa582097db685be2136adcc409e466a458dd7331d7635b67

Project Settings > Player > Other Settings에서 Active Input Handling이 Input System을 안 써서 생긴다는거야

Input System으로 바꾸고 재시작하면 돼


1-2. Input Action 설정하기


이후 Scripts 폴더에 inputactions 파일을 만들어 준 후 다음과 같이 구성했어

24b0d121e09c28a8699fe8b115ef046eca4cccf1

저장해주고


1-3. 플레이어에 적용하기

플레이어 오브젝트에 "Player Input" 컴포넌트를 추가한 후

방금 정성?껏 만든 inputaction을 넣어준 뒤

Default Map을 방금 만든 inputactions의 action map으로 설정해주면 돼

24b0d121e09c28a8699fe8b115ef04699731f0b8

여기서 Behavior - Invoke Unity Events를 선택하면

각 버튼이 눌릴 때 public으로 선언된 함수나 변수 등에 접근할 수 있어


1-4. 스크립트 수정

원래는 getbutton, getaxis로 매 프레임마다 버튼이 눌림을 확인해 행동하지만,

input system으로 바꾸면 버튼을 누를 때 함수를 호출해서 행동하는 게 더 편해 보여


이동, 점프는 정상적으로 구현했지만 상호작용 키 2종은 아래 에러가 뜨면서 작동하지 않아

24b0d121e09c28a8699fe8b115ef0468e3a3e3b8

그래서 그냥 별도의 입력 시스템을 만들어서 처리할 생각이야

내일해야지



a1571cad180eb45bba34254958d62d3bbf6d03567bbf6caf15e4cb8b6b

원래는 움직이다가 반대쪽 버튼을 누르면 천천히 멈추는데


a14004aa252eb36f863300499a15c0b1305a016cdbd37baf3a1ce6f5872db6e0ddace2555bbe6c6e

드디어 멈추는 법을 알아낸 플레이어

매우 기분이 좋은



오늘 한 것

 -Input Manager에서 Input System으로 옮기기

 -플레이어에게 멈추는 법 가르치기



인풋매니저도 못하니까 뉴비 맞음.


그럼

내일 봐!