공부/Unreal Engine

[24.09.04] 언리얼5 블루프린트 기초 연습 (마우스, 키보드 제어, 텍스트 표시 등)

창작꾼 븐틴이 2024. 9. 4. 15:27
728x90
반응형

언리얼 엔진에서 제공하는 프로그래밍 시스템을 블루프린트로 칭함.

=> 비주얼 언어.

 

예제로 사용할 스피어의 디테일 창, 모빌리티를 무버블로 변경해야 블루프린트로 스피어 제어 가능

 

[레벨 블루프린트] => 레벨에 통합된 블루프린트

 

=> 레벨이 시작될 때 발생하는 BeginPlay 이벤트 노드 (실행 핀을 가지고 있음) 

실행 핀은 실행 핀끼리만 연결할 수 있음, 입출력 항목을 나타내는 것이 아닌 처리 순서를 나타냄.

연결 시, 왼쪽부터 차례대로 실행됨.

 

String : 자유롭게 변경 가능 

Text : 변경 불가 

 

//

 

상단에 메시지 출력 시키기 (Print String)

 

Add Comment로 이렇게 구역 설정 및 그룹화처럼 진행 가능

노드를 그룹화하여 정리 또한 가능

 

중단점 추가 : 디버깅을 위해 잠시 멈추는 지점 설정

 

프레임 전환 처리를 할 때 발생하는 것을 틱 이벤트라고 하며, 틱 이벤트를 이용해 처리를 준비하면

계속 움직이는 처리를 만들 수 있음.

Delta Seconds : 틱 이벤트를 호출하는 간격을 나타내는 값,

이를 통해 이전 틱에서 이번 틱까지 어느 정도 시간이 경과했는지 알 수 있음

 

액터 움직이게 하기

위치 이동과 관련된 노드

타깃 : 조작할 대상 액터 지정

Delta Location : 이동 거리 지정, 3차원 각 방향으로 지정 가능

Sweep : 뭔가에 부딪힐 경우 멈출지 결정

Teleport : 순간이동할지 지정

 

여기서 Delta Location 값을 바꾸면, 해당 값에 맞추어 Sphere가 계속 움직이게 됨

 

곱하기를 활용해, 하드웨어 간 속도 차이를 없앤 버전(예제)

 

마우스 제어

콘텐츠 드로어 -> 추가 -> 블루프린트 클래스 -> 플레이어 컨트롤러 추가

해당 컨트롤러 더블크릭하여, 컨트롤러에 대한 블루프린트 창이 열림.

해당 창 내 디테일 패널에서 마우스 커서 표시 유무 or 마우스 모양 등을 정의할 수 있음

 

-> 이후 월드 설정에서 사용하게끔 변경 필요.

 

이후 레벨 블루프린트를 열어서 마우스 좌클릭에 대한 노드를 추가

Pressed : 마우스 왼쪽 버튼을 눌렀을 때

Released : 버튼에서 손가락을 뗐을 때의 처리

 

마우스 클릭 시 회전하게 구현

 

마우스 클릭에 관한 정보를 bool 타입의 Flag 변수에 저장.

 

마우스를 누르고 있는 순간에 지속적으로 액터가 회전하게 하는 것 완성.

 

//

 

키보드 제어

방향키를 활용한 이동 제어

728x90
반응형