무료 효과음

인디 게임 무료 효과음 모음 & 다운

Talk

개발 및 살아가는 넉두리 코너로 주인장 마음대로 내용을 보강해 나갈 예정이다. 또한 주변 지인들에게 부탁 하여 공개 할만한 자료를 발굴하도록 하겠다.

게임 개발 이야기 - Window API : timeGetTime()와 GeTickCount()
작성자 : Duke

요즘은 모바일 전성 시대 이다 보니 C++를 사용한 개발이 많이 필요 없게 되었다. 

필자가 과거 게임 서버 개발 시 Window API : timeGetTime()와 GetTickCount() 관련한 에피소드가 

있어 만약에 도움이 될까하여 몇자 적어 봅니다.

 

 온라인 게임 내 각 지역 마다 일정 시간 간격으로 존 보스가 동시 출현하고 동시에 20~30명이 협업 사냥을  

통하여 희귀 아이템을 얻는 보스 시스템은 제작하여 서비스 하게되었다.

 

 4시간 마다 정규 적으로 출현하는데 이 보스가 몇 달에 한번씩 2번 출현 거나 출현 시 메세지가 잘못 

나오는 현상이 모니터링 되었다.  이상 동작 발생 이후는 또 몇 달 동안 문제가 없이 동작 되었다.

 

 아무리 코드를 봐도 원인을 찾기 어려웠으며 문제가 한번 발생 되면 몇 달 동안 정상 동작하니 귀차니즘 

대 마왕인 필자에게는 의지 부족으로 해당 버그를 방치 하게 되었다.

 


 

 한참 시간  지난 후 해당 문제가 timeGetTime()의 사용에서 발생 한것으로 추측 되었다.

 

해당 API를 구글링 해 보면 자세한 설명이 나온다.

 


1. timeGetTime() 함수? 
윈도우(운영체제)가 시작되어서 지금까지 흐른 시간을 1/1000 초 (milliseconds) 단위로 DWORD형을 리턴하는 함수다.
ex) 만일 윈도우가 뜨고 1분이 지났다면 이 함수는 60,000을 리턴. (부팅 시간은 제외)

 

2. GetTickCount() 함수.
 
DWORD GetTickCount(VOID); 
=> OS부팅할 때부터 지나간 시간을 msec 단위로 돌려주는 함수이다.
 
윈도우즈는 부팅된 후 1초에 1000씩 틱 카운트를 증가시키는데 이 함수를 사용하면 부팅된지 얼마나 경과했는지를 알 수 있다. 카운트는 32비트값이므로 최대 49.7일간의 카운트를 유지할 수 있다. 

 

해당 함수의 설명들 자세히 살펴 보면 반환값이 DWORD이고 최대 49.7일 카운트 유지 된다고 설명이 있다.

 

보통 필자 같은 경우 시간의 경과를 비교 할대 timeGetTime()을 사용해서 A시점 B시점 경과 시간 만큼 비교하여 로직을 구성 하다 보니 서버 가동 이후 49.7일 될 시점에 해당 값이 최대 값을 넘을때 문제가 발생 했던 것이다.

 

사내 서버 운영자도 저랑 비숫한 귀차니즘 주의라서  웬만하면 서버 Reboot을 하지 않았다. 

어떤 경우 2년동안 서버 Reboot없이 서비스가 운영 되는 경우 가 있었다. 

서버 가동후 49.7일 전에 서버를 Reboot해주면 해당 버그는 발생하지 않으나 서버 Reboot도 귀찮아하는 

귀차니즘 주의에 입각하여 이런 문제 발생하지 않는 로직을 추가 하게되었다.



 

게임 서비스 시작 시점의 시간

 

m_timeAppStart = timeGetTime();

 

 

시간 함수 사용시 해당 함수 대체

 

DWORD timeAppTime()

{

return timeGetTime() - m_timeAppStart;

} 

 

P.S : 실제 버그 수정 여부를 확인을 위하여 50일 가량 서버 Reboot하지 않는 테스트를 진행 하였다.

번호 제목 등록일 조회수
10 라프 코스터의 재미 이론  2/27/2018 4540
9 게임인 필독 도서 : 놀이와 인간 - 로제 카이와  1/19/2018 3982
8 게임 예술에서 게임 공학으로  5/29/2016 3720
7 게임 개발 이야기 - Window API : rand()  5/15/2016 4223
6 게임 개발 이야기 - Window API : timeGetTime()와 GeTickCount() 5/2/2016 11574
5 아저씨 개발자의 미국 아마존 정착기  4/15/2016 6618
4 아저씨 개발자의 미국 아마존 진출기  4/8/2016 1 8091
3 회사 첫 출근 그리고 입사 교육  3/24/2016 4415
2 꼰대 개발자 이야기#2  3/21/2016 3438
1 꼰대 개발자 이야기#1  3/15/2016 28818
1

Effect Sound

Category

무료 효과음
무료 효과음
무료 효과음
무료 효과음
무료 효과음
무료 효과음
무료 효과음
무료 효과음
무료 효과음
무료 효과음
무료 효과음
무료 효과음

license

음원 라이센스는 아래와 이용 조건을 분류

CC BY

저작자표시
저작자의 이름, 저작물의 제목, 출처 등 저작자에 관한 표시를 해주어야 합니다

CC BY-NC

저작자표시-비영리
저작자를 밝히면 자유로운 이용이 가능하지만 영리목적으로 이용할 수 없습니다

CC BY-ND

저작자표시-변경금지
저작자를 밝히면 자유로운 이용이 가능하지만, 변경 없이 그대로 이용해야 합니다

CC BY-SA

저작자표시-동일조건변경허락
저작자를 밝히면 자유로운 이용이 가능하고 저작물의 변경도 가능하지만, 2차적 저작물에는 원 저작물에 적용된 것과 동일한 라이선스를 적용해야 합니다.

CC BY-NC-SA

저작자표시-비영리-동일조건변경허락
저작자를 밝히면 이용이 가능하며 저작물의 변경도 가능하지만, 영리목적으로 이용할 수 없고 2차적 저작물에는 원 저작물과 동일한 라이선스를 적용해야 합니다

CC BY-NC-ND

저작자표시-비영리-변경금지
저작자를 밝히면 자유로운 이용이 가능하지만, 영리목적으로 이용할 수 없고 변경 없이 그대로 이용해야 합니다

Free Sound Sites

무료 효과음 사이트 목록

Site Name Site URL
jamendo
free music archive
free sound
cc mixter
lets cc
Youtube Audio library
flash kit
audiomicro
Sound-Effect
sound snap
FindSounds
Soungle
sfxsource
a1freesound
Sound rangers
Partners In Rhyme
Soundboard
acoustica
Nature Sounds
Pac DV
holly wood edge
Download Sound Effects
get-sounds
Animal Sounds
Simply The Best Sound
Zero 1 Media
Boogie Jack
Special Operations
Little Music Club
Stoutman’s Sounds
Event Sounds
Wav Central
Movie Sound Clips
Wav-Sounds
Talking Wav
Pachd
Wav Sound Files
The Recordist
Sound Jay
FreeSFX
Free Sound Effects
3dmm Studio
Media College
Free Sound Effects Collections
Sounds & Noise
Soundbible
pond5
pd sounds
free loops
sound jay
sound dogs
memo zee
avangs
open game art
musicplug
earbro