Giter Site home page Giter Site logo

madcamp_week4's Introduction


🎵 Feel My Rhythm Project

KAIST 2023 여름 몰입캠프 4주차 과제 (2분반 김창완, 이선규)


📌 몰입캠프 4주차 과제 (자유주제)

둘 다 게임 개발을 해 본 적이 없고, Unity를 이번 기회에 한 번 배우고 싶었다.
공통 관심사인 음악을 즐길 수 있는 게임 프로젝트인 "리듬 게임" 개발을 이번 주차 주제로 삼았다.

📌 개발 환경

  • Unity(C#) + Vscode

📌 역할 분담

  • 공통: 디테일한 버그 수정
  • 김창완: 리듬게임 씬, 파일선택 씬 구현
  • 이선규: 홈 화면 씬, 음악선택 씬 구현

📌 서비스 설명

캡처
시작화면은 위와 같다. 현재는 PLAY 버튼만 구현이 되어 있다.

캡처2
PLAY 버튼을 누를 경우 위 화면으로 전환이 된다.
이 화면에서는 미리 준비된 노래 리스트 중 플레이하고 싶은 노래를 미리 들어보고, 선택한 후 GO 버튼을 눌러 리듬게임을 진행할 수 있다. MAIN 버튼을 누를 경우 처음 화면으로 다시 돌아간다.

Animation1
위와 같이 노래를 선택할 경우, 해당하는 노래 제목이 상단에 뜨면서 자동으로 노래가 재생된다.
오른쪽의 슬라이더를 통해 볼륨을 조절하고자 했다. FILE.. 버튼을 누르면 로컬 환경에서 원하는 노래 파일을 선택할 수 있는 창으로 이동한다.

Animation2
기본적으로 바탕화면에서 파일 탐색이 시작되며, 자유로운 폴더 이동이 가능하다.
mp3 파일을 누를 경우 미리 들어볼 수 있는 플레이어가 나타나게 되며, 재생/일시정지/정지 기능이 모두 정상 작동한다.
마음에 드는 경우 PLAY 버튼을 눌러 해당 노래로 리듬게임을 즐길 수 있게 만들고자 했다.

Animation3
아래는 게임을 플레이했을 때 보이는 화면이며, 노래의 bpm에 맞게 큐브가 떨어지지 않도록 도착지점까지 WASD로 조작하는 것이 게임의 목표이다.
박자에 맞게 나오는 노트(세로로 긴 흰색 바)의 타이밍에 맞게 키보드를 누를수록 점수가 크게 쌓이며, 연속으로 성공할수록 콤보가 쌓여 보너스 점수를 얻을 수 있다.

Animation4
5콤보를 쌓일 때마다, 하트보다 우선적으로 소모되는 쉴드를 하나 얻을 수 있다. 최대 3개까지 얻을 수 있다.

Animation5
떨어질 때마다 하트가 하나씩 소모되는데, 이 하트를 모두 소모하게 될 경우 게임이 종료되고 결과창이 뜨게 된다.

Animation6
또는 게임의 골지점으로 도착하게 돼도 결과창이 뜨게 된다. 이 결과창에서는 정확도 개수와 최대 콤보 개수, 최종 점수 및 획득 코인(1코인/50점)을 볼 수 있다.
Retry 버튼을 누를 경우 게임을 재시작하게 되며, Home 버튼을 누를 경우 맨 처음 화면으로 돌아가게 된다.

📌 주요 참고 사이트

https://www.youtube.com/watch?v=u3vUdu57-jY&list=PLUZ5gNInsv_MCnum4bOQRI72LdGkIY3tY

📌 수정/보완해야 할 점

  • 노래 선택 창에서 다른 노래를 틀었을 때 이전 노래가 꺼지지 않음.
  • 슬라이더를 통한 볼륨 조절을 구현하지 못함.
  • 파일 선택을 통해 원하는 노래로 게임을 진행하지 못함.
  • 홈 화면의 세팅, 랭킹 기능 구현하지 못함. (서버/DB와 연결하지 않음.)
  • 큐브가 돌아가는 것이 어색함. (렉이 심함)

📌 느낀 점

김창완: 몰입캠프 마지막주차여서 내가 지금까지 경험해보지 못한 것을 해보고 싶었다. 웹, 앱은 조금씩 다 건드려봤으니 처음 해보는 게임 개발을 주제로 택했고, 처음하는 것이 항상 그렇듯 마음대로 잘 안되고 짜증나는 일이 더 많았다. 그래도 팀메이트와 머리 맞대면서 어느정도 해결을 했고, 결국 리듬게임 구색을 갖춘 서비스를 만들게 되어 정말 뿌듯했다. gitignore가 무슨 역할을 하는지, 왜 중요한지 알게 되었고, 왜 객체지향으로 개발을 해야하는지 이번 프로젝트를 통해 직접 이해를 한 것 같다.

이선규: *

📌 팀원 연락처

김창완 GIST - [email protected]
이선규 KAIST - [email protected]

madcamp_week4's People

Contributors

changwann avatar icp1481 avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.