공부/Unity

[Unity] URP 3D 환경에서 2D 리깅 안 될때 (2D Animation, Skinning Editor)

굴러다니다니 2025. 9. 15. 10:33

youtube에 많이 나와있는 튜토리얼을 백날 진행해봐도 적용이 안되길래 고군분투 하다가 알아낸 사실

 

1. photoshop psd 파일을 받아서 사용할 경우

2. 이미지에서 편집하여 사용할 경우

 

2가지 경우로 나눠 설명하겠다

(결론적으로는 2D 프로젝트에서 만들어 Export한 후 URP 3D 프로젝트에 Import하면 된다)


1. photoshop psd 파일을 받아서 사용할 경우

레이어별로 예쁘게 나눠져 있는 psd 파일을 준비한다

 

Unity 6.0 기준으로 작성하며, Universal 2D 프로젝트를 하나 만들어준다

 

Package Manager에서 2D PSD Importer가 안받아져있다면 다운받자

 

그 후 psd 파일을 프로젝트창에 끌어온 다음

Importer에서 UnityEditor.TextureImporter로 되어있는 부분을 

UnityEditor.U2D.PSD.PSDImporter로 바꾼다

 

OpenSpriteEditor로 열어주고 Skinning Editor로 열어줍시다

 

Geometry나 Bone, Weight는 아는대로 설정하자

(모른다면 대충 Auto Geometry로 모양 만들고 Edit Geometry로 디테일 잡은다음 배>목>머리 / 팔>손목>손 / 골반>무릎>발목>발 등 본 생성해주고 Weight Brush로 각 본에 딸려올 만큼 색칠해주면 된다)

 

대충 설정 완료한 모습

우측 위에 Apply는 꼭 눌러주자

 

그 다음 하이어라키창에 올리고 우클릭 > Prefab > Unpack Completely로 풀어주고

Sorting Group 추가한다

자식으로 있는 bone 아무거나 하나 잡아서 움직여보자

잘 움직인다면 준비 완료다

 

그렇게 준비된 오브젝트를 프로젝트창으로 끌어 prefab화 하고,

이 프리팹을 Export Package로 내보낸 다음 

URP 3D 프로젝트에서 Import하면 된다

휴,,


2. 이미지에서 편집하여 사용할 경우

이미지 하나를 가져와 프로젝트 창에 넣어주고

Texture Type: Sprite

Sprite Mode: Single로 맞춰서 Apply 해주자

그 다음 Open Sprite Editor로 연다

 

마찬가지로 Skinning Editor에서 편집해준다

 

참고로 하나의 이미지에서 애니메이션을 넣을 경우

위에처럼 움직이고 싶은 부분만 본을 잡아서 weight 넣어준다면

 

본 적용하면 이렇게 찌그러진다

 

그래서 안쓰는 본 하나 만들어서 안쓰는 vertex들 하나에 다 몰아서 weight 연결해준다

다 됐다면 apply 해주고 hierarchy창에 끌어넣자

 

Sprite Skin 컴포넌트 추가하고 Create Bones 누르면 자동으로 할당된다

 

이미지가 안찌그러졌는지, 본이 잘 먹혔는지 확인하자

이후 똑같이 prefab 화 하고 Export해서 URP 3D 프로젝트에서 Import하면 된다!

 

기본 세팅에서 차이나는게 있는지 왜 바로 안되는지 모르겠고

옆자리 다른 직원분은 3D 프로젝트에서 안되다가 그냥 됐다고 했다

이유는 아직도 모르것다

 

 

728x90
반응형