![Hero background image](/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Ffuvbjjlp%2Fproduction%2F6785cfd03ddb38ca4a4b9545d31bd4f02c96b244-3840x2160.jpg&w=3840&q=100)
2020.1의 새로운 기능
Unity 2020.1의 프로그래머 관련 주요 업데이트를 확인해 보세요. 자세한 내용은 릴리스 노트를 확인하세요.
![Unity 프로파일러](/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Ffuvbjjlp%2Fproduction%2F7c588b2f3aeeb3f7cb64713c73b464d865f6d808-1620x910.jpg&w=3840&q=75)
Unity 2020.1에서는 프로파일링 툴이 여러 측면에서 개선되었으며, 특히 저사양 Android 기기에서 플레이어 연결 프로파일러의 안정성이 향상되었습니다.
C# 프로파일러 API에 대한 메타데이터 지원을 통해 프로파일러에 노출될 수 있는 파라미터를 정의할 수 있으므로 데이터에서 더 많은 맥락 정보를 확인하며 성능에 영향을 미치는 요소를 보다 정확하게 파악할 수 있습니다.
또한 메모리 프로파일러 프리뷰 패키지의 캡처 메모리 오버헤드와 캡처 시간이 대폭 줄었습니다.
2020.1부터는 Recorder API를 통해 GPU 프로파일 데이터에 액세스할 수 있으며, Sampler API를 사용해 데이터를 수집하고 자체 런타임 성능 통계 오버레이에서 시각화할 수 있습니다.
![Unity 스탠드얼론 프로파일러](/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Ffuvbjjlp%2Fproduction%2F10b9a76301a4ff8d29e1124fdd4981330f721714-1620x910.jpg&w=3840&q=75)
이제 프로파일러를 스탠드얼론 앱으로 실행할 수 있습니다. 툴을 Unity 외부의 별도 프로세스로 이동시킬 수 있으므로 에디터를 프로파일링하고 더 정제된 프로파일 데이터를 생성할 때 성능 오버헤드가 줄어듭니다.
Unity에서 프로파일러의 플로 이벤트 기능을 통해 스레드 간 작업을 예약하는 방법을 확인해 보세요. 실행할 메인 스레드의 코드가 멀티 스레드 코드 내의 작업이 완료되기를 대기하는 경우 이를 감지할 수 있습니다. 이벤트 마커와 플로 라인도 시각화해 시스템과 작업, 스레드의 관계를 명확하게 파악할 수 있으며, 이러한 종속성을 직접 찾아볼 필요가 없으므로 시간이 절약됩니다.
![정식 IDE 패키지에 Visual Studio 포함](/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Ffuvbjjlp%2Fproduction%2Ff03e24f7418f643fb08d8cdfbc2b09b191b9d013-1620x910.jpg&w=3840&q=75)
이번 릴리스에서는 Visual Studio 통합 기능이 패키지로 제공되며, 빌트인 지원 기능은 개발이 중단될 예정입니다. 패키지에는 Visual Studio의 시작이 빨라지는 등의 개선이 더해지고, 새로운 기능도 추가되었습니다.
이 업데이트는 작년에 Visual Studio Code와 JetBrains Rider를 시작으로, IDE(통합 개발 환경)와 코드 에디터를 코어에서 패키지로 옮기려는 시도의 일환입니다.
또한 JetBrains Rider IDE 정식 패키지에는 Code Coverage 지원 및 UX 개선과 같은 업데이트가 적용되었으며, Visual Studio Code IDE 정식 패키지에서는 이제 IntelliSense용 csproj 파일을 점진적으로 생성하고, 설치 상태를 자동으로 탐지하는 등의 업데이트가 적용되었습니다.
![새로운 C# 디버깅 워크플로](/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Ffuvbjjlp%2Fproduction%2F416603018d9ad959cb46d5300ac1fda4a4e7dd01-1620x910.jpg&w=3840&q=75)
새로운 C# 디버깅 워크플로는 에디터에서 기본적으로 릴리스 모드의 C# 코드 최적화를 사용하므로, 플레이 모드에서 프로젝트를 실행할 때 성능이 향상됩니다.
프로젝트를 디버그하려면 플레이 모드에 진입하기 전에 디버그 모드를 활성화해야 합니다. Unity 에디터 상태 표시줄의 오른쪽 하단에 있는 디버그 버튼을 선택하면 에디터를 다시 시작하지 않고도 코드 최적화 모드를 전환할 수 있습니다.
![제네릭 타입용 필드 직접 생성](/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Ffuvbjjlp%2Fproduction%2Fc84dbf45500f835585c689f77cb08815ae478346-1620x910.jpg&w=3840&q=75)
제네릭(Generic) 타입의 필드 직렬화 지원을 강화했습니다. 기존에는 제네릭 타입(MyClass<T> 클래스 등)이 있는 경우 이 타입을 이용해 필드를 생성하려면 제네릭 타입이 아닌 서브 클래스(MyClassInt : MyClass<int> 클래스 등)를 정의해야 했습니다. 이제 이러한 제약이 사라졌으며, 더 이상 제네릭 서브 클래스를 선언할 필요 없이 제네릭 타입을 직접 사용하여 필드를 생성할 수 있습니다.
![버스트 컴파일러 1.3](/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Ffuvbjjlp%2Fproduction%2F4e367b77951d2648373b3d277fd267355f3546f5-1620x910.jpg&w=3840&q=75)
버스트 컴파일러는 개발 툴로 진화해 가는 중이며, 이번에는 네이티브 디버깅 기능이 추가되었습니다.
이제 Unity에 연결된 네이티브 디버거를 사용해 중단점을 설정하거나, 코드를 건너뛰거나, 중단 지점을 살펴볼 수 있습니다. 또한 호출 스택, 변수, 자동 및 스레드를 검사하고 탐색할 수 있습니다.
![Unity 프로그래머 툴](/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Ffuvbjjlp%2Fproduction%2Fac9ac55679219732e21f169fd16a3bc53b390f24-1620x910.jpg&w=3840&q=75)
Profile Analyzer 패키지를 사용하면 Unity 프로파일러 프레임 세트의 프레임과 마커 데이터를 동시에 비교할 수 있습니다. 최신 2020.1 업데이트에서는 이 패키지의 전반적인 성능과 툴 사용 경험을 개선했습니다. 사용자 인터페이스의 편의성도 개선되었습니다. Code Coverage 패키지를 사용하면 코드의 몇 번째 줄을 테스트 중인지 시각화할 수 있습니다.
![지금 Unity 2020.1 다운로드](/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Ffuvbjjlp%2Fproduction%2Fadfa7c5d4c767481d4da9f3ae8110d9d30ef3121-1024x576.jpg&w=3840&q=75)