본문 바로가기

Projects/Cirhythm

저번주에 작업한 Cirhythm 내용 포스팅

1. 마우스 아이콘 만들기
- 정지된 아이콘이 아닌 움직이는 아이콘을 만들자!
 : 이 부분은 맥OS에 보면 작업중일 때 나오는 마우스 아이콘이 생각나서 무지개 색의 원이 계속 돌아가는 식으로 구현해보았습니다. 알파 테스트 때 단조로운 마우스 포인터를 지적해주셔서 수정하게 되었습니다.

2. 로딩 중 간단한 게임에 관한 설명 만들기
- 노트를 클리어 하는 법과 게임 도중 탈출하는 방법 등을 깔끔하게 적어놓은 화면을 MAIN -> MusicSelect로 가는 로딩화면에 추가!
 : 이 부분은 나중에 노트의 추가나 다른 기능들이 구현되면 한 화면에 넣기 힘드므로 안내 화면을 여러개 만들어서 랜덤으로 돌려서 로딩시에 나오게 설정할 생각입니다.

3. Wav -> MP3
- 기존 무거운 Wav를 Mp3으로 교체!
 : 100MB가 넘던 게임 용량이 10MB로 줄었습니다. Note Editor를 제작할 때 썼던 함수가 주효했네요. 하지만 효과음으로 쓰기엔 좀 역부족인 듯 해서 기존에 SOUND 클래스는 삭제하지 않고 보존하였습니다.

4. BMP -> PNG
- BMP의 무거움과 알파블렌딩의 번거로움을 PNG로 말끔히 씻다!
 : 지인의 조언으로 이 작업을 진행하게 되었습니다. 확실히 용량을 줄이는데 Wav 다음으로 큰 역할을 했습니다. 게다가 PNG파일은 자체적으로 투명처리가 가능하므로, 그래픽 제작시에 보라색 배경화면을 넣지 않아도 되고, 보라색으로 칠함으로 인한 객체들의 불난 것 같은 현상도 해결되었습니다.

5. 전체화면 -> 창모드
- 전체화면으로 인한 Alt+Tab 버그 해소!
 : 일종의 고육지책으로 했습니다. 여기저기 찾아보니까 Sprite를 사용한 DirectX에서 전체화면을 사용할 때 Alt+Tab으로 인한 화면 전환이 있을 경우 다시 돌아올 때 모든 자원을 다시 로드해주어야 한다는군요; 이건 어찌해야할지 막막하여 창모드로 변경하였습니다. 기존에 창모드를 했던 이유가 화면의 크기를 설정해주어도 클라이언트의 크기는 제목표시줄과 테두리를 포함한 크기였기에 이 부분의 해결법을 찾다가 Note Editor를 제작하면서 알게된 방법으로 적용하였습니다. 순수한 클라이언트(화면)의 크기는 800*600입니다.

6. VC++ 6.0 -> VS2008
- 각종 IDE로 인한 버그로부터 탈출!
 : 원래는 프로젝트가 완료된 후 2008로 옮길 생각이었지만, 약 4일전에 벌어진 일로 상당히 곤혹을 치뤘기 때문에 어쩔 수 없이 2008로 갈아타게 되었습니다. 확실히 최신 버전으로 작업을 하니까 잔오류나 그런건 없군요. 다만, 기존에 char형이 TCHAR형으로 바뀌어서 ""로 처리하던걸 L""로 전부 바꿔줘야 한다는 것 빼곤 괜찮았습니다. 2008로 업그레이드를 함에 따라서 그동안 등하굣길에 행하던 작업은 불가능하게 되었습니다. 제 eee PC 901의 C드라이브 용량이 900MB가 남았는데, 2008을 설치하려면 C에 무조건 2.4기가 이상이 남아있어야 한다는군요... 전 모두 D로 깔고 싶어하지만, 뜻대로 되지 않습니다. 혹시 eee PC 901에 VS2008을 설치하신 분이 계시다면 제보 부탁드립니다 ^^


지난 주 작업의 주된 키워드를 꼽아보자면, 경량화최신화 이 두단어로 설명할 수 있을 것 같습니다.
이번 주에 할 작업들을 간단히 적어보겠습니다.

1. Music Select 활성화
2. 마우스 근처에서 콤보 표시
3. 리듬 미터 (피통) 구현
- 추가로 노트 하나 틀릴때마다 아주 순간적으로 빨간화면이 나왔다가 빠르게 들어가는 식으로 경고(?)성 화면을 띄어볼 생각이다
4. 판정 후 좀 더 부드럽게 사라지기
5. 전체적으로 주석 달기
위의 5가지가 주된 골자이고, 여유가 된다면 더 추가/수정을 하도록 노력하겠습니다.

관심가져주셔서 대단히 감사합니다 ^_^