일본에 있으면서.. 슬슬 어학과정도 끝나고해서, 이전의 프로그래밍 감각을 살려볼까 하는 취지에
만들었습니다.

이전 학교에서 턴프로젝트로 만들었던 리눅스 epoll 소스를 사용해서 (덕분에 DB는 MySQL을 사용했습니다)
윈도우 IOCP 서버 구축에 1주일,
클라이언트 제작에 3일.. 서로 데이터 동기화에 3일
총 2주 걸렸네요 orz

일단 결과물 입니다..
<서버 화면>

별볼일 없는 콘솔 화면 입니다..
현재 서버 시간을 1초 마다 갱신하게 만들었습니다.
위의 /last 같은것은 명령어 입니다.


다음 클라이언트 화면 입니다.
3D를 하는것이 좋긴 하지만, 그런거 빠지다간 끝이 없기때문에,
간단하게 현재 서버가 잘 작동되는지 눈으로 확인 가능한 2D GUI 클라이언트 입니다.
DirectX 2D 조차 쓰지 않은 순전 MFC 입니다.. @_@
맵도 원래는 바둑판처럼 가이드선을 그을려고 했는데
재미 없을꺼 같아서 소프트맥스의 창세기 외전2 템페스트의 세계 지도를 가져와 멋대로 붙였습니다.

밑에 서버 IP, port 입력하고 (디폴트 127.0.0.1:9000) connect 하면 서버에 연결됩니다.

ID와 암호를 채팅창으로 입력하면
플레이어 (마리오), 주변의 적(쿠퍼) 들이 뜹니다.

월드의 전체 크기는 5000x3200 으로 적은 렌덤으로 1000개가 뿌려지게 했습니다.
그리고 내 주변의 적들의 위치(거리 약 400), 방향, 타입, 등등의 위치를 recv 받아서 근처에 뿌려줍니다.

물론 다른 플레이어(클라이언트)도 마리오 형상으로 띄어줍니다.
단, 마리오 머리 위에 해당 클라이언트의 ID를 띄어놓게 했습니다.

채팅서버가 기본이므로. 채팅이 제대로 되는지 확인하기 위해 3개의 클라이언트를 띄었습니다.
클라이언트의 채팅은, 자기 주변 (약 200)안의 것들만 통신이 되게 했습니다.

1번 클라이언트 Miss.Ninja의 화면


2번 클라이언트의  Miss.Kim의 화면


3번 클라이언트 Miss.Rin의 화면


채팅내용을 잘 살펴보시면
가운데 닌자 클라이언트는 Kim과 Rin의 이야기를 다 듣지만, 다른 클라이언트는 닌자 클라이언트만 통신이 됩니다.


Download program :


최근 JLPT 공부를 하면서... 프로그래밍 복습할겸.. 할겸...
만들어 봤습니다.


이전에 만들었던 프로그램 소스를 참고해 가며 MFC로 만들었습니다.



30초 마다 밑의 문법 표시가 바뀌며, 이건 위의 Timer 로 조절이 가능합니다.



간단한 게임이 있습니다

전 화면에서 JLPT 레벨을 선택한거에 의거해서 해당 레벨의 단어가 떨어지는 구조로 만들었습니다.
예전 한메타자의 게임 비슷한거... 를 목표로 만들었습니다.





그냥 하면 재미 없기에 슈퍼마리오 스프라이트를 사용해서 이것저것 꾸며 봤습니다.


정답을 맞추면 마리오가 떨어지고, 깃발은 올라가며



정답이 아니면 쿠퍼가 떨어지면서 깃발이 떨어집니다.


그리고 정답을 보여줍니다.



게임이 끝나면 (문장이 성에 닿을때마다 성이 하나씩 깍여나가며, 성이 전부 없어져서 문장이 땅에 닿으면 게임 오버입니다)

그간 틀린것들을 MessageBox 로 출력하게 됩니다.


이것만으론 한계가 있기에, MainList쪽에 틀린것 카운트도 1씩 증가하게 되어
나중에 약한 문법만 중점적으로 공부할 수 있도록 도와주게 만들었습니다.

맵툴.. 오우거 엔진으로 변환

맵만 만들고 이 프로젝트는 포기
바로 온라인 서버 가지고 노는걸로 가기
2D 온라인겜으로 가는게 취업상 유리할듯..

vc 2008 작업
완료 된것 : 수면 효과 80%...
                눈 파티클
                간단한 지형 및 MFC 인터페이스




맵툴 작업현황

그냥.. 비 효과를 포기했습니다.

음... 생각해 보니 갖고 있는 예제가... 무지개 생성 예제이고...
비도 DX10 이 아닌 이상 원하는 결과 갖기 힘들꺼 같고..

그냥 눈 파티클 생성해서 저 동그란 눈송이 그림만 나중에 바꿔서 좀 수정하면 비가 될꺼 같아서....

@_@

음... 그런겁니다.. orz

+ Recent posts