본문 바로가기

UnrealEngine

[UE] 블루프린트 매크로, 커스텀 이벤트, 수학 표현식, 블루프린트 클래스

블루프린트 매크로

Blueprint Macro (블루프린트 매크로) 또는 Macro (매크로)는 본질적으로 노드 그래프를 접은 것과 같다. 터널 노드로 지정되는 입구와 출구가 있다. 각 터널에는 다른 블루프린트와 그래프에서 사용될 때 매크로 노드에 보이는 실행 또는 데이터 핀이 몇 개든 있을 수 있다.

  • 실행핀이 여러 개 있으므로, 흐름 제어 시 매크로를 사용.

1. 매크로 생성 후 내부에서 만들기

2. 디테일 창에서 입, 출력 개수와 입출력 형태 정의

 

3. 새로운 매크로를 생성하여 랜덤 하게 입력되는 점수에 따른 합격, 불합격 여부 출력

4. 새로운 매크로를 생성하여 랜덤 하게 입력되는 점수에 따른 합격, 불합격 여부 출력

5. 결과

 

https://docs.unrealengine.com/4.27/ko/ProgrammingAndScripting/Blueprints/UserGuide/Macros/

 

매크로

다른 그래프에서 실행 또는 호출할 수 있는 접힌 노드 망입니다.

docs.unrealengine.com


커스텀 이벤트

Custom Event는 표준 Event와 비슷하나, 사용자가 생성하고 EventGraph 안에서 발동시킬 수 있다는 점이 다르다. 개별 네트워크의 실행 도입점을 정의할 뿐, 코드에서의 호출에 따라 실행되지는 않는다. 그 대신, 콘솔 명령 CE 나 KE, 또는 Remote Event 호출 등 EventGraph 다른 부분에 의존하여 명시적으로 실행된다.

Custom Event (커스텀 이벤트)를 통해 블루프린트 시퀀스 내 어디서나 호출할 수 있는 자신만의 이벤트를 만들 수 있다. 한 특정 노드의 입력 실행핀에 다수의 출력 실행 선을 연결하고자 하는 경우, 커스텀 이벤트 가 그래프의 망을 단순화시켜 준다. 심지어 블루프린트 그래프 중 하나에 커스텀 이벤트를 구성한 다음 다른 그래프에서 호출하는 것도 가능하다.

그 작업방식은 꽤나 간단하다:

  • Custom Event를 만들어 이름을 짓는다.
  • 이벤트에 있어야 할 입력 파라미터를, 기본값과 함께 구성한다.
  • 커스텀 이벤트를 호출하는 특수 함수 노드를 만든다.
  • 필요한 입력 파라미터가 있으면 물려준다.

Output Delegate는 붙잡아두는 용도. 모두가 호환되지는 않음. 서로 인자값이 같아야 사용이 가능.

레벨이 시작되면 3초 뒤에 커스텀 이벤트가 붙잡고 있는 Ptrint Strig이 실행된다.

 

왼쪽마우스 버튼을 눌렀을 때, Gate가 Open 되어 Exit에 연결되어 있는 명령 실행. 버튼에서 손을 떼는 순간 Gate가 Close 되어 종료.

1. Delay: 입력받은 후 3초 뒤에 실행. 처음 입력을 받은 뒤 아무리 입력을 받아도 시간이 초기화되지 않고 처음 입력받은 명령을 실행함.

2. Rdtriggerable Delay: 위의 Delay와 기능은 동일하지만, 입력받을 때마다 시간이 초기화되어 새롭게 입력받은 명령을 기준으로 실행

마우스 왼쪽 버튼을 누르고 있으면 시간초가 올라가기 시작하여, 버튼에서 손을 땠을 때 그 시간이 4.8 ~ 5.3 사이라면 성공을 출력하고 게임을 리셋한.

4번째 틱을 출력하는 방법을 흐름제어 컨트롤러를 사용하여 만들었다. 오른쪽은 자주 사용하는 흐름제어 컨트롤러이다.

 

https://docs.unrealengine.com/4.27/ko/ProgrammingAndScripting/Blueprints/UserGuide/Events/Custom/

 

커스텀 이벤트

그래프 안에서 발동시킬 수 있는 사용자 제작 커스텀 이벤트입니다.

docs.unrealengine.com


수학 표현식 math

수학표현식의 Name에 원하는 수식을 적어 넣으면 Name에 따라 자동으로 원하는 수식이 생성된다.

마우스 우클릭 후 “math” 검색. Name에 따라 자동으로 생성한다.

 

타임라인

이벤트 그래프 에디터 창에서 마우 우클릭 후 “타임라인” 검색. 우측은 타임라인 내부.

 

1번을 누르면 길이 3초 동안 타임라인 값이 0에서 1로 증가하면 값 출력. 1번을 때면 반대로 재생.

키값을 사용자설정으로 바꾸어 원하는 모양의 그래프를 만드는 것도 가능하다.


블루프린트 클래스

Blueprint Class (블루프린트 클래스), 종종 그냥 Blueprint (블루프린트)는 콘텐츠 제작자가 기존의 클래스 위에 다른 함수성을 쉽게 추가할 수 있도록 해 주는 애셋이다. 블루프린트는 언리얼 에디터 안에서 코드 작성 방식이 아닌 시각적인 방식으로 생성되며, 콘텐츠 패키지에 애셋으로 저장된다. 이는 본질적으로 새로운 클래스 또는 액터 유형을 정의하는 것으로, 나중에 이 블루프린트를 맵에 인스턴스로 배치하면 다른 액터 유형처럼 작동한다.

 

https://www.shinsnote.com/319

 

UE4 네이밍 규칙

네이밍 일반 규칙 General Naming Rules 모든 이름은 영어로 작성한다. All names in English. 공유된 애셋을 제외한 모든 애셋 종속체들은 같은 폴더에 있어야 한다. All asset dependencies should be in the same folder.

www.shinsnote.com