[UE5] C++ 클래스의 변수를 블루프린트로 쓰기

(1) 서론

사실 이거도 이거인데.. C++ 개발 환경을 세팅하는거부터가 난관이었다.

유니티는 그냥 Visual Studio + Unity 3D 깔면 알아서 다 세팅되어서 그냥 쓰면 됐는데, 얘는 C++라서 그런건지...

엄청 신경쓰이게시리 Visual Studio 상에서 컴파일 에러가 나오고 난리난다.

 

결국 Rider 2022를 깔아버렸다. 요새 Rider가 Unreal Engine을 완벽히 지원하게 나왔다고 해서,

가지고 있던 Jetbrains 교육용 라이센스를 가지고 무료로 설치했다.

 

컴파일 에러가 안나니까, 싱글벙글 타이핑하고 컴파일을 돌리려는 찰나...

 

 

 

컴파일 에러가 나온다! -_-

 

 

 

 

이에 대한 컴파일 오류 해결에 대해서도 삽질이 시작되었다.

 

[UE5] Live Coding 컴파일 fatal error LNK1104 오류

 

[UE5] Live Coding 컴파일 fatal error LNK1104 오류

'***' 파일을 열 수 없습니다. 라는 에러가 미친듯이 쏟아져 나온다. 아무것도 안했는데 이러니까 미치고 팔짝 뛸 노릇. 엄청나게 검색을 해댔다. 그리고 나온 해결책은 다음과 같다. (1) 첫 번째

tensiya.tistory.com

그리고 마침내 해결했으며, 해결은 위와 같은 방법으로 할 수 있었다.

 

 


(2) 블루프린트에서 변수 확인 및 기본 값 채워넣기

뭐 여튼 저튼 쨌든, 이제 블루프린트 에디터에서도 값이 잘 나타난다. 근데 값이 0인게 좀 불편하다.. 기본값을 채워넣어야겠다.

 

생성자에서 기본값을 채워넣었다.

 

이제는 Live Coding도 정상적으로 잘 컴파일 된다.

 

이제 해당 변수들에 기본값도 정상적으로 잘 들어간 것을 확인할 수 있다.

 

 

(3) 블루프린트 노드에서 변수 활용하기

 

이것을 직접 블루프린트 노드 편집기에서 사용하려면, 다음과 같이 할 수 있다. 직접 알아낸게 자랑

C++ 변수를 쉽게 사용할 수 있게끔, 자동으로 블루프린트 액션이 친절히 만들어져 있다.

대충 get max hea 까지면 쳐도, Get Max Health라는 블루프린트 액션이 검색된다.

해당 액션을 눌러서 새로운 노드를 생성하면,

 

짜잔, 이렇게 인풋이 없는 블루프린트 노드가 새로이 생성된다.

 

다음과 같은 레퍼런스를 참고하여서, Health 및 MaxHealth를 게임 시작시에 출력하는 블루프린트를 작성했다.

작성된 블루프린트는 위와 같다.

 

테스트 결과, C++ 변수를 올바르게 읽어서 출력하는 것을 확인할 수 있다 :)

댓글

Designed by JB FACTORY