본문 바로가기

블루프린팅/7. 화면 UI

[07화면UI] UI값을 플레이어 변수에 연결

현재 UI는 표시만 되지 변수와 연결되어 있지 않다. 

다시 이전의 HUD 위젯 블루프린트를 열어 바인딩을 생성해서 변수나 함수를 위젯에 묶는 기능을 제공한다.

 

체력  바인딩 만들기

1. 콘텐츠드로워 FirstPerson>UI폴더에서 HUD 위젯블루프린트를 더블클릭한다.

2. 하이라키패널에서 PlayerStats Bar오브젝트 아래 자식인 Health Bar오브젝트를 클릭한다.

3. 디테일패널의 프로그레스 카테고리에서 퍼센트필드 옆 바인드 버튼을 클릭하고 바인딩생성한다.

4. UMG에디터가 디자이너뷰에서 그래프뷰로 전환된다. 새로운 함수가 생성돼 미터와PlayerHealth 변수간의 연결을 스크립트로 작성할 수 있다. 빈 그래프 공간을 우클릭하고 Get Player character 노드를 추가한다.

5. 새노드의 Return Value출력핀에서 와이어를 끌어 BP_FristPersonCharacter에 형변환 노드를 추가한다.

6. Get Heath Bar Percent 0과 반환노드 사이의 실행 핀 연결을 끊고 대신 다음과 같이 Get Health Bar Percent 0을 형변환 노드에 연결한다.

7. 형변환노드의 As BP First Person Character 출력핀을 끌어 Get Player Health 노드를 추가한다. Return Node와 연결한다. 형변환과 Return Node도 연결해준다.

스테미너바  바인딩 만들기

에디터 우상 Designer탭을 눌러 돌아간다. 하이라키에서 StaminaBar를 선택한다.

1. 콘텐츠드로워 FirstPerson>UI폴더에서 HUD 위젯블루프린트를 더블클릭한다.

2. 하이라키패널에서 PlayerStats Bar오브젝트 아래 자식인 Stemina Bar오브젝트를 클릭한다.

3. 디테일패널의 프로그레스 카테고리에서 퍼센트필드 옆 바인드 버튼을 클릭하고 바인딩생성한다.

4. UMG에디터가 디자이너뷰에서 그래프뷰로 전환된다. 새로운 함수가 생성돼 미터와PlayerStemina변수간의 연결을 스크립트로 작성할 수 있다. 빈 그래프 공간을 우클릭하고 Get Player character 노드를 추가한다.

5. 새노드의 Return Value출력핀에서 와이어를 끌어 BP_FristPersonCharacter에 형변환 노드를 추가한다.

6. Get Heath Bar Percent 0과 반환노드 사이의 실행 핀 연결을 끊고 대신 다음과 같이 Get StaminaBar Percent 0을 형변환 노드에 연결한다. Return Node는 형변환 오른쪽에 둔다.

7. 형변환노드의 As BP First Person Character 출력핀을 끌어 Get Player stamina 노드를 추가한다. Return Node와 연결한다. 형변환과 Return Node도 연결해준다.

8. 컴파일후 저장한다

 

탄약및 타깃 제거 카운텅 대한 텍스트 바인딩 만들기

1. 디자이너 버튼을 클릭해 캔버스 인터페이스로 돌아온다. 계층구조의 WeaponStats 아래에서 AmmoLeft텍스트를 선택한다.

2.디테일 패널에서 텍스트 필드 옆에 있는 바인드 버튼을 찾아 다음과 같이 새 바인드를 만듭니다.

 

3. 체력과 스태미너에서 했던 것과 같이 바인딩을 할것 입니다. .

4. 디자이너로 돌아가 마지막으로 TargetsCount를 선택하고 

5.디테일 패널에서 텍스트 필드 옆에 있는 바인드 버튼을 찾아 다음과 같이 새 바인드를 만듭니다.