본문 바로가기

Game Programming213

키 이벤트에 따른 속도저하 워낙에 넉넉한 하드웨어가 판치는 세상이라 별로 도움은 될 이야기가 아니지만 엔진을 만드는 사람들이면 고민하는 이야기 일 것이다. 키 이벤트는 키 입력시 발생하는 이벤트이고 요즘 대부분의 코드들을 보면 키 처리부를 함수내에 기재하는 경우가 많다. 즉. 이벤트 처리부에서 키 코드를 받아 구현출력할 함수부에 키 스위칭을 한다는 소리이다. EVENT key_event(int kecode) { setKeyCode(kecode); } EVENT drawMainMenu() { if(getKeyCode() == UP) { printf("위로 이동"); } } 이런 식인데 사실 매번 처리되는 부분이라 키 스위칭까지 같이 있으면 느려지는 것은 사실이다. 그런데도 쓰는 이유는 역시 코드 보기 편하기 때문인데 예전처럼 구형의.. 2008. 8. 29.
CSocket Thread 를 이용한 고스트 클라이언트 (서버 과부하 테스트 유틸) 서버하나 짜다가 고스트 클라이언트가 필요해서 만들어봤는데 일단 CSocket을 사용하다보니까 문제가 발견 되었다. CSocket.send와 CSocket.Recieve 함수를 사용하는 경우 내부에서 쓰레드가 돌기 때문에 외부 쓰레드에서 제어하는 경우 뻗어버린다. 이를 위해서 CSocket.Detach 함수를 통해 CSocket 쓰레드를 중단시키고 얻어진 핸들을 이용해서 (핸들이란게 SOCKET이다) 내가 만든 쓰레드를 통해 send, rcev 시켜주면 된다. CSocket 함수가 아니라 윈속에 있는 함수로 써야한다. BOOL Socket::Detach() 00830 { 00831 if (!DeleteByHandler()) 00832 return false; 00833 if (m_pThread) 00834.. 2008. 8. 9.
redefinition; different subscripts C2369 이런이런 내가 뭘하고 있는거냐? 뭔소린가 하면. 대부분 전역 선언시 발생하는 문제이다. 정의된 내역이 재정의 되어 있거나 중복되었다는 소리인 것이다. int aaa=0; int aaa=1; 2008. 5. 29.
template error C2143 vs2005 쓰기 싫은데 어쩔 수 없이 써야하는 경우가 생긴다.이러면 여러군데서 강압적인 MS의 조치를 당하는데 그 중 또 다른 한가지가 요거다. 템플렛.. C2143이면 ;이거 빠졌다는 건데 사실 이게 나오는 경우는 저게 빠졌다기 보다는함수형 선언을 정확하게 해달라는 소리다. 더 많은 경우를 보고 싶으면 아래로 들어가면 됨.http://msdn.microsoft.com/ko-kr/library/0afb82ta(VS.80).aspx 난처한 일이 많을걸?? 된장. www.gamehon.comwww.gamemotor.com 2008. 5. 19.
헤쳐모여 알고리즘과 테스트 이전에 만들어 놓았던 z정렬과 더불어 헤쳐모여 일렬로 따라와~ 역시 PC로 만드는 게 좋을까? 모바일은 현재 상황도 안좋고 고민이다. www.gamehon.comwww.gamemotor.com 2008. 4. 8.
Orient Saga 클베 시작했다. http://www.gxg.com//Battle/LiveBattleDetail.aspx?MType=McNavi10&MainNo=3&SubNo=1&VPID=0028138920&GameType=1&ProductType=08 SKT, KTF 모두 개발완료 된 상태이고 클베 진행중이다. 내가 맡았던 부분은 서버쪽. 기획자가 왠 서버? 라고 하겠지만 할 사람이 없어서 내가 했다. 나 이외에 2명의 손길이 닿았던 소스라 골치 아픈 부분이 많았지만 버그도 잡고 기능도 추가하고 마무리 지어서 클베까지 가게 되었다. 원래는 2006년도에 그레텍에서 KTF로 클베 했었지만 버그도 있었고 상용화까진 어려운 상태였다. 그런 그레텍이 모바일 사업부 철수하면서 모 업체에 주었고 내가 거기서 마무리를 지은 것이다. 암튼 우여곡절 .. 2008. 4. 8.