Unity 6 프리뷰의 새로운 기능
2023.2 이후 Unity 6 프리뷰에서 변경된 사항을 살펴보고 영향을 받는 부문에 대한 기술 자료를 확인하십시오.
이 Unity 버전의 새로운 기능, 변경 사항, 개선 사항에 대해 자세히 알아보려면 Unity 6 프리뷰 릴리스 노트를 참조하십시오.
다른 릴리스의 릴리스 노트를 찾으려면 Unity 다운로드 아카이브를 참조하십시오.
기존 프로젝트를 2023.2에서 업그레이드하는 경우에 발생하는 프로젝트에 대한 영향은 Unity 6 프리뷰 업그레이드 가이드를 참조하십시오.
에디터 및 워크플로
- 다른 게임 오브젝트와 겹치는 게임 오브젝트를 선택하는 데 사용할 수 있는 피어싱 메뉴가 추가되었습니다. 피어싱 메뉴를 열려면 씬(Scene) 뷰에서 Ctrl 키를 누른 채로 오른쪽 클릭합니다. 피어싱 메뉴는 커서 아래에서 선택 가능한 모든 게임 오브젝트의 목록을 표시합니다.
- 여러 앱 ID 지원을 위한 Steam ID 공급자 에디터 설정에
Additional App IDs를 추가했습니다.
- 각 타겟 플랫폼에 대해 여러 커스텀 빌드 구성을 생성하는 빌드 프로파일을 도입했습니다.
- Build Settings 창이 Build Profile 창으로 대체되었으므로 Build Profile Diagnostic 체크박스를 더 이상 사용할 수 없습니다.
- 새 빌드 프로파일 아이콘이 통합되었습니다.
- C# 스크립트 메뉴 항목을 다음과 같은 세 개의 별도의 옵션으로 대체하기 위해 Create 메뉴를 수정했습니다.
- MonoBehaviour 스크립트
- 스크립터블 오브젝트 스크립트
- 빈 스크립트
- 메뉴 루트의 항목 수를 줄이기 위해 Create 메뉴를 개선했습니다. 이제 메뉴가 알파벳순으로 정렬되고 거의 모든 항목이 카테고리에 속합니다.
UI 툴킷
- UXML 저작을 지원하기 위해 누락된 UxmlAttribute 컨버터(
Gradient, AnimationCurve, ToggleButtonGroupState, Unsigned Int, Unsigned Long)를 추가했습니다.
-
ToggleButtonGroupState 직렬화 프로퍼티에 대한 PropertyField 지원을 추가했습니다.
- 네이티브 Text Generator 재작성을 지원합니다. Text Generator를 사용하면 아랍어, 히브리어 같이 오른쪽에서 왼쪽으로 쓰는(RTL) 언어를 포함하여 다양한 언어와 스크립트를 사용할 수 있습니다.
- UI 툴킷 동적 아틀라스에 대한 디버거를 추가했습니다.
- UXML 및__ UI__(사용자 인터페이스) 사용자가 애플리케이션과 상호 작용하도록 해 줍니다. Unity는 현재 3개의 UI 시스템을 지원합니다. 자세한 정보
See in Glossary 빌더에서 딥 네스티드 속성 오버라이드에 대한 지원을 추가했습니다.
- 검색을 사용하는 유형 선택자를 추가했습니다.
- UI 빌더 라이브러리에 검색 필드를 추가했습니다.
엔티티
- Unity 에셋에 대한 관리되지 않는 레퍼런스를 활성화하기 위해
UnityObjectRef<>에 대한 직렬화 지원을 추가했습니다. 예를 들어 관리되는 IComponentData의 텍스처 대신 관리되지 않는 IComponentData의 UnityObjectRef<Texture>를 가질 수 있습니다.
- Create 메뉴에는 다음 유형의 템플릿이 추가됩니다.
IComponentData
ISystem
IJobEntity
- Baker
- 엔티티와 게임 오브젝트 워크플로의 통합을 준비하기 위해 엔티티가 저장되는 방법을 변경했습니다. 엔티티 ID는 이제 전역적으로 고유하며, 엔티티 ID를 엔티티 월드 간에 효율적으로 옮길 수 있습니다. 이는 Unity 6의 ECS 워크플로에 영향을 주지 않지만 항상 정확한 엔티티를 표시하여 디버깅을 명확하게 해 줍니다.
- 다음 수정 사항이 엔티티 계층(Hierarchy) 창에 적용되었습니다.
- 계층 구조에서 엔티티와 시스템을 선택할 수 있습니다.
- 유효한 사용 사례의 계층 구조 뷰에서 엔티티를 제거한 후 실패하는 잘못된 범위 확인을 수정했습니다.
- 엔티티가 파괴될 때 엔티티 계층 구조에서 예외가 발생하는 문제를 해결했습니다.
- 이제 엔티티 계층 구조는 씬이 언로드될 때 씬과 하위 씬의 모든 노드를 제거합니다.
- 엔티티 계층 구조에서 프리팹을 열 때 더 이상 예외가 발생하지 않습니다.
- 기존 유형이 많은 월드에서 베이크와 기본형 및 엔티티 쿼리의 생성 성능이 향상되었습니다.
- LocalToWorld 시스템과 더티 상태가 아닌 계층 구조의 성능이 향상되었습니다.
- 활성화 컴포넌트에서
WithNone<T>를 사용하는 EntityQuery가 필요한 잡 종속성을 삽입하지 않는 문제를 수정했습니다.
- 이제
EntityQuery 싱글톤 메서드가 쿼리에 활성화 가능한 컴포넌트가 포함된 사례를 올바르게 처리합니다.
- 월드 역직렬화 및 콘텐츠 전송에 영향을 미치는 메모리 누수 문제를 수정했습니다.
-
System.API가 있는 시스템에서 정의된 잡의 중단점을 수정했습니다.
그래픽스
- GPU 인스턴싱으로 게임 오브젝트를 드로우하기 위해
BatchRendererGroup API를 자동으로 사용하는 GPU 상주 드로어를 추가했습니다. 이렇게 하면 드로우 콜 횟수가 줄어들고 CPU 처리 시간을 단축할 수 있습니다.
- GPU 상주 드로어에 SpeedTree 게임 오브젝트에 대한 지원을 추가했습니다.
- 소규모 메시 컬링을 비롯하여 GPU 상주 드로어와 호환되는 경우 인스턴스의 GPU 오클루전 컬링에 대한 지원을 추가했습니다.
-
BatchRendererGroup API에 새로운 배치당 레이어 필터링 설정을 추가했습니다. 이 설정을 사용하여 특정 배치를 컬링할 수 있습니다.
- URP 및 HDRP에서 볼륨 프레임워크의 CPU 성능이 최적화되어 저사양 하드웨어의 효율성을 향상하고 품질 설정을 더욱 정확하게 제어합니다.
-
Build Profiles > Asset Import Overrides에서 모든 텍스처가 크런치 압축을 비활성화하고 다시 임포트하도록 하는 Force No Crunch 텍스처 압축 설정을 추가했습니다.
- Graphics Settings 창에 새 설정 그룹을 추가할 수 있는
IRenderPipelineResources 인터페이스를 추가했습니다.
- Graphics Settings의 값이 수정될 때 알림을 트리거하도록 기본
IRenderPipelineGraphicsSettings 인스펙터를 업데이트했습니다.
-
IRenderPipelineGraphicsSettings에 커스텀 메뉴를 추가했습니다.
-
CustomPostProcessOrder에 대한 UI 툴킷 지원을 추가했습니다.
- URP와 HDRP에 대한 렌더 그래프 컴파일을 캐싱하는 옵션이 추가되었습니다.
URP
URP의 새로운 기능과 개선 사항에 대한 전체 설명은 URP의 새로운 기능을 참조하십시오.
- 메인 광원과 추가 광원의 그림자 텍스처 해상도에
8192x8192 옵션을 추가했습니다.
- 포워드+ 렌더링 경로에 포비티드 렌더링에 대한 지원을 추가했습니다.
- 카메라 내역 텍스처 관리자와 카메라별 내역 텍스처에 액세스하기 위한 기본 인터페이스를 추가했습니다. 내역 텍스처는 해당 내역에 맞는 모든 텍스처, 추가 데이터 및 API 메서드를 포함하는 유형으로 래핑 및 저장됩니다. 내역 텍스처는 여러 프레임에 걸쳐 샘플을 누적하거나 이전 프레임의 데이터를 입력으로 사용하는 알고리즘을 렌더링하는 데 유용합니다.
- APV(적응적 프로브 볼륨) 조명 시나리오 블렌딩을 URP에 추가했습니다.
- 화면에 표시되는 최대 광원 수를 오버라이드할 수 있는 새로운 설정 패키지를 추가했습니다.
- 커스텀 렌더 패스에 대한 카메라당 컬러와 뎁스 내역 및 내역 액세스를 추가했습니다.
- Render Graph Viewer를 추가했습니다. Window > Analysis > Render Graph Viewer 메뉴를 통해 액세스합니다. 이 툴을 사용하면 렌더 그래프 프레임워크에서 렌더 패스의 리소스 사용을 시각화하고 디버깅할 수 있습니다.
- 렌더링 디버거에 6개의 밉맵 스트리밍 디버그 뷰를 추가했습니다. 이 뷰는 Rendering 탭의 Mipmap Streaming에 있습니다. 사용 가능한 디버그 뷰는 다음과 같습니다.
- Mip Streaming Performance
- Mip Streaming Status
- Mip Streaming Activity
- Mip Streaming Priority
- Mip Count
- Mip Ratio
- 커스텀
VolumeComponent를 사용하는 포스트 프로세싱 ScriptableRendererFeature를 만드는 C# 스크립트 템플릿을 추가했습니다.
- URP에 대한 APV 스카이 오클루전 지원을 추가했습니다.
- STP(시공간 포스트 프로세싱) 업스케일링 솔루션에 대한 지원을 추가했습니다.
- Unity 6의 URP용 새로운 RenderGraph 시스템은 런타임 리소스 최적화를 자동화하여 특히 모바일 GPU에서 메모리 사용을 단순화하고 성능을 향상합니다. 더 엄격한 API 가이드라인으로 렌더링 오류와 성능 문제를 최소화합니다. NativeRenderPass API 및 포괄적인 디버그 뷰어의 통합으로 문제 해결 및 리소스 관리를 효율적으로 지원합니다. 또한 새로운 ContextContainer 클래스는 렌더링 리소스에 대한 간편한 액세스를 제공하여 복잡한 프로젝트에서 사용 편의성과 제어성을 향상시킵니다.
- 이 URP 버전은 Alpha Processing 설정을 구현합니다(URP Asset > Post-processing > Alpha Processing). 이 설정을 활성화하면 URP는 포스트 프로세싱 출력을 알파 채널이 있는 렌더 텍스처로 렌더링합니다. 이전에는 URP의 포스트 프로세싱 워크플로가 최종 출력에서 알파 채널을 폐기했습니다(알파 값을 1로 대체). 렌더 타겟에는 알파 채널이 있는 포맷이 필요합니다. 카메라 컬러 버퍼 포맷은 SDR의 경우 RGBA8(HDR 비활성화), HDR의 경우 RGBA16F(64비트)여야 합니다. URP Asset > Quality 설정에서 포맷을 설정할 수 있습니다.
HDRP
URP의 새로운 기능과 개선 사항에 대한 전체 설명은 HDRP의 새로운 기능을 참고하십시오.
- 머티리얼과 조명 디버깅을 용이하게 하기 위해 모든 머티리얼의 Smoothness, Albedo, Normal Map 같은 머티리얼 프로퍼티를 오버라이드하는 기능을 추가했습니다. HDRP의 머티리얼 오버라이드 기능은 경로 추적 파이프라인을 통해 렌더링할 때 렌더링 디버거의 Lighting 패널을 통해 사용할 수 있습니다.
- APV(적응적 프로브 볼륨)에 스카이 오클루전 기능을 추가하여 정적 프로브 볼륨을 사용할 수 있도록 합니다.
- 에셋 번들 및 어드레서블과 호환되도록, 베이크된 데이터를 APV(적응적 프로브 볼륨)의 스트리밍 에셋으로 저장하는 것을 비활성화했습니다.
- AMD FSR2(FidelityFX Super Resolution 2) Unity 스크립트 바인딩과 HDRP 통합을 추가했습니다.
- 기존 밉맵 스트리밍 디버그 뷰를 개선하고 기능을 추가했습니다. HDRP의 현재 기능은 URP가 제공하는 것과 일치합니다.
- STP(시공간 포스트 프로세싱) 업스케일링 솔루션에 대한 지원을 추가했습니다.
멀티플레이어
Netcode for GameObjects
- Netcode for GameObjects 클라이언트에 분산 권한 모드를 추가하여, 게임 세션 중에 생성된 Netcode 오브젝트에 대한 소유권 또는 권한을 분산할 수 있습니다. 분산 권한을 사용하면 클라이언트가 네트워크 오브젝트를 생성할 수 있는 권한을 갖습니다. 이 권한은 클라우드 상태 서비스에 전달되며, 상태 업데이트를 모든 연결된 클라이언트에 전달합니다. 고도로 최적화된 클라우드 상태 서비스는 클라이언트 간 네트워크 세션의 전반적인 상태를 유지합니다.
- 서버 및 클라이언트 RPC의 기능을 모두 수행할 수 있는 새로운 RPC 속성을 추가했으며, 클라이언트 간 RPC를 활성화했습니다.
-
NetworkManager.OnConnectionEvent, -ServerIsHost, -InstantiateAndSpawn 등을 포함하는 여러 유틸리티 메서드를 추가했습니다.
Netcode for Entities
- 디버그 바운딩 박스를 렌더링하는 게임 오브젝트에 대한 지원을 추가했습니다.
- 코드를 수정하지 않고도 커스터마이즈할 수 있는 대부분의 넷코드 구성 변수가 포함된 NetCodeConfig 스크립터블 오브젝트를 추가했습니다.
- 이제 다음 방법으로 자동 부트스트랩을 비활성화할 수 있습니다.
- ProjectSettings에서 자동 부트스트랩을 비활성화합니다.
- 첫 번째 빌드 씬에 새로운
OverrideAutomaticNetcodeBootstrap MonoBehaviour를 추가합니다.
- 개별적으로 지정하지 않고 관련성에 대한 일반적인 규칙을 지정하는 데 사용할 수 있는
AlwaysRelevantQuery를 추가했습니다.
-
Added BatchScaleImportanceDelegate는 배치로 작동하는 중요도 스케일링 함수의 새로운 버전입니다. ScaleImportance 및 BatchScaleImportance 함수 포인터를 둘 다 설정할 필요는 없습니다. BatchScaleImportance가 설정된 경우 해당 옵션이 선호되는 옵션입니다.
멀티플레이어 플레이 모드
멀티플레이어 플레이 모드가 버전 1.0으로 업데이트되었습니다. 이를 사용하여 Unity 에디터를 종료하지 않고도 멀티플레이어 기능을 테스트할 수 있습니다. 자세한 내용은 멀티플레이어 플레이 모드 기술 자료를 참조하십시오.
전용 서버
다른 프로젝트를 생성할 필요 없이 서버 및 클라이언트 역할 간에 프로젝트를 전환하는 데 사용할 수 있는 전용 서버 패키지가 출시되었습니다. 자세한 내용은 전용 서버 패키지 기술 자료를 참조하십시오.
툴
Multiplayer Tools 패키지를 버전 2.1.0으로 업데이트하여 네트워크 씬 시각화를 새로운 비주얼 디버깅 툴로 추가했습니다. 자세한 내용은 멀티플레이어 툴 기술 자료를 참조하십시오.
샘플
- 멀티플레이어 플레이 모드와 전용 서버가 Netcode for GameObjects와 함께 작동하는 방식을 보여 주는 전용 게임 서버 샘플을 추가했습니다.
- Netcode for GameObjects의 네트워크 모델을 통합하는 분산 권한 샘플을 추가했습니다.
패키지 관리자
파일이 비어 있거나 공백으로 가득 차 있는 경우 기본 종속성으로 다시 채워 프로젝트 매니페스트 파일의 동작을 개선했습니다.
파티클
- 파티클 트레일에 대한 커스텀 버텍스 스트림 기능을 추가했습니다.
-
BakeTexture 및 BakeTrailsTexture 스크립팅 방법을 추가했습니다.
플랫폼
Android
- Google Play 스토어에
.aab 파일을 업로드할 때 디버그 기호를 앱 번들에 포함하는 새로운 빌드 설정을 추가했습니다. 기호 패키지를 .apk 또는 .aab 파일과 함께 zip 파일로 별도로 업로드할 수 있습니다. .so.sym 또는 .so.dbg 및 레거시 .so 확장자를 사용하여 기호 파일을 만들 수 있습니다.
- 기호의 패키지 크기가 지정된 임곗값을 초과할 때 경고를 표시하는 새로운 플레이어 설정을 추가했습니다.
-
unityLibrary의 종속성을 지정하기 위해 .androidlib 플러그인 인스펙터에 새 프로퍼티를 추가했습니다. 이제 unityLibrary에 종속되도록 .androidlib를 설정할 수 있으므로 UnityPlayerActivity를 오버라이드하여 활동을 확장할 수 있습니다.
iOS
-
.xcframework 플러그인 지원을 추가했습니다.
- Player 설정에서 Custom XIB Launch Screen Type을 제거했습니다.
visionOS
Apple의 visionOS 플랫폼에 대한 지원을 추가했습니다.
웹 플랫폼(이전 WebGL)
- 웹 플랫폼에 다음의
LocationService 메서드 및 프로퍼티를 구현했습니다.
Start()
Stop()
isEnabledByUser
lastData
status
Unity 플레이어에 복사 및 붙여넣기 기능을 추가했습니다.
-
WebAssembly 2023에 대한 지원을 추가했습니다. 자세한 내용은 WebAssembly 2023을 참조하십시오. WebAssembly 2023은 최대 4GB의 힙 메모리 지원을 포함하며 다음 WebAssembly 언어 기능으로 구성된 컬렉션입니다.
- WebAssembly 네이티브 예외
- WebAssembly SIMD(단일 지침 다중 데이터)
- 최적화된 데이터 작업
- BigInt
- WebAssembly.Table
- float에서 int로 안전한 전환
- 부호 확장
- 다음 LocationService 메서드 및 프로퍼티가 구현되었습니다.
GetLastHeading()
SetHeadingUpdatesEnabled()
IsHeadingUpdatesEnabled()
GetHeadingStatus()
IsHeadingAvailable()
Compass API에 대한 지원을 추가했습니다.
모바일 브라우저에 대한 지원을 추가했습니다.
Emscripten 3.1.38 툴체인을 구현했습니다.
플랫폼 그래픽스
간접 Dispatch Rays에 대한 지원을 추가했습니다(DXR 1.1의 일부). 메서드는 RayTracingShader.Dispatch와 유사하지만, 3개의 디스패치 값은 GraphicsBuffer에서 가져옵니다. RayTracingShader.DispatchIndirect 및 새 CommandBuffer.DispatchRays 서명을 추가했습니다. SystemInfo.supportsIndirectDispatchRays 기능 상태를 추가했습니다.
ProBuilder
- 씬 뷰의 Tools 오버레이에서 활성화할 수 있는 ProBuilder 툴 컨텍스트를 생성했습니다. ProBuilder 툴 컨텍스트는 씬 뷰에서 ProBuilder 전용 동작을 활성화합니다.
- ProBuilder 창이 제거되었습니다. ProBuilder 툴 컨텍스트는 씬 뷰 컨텍스트 메뉴와 함께 사용되며 ProBuilder 작업의 워크플로를 더욱 간소화합니다.
- Vertex, Edge, Face 편집 모드를 씬 뷰의 Tool Settings 오버레이로 옮겼습니다. Tool Settings 오버레이에 ProBuilder 편집 모드를 표시하려면 Tools 오버레이에서 ProBuilder 툴 컨텍스트를 활성화합니다.
- ProBuilder 툴 컨텍스트가 Tools 오버레이에서 활성화되어 있을 때 요소 선택에 의존하는 ProBuilder 작업(예: Bridge, Weld Vertices, Grow Selection)을 씬 뷰 컨텍스트 메뉴로 옮겼습니다.
- Export, Subdivide, Center Pivot 등 ProBuilder 메시 컴포넌트 전체에 적용되는 ProBuilder 작업을 씬 뷰 컨텍스트 메뉴로 옮겼습니다.
- 생성 및 편집 툴을 Tools 오버레이로 옮겼습니다.
- 대부분의 ProBuilder 작업에 대한 미리 보기 옵션을 추가했습니다.
- 다음의 툴 옵션을 ProBuilder 툴바에서 Tool Settings 오버레이로 옮겼습니다.
- Hidden 선택
- Orientation: Normal
- Rect: intersect
- 개선된 제작 툴:
- 생성 셰이프 툴을 사용한 후 Shift 키를 누른 상태로 방금 생성한 셰이프의 사본을 생성합니다.
- 이제 Create PolyShape를 사용하면 툴을 종료하지 않고 여러 셰이프를 드로우할 수 있습니다.
Profiler
Memory Profiler 버전 1.1.0이 릴리스되었습니다. 자세한 내용은 Memory Profiler 패키지 기술 자료를 참조하십시오.
Shader Graph
- 패키지 관리자와 함께 설치할 수 있는 새로운 샘플 콘텐츠 팩을 추가했습니다. 샘플에는 Shader Graph의 대부분의 노드에 대한 설명, 예제 및 분석 내용이 포함되어 있습니다. 이 샘플은 노드의 내부 작동 방식을 이해하고 노드의 작동 방식과 사용 방법에 대한 예제를 확인하는 데 도움이 됩니다.
- 새로운 노드를 추가하고 하위 창 가시성을 토글하는 새로운 단축키를 추가하고, 몇 가지 기존 단축키를 단축키 관리자로 옮겼습니다.
- 사용자 환경 설정에 확대/축소 단계 크기 옵션을 추가했습니다.
- Shader Graph 내 각 노드의 추정되는 성능 영향을 기본적으로 표시하는 커스터마이즈 가능한 Heatmap color 모드가 추가되었습니다.
- Shader Graph에서 특정 효과를 구현하는 방법을 보여 주기 위해 Shader Graph에 기능 예제 샘플을 추가했습니다.
SpeedTree
SpeedTree Modeler 9에서 익스포트한 .st9 파일을 지원하며 다음을 포함하는 SpeedTree9Importer를 추가했습니다.
- SpeedTree Games Wind 및 SpeedTree Legacy Wind 효과 지원
- Importer Settings를 통해 바람 강도와 방향 응답성을 설정할 수 있는 기능
- 빌트인(
.cg), URP 및 HDRP 렌더러(.shadergraph)를 위한 새로운 SpeedTree9 셰이더
- 새로운 바람 효과를 위한 새로운 셰이더(조명에는 큰 변화 없음)
Version Control
Unity Version Control의 잠금 파일을 나열하고 관리하는 새로운 탭 뷰가 추가되었습니다.
VFX Graph
- Shader Graph 크로스 파이프라인 워크플로를 개선했습니다.
- 이제 블랙보드 패널에서 빌트인 및 커스텀 속성을 처리할 수 있습니다.
- 노출된 텍스처 또는 그래픽 버퍼가 있는 VFX의 인스턴스화된 렌더링이 허용되었습니다.
- 이제 스트립에서 ‘Indirect draw’ 옵션을 지원합니다. ‘Indirect draw’는 최대 용량이 아닌 활성화된 파티클만 렌더링합니다.
- 스트립의 파티클당 정렬에 대한 지원을 추가했습니다.
- VFX 창에 새로운 프로파일링/디버깅 패널을 추가했습니다.
- URP가 있는 VFX에 카메라 버퍼 액세스 지원을 추가했습니다.
- Shader Graph에서 선언된
ShaderKeyword를 지원합니다.
- 플립북 플레이어 블록을 다시 작업했습니다.
- 접촉 시 특정 프로세스를 허용하는 충돌 이벤트를 추가했습니다.
- VFX Graph의 단축키를 다음과 같이 개선했습니다.
- 단축키가 전역 Unity Shortcut 창에 등록되었습니다.
- 가능할 경우 Shader Graph와 단축키를 동기화했습니다.
- 새로운 단축키를 추가했습니다.
- 스트립에 대한 파티클 수 리드백을 추가하였으므로 스트립을 휴면 상태로 전환할 수도 있습니다.
- 스트립에 절두체 컬링을 활성화했습니다.
XR
Vision Pro에서 포비티드 렌더링에 대한 지원을 추가했습니다.
추가 리소스
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。