ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 최종프로젝트 16일차
    스파르타 게임 개발 2024. 7. 12. 23:29

    1. 시작화면 만들기

    먼저 시작화면을 만들었다. 생각 해둔 것이 있어서 그대로 만들기만 하면 됐다. 

    시작화면 구상

     

    캔바스로 하고 싶었는데 하다 보니까 그냥 카메라에 비춰지는 것으로 했다. 

     

    이런 느낌으로 만듦

     

    그 다음에 드워프가 계속 땅을 파는 듯한 연출을 줘야했다. 

    이 때 곡괭이도 들고 있어야 했는데 저번에 했었지만 애니메이션이 같이 작업하기가 조금 번거로웠다. 

    캐릭터는 이미지가 바뀌고 곡괭이는 위치랑 회전이 바껴야 했기에 곡괭이만 둥실둥실 떠다녔다. 

     

    그래서 어떻게 해야 하나 했는데 곡괭이 오브젝트를 4개 만들고 위치들을 미리 정해두고 Active false true를 하게 해서 애니메이션 효과를 줘봤다. 

     

     

    이런 느낌으로 해봤다. 그런데 오브젝트를 4개나 만드는 것이 조금 그렇다고 생각을 해서 튜터님께 여쭤봤다. 

    일단 튜터님께서 보기에 자연스럽다고 해서 다행이다. 

     

    그리고 튜터님께서 방법을 떠올려 주셨는데, 오브젝트 한 개만 사용을 해서 캐릭터의 이미지가 바뀌는 직전 구간에 Active를 꺼버리고 위치를 옮긴 다음에 다시 키는 방법을 알려주셨다. 

     

    원래 이런 방식으로 할려고 했었는데 나는 직전에 안 끄고 처음부터 활성화를 꺼버려서 안 됐던 것이다. 직전에 끄니까 바로 됐다. 

     

    그리고 curv라는 그래프도 알려주셨는데, 위치를 옮기고 커브를 0으로 만들어주니까 순간이동 하는 것처럼 바로 이동이 되었다. 

     

    위치나 회전을 변경 하게 되면 이곳에 빨간색 파란색 선이 생긴다. 그것을 0값으로 조절을 하니 바로바로 움직여졌다. 순간이동 처럼, 원래는 애니메이션이 부자연스러울 때 부드럽게 하기 위해 이것을 사용 한다고 한다. 

     

    나는 반대의 느낌으로 사용 한 것 같다. 

    이제 유닛들의 애니메이션에도 곡괭이를 추가 시키려고 했는데 좋은 방법을 알게 되어서 다행이다. 

     

    유닛들은 이 방법으로 애니메이션들을 만들어 줘야겠다. 그리고 곡괭이는 나중에 이미지가 바뀔 수 있게 할 것이다. 철 -> 다이아 이런 식으로 그걸 유의 해서 작업을 하자.

     

    그리고 페이드 인 아웃, 언어 버튼, Text들을 추가 해줘서 시작화면 구성을 마무리 했다. 

     

    그리고 시작화면을 만들면서 GameManager와 DataMaanger등 여러 것들을 옮겨와야 했는데 이 과정 중에서 초기화 하는 부분을 많이 수정 했다. 

     

    역시 진즉에 정리를 안 한 댓가를 치룬 셈이다. 

     

    앞으로 작업 할 때는 무조건 시작화면에 Manager들 만들어 두고 작업을 하는 습관을 들여야겠다. 말 안 된다. 

    그리고 ObjPool에 들어 가는 애들은 그냥 생명주기 함수를 사용 하지 말자는 내 결론이 나왔다. 

     

    그리고 초기화 하는 함수들을 죄다 모아 놓는 클래스도 만들어야 겠다. 그래야 편할 듯 하다. 

     

     

     

     

    2. 구조 설정

    현재 스킬 구조가 아주 그냥 도가니 탕후루로 되어 있다. 그 대가를 치를 시간이다. 

    앞으로 스킬들을 추가 할 때 편하게 하려면 구조를 잡아둬야 한다. 

     

    스킬은 패시브 스킬과 액티브 스킬 두 가지로 나뉘고, 슬롯은 같은 버튼을 사용 한다. 

     

    그러니 버튼 한 개를 눌렀을 때 패시브와 액티브를 나눠야 하고 또 슬롯에 맞는 스킬이 실행 되게 하면 된다. 

     

    그리고 액티브 스킬은 슬롯에서 활성화 하는 게 아니라 스킬 Icon으로 사용을 한다. 

     

     

    현재 하고 있는 구상은 

    SkillList에서 스킬들의 Data와 스킬들의 함수들을 갖고 있게 했다. 이것도 나중에 분리를 해줄 필요가 있을 것 같다. 

    그리고 SkillSlot이라는 Class에서 슬롯들을 초기화 하고 버튼 눌렸을 때 알맞는 스킬이 실행 되게 하고 있다. 

     

    스킬구조 잡고 추가 하고, 바로 다음 기능으로 넘어가서 후딱후딱 UI 기능들을 채워 놓자. 그래야 다른 걸 할 수 있다.

     

     

    일단 오늘 담당튜터님 주도 하에 중간중간발표를 했는데, 다들 생각보다 많이 잘 했다. 내가 안 한 것도 있는 것 같긴 하다. 

    1주일만에 충분히 끝낼 수 있었음에도 불구하고 그 생각 때문인지 조금 나태한 시간을 보낸 2주였다고 생각이 든다. 

    일단 내일은 가족행사로 인해 자리를 비우게 된다. 

     

    이동간에 최대한 밀린 강의 보고 도움 될 만한 것들을 알아봐야 겠다. 그리고 코드 구조를 어떻게 할지 미리미리 생각을 해서, 돌아오면 후딱후닥 작업만 하면 되게끔 시간을 보내야 할 것 같다. 

    일단 오늘은 한 게 없어서 너무너무 아쉽지만 마무리를 해야겠다. 

     

     

     

    동기분들의 추천 및 피드백 : 

    1. 유닛들의 크기를 키우면 좋을 것 같다.

    2. 효과음이 별로인 거 같다.

    3. 많이 내려 갔을 시에 고블린 상점 같은 거 나오면 좋을 것 같다.

    4. M 표시하기. 

    5. 다이너마이트 같은 스킬 구매 해서 유저가 수동으로 땅을 많이 팔 수 있게 하기.

    6. 스토리를 만들어라.

    7. 계속 땅만 파면 지루 할 것 같다.

     

    아이디어 내주셔서 감사합니다!!

     

Designed by Tistory.