이 페이지에는 2022 LTS 버전에서 2023.1로 업그레이드할 때 기존 프로젝트에 영향을 줄 수 있는 Unity 2023.1 변경 사항이 나열됩니다.
LightingSettings
의 Gaussian Filter Radius 프로퍼티가 부동 소수점 값으로 변경됨This upgrade guide describes how to upgrade to version 2023.1 of Unity’s built-in render pipeline. To upgrade other render pipelines to version 2023.1, refer to:
다른 패키지를 업그레이드하려면 사용하는 패키지의 문서를 참조하십시오.
프로그레시브 라이트매퍼의 경우 Advanced 필터링 옵션 중에 Gaussian 옵션이 있습니다(Lighting Window > Lightmapping Settings > Filtering > Direct Filter > Gaussian). Gaussian 필터링에 대한 Radius 컨트롤은 이제 0.5와 같은 소수 증분을 지원합니다. 이전에는 이 컨트롤이 정수 단계(1–5)만 지원했습니다.
이러한 변경의 결과로 다음 프로퍼티는 C# API에서 지원이 중단되었습니다.
int LightingSettings.filteringGaussRadiusAO
int LightingSettings.filteringGaussRadiusDirect
int LightingSettings.filteringGaussRadiusIndirect
지원이 중단된 프로퍼티에 대한 부동 소수점 대체 항목은 다음과 같습니다.
float LightingSettings.filteringGaussianRadiusAO
float LightingSettings.filteringGaussianRadiusDirect
float LightingSettings.filteringGaussianRadiusIndirect
지원이 중단된 멤버 함수 중 하나를 호출하여 가우시안 필터 반경을 가장 가까운 정수로 반올림할 수 있습니다.
라이트 프로브는 이제 라이트맵만큼 밝습니다. 이전에 Unity의 라이트 프로브 밝기는 이상적인 밝기의 94%에 불과했습니다. 따라서 라이트 프로브로 빛을 받는 오브젝트는 라이트맵으로 빛을 받는 오브젝트보다 약간 더 어둡게 보였습니다. 이 변화는 아주 미묘한 수준이기 때문에 많은 사용자가 눈에 띄는 차이를 느끼지 못할 수 있습니다.
이전 밝기를 선호하는 경우 다음과 같은 방법으로 변경할 수 있습니다.
인라이튼 베이크된 전역 조명 라이트매핑 백엔드를 더 이상 사용할 수 없습니다.
프로젝트를 이 버전으로 업그레이드하면 Unity는 라이트매퍼 선택 드롭다운에서 인라이튼 베이킹 백엔드를 제거하고 인라이튼 베이킹 백엔드를 선택한 모든 씬에서 프로그레시브 라이트매퍼로 대체합니다.
Apple Silicon 기기에서 Unity는 프로그레시브 GPU 라이트매퍼를 인라이튼 베이킹 백엔드로 대체합니다.기타 모든 기기에서 Unity는 CPU 프로그레시브 라이트매퍼를 선택합니다.
인라이튼 사전에 계산된 실시간 전역 조명은 여전히 사용할 수 있으며 Unity 2024 LTS까지 지원됩니다.
UnityPlayer
Java 클래스가 두 개의 새로운 브리지 클래스인 UnityPlayerForActivityOrService
및 UnityPlayerForGameActivity
로 대체되었습니다. 이러한 새 클래스는 모두 UnityPlayer
에서 파생되지만, displayChanged
및 windowFocusChanged
와 같은 공용 메서드가 UnityPlayer
에서 UnityPlayerForActivityOrService
로 옮겨졌습니다.
기본 Unity 활동을 확장하고 UnityPlayer
클래스를 사용하는 경우 컴파일 오류가 발생할 수 있습니다. 이러한 경우 UnityPlayer
이름을 UnityPlayerForActivityOrService
로 변경합니다.
UnityPlayer
Java 클래스가 더 이상 FrameLayout
을 확장하지 않습니다. FrameLayout
에 액세스해야 하는 경우 UnityPlayer
인스턴스에서 getFrameLayout
함수를 호출합니다.
RenderPipelineEditorUtility.FetchFirstCompatibleTypeUsingScriptableRenderPipelineExtension
이 지원 중단되었습니다. 대신 GetDerivedTypesSupportedOnCurrentPipeline을 사용하십시오. 메서드의 서명도 달라져, 이제 처음 발생하는 타입뿐만 아니라 파생된 모든 타입을 반환합니다. 이렇게 하면 Unity가 타입 순서를 보장하지 않기 때문에 비일관성을 방지할 수 있습니다.
CustomEditorForRenderPipelineAttribute 및 VolumeComponentMenuForRenderPipelineAttribute의 지원이 중단됩니다. 대신 CustomEditor 및 VolumeComponentMenu를 사용하십시오. 이러한 속성이 활성 상태일 때 파이프라인 선택을 제한하려면 SupportedOnRenderPipelineAttribute와 결합하고 RenderPipelineAsset 타입을 지정합니다. 빌트인 렌더 파이프라인과 함께 작동하는 SRP 속성을 활성화하려는 경우 파라미터 없이 SupportedOnRenderPipelineAttribute를 사용합니다. 이렇게 하면 특정 파이프라인에서 두 속성을 활성화해야 할 때 두 속성에 대해 통합된 워크플로를 사용할 수 있습니다.
Android Gradle 프로젝트를 수정할 수 있는 새로운 API가 도입되었습니다. 이 API를 사용하면 기존의 Android Gradle 템플릿 워크플로를 대체할 수 있습니다. 새로운 API를 사용하지 않는 경우 템플릿이 이전과 동일하게 작동합니다.
새로운 API를 사용하려면 Templates Upgrader를 다음과 같이 사용합니다.