[PORTFOLIO] GreenLife

suyoung·2023년 5월 3일
0

portfolio

목록 보기
3/4
post-thumbnail

이 프로젝트는 KBSC:국민은행 소프트웨어 개발 대회를 준비하기 위해서 만든 환경 교육용 게임입니다. 초등학교 저학년 친구들에게 환경오염의 심각성을 여러 엔딩을 통해서 보여주려고 노력했습니다. 멀티게임이 아니여도 포인트를 제공함으로써 게임요소를 표현하고 싶었습니다.

안녕하세요~
오늘은 22년도 여름 학기동안 개발한 환경 교육용 게임 "GreenLife"에 대해 설명하겠습니다.
"GreenLife"는 지구 온난화로 인한 피해를 보여주기 위해 펭귄을 주인공으로 삼아 게임을 개발했습니다.

게임을 간략하게 정리하면, 여러 미니게임 존이 존재하고, 클리어할 때마다 받는 포인트를 모아 제한된 시간동안 나무를 구매 후 심는 게임입니다. 나무의 수에 따라서 엔딩은 3가지로 나눠져 있고, 이 의미를 초등학교 저학년 친구들에게 전달하고 싶어 이 주제로 선택했습니다.

이 게임은 3명의 팀을 이뤘고, 제가 팀장으로써 주 회의와 개발 진행단계, 제출 문서 등을 관리하였습니다.

또한 저는 팀원 중 한명과 같이 그래픽을 구현해내기도 했습니다!!! 이메일 화면, 쓰레기통, 식물원 UI 등을 제가 표현했습니다!

  • 유니티 엔진
  • 2D
  • 환경 교육용
  • 카메라 45도

프로젝트 당시, 유니티 프로젝트를 처음 경험한 팀원이 있어서 알고리즘에 대해 설명하려고 많은 노력을 했었습니다...!

  • 배에서 그물을 내려, 충돌시 물리 위치 변경
  • 마우스의 Drag & Drop 방식을 이용한 게임 오브젝트 위치 변경

에 대해 설명해주면서 개발을 할 수 있도록 도와준적이 있습니다!

  1. flow chart

게임 시작 후 자고 일어나는 펭귄의 모습으로 시작합니다.
하루의 일과를 10분으로 정했기 때문에, 5일동안 10분씩 50분의 타임어택을 가지게 됩니다.
이 일과동안 정해진 업무를 전부 다하고, 정해진 수의 나무를 심었을 때 가장 좋은엔딩을 가지게 된다는 점이 이 게임의 특징입니다.

  1. 개발한 알고리즘
  • home,factory,분리수거,main,tree를 총 구현하였고, sea 구역을 보조하였습니다.

    home zone

    • Instantiate를 이용하여 게임 오브젝트를 랜덤의 수만큼 생성하고, X 버튼을 누를 시 각 오브젝트를 확인하여 제거되는 방법
      main zone
    • Render Texture을 이용하여 실시간 미니 맵을 구현
      sea zone (보조)
    • 스페이스바 게임에서 Raycast2D를 UI가 개수가 가장 많은 부분에서 성공하도록 알고리즘 구현
      tresh zone
      드래그 엔 드롭 방식을 이용하여, 충돌이 실패했을 경우 쓰레기통 애니메이터가 닫히도록 구현
  1. 개발 이미지
    위 알고리즘에 대한 개발된 이미지 입니다.

  2. URLs

    github : https://github.com/CBNU-TUX/TuxGame
    youtube : https://youtu.be/j60FQ5Ov1rA

  3. 회고

    나의 리더십에 대해 생각하는 프로젝트가 되었달까,, 프로젝트 때마다 날짜에 맞추기 위해서 융통성 없이 구는 내 모습을 보고 고쳐야할 점이라고 매우 크게 느꼈었다. 그만큼 좋은 결과가 나왔지만.. 남을 이해하면서, 다음 개발에는 더욱 더 융통적이게 행동해야 겠다고 !! 느꼈다.
    이 게임으로 첫 대외 상을 수여했기 때문에 나의 게임 개발자로서 첫걸음이 되는 게임일듯!!!!!!!!!!!!!!!!!!! 앞으로 화이팅~

profile
게임 개발자 지망생

0개의 댓글