본문 바로가기

내일배움캠프/[P1-Team.] ChillySauceCode

[TIL 24.04.18] 추가 이펙트 + 팀원의 코드 리뷰

.

목   차

     


    레벨 올라갈 때 효과 추가

    Unity에 올라와 있는 무료 에셋을 사용했다. 밑의 2개의 효과는 하나의 에셋 안에 함께 있었다.

    Explosion 효과 추가

    Level 2 이상부터 나오는 방해 이펙트이다. 폭발음과 함께 애니메이션이 등장하며, 잔여물을 남겨서 화면을 살짝 가리게 했다. 처음에는 한 번에 여러 개가 나타나게 했으나, 효과가 거의 없는 것 같아 Invoke를 활용해 3번에 걸쳐 나타나게 했다. 그리고 레벨이 오를수록 Explosion 효과가 나타나는 개수를 늘렸다.

     

    Fireball 효과 추가

    Level 4에서는 추가로 파이어볼이 0.2초에 한 번씩 x좌표 랜덤 위치에서 떨어지게 됐다. y 6에서 생성되어 떨어지기 시작하고, y가 -6이 되면 Destroy 함수를 이용해 사라지게 했다. 처음에는 0.1초에 한 번씩 나타나게 했으나, 효과음도 너무 겹치고 렉 유발 원인이 될 것 같아 나타나는 빈도를 확 줄였다.

    기타 구현

    • BgmChangeTime 시간 변경: 총 게임시간에 비례해 BgmChangeTime이 바뀌게 수정.
    • 시연 영상 촬영: 각종 기능을 보여주는 영상을 촬영한 후, ClipChamp를 이용해 간단한 자막을 달아 어떤 기능들이 구현되어 있는지 보여줌.

    코드 리뷰

    이번 프로젝트를 진행할 때는 아직 pull request라는 기능에 익숙하지 않아 서로가 어떤 코드를 어떤 의도로 작성했는지 잘 이해하지 못하는 경우가 꽤나 생겼다. 팀원 전원이 코딩에 어느 정도 기본 지식은 보유한 상태였던지라 그나마 잘 굴러갔지만, 혹여나 한 분이라도 Unity를 다루는 데에 미숙해 치명적인 버그가 나 있는 상태로 Dev Branch에 Merge를 했다면 꽤나 곤란한 상황이 되었을 것이다. 그래서 주석처리와 함께 모두가 서로의 코드를 읽고 이해하고 리뷰하는 시간을 가졌다. 

     

    알게 된 점

    • 인게임 볼륨을 표시하고 저장하는 
    • PlayerPrefs 사용하는 법 (Key값을 이용해 플레이어 데이터 저장)
    • 게임을 처음 실행한 신규 유저인지 확인하는 법(PlayerPrefs 응용)
    • 코드로 카드 나눠주는 애니메이션 구현(LeanTween)

     

    마무리

    제출 마감을 하느라 진땀빼는 날이었다. 코드 리뷰를 마친 후 너무 진이 빠져서 평소보다 조금 긴 휴식시간을 가진 후 다시 모여서 각각 PPT 1인, ReadMe 1인, 와이어 프레임 1인, 그리고 시연영상 1인으로 찢어져 빠르게 개발 일지를 완성했다. 제출란에 깃 레포지토리와 유튜브 링크, 시연영상, 그리고 프로젝트 결과물 정리본까지 올리니 마감 5분 전이었다. 마지막에 영상을 편집하던 와중 자막이 살짝 밀리는 이슈가 있었지만, 빠르게 수정을 하고 랜더링을 해서 겨우 지킨 마감이었다. 다음에는 영상 편집 시간까지 감안해 시연영상을 찍어야겠다는 생각을 했다.