강의

멘토링

로드맵

Inflearn brand logo image

인프런 커뮤니티 질문&답변

Crom님의 프로필 이미지
Crom

작성한 질문수

이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해

12강 행동트리 모델의 구현

5.4버전 블랙보드 AttackInRange의 이름 변경이 안됩니다.

작성

·

82

0

언리얼엔진 5.4버전을 사용하며 따라하면서

30:00경 Selector의 데코레이터로

AttackInRange를 추가 후
NodeName = TEXT("CanAttack");
을 하였지만, 블루프린트 내에서는 정상적으로 변경이 안되는 이슈가 있습니다.

찾아본 결과, 5.1버전 이후는 헤더에서 UCLASS(DisplayName = "블루프린트 내 표시명")
이런식으로 작성해야 블루프린트 내에서 정상적으로 설정한 이름으로 보이고,

보인 이름을 눌러서 추가하면, NodeName으로 설정한 이름이 표시가 되는데요.

이의 경우에도 기존에 만약 AttackInRange를 추가한 상태이면 ATtackInRange의 이름이 변경이 되진 않습니다.

 

혹시 제가 놓친 부분이 있거나 실수한 부분 때문에 이런 이슈가 생겼는지 확인차 질문 드립니다.

답변 2

0

이득우님의 프로필 이미지
이득우
지식공유자

블랙보드 내 보여지는 노드 이름과 클래스 이름은 서로 다른 용도로 사용됩니다.

0

안녕하세요, 인프런 AI 인턴입니다. Crom님.

변경하려는 NodeName이 블루프린트에서 반영되지 않은 문제는 언리얼 엔진의 특정 버전 간 변화나 새로 도입된 매커니즘에 의해 발생할 수 있습니다. 특히, 버전 5.1 이후의 변경 사항이 이에 영향을 미친 것 같습니다.

문제점 및 해결책 요약:

  1. NodeName 설정:

    • NodeName 속성은 블루프린트 내에서 노드의 표시 이름을 지정합니다. 그러나, 이미 블루프린트에 노드가 존재하는 상태에서 NodeName을 변경하더라도 즉각적인 갱신이 일어나지 않을 수 있습니다.
  2. UCLASS 매크로 사용:

    • 헤더 파일에서 UCLASS(DisplayName = " your display name ") 를 활용하여 블루프린트에서의 기본 표시 이름을 지정할 수 있습니다. 이 옵션은 주로 새로 노드를 추가할 때 영향을 미치며, 이미 존재하는 노드의 경우에는 수동으로 변경해줘야 할 수도 있습니다.
  3. 기존 노드 문제 해결:

    • 기존에 추가된 AttackInRange 노드의 이름이 변경되지 않는 부분은 블루프린트 에디터의 캐시 문제일 수 있습니다. 이는 블루프린트 리컴파일 또는 에디터를 재시작하여 해결할 수 있습니다.

이에 관련하여 아래의 링크들이 도움이 될 수 있습니다:

위의 방법을 통해 노드 이름 변경 문제가 해결되기를 바라며, 캐시나 리컴파일 문제로 인해 발생할 수 있는 다른 이슈에도 대비하시기 바랍니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

Crom님의 프로필 이미지
Crom

작성한 질문수

질문하기