언리얼엔진/언리얼 C++

Pawn

season97 2024. 10. 12. 13:26

 개인적인 공부를 위해 포스팅 하는 글입니다.


#Pawn클래스 생성 후 대충 구경을 해봤다..

항상 F12로 타고 들어가서 구경하는 습관을 들이도록 하자.

C++기반 블프를 만들어서도 살펴봤다

다양한 컴포넌트들이 있다.

폰이 무엇인지는 언리얼에서도 잘 설명해 주고 있다.

컨트롤러에 관한 인풋은 여기에 바인드하라고 언리얼에서 설명해 주고 있다.

여기에서 빙의를 설정할 수 있다. 블프에서 하면 얘객체는 전체 다 적용이고 배치를 한 후에 하면 얘만 적용된다

게임모드는 월드세팅에서 하든, 게임모드 블루프린트에서 하든, 게임모드 C++에서 하든 폰 클래스를 연결해주면된다.

그 후 플레이어 스타트를 정하든 C++로 스폰을하든 코드로치든... 무슨방법이든 하면된다

 

# PlayerController


# 생성할걸 생성해주고 블루프린트에서 Pawn의 계층구조를 이렇게 잡았다.
윤곽을 블프에서 잡고 c++로 옮기기

 

ㆍ 이런 느낌을 C++코드에서 해볼거다. 작업을 할 때 대강 윤곽을 블루프린터에서 잡아주고 코드로 옮기는걸 추천한다.

ㆍ 블프 기반은 C++에 이식이 안되기도 하고, 누군가 삭제할 여지도 있다....

ㆍ 또한 에디터를 영어로 해야되는 이유가 나왔다. c++에서 클래스명이 대부분 블프에서 영어로 보는거와 이름이 일치한다.

폰 클래스에서 아래 4개의 변수를 추가해줬다. 보면 U접두사만 붙었을뿐 블루프린트와 일치하는걸 볼 수 있다.

 

클래스 전방선언을 했기 때문에 cpp파일에서 include를 해줘야 한다...또 저거 파일을찾기 귀찮다

F12로 타고 들어가서보면 Components 안의 CapsuleComponent..  이런식으로 찾아주자

 

 

#이젠 블프로 만든걸 보면서 c++에 그대로 값을 넣어주기만 하면 된다. 

ㆍ 이런식으로 함수명을 추론해보는 연습을 해보고, 받는 인자를 보고 뭘 넣어줘야 할지를 생각하라 수 있는 연습을 하자

두번째 인자는 피치,요,롤 순서기 때문에 Y , Z , X 축을 기준으로 한다. (짐벌락현상과 쿼터니언)

 

이런식으로 옵션컴포넌트들이 직관적으로C++과 호환되니 알아보기 쉽다. 

 

 

최종 조립 코드는 이러하다. 블루프린트로 기반을 잡은걸 바탕으로 수치를 넣어줬다!

결과

 

'언리얼엔진 > 언리얼 C++' 카테고리의 다른 글

Control Rotation  (0) 2024.10.14
Pawn의 Input  (0) 2024.10.12
상대좌표와 엑터의 계층구조  (1) 2024.10.11
벡터(수학)와 Actor의 이동  (0) 2024.10.11
Actor  (0) 2024.10.11