← 블로그로

모바일 HUD 정보 위계: 전투, 로비, 모달에서 무엇을 보여줄 것인가

게임 상태별 HUD 가시성과 우선순위, Safe Area·플로팅 텍스트 레이어·모달 스태킹 연계, 스펙 표와 Play·기기 승인 절차를 정리합니다.

게시일
  • game-ui-design
  • game-dev-ai
  • ui-to-engine
  • hud
  • mobile
  • unity
  • godot
  • cocos
  • vberai
  • 2026
모바일 HUD 정보 위계: 전투, 로비, 모달에서 무엇을 보여줄 것인가

HUD 실패는 좀처럼 “체력 바를 깜빡했다”가 아니라 한 화면에 같은 우선순위 요소가 너무 많은 것입니다. 전투 중 로비 탭, 시네마틱 위에 뜬 탭 가능한 상점, 또는 모달이 열려 있는데도 아래 HUD가 여전히 탭을 먹는 경우죠. 디자인 목업은 대개 단일 프레임이라 “전투 중 재화 숨김”을 표시하지 않습니다. 엔지니어링이 가시성, 입력 차단, 드로우 순서를 확정할 수 있도록 상태 × 레이어 스펙이 필요합니다.

아래는 Unity UGUI(Prefab, Canvas.sortingOrder, Graphic raycast) 기준 표현입니다. Godot: CanvasLayer layer + Control mouse_filter; Cocos: 노드 드로우 순서 + BlockInputEvents / 전체 화면 차단기—기준과 표는 동일합니다. Safe Area, 플로팅 텍스트, Canvas 정렬 세부 내용: Safe Area, 플로팅 데미지 숫자. 기기, 모든 로케일, Release 빌드: 출시 전 체크리스트 항목 1, 2, 5.

실패 기준(하나라도 해당 = 미통과): 모달 / 시네마틱 / 결제 플로우 중 아래 HUD가 여전히 상호작용 가능(스펙에 “반화면은 조작 가능”이라 명시되지 않은 경우); 전투 중 닫을 수 없는 비전투 프로모가 플레이 영역을 막음; 같은 정보가 두 번 표시(예: 상단 바 코인 + 전투 중 대형 코인 UI)되고 제품 노트가 없음; 이전 상태의 컨트롤이 남아 있음(보이거나 여전히 raycast 차단); 다국어 스트레스 로케일에서 전투 최소 레이아웃이 여전히 잘림(DE/ES 등).


상태를 먼저 정의하고, 그다음 컨트롤

게임 상태(예시)HUD 목표보통 표시보통 숨김 / 저하
로비 / 홈내비게이션 + 재화 + 이벤트상단 재화, 하단 탭, 이벤트 진입전투 스킬, 조준선
전투 / 인레벨행동 + 생존 정보체력, 스킬, 일시정지로비 탭, 전체 화면 이벤트 배너
시네마틱 / CG입력 없음 또는 건너뛰기만건너뛰기 버튼거의 모든 HUD(또는 건너뛰기만)
모달(상점, 설정)다이얼로그에 집중모달 내 컨트롤아래 HUD raycast 끔 또는 레이어 전체 숨김
결제 / 컴플라이언스플로우 완료약관, 확인인게임 프로모 오버레이

상태 enum을 디자인 + 엔지니어링이 합의합니다(예: GameUIState.Lobby | Combat | Cinematic | Modal). UI 루트는 상태 머신을 구독합니다(Unity Prefab 그룹 / Godot 씬 분기 / Cocos 프리팹)—모든 버튼 스크립트에 흩어진 SetActive / visible은 피합니다.

로비 vs 전투: 탭과 이벤트 진입은 전투 중 숨겨야 함


레이어와 정렬 순서(엔진 중립 스펙)

아래에서 위로 문서화합니다(숫자가 높을수록 앞):

레이어내용입력
L0전체 화면 배경 / 씬 UI 비침없음
L1전투 HUD(체력, 조이스틱 자리)있음
L2전투 플로팅 텍스트 / 팁raycast 없음(플로팅 데미지 숫자)
L3시스템 토스트 / 마퀴보통 없음
L4모달 / 전체 화면 다이얼로그있음; L1–L3 탭 차단
L5네트워크 끊김, 강제 업데이트있음; 전부 차단

Unity: sortingOrder / 여러 Canvas; Godot: CanvasLayer layer; Cocos: 하나의 Canvas 아래 형제 순서 또는 레이어드 Canvas + 마스크. 모달이 열리면 L4를 올리고 L1 raycast / mouse_filter / BlockInput을 비활성화합니다—“위에 그려졌지만 탭은 통과”가 아니라.

L0–L5 스택: 플로팅 텍스트 비상호작용, 모달이 전투 HUD 차단


정보 우선순위(전투 예시)

작은 화면에서 전투가 읽히는 블록 N개만 유지할 수 있다면, 기본 상한:

우선순위블록저하 전략
P0체력 / 실패 조건 관련숨기지 않음
P0일시정지 / 전투 종료숨기지 않음
P1스킬 / 주요 행동버튼 수를 줄여 병합
P2짧은 목표 텍스트아이콘 + 길게 눌러 상세
P3재화, 이벤트 진입전투 중 기본 숨김 또는 일시정지 메뉴
P3채팅 진입아이콘으로 축소

저하는 다국어 스트레스 로케일(DE/ES 등)에서도 읽혀야 합니다—영어 전용 축소 테스트가 아니라.

전투 P0–P3: 재화/이벤트는 기본 숨김, 체력과 일시정지는 유지


승인(5단계)

  1. 상태 나열 — 메인 플로우에서 전환을 열거합니다(레벨 진입, 상점 열기, CG, 재접속).
  2. 상태별 스크린샷 — 에디터 Play와 기기 Release 각각(출시 전 항목 1, 5); SetActive(false) / visible=false 노드가 여전히 입력을 차단하는지 확인.
  3. 모달 스팟 체크 — 상점 / 설정 / 결제가 열린 상태에서 이전 HUD 버튼 탭은 아무 일도 없어야 함(전체 화면 투명 raycast 또는 BlockInput 마스크).

모달 열림: 잘못(전투 버튼 탭 통과) vs 올바름(아래 차단)

  1. Safe Area와 교차 — 전투 P0 컨트롤이 안전 인셋 안에(Safe Area).
  2. 버전 관리 에셋 커밋 — 상태 표가 가시성을 구동(Unity ScriptableObject / Godot Resource / Cocos config)—씬 전용 임시 숨김이 아니라.

디자인이 추가해야 할 것

산출물목적
상태별 와이어프레임(최소 로비 / 전투 / 모달)엔지니어링이 가시성 구성
목업의 전투 “숨김 가능” 목록한 프레임에 모든 요소를 그리는 것 방지
모달 스펙: 어두운 배경, 탭 통과 허용?raycast 정책 설정
프로모 / 이벤트 레이어 z-orderL4/L5와 정렬

디자이너가 상태 머신을 작성할 필요는 없습니다—표 + 주석이 추측을 줄입니다.


수정 라우팅

증상가능한 원인조치담당
다이얼로그 후에도 전투 탭 가능아래 raycast 켜짐모달 레이어 / 전체 화면 마스크에서 Graphic raycast 비활성화엔지니어링
전투 중 전체 화면 이벤트상태 표 없음전투 중 P3 숨김; 디자인 승인엔지니어링 + 디자인
시네마틱 후 HUD 남음Cinematic 상태 훅 없음상태 머신이 HUD를 일괄 숨김엔지니어링
재화 두 번 표시전투 중 로비 바 미해제Combat에서 상단 바 숨김 또는 데이터 소스 병합엔지니어링 + 디자인
전투 최소 레이아웃에서 긴 로케일 잘림DE/ES 미테스트로케일 오버플로 경로디자인 + 엔지니어링

FAQ

로비와 전투에 Canvas 두 개?
괜찮습니다—또는 그룹이 있는 Canvas 하나. 중요한 것은 Canvas 개수가 아니라 상태 가시성 + raycast입니다.

반화면 상점—이것도 모달인가?
예. 아래가 탭 가능한지, 전투 로직이 일시정지되는지 스펙에 명시합니다.

“적을수록 좋다” UX와 충돌?
위계 표는 미학이 아니라 제품 규칙입니다; P3는 상태 머신 플래그로 이벤트용으로 다시 열 수 있습니다.

3D의 월드 스페이스 머리 위 바?
이들은 전투 정보로 L1과 함께 관리됩니다; 월드 스페이스 정렬 규칙은 플로팅 데미지 숫자 및 Safe Area와 맞춥니다.

이 글도 추천합니다