Unity 매뉴얼 스크립팅 API 설명서 (2022.3 LTS)
개요
이 문서는 Unity의 공식 매뉴얼 스크립팅 API의 주요 변경 사항과 기능을 설명합니다. 업데이트 내용에 대해 자세히 알고 싶거나 관련 예제를 보고 싶은 경우, 아래 내용을 확인해 주세요.
버전 및 업그레이드 가이드
Unity 프로젝트를 업그레이드할 때는 항상 릴리스 순서를 따르는 것이 중요합니다. 예를 들어, 2020 LTS에서 2022 LTS로 업그레이드하려면 반드시 2021 LTS 가이드를 참조한 후 2022 가이드를 읽어야 합니다.
주요 변경 사항
분류 | 변경 사항 |
---|---|
기기 시뮬레이터 | UnityEngine.Device 네임스페이스에 추가된 클래스가 게임 창에서 액세스 가능 |
환경 조명 | 주변광 프로브와 스카이박스 반사 프로브의 자동 베이킹 지원 |
코드 커버리지 | 코드 커버리지 관리 UI가 일반 환경 설정에서 코드 커버리지 패키지로 이동 |
파티클 시스템 | 시뮬레이션의 기준으로 30fps를 사용하는 파티클 시스템의 동작 변경 |
API 변경 사항 | Terrain API의 실험 단계를 종료하고 일반 네임스페이스로 이동 |
Android 빌드 | Gradle 프로젝트 에셋의 관리 방식 변화 |
UI 툴킷 | 기본 Image의 scaleMode가 ScaleAndCrop에서 ScaleToFit으로 변경 |
기기 시뮬레이터 설정
기기 시뮬레이터를 설정하려면 아래와 같이 UnityEngine.Device 네임스페이스의 클래스를 추가합니다.
using Screen = UnityEngine.Device.Screen;
using Application = UnityEngine.Device.Application;
using SystemInfo = UnityEngine.Device.SystemInfo;
환경 조명 업데이트
에디터가 기본 스카이박스 프로브 및 주변광 프로브를 자동으로 베이크하며, 씬을 수동으로 베이크하기 전에 해당 데이터가 유지됩니다. 만약 기존 씬의 시각적 변경을 원하지 않는 경우, 환경 조명의 강도 멀티플라이어를 0으로 설정하여 조정할 수 있습니다.
코드 커버리지 활성화
코드 커버리지 패키지를 활성화하려면 다음 중 하나를 사용합니다:
- 코드 커버리지 패키지를 설치하고, Code Coverage 창에서 Enable Code Coverage를 선택
- 배치 모드에서 커맨드 라인 인자
-enableCodeCoverage
를 사용 - Coverage.enabled API를 사용
예제
아래는 코드 커버리지를 활성화하는 예제 클래스입니다.
using UnityEditor;
using UnityEngine.TestTools;
class CodeCoverageMenuItem
{
const string EnableCodeCoverageItemName = "Code Coverage/Enable Code Coverage";
[MenuItem(EnableCodeCoverageItemName, false)]
static void EnableCodeCoverage()
{
Coverage.enabled = !Coverage.enabled;
}
[MenuItem(EnableCodeCoverageItemName, true)]
static bool EnableCodeCoverageValidate()
{
Menu.SetChecked(EnableCodeCoverageItemName, Coverage.enabled);
return true;
}
}
파티클 시스템 변화
파티클 시스템에서 이전에는 타임 스케일에 따라 강도 조정이 이루어졌으나, 이제 기본적으로 30fps를 기준으로 시뮬레이션됩니다. 따라서 다른 프레임 속도로 실행할 경우 파라미터 조정이 필요할 수 있습니다.
Android 빌드 변화
Android의 Gradle 프로젝트 에셋 관리 방식이 변경되어 자원 파일을 더 이상 Gradle로 복사하지 않습니다. 대신 AAR 또는 androidlib 플러그인을 사용하여 리소스를 전달해야 합니다.
Mono 업그레이드
기본 C# 런타임인 Mono가 최신 버전으로 업그레이드되었습니다. 따라서 일부 함수의 동작이 변경되었으며, 이에 대한 고려가 필요합니다.
결론
Unity 버전 2022.3 LTS로의 업그레이드는 많은 새로운 기능과 변경 사항을 포함합니다. 업그레이드 전 제공된 변경 사항을 면밀히 검토하고 필요한 조치를 취하는 것이 중요합니다. 추가적인 예제나 문서가 필요하시다면 Unity 공식 문서를 참조하시기 바랍니다.