[2025/07/04]TIL

오수호·2025년 7월 4일

TIL

목록 보기
34/60

게임 ManiMind에 필요한 시스템

  1. 스킬 연출

스킬 연출은 지난 시간에 TimeLine을 활용하여 만들기로 계획했다.
그렇다면, 실제로 이를 사용하려면 어떻게 해야할까

우선 SkillEventSceneManager를 만들려고 한다. 이 SkillEventSceneManager는 유닛이 자신의 턴에서 스킬을 사용할 때, SkillData에 TimeLine(PlayableAsset)이 존재하면, 해당 타임라인을 실행하는 것이다.

다만, 현재 만들어진 시스템상에서 유닛이 스킬을 사용하는 턴에 단순히 타임라인을 재생하는 것으로는 여러 문제가 생길 수 있다. 고려해야 할 점을 아래에 정리해보았다.

  • 스킬 컷씬이 진행중인동안 플레이어의 턴이 유지되어야한다.

    • 스킬 컷씬이 끝나면 유닛의 턴을 끝내고 다음 턴으로 게임을 진행시켜야 한다.
    • 만약, 컷씬 중 턴이 유지되지않으면 해당 스킬의 연출씬이 나오는 동안 다른 유닛들은 자기턴을 진행할 것이다.

  • 스킬 컷씬 진행중에 실제로 상호작용이 이루어져야 한다.

    • 예를들어, 플레이어유닛이 적 유닛 하나를 대상으로 강하게 내려치는 스킬이 있다고 해보자.
      현재는 해당 스킬 애니메이션에 애니메이션 이벤트를 넣어서, 애니메이션 이벤트 트리거를 통해서 스킬 사용효과의 시기를 조절한다. 스킬이 투사체를 발사해서 투사체에 맞았을 때 효과가 발생하는 경우에는 해당 이벤트트리거가 호출되는 시점에 투사체를 발사한다. 하지만, 스킬연출이 생긴다면 어떨까?
      • 애니메이션 트랙에 해당 애니메이션이 재생되는 시점에 이벤트트리거가 발동되면 현재 선택된 스킬의 효과가 발동되도록 만들면 어떨까? 고민해봐야 하는 문제이다.

  • 애니메이션의 처리는 어떻게 할 것인가?

    • 현재 우리 프로젝트에서 사용하는 캐릭터들의 애니메이션은 굉장히 제한적이다. 캐릭터의 표정같은 것을 제어할 수는 없어도 캐릭터의 동작을 제어하여 애니메이션의 자연스러움을 가져갈 수 있다면 굉장히 퀄리티있는 작품이 나올 것이다.
    • FinalIK나 시선처리를 런타임에 가능하게 해주는 EyeIK를 적용하는 것을 고려해봐야 할 지도 모르겠다. 어차피 TimeLine내에서 이를 제어할 수 있기때문에 적용에 큰 문제가 없을 수 있다.

    유모델을 사용하여 유니티 에셋 모델 편집

  1. 유모델러가 깔려있어야한다.
  2. 편집하고자하는 게임오브젝트의 컴포넌트로 유모델러 컴포넌트를 추가해주어야한다.
  3. Mesh에서 모델의 모양 및 크기를 변경할 수 있다.
  4. Layer에서 마스킹을 하고 Texture의 색상을 따로따로 변경할 수 있다.
  5. 스케일 조정을 하고나서 리셋 트랜스폼을 하면 transform값을 리셋시킨것을 디폴트로 만들 수 있다.

집 에셋을 구매했는데, 따로따로 모듈화 되어있지 않고 통으로 되어있다면..

  1. 마찬가지로 모델링 모드에서 메쉬를 수정한다.
  2. 듀플리케이트 기능을 통해 필요한 요소를 복사할 수 있다.

우리 프로젝트에서의 활용방안

  1. 페인팅 기능을 통해서 다양한 속성의 캐릭터를 만들 수 있다.
  • 우울, 기쁨, 분노 등등..
  1. 모델링 변경을 통해서 무기 디자인 변경이 가능하다.
profile
게임개발자 취준생입니다

0개의 댓글