출처 : http://ko.esotericsoftware.com/blog/Unity-Lightweight-Render-Pipeline-support
스파인-유니티 런타임에서 유니티 2019의 경량 렌더 파이프라인을 지원하게 되었다는 소식을 전해드린다. 경량 렌더 파이프라인(Lightweight Render Pipeline - LWRP)는 빌드되어 있는 스크립터블 렌더 파이프라인(SRP)으로, 좀더 강력한 그래픽 효과를 위해 최적화되어 있다. 모바일 환경에서부터 하이엔드 PC, 콘솔 게임까지 전부 지원이 가능하다.
이제 추가적인 유니티 패키지 매니저(UPM) com.esotericsoftware.spine.lwrp-shaders 를 다운로드하여, 스파인-유니티 런타임의 기능을 확장시켜 LWRP를 지원하도록 할 수 있다.
왜 패키지가 따로 분리되어 있는가?
유니티는 많은 추가 모듈들을 새로운 유니티 패키지 매니저(UPM) 시스템 안으로 이동시켰다. 유니티의 LWRP 기반 쉐이더 파일들도 Lightweight RP라고 이름붙여진 UPM 패키지 안에서 제공되며, 유니티의 기본 제공 파일에 포함되지 않는다.
스파인 LWRP 쉐이더를 스파인-유니티 런타임 안에 포함시키면 에러 메시지가 혼란을 야기하고, 유니티의 Lightweight RP 패키지를 설치하지 않은 프로젝트라면 추가적으로 설정이 필요해지는 등의 문제를 일으킬 수 있다. 우리는 스파인 LWRP 쉐이더를 UPM 패키지로 배포함으로써, 자동적으로 기능의 연관 문제를 해결하고 좀더 새롭게 이 기능을 사용할 수 있도록 했다.
장래에도, 유니티의 추가 패키지에 의존하는 다른 스파인-유니티 기능이 있을 경우, 별도의 UPM 패키지를 제공할 예정이다.
설치하기
다운로드 페이지나 Git 저장소의 spine-unity/Modules 서브디렉토리에서 UPM 패키지를 다운로드할 수 있다. 압축을 풀거나 클로닝하여 패키지를 입수한 뒤, 아래 두 가지 방법 중의 하나로 패키지를 사용하도록 할 수 있다.
1) 프로젝트 안에 복사하기
패키지의 컨텐츠들을 설치하고자 하는 프로젝트의 Packages 디렉토리 안에 복사해 넣는다. 유니티가 자동적으로 패키지를 로드할 것이다.
2) 패키지 매니저를 사용하기
패키지 컨텐츠를 Assets 디렉토리의 바깥쪽 아무데나 원하는 곳에 복사해두고, 유니티의 패키지 매니저(Window > Package Manager)를 실행한 뒤 + 아이콘을 눌러서 복사한 package.json 파일을 선택해 불러온다.
Package Manager 윈도우에 Spine Lightweight RP Shaders가 보이게 될 것이다.
프로젝트 윈도우에서도 Packages 폴더 아래에 Spine Lightweight RP Shaders 항목들을 볼 수 있게 된다.
만약 프로젝트 윈도우에 항목들이 나타나지 않는다면, 유니티를 종료하고 재실행해야 할 수 있다.
LWRP 샘플
패키지는 위 GIF 이미지와 유사한 샘플 씬을 com.esotericsoftware.spine.lwrp-shaders-3.8/Examples/LWRP Shaders.unity에 포함하고 있으니 체크해 보기 바란다. 이 샘플 씬은 LWRP 쉐이더를 사용하는 방법과, 프로젝트 세팅을 변경하는 방법 등을 보여주고 있다.
사용법
스파인-유니티 런타임에 포함되어 있는 표준 스파인 쉐이더(Skeleton Lit, Vertex Lit, Pixel Lit)는 경량 렌더 파이프라인과 호환되지 않는다. 대신에, Spine Lightweight RP shaders 패키지는 경량 렌더 파이프라인에 대응하는 새로운 3가지 쉐이더를 제공한다.
Spine/Skeleton -> 이전의 Spine/Skeleton 쉐이더를 대신함
Spine/Skeleton Lit -> 이전의 Spine/Skeleton Lit 쉐이더를 대신함
Spine/Sprite -> 이전의 Spine/Sprite/Vertex Lit, Pixel Lit 쉐이더를 대신함
이 쉐이더들은 지금까지와 마찬가지로 매터리얼의 쉐이더 메뉴에서 설정하여 사용할 수 있다.
유니티 프로젝트의 Project Settings > Graphics에서 LightweightRenderPipelineAsset을 설정하는 것을 잊지 말기 바란다. 다음 GIF 예제는 파이프라인 세팅을 바꿈에 따라 실제 화면이 어떻게 변경되는지를 보여준다.
제약
다른 모든 스파인 쉐이더와 마찬가지로, LWRP 쉐이더는 Linear 컬러 스페이스를 사용하면 프리멀티플라이 알파(PMA) 아틀라스 텍스처를 지원하지 않는다. 만약 Linear 컬러 스페이스를 사용하고 있다면, 아틀라스 텍스처를 익스포트할 때 Premuitiply Alpha 옵션을 꺼서 straight alpha 텍스처로 내보내야 한다. 더 자세한 정보는 다음 instructions for straight alpha export and import settings 페이지를 보기 바란다.
현재 사용하고 있는 컬러 스페이스를 확인하려면 아래 그림과 같이 Edit > Project Settings > Player > Other Settings > Color Space 를 확인하면 된다.
이 스파인-유니티 런타임 업데이트를 사용함으로써, 여러분의 게임이 좀더 멋진 애니메이션을 보여줄 수 있게 되길 바란다. 포럼에서 여러분의 의견을 공유해 주시길.
'프로그래밍 > Spine' 카테고리의 다른 글
스파인 애니 단색으로 출력하기 (0) | 2020.04.03 |
---|---|
Spine - Controlling Animation (0) | 2017.01.30 |
Spine2D 튜토리얼 04. GroundConstraint 방법과, 스킨 변경, 쉐이더, delegate 등 (0) | 2017.01.29 |
Spine2D 튜토리얼 03. 스파인을 가지고 C#에서 사용해 보자 (0) | 2017.01.29 |
Spine2D 튜토리얼 02. Export 와 유니티에서 로드 방법 (0) | 2017.01.29 |