1 / 20

QT/E 를 이용한 오목게임

QT/E 를 이용한 오목게임. QT/Embedded, iPop 을 이용한 네트워크 오목게임. 금오공과대학교 소프트웨어공학 20020933 이상제. 목 차. 개요 구현기 능 시스템 구성도 게임흐름도 게임패킷 오목확인 알고리즘 구현 현황 Q&A. 개요. ◎ 임베디드 키트 ( iPop 상에서 Qt/Embedded 를 이용하여 간단한 1:1 네트워크 게임 실행. ◎ 간단한 리눅스용 프로그램을 임베디드 키트상에 올려봄으로써 임베디드 기기와 리눅스에 대한 이해. 구현기능.

renee
Download Presentation

QT/E 를 이용한 오목게임

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. QT/E를 이용한 오목게임 QT/Embedded, iPop을 이용한 네트워크 오목게임 금오공과대학교 소프트웨어공학 20020933 이상제

  2. 목차 Observer 최종발표 개요 구현기능 시스템 구성도 게임흐름도 게임패킷 오목확인 알고리즘 구현 현황 Q&A

  3. 개요 • ◎ 임베디드 키트(iPop상에서 Qt/Embedded를 이용하여 간단한1:1네트워크 게임 실행 ◎ 간단한 리눅스용 프로그램을 임베디드 키트상에 올려봄으로써 임베디드기기와 리눅스에 대한 이해 Observer 제안서

  4. 구현기능 Observer 최종발표 • 게임시작 • HostPC가 Server, 임베디드 키트가 Client역할을 하며 상호 연결이 되면 게임 시작 • 승자 판단 • 가로, 세로, 대각선의 4방향을 검사하여 바둑돌이 5개가 연속되어 있으면 승리로 표시 • 바둑돌이 6개 이상 연결되어 있는 경우는 무효처리 • Turn • 자신의 차례가 아니면 클릭 이벤트를 무시

  5. 구현기능 Observer 최종발표 • 무르기(Undo) • 무르기 신청을 하면 상대편 프로그램에 무르기를 요청 • 요청을 받아들이면 최근 한 수를 무르고 다시 시작 • 기권 • 기권을 선언하면 상태편의 승리로 게임이 종료 • 종료 • 게임이 끝나면 종료버튼으로 프로그램을 종료시킬 수 있음

  6. 시스템 구성도 네트워크 Embedded Kit(iPop) Host PC(Linux) Observer 최종발표

  7. 게임 흐름도 네트워크 연결 턴 방식 iPop(Client) Game패킷 Game 적용 Host PC(Server) Game패킷 Game 적용 네트워크 종료 게임종료 Observer 최종발표

  8. 게임패킷 Observer 최종발표 A : 기권 선언 U : 무르기 요청 N : 무르기 거부 Cxy: 무르기 허락, x,y는 허락한 쪽의 최근 바둑돌 좌표 Dxy: 무르기를 허락받은 경우, x,y는 요청한 쪽의 최근 바둑돌 좌표 E : 오목확인 알고리즘에 의해 게임이 종료됨을 알림 Sxy: 일반적인 바둑돌 놓기, x,y는 바둑돌의 좌표

  9. 오목확인 알고리즘 ◎ BoundCheck함수를 이용하여 8방향으로 결과값이 1인동안 반복적으로 더해감 ◎ 서로 반대방향의 합이 5가 되면 승리로 판단 BoundCheck함수 intFiveStones::BoundCheck( int x, int y ) { if(x < 0 || x >= 10) return 0; if(y < 0 || y >= 10) return 0; intch_imgidx=0; if(isBlack == 0){ch_imgidx = 2;} else{ch_imgidx = 3;} if(btnList[x][y]->getIdx() != ch_imgidx) return 0; return 1; } Observer 최종발표

  10. 구현현황 초기화면 Observer 최종발표

  11. 구현현황 네트워크 연결 성공 Observer 최종발표

  12. 구현현황 게임화면 Observer 최종발표

  13. 구현현황 무르기 신청 Observer 최종발표

  14. 구현현황 무르기 허락 Observer 최종발표

  15. 구현현황 무르기 허락(결과) Observer 최종발표

  16. 구현현황 무르기 거부(결과) Observer 최종발표

  17. 구현현황 기권선언 Observer 최종발표

  18. 구현현황 기권결과 Observer 최종발표

  19. 구현현황 승리종료 Observer 최종발표

  20. Q&A Observer 최종발표

More Related