레이블이 노치인 게시물을 표시합니다. 모든 게시물 표시
레이블이 노치인 게시물을 표시합니다. 모든 게시물 표시

2019년 7월 12일 금요일

Unity Notch(노치) 단말기 UI 설정

상단의 프레임 아래쪽으로 툭 튀어나와 있는 H/W 영역인 Notch의 처리를 위해 체크해야 하는 항목을 정리해 둔다.

빌드 세팅

Player Setting > Android > Resolution and Presentation 내부 설정 확인
- Render outside safe area의 항목이 체크되어 있는지 확인(기본값은 OFF)


Screen.safeArea 

SafeArea API(Unity 2017.2p3 이상)는 실행되고 있는 디바이스의 SafeArea 즉, 안전한 영역의 크기를 Rect 타입으로 반환하며, 이를 이용해 UI의 Rect와 Anchor의 조절이 필요

using UnityEngine;

public class SafeArea : MonoBehaviour
{
    RectTransform Panel;
    Rect LastSafeArea = new Rect(0, 0, 0, 0);

    public Text message;

    void Awake()
    {
        Panel = GetComponent();
        Refresh();
    }

    void Update()
    {
        Refresh();
    }

    void Refresh()
    {
        Rect safeArea = GetSafeArea();

        if (safeArea != LastSafeArea)
            ApplySafeArea(safeArea);
    }

    Rect GetSafeArea()
    {
        return Screen.safeArea;
    }

    void ApplySafeArea(Rect r)
    {
        LastSafeArea = r;

        Vector2 anchorMin = r.position;
        Vector2 anchorMax = r.position + r.size;
        anchorMin.x /= Screen.width;
        anchorMin.y /= Screen.height;
        anchorMax.x /= Screen.width;
        anchorMax.y /= Screen.height;
        Panel.anchorMin = anchorMin;
        Panel.anchorMax = anchorMax;
    }
}

출처 : stackoverflow | unity-to-ios-notch-and-safe-are-problems

Unity - Firebase 연동 (Analytics, AdMob)

버전 : firebase_unity_sdk_6.5.0.zip 게임에서 통계 측정 및 광고 추적을 위해 Firebase 을 연동한다. 앞서 [Unity - GPGS 와 Admob 연동 및 배포 준비 작업]  연동 이후에 작업을 진행 한다. 유니...