728x90
변수 선언 시에 UPROPERTY를 사용하면 에디터에서 내가 선언한 변수를 볼 수 있다.
UPROPERTY(EditAnywhere) // 에디터에서 수정가능
int32 HP;
UPROPERTY(VisibleAnywhere) // 에디터에서 보기만 가능
float Speed;
블루프린트에서 C++변수를 사용하기 위해서는 다음 두가지가 쓰인다.
UPROPERTY(BlueprintReadWrite) // 읽기 쓰기 가능
bool IsWalking;
UFUNCTION(BlueprintReadOnly) // 읽기 전용
void Move();
UFUNCTION은 C++함수를 블루프린트에서 사용가능하게 만들어준다!
다만 주의 점은 원인은 아직 잘 모르겠지만 특정 함수 내에서 특정 변수 값을 변경할 때 그 변수가 UPROPERTY의 변수라면 함수도 UFUNCTION 이어야 에디터가 강제종료 되지 않는다. 원인을 못 찾다가 언리얼 포럼에서 외국인이 답변해 준 얘기다.
UPROPERTY 와 UFUNCTION 안에는 ReadWrite, ReadOnly, BlueprintCallable 등 더 많은 옵션이 있으니 아래의 링크에서 찾아보면 좋다.
프로퍼티 | 언리얼 엔진 문서 (unrealengine.com)
블루프린트에 게임플레이 요소 노출시키기 | 언리얼 엔진 문서 (unrealengine.com)
그 외에도 Category = " " 를 사용하면 에디터에서 변수가 노출 될 때, 같은 카데고리 끼리 예쁘게 묶이기도 한다.
UPROPERTY(EditAnywhere, Category="PlayerInfo")
int32 HP;
UPROPERTY(EditAnywhere, Category="PlayerInfo")
float Speed;
728x90
'언리얼5 & C++' 카테고리의 다른 글
[Unreal 5, C++] 캐릭터 사망 & 애니메이션 : C++ 변수, 함수를 블루프린트에서 사용하기 (0) | 2022.06.28 |
---|---|
[Unreal 5, Blueprint & C++] 캐릭터 점프 구현과 오류 해결 Animation Transition (0) | 2022.06.28 |
[Unreal 5, C++] 언리얼5 C++ 로그 찍는법 (0) | 2022.06.18 |
[Unreal, C++] 3인칭 슈팅게임 연습 일지 - 2 : 사격, 이펙트 구현 (0) | 2022.06.18 |
[Unreal 5, C++] 3인칭 슈팅 게임 연습 일지 - 1 : 타이머 사용법, 이동, 사격 (0) | 2022.06.18 |