HiTEL 게제동(GMA) 공개자료실

[소스] DIRECT MUSIC 샘플 FOR DEL4
작성자:안영기(SMgal)
99-08-20
첨 부:[3648]dmusic.zip
안녕하세요.. 이번에 리턴 기념으로 Direct Music 에 대한 자료를 올립니다. Direct Music 에 대한 것을 소개하자면 Direct X 6.1 에 정식으로 포한 되었으며 MIDI 음악의 음질을 적은 용량으로 더 좋게 해보자는 취지로 만들어졌습니다. 보통 게임 만들때 *.MID 로 배경을 연주하게 되면 사운드 카드마다 각각 음질이 다르게 나옵니다. 특히 싸구려 카드에서는 그 음악 작곡한 사람이 들으면 기절할 정도의 FM 사운드같은 음질로 나오기도 합니다. 하지만 Direct Music 은 사운드 폰트를 Windows\System32\Drivers 에 GM.DLS라? ? 디폴트 ( 이름으로 봐서 General MIDI 호환 ) 로 두어서 MIDI 를 연주하게 되어 실시간으로 음원을 합성해 그걸 Wave 로 뿌려주는 방식을 채택하고 있습니다. 따라서 거의 모든 사운드 카드에서 같은 음질을 낼수가 있습니다. ( 내부적으로 Direct Sound 를 사용해 합성합니다. ) 물론 이 방식은 MOD, S3M 같은 모듈음악에서 이미 도입한 방식이라서 그리 새로울 것은 없으나, 기존의 MID 파일 ( 용량이 적은게 장점 ) 로 어느 정도 들을만한 음질을 내준다는 것에 큰 의의를 두고 있고 그 처리 속도는 Wave 플레이어 보단 느리고 M P3 플레이어 보단 빠릅니다. ---------------------------------------------------------------------- 하지만..... 이미 Direct Music 의 도큐멘트에 잘 나와 있는 이런 말을 왜 하느가 ? 아니면, 도큐멘트에 소스까지 잘 나와 있는데 이제와서 왜 들먹이냐 ? 이런 식으로 반문 할수 있겠습니다. 하지만 제가 이번에 제공하려는 것은 흔한 C 기반의 소스가 아니라 Direct X 에 대해 유달리 핍박 받으며 사는 델피언들을 위해 Direct Music의 헤더를 제대로 되게 만들어 보았습니다. ( Delphi 4 이상에서만 됩니다. OLE2 가 아닌 ActiveX 를 이용한 COM 제어로 소스가 되어 있기 때문입니다.. ) 물론 헤더의 알파버전은 제가 만든게 아니고 인터넷의 서드 파티였습니다만 제대로 실행 한번 안해보고 올린 버전인지 초기화마저도 안되는 것이었습니다. 그때 백수의 열정으로 ( 시간이 많으니까.. --; ) 분연히 딛고 일어 서서 버그 패치를 하고 이것을 만들었지만 짧은 영어 실력으로 인해 서드 파티쪽에 접근조차 못해보고 한글만으로 설명을 적을 수 있는 게제동에 자료를 올립니다. ( 그래도 스스로는 국내 게임 발전을 위해 외국에 안 보내는 거라고 혼자만 의 생각을 가지고 있습니다만..... ) 이것에 포함된 샘플 소스와 실행파일은 주인이 없습니다. 알아서 도용하시고 출처를 안 밝히셔도 좋습니다. 부디 좋은 게임 많이 만드시길 바랄뿐입니다... 그리고 질문은 절대 받지 않습니다.. 그리고 업데이트할 계획은 없습니다. 그럼.. SMgal. PS. 또한 약간 핍박 받는 Borland C++ Builder 유저도 소스가 필요하시면 C++ Builder 4 용 소스도 메일로 드리겠습니다. 솔찍히 Direct Music 부분은 빌더쪽이 델파이보다 더 잘 는 것 같습니다. -_-; 델파이 부분은 COM 의 해제 부분에 조금 문제가 있음.. 뭐.. 그냥 종료 하면 애플리케이션 차원에서 해제가 되긴 하지만...