노드

이벤트와 함수 호출을 사용해서 블루프린트와 연관된 게임플레이 이벤트에 반응하는 동작을 수행하는 노드 그래프입니다.

Windows
MacOS
Linux

Node (노드)란 그래프에서 사용할 수 있는 이벤트, 함수 호출, 흐름 제어 동작, 변수 등과 같은 오브젝트로, 특정 그래프의 함수성이나 그 함수성이 들어있는 블루프린트를 정의하는 데 사용됩니다.

노드 작업하기

각 노드 유형은 고유한 기능을 수행합니다만, 노드의 생성 및 사용 방식은 모든 노드에 공통입니다. 그 덕에 직관적인 방식으로 노드 그래프를 제작할 수 있습니다.

노드 배치하기

그래프에 새 노드 추가는, 컨텍스트 메뉴 에서 노드 유형을 선택하면 됩니다. 컨텍스트 메뉴에 나타나는 노드 유형은 목록 접근 방식이나 현재 선택된 것에 따라 달라집니다.

  • 그래프 에디터 탭의 빈 공간에 우클릭하면 그래프에 추가할 수 있는 모든 노드 목록이 뜹니다. 액터가 선택된 경우, 해당 유형 액터에 지원되는 이벤트 역시 나열됩니다.

    Blueprint Context Menu

  • 노드의 핀을 끌어 빈 공간에 놓으면 원래 핀 유형과 호환되는 노드 목록이 나타납니다.

    Blueprint New ConnectionBlueprint Context Menu - Pin Specific

노드 선택하기

노드 선택은 그래프 에디터 탭에서 노드에 클릭하면 됩니다.

SelectNode.jpg

Ctrl 키를 누른 채 노드에 클릭하는 것으로, 현재 선택에 노드를 추가 또는 제거할 수 있습니다.

VarMessage.jpg

클릭 후 끌어 범위 선택으로 다수의 노드를 한 번에 선택할 수 있습니다. Ctrl 키를 누른 채 클릭 후 끌어 범위 선택을 하면 해당 부분 선택이 토글됩니다. Shift 키를 누른 채 클릭 후 끌어 범위 선택을 하면 해당 부분이 현재 선택에 추가됩니다.

DotBoxSpawnEmitter.jpg

모든 노드의 선택을 해제하려면, 그냥 그래프 에디터 탭의 빈 공간에 클릭하면 됩니다.

노드 이동하기

노드 이동은 노드에 클릭한 다음 끌면 됩니다. 다수의 노드가 선택된 경우, 선택된 노드 중 하나를 클릭한 다음 끌면 노드 전체가 이동됩니다.

Blueprint Moving Nodes

노드는 양쪽에 핀을 가질 수 있습니다. 왼쪽의 핀은 입력 핀이고, 오른쪽의 핀은 출력 핀입니다.

Blueprint Input and Output Pins

핀은 크게 실행 핀과 데이터 핀, 두 가지 유형으로 나뉩니다.

실행 핀

Blueprint Exec Pins

Execution pins (실행 핀)은 노드를 서로 연결하여 실행 흐름을 만드는 데 사용됩니다. 입력 실행 핀이 활성화되면, 노드가 실행됩니다. 노드 실행이 완료되면, 출력 실행 핀을 활성화시켜 실행 흐름을 이어갑니다. 실행 핀은 연결된 것이 없으면 윤곽선으로, 다른 실행 핀에 연결되면 실선으로 표시됩니다. 펑션 콜 노드에는 항상 입력 실행 핀과 출력 실행 핀이 단 하나씩만 있는데, 함수는 입구와 출구가 하나만 있기 때문입니다. 다른 노드 유형은 여러 개의 입력 / 출력 실행 핀을 가질 수 있어, 활성화되는 핀에 따라 각기 다른 동작이 수행되도록 할 수 있습니다.

데이터 핀

Blueprint Data Pin Types

Data pin (데이터 핀)은 노드에서 데이터를 받거나 출력하는 데 사용됩니다. 데이터 핀에는 유형이 정해져 있어서, (자체적으로 데이터 핀이 있는) 같은 유형의 변수, 또는 다른 노드에 있는 같은 유형의 데이터 핀에 와이어를 연결할 수 있습니다. 실행 핀과 마찬가지로 데이터 핀 역시 어느 것에도 연결되지 않은 경우 윤곽선으로, 연결되면 실선으로 표시됩니다.

Blueprint Data Pins

노드는 입력 또는 출력 데이터 핀을 몇 개든 가질 수 있습니다. 펑션 콜 노드의 데이터 핀은 해당 함수의 파라미터와 반환값에 대응됩니다.

자동 형변환

데이터 유형이 다른 특정 핀 사이에도 블루프린트의 자동 형변환(auto-casting) 기능으로 연결이 가능합니다. 호환되는 유형은 두 핀을 연결하려 할 때 표시되는 툴팁으로 알 수 있습니다.

Blueprint - Compatible Types Message

한 유형의 핀을 끌어 유형은 다르지만 호환은 되는 핀으로 와이어를 연결할 때, 두 핀 사이에 와이어 포함해서 autocast 노드가 생성됩니다.

Blueprint - Autocast Node

변수로 승격

데이터 핀으로 표현되는 값은 블루프린트 안에서 Promote to Variable (변수로 승격) 명령을 통해 변수로 변환시킬 수 있습니다. 이 명령은 블루프린트에 새 변수를 만들어 승격되는 데이터 핀에 연결합니다. 출력 데이터 핀의 경우, 새 변수의 값을 설정하는 데 Set 노드가 사용됩니다. 본질적으로는, 새 변수를 추가하고, 그래프에 배치한 다음, 데이터 핀에 연결해 주는 작업에 대한 단축 기능입니다.

Promote to Variable, 변수로 승격 옵션을 사용해서도 변수를 만들 수 있습니다.

블루프린트 노드의 아무 입력 또는 출력 데이터 핀에 우클릭 한 다음 변수로 승격 옵션을 선택하면 됩니다.

HT38.png

New Light Color 핀에 우클릭 한 다음 변수로 승격 을 선택하는 것으로, 변수에 New Light Color 값을 할당할 수 있습니다.

HT40.png

다른 방법으로는, 입력 또는 출력 핀을 끌어놓은 다음 변수로 승격 옵션을 선택합니다.

HT39.png

와이어

핀끼리 연결된 선을 와이어 라 부릅니다. 와이어는 실행 흐름을 나타낼 수도, 데이터 흐름을 나타낼 수도 있습니다.

실행 와이어

실행 핀 사이의 와이어는 실행 흐름을 나타냅니다. 실행 와이어는 출력 실행 핀에서 입력 실행 핀으로 흐르는 하양 화살표로 표시됩니다. 화살표의 방향이 실행 흐름을 나타냅니다.

SelectNode.jpg

실행 와이어는 실행중일 때 시각적 표식이 나타납니다. 플레이 도중, 한 노드의 실행이 끝나고 다음 노드가 실행될 때, 그 실행 핀 사이의 와이어를 통해 한 노드에서 다른 노드로 실행이 흘러가고 있음이 강조됩니다.

k2_flow_exec.jpg

실행 와이어의 시각적 표식은 시간에 따라 점차 희미해 집니다.

데이터 와이어

데이터 와이어는 하나의 데이터 핀과 같은 유형의 다른 데이터 핀을 연결합니다. 색 화살표로 표시되어 데이터의 흐름을 보여주며, 화살표의 방향은 데이터의 이동 방향을 나타냅니다. 데이터 와이어의 색은 데이터 유형에 따라 달라지는데, 이는 데이터 핀의 색과 똑같습니다.

Blueprint Data Wire

와이어 작업하기

와이어 연결은 그래프 에디터 탭에서 다음 방법 중 하나로 가능합니다:

  • 하나의 핀을 클릭하고 같은 유형의 다른 핀에 끌어 놓아 직접 연결합니다.

    HoverCheck.jpg

    연결은 호환되는 핀 유형끼리만 가능합니다. 호환되지 않는 핀에 끌어놓으면, 연결할 수 없다는 오류창이 뜨게 됩니다.

    HoverCheckNo.jpg

  • 핀을 클릭하고 그래프의 빈 공간에 끌어놓으면 원래 핀 유형과 호환되는 모든 노드가 나열되는 컨텍스트 메뉴가 뜹니다. 이 목록에서 노드를 선택하면 해당 노드의 인스턴스를 새로 만든 다음, 새 노드의 호환되는 핀에 와이어를 연결합니다.

    Blueprint Wire Creation - New Node

    ConnectedNodes.jpg

    두 핀 사이의 와이어를 끊는 방법은 다음 중 하나로 가능합니다:

  • 연결된 핀 중 하나에 Alt + 클릭 합니다.

  • 연결된 핀 중 하나에 우클릭한 다음 Break Link (링크 끊기)를 선택합니다.

    BreakLinkNode.jpg

접힌 그래프

그래프의 노드 모음을 서브그래프로 접어 체계정리가 가능합니다. 이로써 그래프의 계층구조가 형성되어, 그래프에 크거나 복잡한 부분을 부모 그래프의 입력과 출력도 달린 하나의 노드로 확인할 수 있으며, 접힌 그래프의 내용도 계속해서 편집할 수 있습니다.

매크로와는 달리, 접힌 노드 세트는 단일 레벨 블루프린트나 블루프린트 클래스 안에서도 공유되지 않습니다. 접힌 노드를 복사하면, 내부 그래프를 복제합니다. 작동방식이 거의 엇비슷한 변종을 여럿 만들려는 경우에는 편할 수 있지만, 버그가 있는 경우 각 사본마다 적용해 줘야 한다는 뜻이기도 합니다. 이 기능은 공유나 재사용 목적이라기 보다는, 그래프를 '깔끔히 정리'하여 내부 복잡도를 숨기기 위한 목적에 가깝습니다.

터널

접힌 그래프는 터널 노드를 사용하여, 이를 포함한 외부 그래프와 통신 및 상호작용합니다.

입력 터널 노드는 접힌 그래프로의 입구 역할을 합니다. 거기에는 부모 그래프 내 접힌 그래프 노드의 입력 핀에 해당하는 실행 핀과 데이터 핀이 있습니다.

Blueprint Tunnel Entrance Node

출력 터널 노드는 접힌 그래프의 출구 역할을 합니다. 거기에는 부모 그래프 내 접힌 그래프 노드의 출력 핀에 해당하는 실행 핀과 데이터 핀이 있습니다.

Blueprint Tunnel Exit Node

이 핀들은 노드가 접힐 때 자동으로 생성됩니다. 시퀀스 내 첫 노드의 핀에 연결된 실행 또는 데이터 와이어는 입력 터널 노드상에 상응하는 핀을 만들며, 이는 부모 시퀀스 내 접힌 그래프 노드에 입력 핀으로 나타납니다. 비슷하게, 시퀀스 내 마지막 노드에 연결된 실행 또는 데이터 와이어는 출력 터널 노드상에 상응하는 핀을 만들어, 부모 시퀀스 내 접힌 그래프 노드에 핀으로 나타납니다.

노드 모음 접는 방법

  1. 그래프에서 클릭 후 범위선택 박스를 끌어서 또는 Ctrl + 클릭 으로 각 노드를 선택하여 접으려는 노드들을 선택합니다.

  2. 노드 중 하나에 우클릭한 다음 Collapse Nodes (노드 접기)를 선택합니다.

    Blueprint Collapse Nodes - Menu Option

  3. 새로 나타나는 노드의 텍스트 입력칸에 접힌 그래프 이름을 입력한 다음 Enter 키를 칩니다.

    Blueprint Collapse Nodes - Graph Name

  4. 접힌 그래프가 하나의 노드로 표시되며, 접힌 노드에 대한 레퍼런스가 내 블루프린트 탭에 나타납니다.

    collapsed_graph_myblueprint.png

  5. 접힌 노드를 편집하려면, 내 블루프린트 서브그래프를 선택하거나 접힌 그래프 노드에 더블클릭합니다.

접힌 그래프를 펼치는 방법

  1. 접힌 그래프 노드에 우클릭한 다음 Expand Node (노드 펼치기)를 선택합니다.

    Blueprint Expand Node - Menu Option

  2. 접힌 그래프 노드가 그 안에 들어있는 노드들로 대체되며, 더이상 내 블루프린트 탭 그래프 계층구조에 존재하지 않습니다.

    Blueprint Expand Node - Resulting Nodes

Select Skin
Light
Dark

새로운 언리얼 엔진 4 문서 사이트에 오신 것을 환영합니다!

문서 사이트에 대한 의견을 모을 수 있는 피드백 시스템을 포함해서 여러가지 새로운 기능을 준비하고 있습니다. 아래 Documentation Feedback 포럼(영문) 또는 언리얼 엔진 네이버 공식 카페(한글) 중 편하신 곳에 의견이나 문제점을 알려 주세요.

새 시스템이 준비되면 알려 드리겠습니다.

네이버 카페
공식 포럼