오늘은 여러 어트랙션 장비 중 승마 장비에 대해 이야기 해볼까 합니다.
승마기기는 USB로 PC나 Mobile에 연동할 수 있습니다.
이제 언리얼엔진에서 승마기기를 한번 활용해 보도록 하겠습니다.
승마기기는 기본적으로 아두이노와 작동방식이 흡사하기때문에, 위 사진과 같은 아두이노 플러그인이 필요합니다.
(4.26 버전의 플러그인이라 다른 버전과는 호환에 문제가 있을 수 있습니다.
위 첨부파일에 들어있는 'UE4Duino_2.2.5_UE4.26.1' 파일을 아래와 같은 프로젝트 경로에 붙여넣기 해주시면 됩니다.
(Plugins 파일은 새로 생성하셔야 합니다.)
이후 언리얼엔진을 재부팅해주게 되면 정상적으로 플러그인이 추가됩니다.
그리고 레벨 블루프린트에 스크립트를 하나 생성해준 후 아래와 같은 코드를 작성합니다.
Connect 함수 : 기본적인 연결 과정입니다. 빨간색 네모를 살펴보시면 알겠지만 USB로 연결되는 포트의 번호가 필요합니다.
장치 관리자의 포트 탭에서 현재 승마기기와 연결된 포트의 번호를 확인해주시면 됩니다.
정상적으로 연결이 되었다면 Open이라는 메시지가 정상적으로 출력되는 것을 확인하실 수 있습니다.
Disconnect 함수 : 기본적으로 아두이노 방식은 연결을 시도했다면, 연결을 끊어 주셔야 합니다. 그렇지 않고 바로 종료를 할 경우에는 USB를 다시 뺐다 꼽아야합니다.
WalkStart 함수 : 승마기기가 키보드나 게임패드의 동작에 맞춰 덜컹거리며 움직이기 시작하는 부분입니다.
WalkStop 함수 : 승마기기가 키보드나 게임패드의 동작에 맞춰 멈추는 부분입니다.
저 같은 경우는 특정 트리거를 통해 승마기기가 보다 자연스럽게 작동하도록 설계했기때문에, 여러 함수들과 Bool값을 사용해 승마기기의 움직임을 제어했습니다. 만들어 놓고 생각해보니 열거형을 통한 움직임 제어가 더 편할 것 같더군요.
Check Walk 함수 : 키보드나 게임패드의 키입력을 받아 말이 걷는 느낌을 주기 위한 부분입니다.
Check Run 함수 : 키보드나 게임패드의 키입력을 받아 말이 뛰는 느낌을 주기 위한 부분입니다.
Ex)
'All Development' 카테고리의 다른 글
Unity) Dotween (닷트윈) (0) | 2022.03.09 |
---|---|
LAST) 2022.03.03 - UI 프로토타입 설계 (0) | 2022.03.03 |
Rokoko) Motion Capture (0) | 2022.02.21 |
Python) 힙한취미코딩 - 워드클라우드(WordCloud) (0) | 2021.09.17 |
Python) 힙한취미코딩 - 크롤링(Crawling) (0) | 2021.09.16 |