아이시의 마무리 작업

10.18

  • 세컨더리 애니메이션
  • 다이나믹 본 세부설정
  • 이펙트 제작
  • 2P컬러지정
  • 실루엣 제작
  • 가시 버텍스 컬러 지정

세컨더리 애니메이션은 머리카락과 표정등의 부가 애니메이션을 의미하지만, 가장 일이 큰 건 펄럭거리는 의류다. 아이시의 세컨더리 애니메이션은 치마외엔 별 게 없다. 이 시점에서 생각해 보니 이게 얼마나 다행인지 모른다. 카피 스킬 탓에 아이시의 애니메이션은 다른 캐릭터들보다 곱절로 많기 때문이다.

그렇다고 해도 캐릭터 제작공정상 가장 지루한 작업이다. 늘 이 시기가 되면 드는 생각. AI는 이런 걸 해줘야지!

10.19

비네트의 우산돌리기를 작업하며, 쥐불놀이 캐릭터가 있어도 재미있겠다는 생각이 들었다.

다리를 이처럼 구부린 동작의 경우의 치마는 늘 문제다. 일단 아이시의 치마가 좀 낮은 것도 문제이긴 한데, 그와 상관없이 대부분 문제가 일어나는 구간이 바로 저 부분이다. 로우폴리곤 게임이라면 치마를 다리에 붙여 움직였을텐데 표현이 정교해지다보니 다양하게 새로운 문제가 생긴다. 다음 번이 있다면 반드시 고려해야 할 문제다.

이런 동작은 그냥 포기할 수밖에 없다. 왜 히어로가 쫄쫄이를 입는지 깨닫게 되었다.

그럭저럭 세컨더리 애니메이션은 완료했다.이제 이펙트로 넘어가 보자.

아이시는 얼음 메쉬가 몇 개 필요하다. 에셋이 발달하지 않았던 예전이라면 그냥 망설임없이 제작에 들어갔을테지만, 대체수단이 많은 요즘 시절엔 망설이며 제작에 들어간다.(선택의 폭이 늘어나는 것이 꼭 좋은 것 같지는 않다.) 어쨌거나 리스트업을 해보면

  • 얼음기둥(IcePost)
  • 얼음!(Freezing) – 캐릭터가 갇힐 정도로 커야 한다.
  • 얼음파편(IceFragment)
  • 얼음창(IceSpear)

10.21

얼음이 너무 투명해서 셰이더를 수정중이다. 이렇게 되면 얼음을 쓰는 모든 머티리얼이 영향을 받는데, 결국 해결해야 할 문제이긴 했다.

이렇게 저렇게..

얼음 이펙트를 완료.

얼리기는 기본은 됐으니 이제 메쉬를 예쁘게 다듬기만 하면 되겠다.

10.23

글을 쓰진 않았지만 많은 일이 있었다.

가장 큰 버그 2개는 발사체가 사라지지 않는 문제와 DetachEffect가 작동하지 않는 문제다. 지금까지는 잘 작동되던 기능이었다. 아이시는 지금까지의 거의 모든 코드에 걸쳐 말썽을 일으켰다. 마지막 데미를 장식한 캐릭터답다.

그래도 어쨌거나 가장 커다란 덩어리는 끝났다. 버그는 있지만 플레이는 된다. 실질적으로 13개의 캐릭터가 서로 치고 받을 수 있다. 그러므로 가장 중요한 일은 마무리가 되었다.

하지만 테스트를 위해선 아직 일이 많다. 일단 3기 캐릭터들에게 잡힐 수 있는 건 아직 앨리스 뿐이므로 잡히기 모션을 추가해 주어야 한다. 2차테스트 때 쌓인 버그와 밸런싱도 손봐주어야 하고, 새로운 버그도 고쳐야 한다. 마지막으로 배경을 추가해 주어야 한다. 여전히 할 일이 많지만 그래도 매우 중요한 이정표를 지났다. 버전 0.58정도 되려나? 다음으로 넘어가보자.


영상에도 기록된 얼음창의 비주얼이 남는 버그의 원인을 찾았다. 풀매니저 자체의 문제였는데, 맙소사. 이걸 왜 지금까지 모르고 있었지? 풀매니저는 배틀퀸 이전에 만든 물건이다. 사용 기간이 오래됐기 때문에 당연히 문제가 없을 거라고 생각하고 있었다. 이펙트의 문제이니 혹시 DetachEffect()가 작동하지 않는 것도 비슷한 문제가 아닐까?

정답이다. 같은 방법으로 버그를 재현할 수 있다. 라운드를 리셋할 때 전체 이펙트를 제거하는 과정에서 IsAlive()검사를 빼먹고 있었다. 이렇게 되면 해당이펙트의 큐에 리소스를 중복등록하게 되고, 그 결과 인덱스가 꼬여 잘못된 이펙트를 불러온다.

이 버그를 추적하기 시작한 것은 3일전이다. 얼음창을 구현한 후 처음 발생했지만, 이 버그는 이전에도 계속 존재해 왔다는 이야기가 된다… 이 문제를 처음 발견한 날엔 새벽내내 원인을 못찾고 결국 포기했었는데, 오늘 낮잠을 자고 일어난 뒤 이펙트가 사라지지 않으려면 어떻게 해야 할 지 역추적을 하는 방법이 불현듯 떠올랐다. 확실하다. 잠이 부족하면 머리가 돌아가지 않는다. 일이 잘 풀릴 땐 휴식을 하지 않아도 에너지가 넘치지만, 그렇지 않을 땐 쉬어야 한다.

아이시의 애니메이션 #3

9.30

스킬 제작 시즌이 돌아왔다. 아이시의 특징은 타캐릭터의 스킬을 하나 카피하는 것이다. 여느 때와 마찬가지로 기획부터.

  • 얼음기둥(Post) : → A or B, 연달아 3개 솟는 얼음기둥.
  • 얼리기(Freeze) : ↑ A or B, 대공기
  • 흉내내기(-) : ← A or B, 상대의 기술 중 하나를 따라한다. 장풍 제외 타격기만.
    • 만약 상대가 아이시라면 모르겠다는 몸짓을 (Shrug)한다.
  • 윈드밀(Windmill) : → K, 거꾸로 서서 발로 3연타.
  • 롤링어택(Rolling) : 공중에서 ↓ A or B
  • 얼음창(Spear) : ↓→ B, 초필, 5개의 얼음창을 꺼내장전한다. B를 누르고 있으면 잠시 홀드가 되며 버튼을 떼거나 데미지를 입는 순간 차례대로 발사된다.

이외의 기술은 아직 구상 중…

원래 두 손으로 땅을 치고 싶었는데 결과가 너무 추해서 변경. 폭발 형태는 장풍. 멜라의 초필과 같다.

얼리기는 위로 찬공기를 일으켜 상대를 얼린다. 이를 위해 얼음 메쉬, 그리고 특수 모션이 필요하다.

10.2

얼음기둥은 멜라의 빛기둥과 본질이 같다. 그러므로 쉽게 구현

이번엔 Bomb스타일의 충돌 코드를 리팩토링. Bomb스타일은 이미 가지고 있는 물건이 아닌 걸로 타격할 때의 처리를 위한 것이다. 앨리스의 발구르기나 닐리의 불타는 손 같은 것들이 여기 속한다. 이것들은 다른 것들과는 다르게 딱 한프레임 충돌검사를 하고 있는데 이것이 날아오는 장풍을 상쇄시키는 확률을 낮추기에 다른 일반 타격계처럼 4프레임동안 검사를 하는 방향으로 바꿨다. (에디터에선 프레임이 튀며 가끔 무시되기도 한다!)

하지만 이렇게 해놓고 정작 얼리기는 그냥 클래스를 새로 만들었다(….) 지금은 이펙트 제작기간이 아니므로, 모든 이펙트는 임시. 게임의 모든 컨텐츠는 구현이 우선이다. 비주얼은 나중에.

10.4

추석이라 7일까지 작업 중단.

10.9

유니티에 보안이슈가 있다고 해서 내친김에 6.2로 업데이트…하고 나니 하루가 다 갔네.

카피 기술은 동작만 복붙하면 될 줄 알았는데 생각보다 어렵다! 일단 IK이슈로 애니메이션 복붙이 쉽게 안되고, 닐리처럼 불을 얼음으로 바꾸어야 한다던가, 리그레이 처럼 카피할 스킬이 마땅치가 않은 경우도 있다. 신규스킬을 캐릭터수만큼 만드는 것보단 품이 덜 들겠지만, 생각보단 만만치 않은 작업이 될 것 같다.

10.11

3일부터 시작된 긴 연휴가 어느 덧 끝을 향해 달려가고 있다. 한껏 풀어졌던 마음이 좀처럼 추스러지지가 않는다.

작업은 느릿느릿 프리오리까지 진행. 이제 벨의 차례인데 한 가지 이슈가 있다.

아이시가 따라할 벨의 기술은 백스텝 찌르기이다. 하지만 이 기술은 디스코드 팬서버의 의견에 따라 리뉴얼 예정에 있었다. 아이시가 이를 따라해야 하는 이슈가 생겼으니 미리 고치도록 하자.

A는 훼이크. 이건 단순 회피라 무적판정이 없다.

B는 원래기술 그대로지만, 초반에 약간의 무적판정을 갖는다. 이로서 점프에 대응할 수 있다. 하지만 이는 대공기가 이미 무적시간을 가지고 있어서 고민이 된다.

어쨌거나 얘도 완료.

도레미 트레일은 입체적으로 생겼다. 아이시 본인은 트레일을 안쓰는데, 카피 스킬 때문에 온갖 트레일을 갖고 있어야 한다. 하이고 복잡해라.

10.12

흉내내기 기술완료. 생각보다 성가신 작업이었다.IK문제는 결국 해결되지 않아 손으로 비슷한 키를 다시 잡아주어야 했고, 무기와 검기등의 부속품들이 캐릭터에 귀속되어 있다보니 일일이 이를 찾아 아이시에게 꾸역꾸역 넣어주었다. 요즘처럼 캐릭터 구조가 복잡한 시대엔, 캐릭터 애니메이션을 공유하기 위해선 생각보다 더 많은 사전 준비가 필요하다는 걸 깨달았던 작업이었다.

10.14

윈드밀도 완료.

롤링어택을 구현하는 과정에서 SetDelayState가 제대로 작동하지 않는 버그가 있어서 이를 추적하다보니 그레텔의 코드가 말썽이었고, 그 과정에서 또 버그를 발견해 리팩토링을 하니 또 사이드 이펙트가 생기고…

그래도 덕분에 숨겨진 버그를 찾아 없앨 수 있었다. 또 다른 문제가 없길 바란다.

10.16

끝까지 예외의 연속이었다. 이로 인해 기존의 발사체가 영향을 받는지 살펴봐야 하는 문제가 남아있긴 하지만, 어쨌거나 기본 코드는 완성됐다. 아이시는 B버튼을 홀드한 채 움직일 수 있고, 이 땐 얼음창도 본체를 따라 움직인다. B버튼을 떼거나 데미지를 입을 경우 얼음창은 상대를 향해 날아간다. 하지만 장풍과 타격이 동시에 일어날 경우 타격감이 좋지 않은 문제가 있기 때문에 이를 손봐야 한다. 또 다시 베이스를 건드려야 하는 상황. 하지만 오늘은 타임오버이므로 이 작업은 주말로 미루도록 하자.

아이시의 애니메이션 #2

9.25

현재 코드엔 캐릭터에게 잡기가 없을 경우의 예외처리가 들어가 있다. GrapplingPunch 혹은 Kick을 검사해서 상태 데이터가 없을 경우 잡기가 실행되지 않는다. 실제로 이 게임을 만들 때 가장 많이 참고했던 스트리트 파이터2에는 잡기가 없는 캐릭터가 있으며, 당시엔 모든 잡기 대응 애니메이션을 만들기 힘들거라 생각해서 몇몇 캐릭터는 Punch나 Kick중 하나를 생략하고 만들 생각이었다.

하지만 이제 그 코드는 필요없게 됐다. 실제로 잡기 대응애니메이션을 만드는 작업이 힘들기는 했다. 하지만 이런 페어 애니메이션은 게임 장르를 막론하고 쉽게 볼 수 있는 것이 아니다 보니, 재미있는 볼거리를 준다는 점에서 무리해서라도 넣는 편이 좋다고 생각됐다. 결과적으로 고생 중이다. 하지만 보람은 있다.

잡기1. 꼬박 하루가 걸렸다.

잡기2도 완료.

블럭은 닐리와 같이 별도의 얼음블럭이 필요하다.

9.27

스턴 모션도 제작

패배모션과..

9.29

아..올리고 나니 생각나네. 블럭 적용을 안했다.

아이시 애니메이션 #1

9.16

아이시는 정규캐릭터 외 히든 캐릭터이다. 하지만 유저에게나 히든이지, 개발자 입장에선 기존 캐릭터와 똑같은 작업이다. 다만 보너스 캐릭터인만큼 스토리는 없으니, 추후엔 일이 적어지긴 할 것이다.

9.18

유니티에 띄우긴 띄웠는데, 가슴의 리본이 자꾸 파묻힌다.

여차저차 삽질끝에 다이나믹 본까지 세팅완료. 캐릭터 추가는 쉽지 않지만 여기까지 진행되면 이제부턴 애니메이션에 집중할 수 있다.

요래 저래 기본 이동은 완료. 공격을 위해선 얼음을 써야 하는데, 이 부분에 대해선 고민이 좀 필요하다.

9.21

고민 결과 일반 공격은 그냥 일반적인 공격으로 하기로 결정.

맨손격투를 하니 장르가 바뀐 것 같은 느낌.

난 춤은 전혀 모른다. 이런 동작을 Flare라고 한다는 사실도 처음 알았다. 하지만 어쩐지 격겜에서 이 킥을 차는 캐릭터가 꼭 하나씩은 있다. (어려워!)

9.22

맨손을 쓰다보니 팔이 짧다 보니 기본기가 그리 좋지 않아 타이밍을 조금씩 땡겼다.전반적인 딜레이는 스피드 캐릭터인 그레텔과 비슷하지만, 타점은 조금 더 빠르다. 이러면 너무 좋아지니 대신 데미지를 조금 적게 책정할 예정. 그레텔도 조정되어야 하지만, 얘는 더 약할 것이다.

9.23

게임에서 돋보이는 것은 화려한 애니메이션이지만, 사실 애니메이션 제작의 대부분은 그렇지 않은 것들로 이루어진다. 데미지 애니메이션을 만들어 보자.

잡히기 모션의 갯수는 이제 일반 데미지 갯수를 넘어섰다. 하지만 이제 곧 끝나니까..!

아이시 모델링 수정

9.16

난 수정작업을 지극히 싫어하는 편이다. 대부분의 경우 들인 시간에 비해 티가 잘 안난다. 어차피 마감 근처가 되면 확인없이 때려박을 리소스. 없는 실력으로 백 번 수정해봤자 뭐 더 나은게 나오겠는가? 차라리 다시 할 일이다. 근본이 잘못된 건 어차피 뭘 해도 안된다. 그런 의미에서 아이시의 머리는 근본이 잘못되어 있었다. 실수였다. 작업할 땐 왜 생각이 안났을까. 포니테일말고 옆으로 묶어야지…모델링은 그렇다쳐도 리깅할 때까지 생각이 안나다니. 이제라도 교정을 해보자.

일단 커브 모델링을 끝내고

모델링을 굳힌 후 매핑을 하고..

본을 심자. 다이나믹 본을 사용할 것이므로 크게 중요한 것은 아니나, 본은 항상 Z축이 바깥을 향해주도록 하는 편이다. 커스텀 본이 공통된 규칙을 가지고 있다면 이를 수동으로 움직일 때 항상 x축을 중심으로 움직이면 모든 본이 펼쳐지는 효과를 얻을 수 있으므로.

묶은 머리는 꽤 뻣뻣하게 움직일 것이므로 그렇게 많은 본이 필요하진 않을 것이다.

리깅도 완료.

멜라의 이펙트 제작

9.11

들어가기 전에, 미국의 부엉이 친구가 부탁한 스턴 모션

발사체는 단순해 뵈지만 할 일이 꽤 많다. 발사할 때의 Fire, 발사체 그자체인 Shot, 그리고 그뒤를 뒤따르는 Tail, 맞을 때 Hit. 이렇게 4개가 있어야 발사체 하나가 된다.

여기에 공중에서 발사할 땐 각도나 상황이 다르기 때문에 좀 더 추가작업이 필요하다.

마법사의 이펙트 작업은 다른 캐릭터보다 호흡을 길게 가져가야 한다. 당연한 이치다. 그런데 샷찍어놓고 보니 세컨더리는 다 해놓고 익스포트를 안했구나. 이것부터 마무리 해보자.

오. 원형 먼지는 이펙트가 타겟을 쫓아가는 처리가 되어 있는데 순간 이동을 하니 꽤 멋지게 나온다. 의도한 건 아니지만 더 멋지게 나왔으므로 그대로 사용하기로 하자.

9.14

작업이 워낙 산만하게 진행되어 블로그를 포스팅할 새가 없었지만 어쨌거나 이펙트도 완료. 남은 작업은…2P컬러 지정과 실루엣 제작이다.

이렇게 2P컬러도 제작.

얼마 전부터 GGPO를 이용한 네트워크 프로그래밍도 진행중이다. 이는 내가 할 수는 없고 도움을 받고 있다. 부디 잘 완성되어 원활한 네트워크 게임이 될 수 있기를.

멜라의 애니메이션 #4

9.7

생각보다 셰이더 개발이 길어서 글을 새로 팠다. 겉보기엔 단순한 셰이더지만 생각보다 많은 노력이 들어갔다. 그런데 여기까지 개발 후 드는 생각이… 이럴거면 그냥 애디티브 셰이더로 만들면 되지 않나?

라고 생각했지만, 울퉁불퉁한 지형에서는 데칼처럼 붙으니까… 효과가 있긴 있다. 이런 지형이 몇 개 안된다는 것이 문제이긴 하지만… 어쨌거나 이제 배경셰이더에 모두 이걸 붙이자.

color = MelaArea(IN.positionWS.xz, IN.uv.xy, color);

함수화를 해두었기 때문에 마지막 줄에 이처럼 붙여두면 된다. 이번에 새로 알게 된 사실이 여러가지 있는데, 이처럼 여러 배경 셰이더에 같은 기능을 붙일 경우, 글로벌 변수를 사용하면 편하다는 사실이다. Shader.SetGlobalxxx로 변경할 수 있다. 두번째로 이런 글로벌 변수는 함수내에 선언할 수 있다. 함수패키지를 포함시키기만 해두기만 하면 된다.

미러전에서 2개의 영역이 켜질 수 있음을 대비해야 한다.

하지만 초록색이 영 예쁘지가 않아서…그냥 2개가 활성화되어 있을 경우는 특별히 구분하지 않기로 하자.

9.9

결국 속성관련 코드를 모두 들어내고 새로 만들었다. 리팩토링은 이게 마지막이기를.

어쨌거나 결국은 구현이 끝났다! 이제 세컨더리 애니메이션을 작업해보자.

멜라의 영역 전개. 요 근래 작업한 세컨더리 애니메이션 중 가장 보람있는 작업이었다.

멜라의 애니메이션 #3

8.30

멜라는 마법사이기 때문에 스킬도 마법의 비중이 높을 예정이다. 그리고 마법은 곧 이펙트이기 때문에 이펙트 작업의 양이 많을 것으로 생각된다. 수수한 옷차림 속에 숨긴 실력자라는 설정이므로 마법은 화려해야 한다.뜻대로 될지는 해봐야 알겠다. 기획부터 해보자

  • 네모난 장풍(Shot) : → A or B, 마법사니까 장풍은 쏴야겠고
  • 공중에서 장풍(ShotAir) : (공중에서) → A or B, 이걸 고우키처럼 공중에서도 쏜다.
  • 죽음의 키스(Kiss) : → K, 상대에게 독이 든 키스를 한다. 라운드가 끝날 때까지 지속데미지
  • 지뢰매설(Mine) : ↑ K, 시간차로 폭발하는 지뢰를 설치하고 상대의 뒤로 가서 발로 공격한다. 역가드
  • 돌격가르기(Slash): ← A or B, 흔한 3연타 돌격기
  • 빛 기둥(Beam) : ↓→B, 초필. 양쪽으로 퍼지는 파워게이저
  • 멜라의 영역(MelaArea) : ↓→K, 초필2. 데미지가 1.5배 되는 필드를 펼친다.
  • 공중대시(RushAir) : (공중에서) →→, 말그대로 공중대시

장풍은 기존의 스킬을 답습한다. 별로 어렵지 않다.

공중장풍은 손볼 게 조금 있긴 했지만 크게 어렵지 않게 구현할 수 있었다. 그런데 공중스킬이 있는 애들은 캔슬 때문에 여러가지 이지선다가 된다. 예상치도 못했던 강점이 생겼다.

공중대시는 크게 메리트가 있다기보단 멜라라는 캐릭터의 상징적인 기술에 가깝다. 어쨌거나 끝판왕이고 처음보는 자에게 위압감을 전달해 주기 위한 기술. 예외처리등이 어려울 줄 알았는데, 의외로 싱겁게 끝났다.

9.2

며칠간 감기때문에 골골거렸다. 다시 시작해 보자.

키스의 설정은 독을 주입하는 것이다. 이를 위해 피부 색이 변해야 한다. 이를 위해 해주어야 할 일이 꽤 있는데,

  • 피부 셰이더의 녹색표현
    • 그리고 셰이더 드라이버가 이를 인지하도록 설정
  • HP게이지 셰이더의 녹색표현
  • 독 애니메이션 이벤트
  • 실질적인 데미지 처리

하나하나 구현해보자.

먼저 피부가 녹색으로 변할 수 있도록 셰이더를 개조.

독 데미지. 녹색이 너무 강해서 조금 줄였다. 몇가지 예외상황을 처리하고… HP바가 녹색으로 변하는 처리는 취소하고… 의외로 쉽게 완료.

지뢰 깔기…는 실제로 해보니 역가드가 많이 헛갈린다. 공격 성공확률이 높으니 실패 리스크를 늘리자.

9.4

Slash공격은 콤보형이라 막히면 반격맞는다.

대신 성공하면 확정 2타

9.5

빛기둥을 구현하는 도중 문제가 생겼다. 그럴 확률은 적겠지만, 만약 빛기둥을 뚫고 무언가의 공격이 들어온다면 멜라의 스테이트가 데미지로 변하게 된다.

이렇게 되면 공격정보가 스테이트에 묶여있는 현재 구조에선 공격정보가 초기화되며 파워가 0으로 변하게 된다. 타격은 발사체가 일으키지만 정보는 본체에서 얻어오는 기형적인 구조. 이를 해결하기 위해선 발사체 코드 전체를 리팩토링하는 수밖에 없다. 지금까지는 히트 구조체와 이펙트용 구조체를 반반 섞어서 혼종으로 사용하고 있었는데, 이를 발사체 구조체로 일원화하고, 생성 시 모든 정보를 넘겨주는 쪽으로 변경했다. 생각해보면 당연한 일인데 왜 이렇게 하지 않았을까.(…라지만 여전히 스테이트는 구조체레벨이 아니라 개별변수기반으로 관리되고 있다. 다음엔 이렇게 하지 말아야지…)

어쨌거나 너무 늦지 않게 끝나서 다행이다. 힘든 작업이었지만 편히 잠들 수 있겠다!

9.6

이제 마지막 스킬만을 남겨두고 있다. 멜라의 영역은 돔형의 영역을 설정한다. 일단 보기 좋으려고 돔형을 택하긴 했는데, 제작하다 보니 고민이 많다. 일단 캐릭터가 영역내에 속해있는지 알기가 힘들다. 둘째, 셰이더를 만들기가 까다롭다. 뭐 셰이더야 시간을 들이면 완성은 된다지만, 첫번째 이유 때문에 만들어놓은 결과물이 그렇게 좋은 결과물일 것이라 단정짓기가 힘들다. 초안대로 배경셰이더를 개조해보기로 할까

초안은 배경 셰이더를 반전시켜 사용하는 것이었는데, 포토샵에서 대충 합성해봐도 이건 쓸만한 게 못될 것 같다.어두운 배경의 경우 너무 밝게 표현된다.

흑백은 어떨까…분위기가 괜찮기는 한데, 티가 잘 안난다. 고민이 좀 더 필요하다.

고민 끝에 다시 돔형으로… 그런데 예상치 못한 문제가… ZTest를 안하니 뒷배경이 뚫린다. 그렇다고 ZTest를 하자니 캐릭터가 짤린다.

이를 제어할 수는 있다… 있긴 한데, 영 내키지가 않는 작업. 이를 위해선 셰이더 드로우 순서를 정렬해주어야 하는데, 오파쿠 스러운 놈을 AlphaTest보다 나중에 그리는 것이 영 마음에 들지 않는다.

그래서 적용해 본 배경 선긋기. 이건 퀄리티가 영…

9.7

돔형의 영역은 또한 Transparent머티리얼과도 충돌을 일으킨다. 그렇다면 이걸 또 Transparent로 처리해야 하는데, 이렇게 되면 일이 너무 커진다. 차라리 큐제어를 제외하고 배경을 흑백처리 해보는 게 어떨까.

…? 뭐지 난 이런 처리를 한 적이 없는데…꽤 멋진 연출이 됐다. 아웃라인의 ZTest를 Always로 해놓았기 때문에 발생하는 버그이다. 언젠가 사용할 일이 있을지도.

이렇게 초안이 완성되었다. 구형의 마스크는 Distance보단 Dot으로 구하는 것이 성능상 잇점이 있다. 어차피 셰이더에서 정확한 거리를 잴 일이 많지 않으므로 정규화된 숫자로 계산을 하는 편이 빠르다.

구현을 하다보니 HP바와 또 충돌한다. 그러다보니 표현이 자유로운 건 바닥 뿐이다. 이 방법이 최선이려나.

멜라의 애니메이션 #2

8.24

데미지 애니메이션 작업기간이다. 데미지 애니메이션은 점차 증가해서 지금은 공격보다 더 많은 분량을 차지한다.

캐릭터가 추가될 때마다 이에 대응되는 잡기 애니메이션의 갯수 또한 늘어나기 때문에, 이후로는 정말로 큰 부담이 된다. 배틀퀸의 캐릭터를 더 이상 늘릴 계획이 없는 이유이기도 하다.

오로라의 발목잡기 스킬의 충돌영역이 제대로 지정되지 않은 상태였다. 히트가 일어나야 다음 스킬로 연계할 수 있는데, 이 판정이 취약한 문제가 있었다… 지금까지 왜 몰랐었지…!

멜라의 대기자세가 발을 모으고 있는 형태라 오로라는 더 많은 거리를 전진해야 히트할 수 있다. 판정은 실제 자세에 기반해서 일어난다. 즉, 달래나 리그레이처럼 대기자세가 한 쪽 발을 앞으로 내밀고 있는 경우라면 더 쉽게 잡을 수 있다. 멜라는 이때문에 판정면에서 조금 유리한데, 이 때문에 잘 잡히지 않는 현상이 있었다.

8.26

아휴..안끝나는 세컨더리 애니메이션. 저렇게 뚫린 부분은 다이나믹본이 제대로 처리하지 못하기 때문에, 수동으로 잡아주어야 한다.

본래 세컨더리 애니메이션은 본 애니메이션이 끝난다음 작업하는 것이 원칙이다. 실제 작업할 때와 게임에 넣었을 때의 느낌이 다르기 때문에, 확정되기 전까진 모든 작업이 재작업이 될 수 있기 때문이다. 하지만 잡히기 모션같은 경우는 모든 애니메이션이 확정된 상태이기 때문에 작업을 해도 상관이 없다. 그런데 이 모션이 워낙 많다보니 작업이 지루하다. 매우 지루하다… 이런 걸 기계한테 맡길 수 있으면 좋으련만.

8.28

승리포즈. “에이씨, 더럽게…”

잡기1번.

잡기 2번.밟자.

8.30

캐릭터 선택, 인트로…이렇게 해서 기본모션은 완료.하지만 멜라는 마법사이기 때문에 이펙트 작업이 많을 것으로 예상된다.

멜라의 애니메이션 #1

8.16

애니메이션에 들어가기 전에 멜라의 머리핀에 가시를 추가.

드디어 끝판왕까지 왔다. Idle은 닐리와 좀 비슷한 감이 있는데, 예쁜 것 같으므로 그냥 진행하기로 하자.

8.17

아내는 끝판왕치곤 멜라가 수수한 모습이라고 했다. 사실 멜라의 수수함은 의도한 것이다. 그녀는 신에게 도전하기 위해 힘이 필요했고, 이를 얻기 위해 모두를 속이는 전략을 취한다. 그리고 아들은 얘는 왜 면봉을 들고 있냐고 했다. 그러게 말이다.

8.19

멜라는 컨셉을 확실히 하지 않은 채 작업에 진입했다. 이럴 경우 대부분의 작업은 삽질이 되기에 먼저 생각을 정리하는 편이 좋다. 일단은 마법사이니 지팡이로 마법을 사용하는 건 알겠는데, 일반 공격은 어떻게 처리할까? 불이나 전기를 쓰기엔 일반공격에 이펙트가 붙어서 너무 OP같아 보인다. 끝판왕이니 어느 정도 강인함은 표현되어야 하나, 닐리가 그랬듯, 일반 공격은 물리력이면 좋겠다.

그래서 지팡이의 구슬이 여러형태로 변하는 방식으로 디자인하도록 하자. 일반 공격은 언월도나 창처럼 사용하고 방어시엔 사용자를 감싸는 포스필드를 생성한다. 그렇다면 구슬의 셰이더가 별도로 처리되어야 한다. 본도 새로이 필요하다. 일이 꽤 복잡하지만, 하나하나 처리하다보면 결국 끝난다. 커피를 마신 후 차근차근 진행해 보자.

중요한 건 게임이니 자세한 비주얼은 게임에 적용한 후에 살펴보기로 하고, 블렌더에서는 컨트롤러를 통한 작동여부만 판단하면 된다. 간단하게 머티리얼을 만들고, 드라이버를 연결하고, 컨트롤러를 만들어 붙인다.

지금 와서 생각해보건데, 셰이더 드라이버를 공용으로 쓸 게 아니라 캐릭터마다 다르게 주는 편이 좋지 않았을까 싶기도 하다.

이제 애니메이션과 조합하면 이렇게 된다.

광선검도 미리 만들어놓자.

유니티에서 셰이더를 만들고,

마법쓸 때 보석이 빛나야 하니 보석 셰이더도 필요하다. 하지만 기본적으로 보석상태에서 빛나야 하는 것이고, 이미시브가 그렇게 무겁지는 않으니 맷캡에 추가 셰이더코드를 붙이자.

해서 비로소 완성된 작업. 워낙 순식간인데다 방어할 때 빼곤 사용하지 않지만, 이렇게 각잡고 만들어 두지 않으면 작업기간 내내 거슬린다. 결과적으로 이러한 기분은 작업을 하기 싫게 만들기 때문에, 충분히 시간을 들여 원하는 퀄리티를 얻는 편이 장기적으로 좋다.

광선검 공격을 위해 보석의 변형처리도 완료. 사실 변형이 아니고 교체이긴 하지만서도

아줌마! 거기 공 좀 차주세요!

8.21

공격동작들을 만들고,

또 만들고…

또 만들면…

언젠간 완성되겠지.