inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[입문자를 위한 UE5] Part1. 언리얼 엔진 블루프린트

연습 문제 : Player vs Monster

연습문제: Player vs Monster 질문드립니다

583

엄성수

작성한 질문수 1

0

강의 너무 감사하게 듣고 있습니다. 비전공자에 언리얼이 처음이라 혼자 낑낑거리면서 숙제를 해보고있습니다

숙제1.png맨처음에 이리저리만들다가 느낌은 비슷하게 요렇게 만들어보았는데 시작점 부터 다르게 작성이 되어서 질문드립니다.

저는 만들어 두었던 myfunction에서 두 함수를 만들어서 다음과같이 제작하였는데 정상작동이 되더라구요. 혹시 강사님 께서 작성하신 것 처럼 작용할 클래스에서 함수를 제작한 것과 그냥 다른 myfuntion클래스에서 작성해서 적용 시킨 것의 차이가 무엇인지 궁금합니다.

숙제2.png숙제3.png

unreal-engine ue-blueprint

답변 1

1

Rookiss

심오하면서도 중요한 부분인데요.
C++로 치면 [멤버 함수] vs [전역(global)/정적(static)] 함수의 차이입니다.

멤버 함수는 특정 class에 소속되어 있기 때문에,
해당 객체를 이용해 호출하는 형태입니다.
가령 class Player 내부에 Test(인자없음) 함수를 만들었다면,
실제로 Player 참조값을 이용하여 Test를 호출해야 하며
C++ 기준으로는 player->Test();가 되고
블루프린트 상으로는 Test 호출 시 첫 번째 구멍에
무조건 Player의 참조를 연결해야 합니다.

반면 정적 함수는 클래스와 무관하게 호출 가능하며, Test만 덩그라니 호출이 가능합니다.
작업하신 상황은 공교롭게도 PlayerAttack에 Player 참조를 먼저 넣어주니
블루프린트 상으로 보기엔 큰 차이가 없게 되었지만 근본적인 차이는
설계적으로 특정 클래스에 소속된 함수인지 아닌지에 따라 차이가 있습니다.

코드가 많아지고 함수가 엄청 많아진다면,
어지간해서는 멤버 함수를 사용하는 편이 관리하기 좋겠죠.




0

엄성수

답변감사드립니다! 어느정도 생각이 정리되었습니다!!

안녕하세요. 김용일입니다.

0

79

1

블프 에디터 사용 관련해서 질문있어요

0

104

1

질문은 아니고 강의자 님이 해당 글을 꼭 보시길 바랍니다.

0

175

1

디버깅 할 때 Keyboard event 1

0

116

1

레벨 블루프린트 제작 후 실행 시 메시지 로그- 맵체크 창 뜨는 경우

0

108

1

비교연산 관련 문제.

0

159

2

안녕하세요 구구단 관련해서요

0

129

2

재장전 관련 공부 중, 궁금한 점이 있어 질문 올립니다.

0

165

2

Beach, Sequence, flip flop강의에서 flip flop 의 다른 표현 방식이 이해가 안가요..

0

288

1

뷰포트 play 버튼 클릭시 카메라 초기화

0

394

1

이벤트 vs 함수 차이

0

565

2

포맷 텍스트 엔터

0

489

2

섹션2 흐름제어 연습문제: Min,Max,Clamp 부분 질문

0

530

2

플레이 버튼을 눌러도 Outliner에 CameraActor가 보이지 않음

0

629

1

Random Integer 질문이요

0

885

2

구조체 관련 질문

0

360

1

버블정렬 중에서 현재값에서 다음 값으로 넘어가도록 하는 부분 질문입니다.

0

472

2

로또 번호 생성기 셔플노드 제작 부분에서 질문있습니다.

0

407

1

setter에서 값을 가져다 쓰는 것과 getter에서 가져다 쓰는 것의 성능 차이

0

302

1

이벤트 디스패처와 델리게이트에 관한 질문

2

871

1

연습문제 Player vs Monster강의 변수생성 질문

0

480

2

키보드 이벤트에서 1키를 눌러도 아무런 반응이 없습니다.

0

525

1

블루프린트로는 연결 리스트, 이진 탐색 트리 사용이 불가능 한가요?

0

472

1

UE_LOG관련 질문이 있습니다.

0

898

1