레터박스: 화면의 가로세로 비율(aspect ratio)이 게임이 설정된 비율과 다를 때 빈 공간을 화면의 상단/하단 또는 좌우에 채워주는 방식
초동수사는 화면의 가로세로 비율을 고정시켜 놓는다.
using UnityEngine;
#if UNITY_EDITOR
using UnityEditor;
#endif
public class CameraResolution : MonoBehaviour
{
private void Awake()
{
// 현재 GameObject에 부착된 Camera 컴포넌트를 가져오는 코드
Camera cam = GetComponent<Camera>();
// 현재 카메라의 뷰포트 영역을 가져오는 코드
Rect viewportRect = cam.rect;
// 원하는 가로 세로 비율을 계산하는 코드
float screenAspectRatio = (float)Screen.width / Screen.height;
// float targetAspectRatio = 22f / 9f; // 테스트
float targetAspectRatio = 13f / 6f; // 원하는 고정 비율 설정 (예: 16:9)
// 화면 가로 세로 비율에 따라 뷰포트 영역을 조정하는 코드
if (screenAspectRatio < targetAspectRatio)
{
// 화면이 더 '높다'면 (세로가 더 길다면) 세로를 조절하는 코드
viewportRect.height = screenAspectRatio / targetAspectRatio;
viewportRect.y = (1f - viewportRect.height) / 2f;
}
else
{
// 화면이 더 '넓다'면 (가로가 더 길다면) 가로를 조절하는 코드.
viewportRect.width = targetAspectRatio / screenAspectRatio;
viewportRect.x = (1f - viewportRect.width) / 2f;
}
// 조정된 뷰포트 영역을 카메라에 설정하는 코드
cam.rect = viewportRect;
}
}
다른 게임에도 항상 이걸 쓰는데... 아이폰의 경우는 거의 대부분 레터박스가 안 보이거나 조금 보인다. 애플만세.
하지만 아이패드와 갤럭시는 어쩔 수 없이 경우가 다른데, 레터박스가 잘 보이는 경우 아래와 같은 현상이 나온다.
편집은 구찮으니... 대강 뒷쪽에 나온다...
이렇게 잔상이 남아버리는데, 그럴땐 마지막에
이렇게 넣어주면 된다. 내 경우에는 이걸로 해결되었다.
그리고 또 다른 문제가 있었는데, 레터박스가 깜빡깜빡 플리커 현상도 있었다.
당시에는
이걸 쓰고 있었기 때문에 그런 현상이 일어난 거였다.
지우면 괜찮아졌음.
하지만 그래도 그런 현상이 안 사라진다면, 다른 사람들은 Camera컴포넌트의 Clear Flags를 Solid Color나 Skybox로 하면 된다고한다. 이미 이 게시글에 들어왔을 땐 저거 다 해보고 들어왔겠지만...
참고로 동영상의 게임은 "초동 수사"라는 게임이다. 그렇다! 내가 만든 것이다!
도움이 되었다면, 한 번씩 해보고 가시면 very very 감사하다.
[android]
https://play.google.com/store/apps/details?id=com.loomiloomi.crimescene
[ios]
초동수사 - 증언/증거 추리게임
Episode 1. 자택에서 친구들과 놀던 평범한 여대생 "나 미녀"가 갑작스럽게 사망했다. 그런데, 주변 사람들의 대화 내용이 심상치 않다!? ======== 안 남찬: "아니요! 저희는 밥을 먹고 있었을 뿐입니
apps.apple.com
'Unity' 카테고리의 다른 글
[ Unity ] scrollbar 위, 아래로 내리기. value 숫자 범위 0~1 아닐때 (0) | 2025.02.06 |
---|---|
[ Unity3d ] Off Mesh Link 자동으로 링크 생성안될 때 (0) | 2025.01.23 |
[ Unity ] 동적 목록 스크롤뷰 가장 아래로 내리기 (0) | 2024.11.23 |
[ Unity ] 갑자기 xcode 안열릴때 반응 없을때 (0) | 2024.10.25 |
[ Unity ] 유니티 스플래시화면에서 무한로딩 (0) | 2024.10.22 |