2023. 4. 22. 13:28ㆍ카테고리 없음
후배녀석이 피드백을 요청하길래 한번 주말 시간을 빌려 해볼까 하다가, 마침 시간과 짬도 좀 있고 해서 제가 실무에 있으면서 "아 이건 좋겠구나" 싶은 부분이 몇가지가 있어 한번 적어본 글입니다. 제 경험에 비롯된 팁들이 대다수이니, 대충 아예 모르시는 분들이라면 "아 이런게 있구나"정도로 넘기시면 좋을 듯합니다. 적어도 어떤 이슈가 발생하면 거기에 뇌정지가 오는 것보다는 적어도의 문제 해결을 어렴풋이 아는 것이 중요하니까요.
-여러분들이 다른 개발자 분에게 전해주어야 할때.
1.버전을 꼭 확인해 주시고, 그 분께 버전명을 알려주세요
스파인의 메인 탭을 누르면 설정이 나옵니다. 이때 자신이 이용하는 스파인의 버전을 확인하고 그 다음 보고를 주세요.
타 스파인 유저에게 피드백을 받기 위해서는 버전간 호환이 중요합니다. 그 이유는 스파인의 4.0이상 버전과 미만 버전은 서로 호환이 안됩니다. 정확히는, 3.8버전의 파일을 열때, 4.0 버전으로 열면 열리고 저장이 되딘 합니다. 하지만 4.0버전의 파일을 3.8인 세팅으로 킨다면 절대 안열립니다. 물론 파일 자체를 다운그레이드를 하는 방법도 존재하나, 그렇게 하면 기껏 세팅해둔 모션 그래프가 엉키게 됩니다.(대부분 베지어를 써서 모션의 깊이감을 주는데, 이 베지어가 없어지니까요). 그러니 사전에 피드백을 해주는 사람, 요청하는 사람이 있을 경우 요청하시는 분이 "저의 스파인 버전은 몇번째 버전으로 작업을 했습니다. 해당 버전으로 피드백을 주세요."로 요청하는 것이 사전의 이슈를 줄일 수 있답니다.
2.스파인 파일은 이미지폴더와 함께 보내야 합니다
피드백 요청자-어? 이상하다..? 분명 제 컴퓨터에는 이미지가 자동으로 잘 나오는데.....
하면서 놀라는 경우가 제에에법 많습니다. 그 이유는 간단합니다. 스파인은 2D 게임 그래픽 툴이지만, 엄연히 갈래를 두자면 3D에 가까운 툴이기 때문에 그래요. 노골적으로 말하자면, plane으로 이루어진 메쉬들과 z축을 드로우 오더로 변환한 3D 그래픽에 가까워요.
일련의 비유를 두자면 스파인을 뜯어보면 이러한 메커니즘으로 움직여 지는 것이죠.
즉 3D에 있는 것 처럼 대부분 모델링 파일과 텍스쳐 파일이 있어야 합니다. 이 텍스쳐가 바로 이미지인거죠. 때문에 저런 미싱이 나온다는 것은, 텍스쳐가 없다는 표시나 마찬가지입니다. 그렇다면 어떻게 파일을 보내야 할까요?
가장 문제가 안일어나고 좋은 방법은 위의 사진처럼 폴더를 생성하고 그 안에 스파인 파일을 넣고, 이미지 경로 파일을 "../images/"로 설정, 그리고 그 같은 폴더 안에 ../images/ 폴더를 넣은 채로 주는 겁니다.
스파인의 경우 이 ../images/의 경우 "해당 스파인 파일이 있는 위치에 "images"폴더를 탐색해서 자동으로 텍스처를 적용합니다. 라는 의미가 되는 거에요. 요는 현업에서도 스파인을 익스포트 하지 않고, 위와 같은 이미지 파일로 보낼때 굉장히 유용한 방법인지라, 이렇게 하는 걸 추천드려요. 무엇보다, 스파인을 개발하는 개발자 입장에서도 이 리소스를 관리하기 굉장히 편해집니다.
3.되도록이면 중앙을 (0,~)으로 정렬 할것.
먼저 잘못된 예시를 보여드릴게요
개부분이 스파인에서 임포트를 할때 이렇게 적용이 나오기에, 많은 사람들이 이 상태로 작업을 합니다. 하지만 이것은 좋지 못한 방법이에요. 명확한 기준이 없기 때문입니다. 특히나, 게임을 만드시는 분들에게 더더욱이요
이렇게 정 중앙으로 해두는 것이 가장 좋습니다. 그 이유는 간단합니다. 발 접촉면이 (~,0)이 되기에 명확한 기준이 되는 것도 있고, 무엇보다 유니티에 임포트 시 캐릭터의 리소스가 어디있는지 보다 직관적으로 알려 줄 수 있기 때문입니다
위의 사진과 같을 경우 이 상태로 레벨에 올려진다면 유니티에서 위치는 root 본을 기준으로 스파인 파일의 위치를 계산하기 때문에 추가로 계산하는 번거로움이 있기때문에 그래요. 때문에 위 사진이 아닌 발빝의 정중앙을 위치를 (0,0)을 두는 것이 가장 후에 스파인 애니메이션 파일을 씬에서 디자이너가 의도한 부분을 반영할 때 용이합니다.
-모션 제작에 대하여
4. 베지어 곡선의 움직임, 매커니즘을 이해합시다./
대부분 애니메이션을 제작하는 경우 liner를 만드는 경우가 제법 많기도 합니다. 이는 큰 문제인데, 자연스러운 물리 법칙에서는 Liner한 모션은 없어요. 확실히 없죠. 이는 물리학에 있어서 가속의 법칙에 의거하기 때문이기에 감속을 하기 위해서는 일련동안 거리-시간 그래프는 포물선을 가지게 되기 때문이다.
그럼에도 계속 그래프를 보지 않으면 그에 익숙치 않은 경우가 생기기 마련인데, 이럴때는 암기를 해두는 것이 맘이 편해요. 저는 그런 의미에서 "생 초짜라면 걍 이걸 프리셋으로 만들고 쓰십쇼'로 제안을 할 정도이니까요.
크게 jump/fall/. smooth/ hard smooth이다 모양도 그리 어렵지도 않습니다.
jump-속도가 감소하는 그래프입니다. 즉 어떠한 에너지의 감소를 말하는데, 이는 너무 어려운 말이겠죠.
그러니 쉽게 접근하자면 우리는 점프를 하면, 가장 빠를때가 지면에 가까울때, 그리고 가장 느릴때가 최고점에 있을때 라 보면 되겠습니다.
댜충 이 이미지를 절반으로 자르고 왼편(올라가는 쪽)을 보면 된다. jump는 이 위에 속한다. 이걸 외운다면 원리를 이해하게 된다묜 다양한 모션에 적용이 가능해지죠. 대충 큰 골대는 "물체가 움직이는 방향과 반대되는 방향의 힘이 접할때"를 의미하면 될 듯하다. 포물선의 경우 운동에너지와 중력에너지가 될 겁니다.
fall은 위 사진의 오른편이라 보면 딥니다. 원리는 "물체가 움직이는 방향과 일치하는 방향의 힘이 접할때"를 의미합니다. 어떠한 것에 힘을 주어 가속을 주는 경우가 위경우에 속해요. 가령 떨어지는 물체의 경우 중력의 힘을 지속적으로 받아 가속한다는 것, 펀치를 날릴때 응축된 탄성 에너지가 운동에너지로 변환되는 순간을 의미합니다.
뒤의 smooth의 경우에는 앞에 말한 liner한 모션을 줄이고 보다 시각적인 재미를 주기 위한 효과에 가깝습니다. 굳이 원리를 첨언하자면, '물체가 움직일 때 물체 자체에 브레이크를 건 경우"에 가깝다고 볼 수 있습니다. 때문에 자체적으로 감속을 하는 경우-얼음위를 미끄러지다가 멈출려고 할때라던가, 어께나 허리를 위 아래로 움직일때, 혹은 무거운 무게를 들어올릴 때가 될겠어요.(근육 자체가 지속적이고 천천히 움직이는 것에 부하를 많이 느끼게 된다. 가장 좋은 예시가, 팔굽혀펴기로 보면 될듯. 100번 하는 사람도 팔굽혀기를 슬로우 모션처럼 한번을 30초동안 느-릿하게 해보라고하면 정말 힘들게 느껴지게 된다.)
hard mooth의 경우 이걸 더 강하게 두는 것이에요. 앞의 smooth보다 좀더 역동적이고, 둔중한 느낌을 두게 됩니다.
5.모션의 제작 공정-큰갈래부터 세부적으로
애니메이션의 초보자 뿐만 아니라 대부분의 초보적인 아티스트들이 많이 행하는 실수로, 처음부터 디테일을 잡지 말고, 큰 갈래부터 하길 바래요. 이거만 해도 충분히 재밌는 모션을 만들 수 있어요.
6. 모션은 하아아앙상 참고할 것
레퍼런스 없이 하는 거 만큼 멍청한 짓은 없죠. 레퍼런스를 최대한 차용하세요.
이 외에도 모션 참고 사이트로는
스파인2D 포럼 : 네이버 카페 (naver.com)-스파인 포럼. 여기서 놀면 좋습니다. 재밌으요
https://www.e7vau.lt/portrait-viewer.html-에픽세븐
https://nikke-db.pages.dev/v-니케 모션 참고 사이트
Teemo.GG-리그 오브 레전드모션 사이트
등도 있으나 가장 좋은 것은
ScreenToGif - Record your screen, edit and save as a gif, video or other formats\
요는 스크린을 gif로 녹화해주는 프로그램인데, 원하는 fps까지 조정이 가능합니다. 이를 이용해서 게임 플레이 영상이나 영화의 한 장면을 녹화 한 후 분석하는 습관을 들이는 것이 매우 좋더라구요,
그 외에도 추가적인 본의 성질, 스파인 내 슬롯의 네이밍, 쉐이더 , 리깅의 원리와 기초등등 여러가지 있겠지만, 최소한 게임 제작과 모션 제작에 있어 이정도면 충분하다 싶어 이쯤 마무리 해두겠다. 좋은 모션과 제작물들이 만들어지길 바래요.