Unreal

[Unreal] 6월 12일 수업정리

k-codestudy 2025. 6. 12. 17:46

오늘도 UI의 기능에 대한 수업을 들었다.

 

기본 셋팅

디테일 패널 - 보더 - 디테일 패널 - 버튼, 택스트, 슬라이드 바 배치
begin - 시퀀스 - create widget (w-uiMain 설정) - 변수 승격 (m-uiMain)
tab - Flip Flop - A : add to viewport (m-uiMain) - show mouse cursor(get Player Controller) - set Input Mode Game and UI (m-uiMain, get Player Controller) / B : remove From Parent(m-uiMain) - show Mouse Cursor(get Player Controller) - set Input Mode Game Only (get Player Controller)

 

UI 초기화 시점

constrcut - print string (생성자) / init - print string (초기화)
게임을 처음 실행하면 초기화가 불리게 된다.
UI를 키게 되면 생성자가 불리게 된다.

  • 즉, 생성자가 불리고 초기화가 불리는 것이 아닌 초기화가 불리고 생성자가 불리는 것을 확인할 수 있다 ( 시점이 다름 )

 

버튼 기능 사용

버튼 클릭 후 세팅
이벤트 - on Clicked - 클릭 후 이벤트 생성
on Clicked - Remove from Parent 호출 (주의점 : 나중에 많은 이벤트를 호출하게되면 알아보기 힘들 수도있기에 네임을 잘 정하여 사용할 것, 위젯의 이름을 바꾸면 자동으로 바뀌게 된다 )
클릭을 하면 꺼지게 되는데 단순히 꺼지기만 하기에 캐릭터는 움직여지지 않고 화면도 옮겨지지 않는 상황이 발생

 

닫는 부분에 대한 것

  • ESC를 누르면 꺼짐 ( UI가 안켜져 있다면 옵션창을 띄우고, 옵션창의 경우 가장 상위라 다른 UI들이 켜지지 않음 ) -> 구현하기 위해서 세트에 저장을 하고 하나하나 꺼주는 작업을 해주면 됨 )
  • 버튼을 누르게 되면 꺼짐
  • 같은 키를 누르게 되면 꺼짐 (우리가 만든 Flip Flop) -> 함수로 빼주던지 아니면 위젯에서 만들어서 사용하던지 ( 모든걸 하나하나 다 만드는것은 귀찮기 때문 )

 

캐릭터의 정보를 얻어와 UI에 띄우는 작업 ( 택스트 )

방법 1. 바인딩

방법 2. 포인터

변수 (m-text, 텍스트 ) 생성 - 1번을 누르게 되면 키보드 1번으로 변경 , 2번을 누르게 되면 키보드 2번으로 변경
UI 그래프 - m-player (bp_ThirdPersonCharacter) 생성 - 인스턴스 편집, 스폰시 노출 On
[bp_ThirdPerson] create Widget에 보면 m-Player라고 생길껀데 Self를 연결 -> 위젯에서 player의 존재를 확인 가능
택스트 - Text 부분에 바인드 클릭 - m-Player - m-text 클릭
실행 ( 1번, 2번을 누르면 택스트가 변경되는것을 확인 )

 

프로그래스 바인딩  + 포인터 방식 활용

포인터 방식

변수 m-HpMax (int), m-HpCurrent (int), m-Hp (float) 생성 - 3번을 누르게 되면 현재 Hp에 +10, 4번을 누르게 되면 현재 Hp에 -10 - e-upDataHp 연결 / e-upDataHp - m-hpCurrent / m-hpMax의 값을 float로 캐스팅 후 set m-Hp에 연결
프로그래스에서 Percent 부분에 바인드 ( m-hp )
3,4 번을 누르게 되면 줄어들었다 늘어났다 확인 가능

 

바인딩 방식

프로그래스 - percent - 바인딩 생성
생성된 함수에 m-player에서 m-HpCurrent / m-HpMax의 값을 float로 캐스팅 한 후 그 값을 return 출력에 연결
잘 실행 되는것을 확인

 

 

과제

슬라이드바 -> + , - 버튼 클릭 시 값 변경 ( 슬라이드 바도 움직여야함 ) / 슬라이드를 조작해도 값 변경

기본 설정
택스트에 바인드
포인터 활용
실행

 

 

언리얼 UI 퀵스타트 ( 채력, 기력 시스탬에 대한 기본 UI 예시니까 참고하면 좋을 듯 )

'Unreal' 카테고리의 다른 글

[Unreal] 6월 16일 수업정리  (0) 2025.06.16
[Unreal] 6월 13일 수업정리  (0) 2025.06.13
[Unreal] 6월 11일 수업정리  (0) 2025.06.11
[Unreal] 6월 9일 수업정리  (0) 2025.06.09
[Unreal] 6월 3일 수업정리  (0) 2025.06.03