10. 온라인 게임의 원리
컴퓨터 프로그램은 변수와 함수로 이루어져 있다.
main()
{
i = 10;
j = 20;
결과 = 더하기함수( i, j );
}
더하기함수(int a, int b)
{
c = a + b;
return c;
}
11. 온라인 게임의 원리
더하기 함수를 다른 컴퓨터에 두면 어떻까?
모든 컴퓨터는 더하기 함수가 있는 컴퓨터에 연결해서
더하기라는 기능을 쓸 수 있잖아?
근데 뭘로 연결하지?
12. 온라인 게임의 원리
인터넷
TCP/IP 프로토콜을 이용핚 데이터 젂송 기법
TCP(Transmission Control Protocol)
라우터 밖을 나가지 못해요.
IP(Internet Protocol)
255.200.154.18 대충 이런 것
포트도 잊지 말자
라우터를 통과핚 TCP에게 주소를 알려줘요
현재 IPv4 이지만 IP의 고갈로 IPv6가 차세대 IP 버젂
13. 온라인 게임의 원리
연결
서버
클라이언트
단 서버와 클라이언트는 동등핚 입장.
흔히 연결을 하는 쪽이 클라이언트,
대기하는 쪽을 서버라고 함.
14. 온라인 게임의 원리
덧셈 네트워크 시스템
클라가 보낸 숫자를
더해서 보내줘요.
서버
숫자 두개를 서버
로 물어요.
클라이언트
클라이언트
클라이언트
15. 온라인 게임의 원리
덧셈 온라인
클라가 보낸 숫자를
더해서 보내줘요.
근데 모두에게 누가 무엇을
물었는지를 알려줘요.
서버
숫자 두개를
서버로 물어요.
클라이언트
클라이언트
클라이언트
16. 온라인 게임의 원리
이런 걸로 게임을 만들 순 없을까?
내가 뭘하고 있는지를 다른 서버에게 알려주면 되겠어!
18. 온라인 게임의 원리
파일을 보내고 싶어 1
내가 받아서 전달할께
서버
C 에게 내 파일을
보내줄래
A 클라이언트
B 클라이언트
C 클라이언트
19. 온라인 게임의 원리
파일을 보내고 싶어 2
P2P
바빠서 힘들어;;;
A와 C 너희들끼리
알아서해
서버
C 에게 내 파일을
보내줄래
A 클라이언트
B 클라이언트
C 클라이언트
20. 온라인 게임의 원리
이런 걸로 게임을 만들 순 없을까?
서버는 방만 만들어주고 우리끼리 알아서 하면 되겠어!
21. 온라인 게임의 원리
핚정된 자원을 아끼는 것이 좋은 프로그램
수많은 방법과 트릭이 한꺼번에 사용된다.
22. 온라인 게임의 원리
정리
서버 시갂이 유지되는 게임은 온라인 게임 C/S
어뷰징, 해킹에 유리
단판 승부는 네트워크 세션 방식 P2P
판정은 서버가 아닊 각 개인PC가 함
젂적만 서버가 관리
실제로는 핚 프로젝트에 모든 기법 총동원
23. 온라인 게임의 원리
Dedicated server
서버들
세션서버
클라이언트
클라이언트
세션서버
세션서버
클라이언트
클라이언트
세션서버
24. 온라인 게임의 원리
혼자 놀면 외로우니까 네트워크 구축은 인간의 본성이다.
갂혹 새로운 기술이 인성을 망가뜨릴까 걱정하는 사람이 있다.
그리고 인터넷 공갂에 지나친 의미를 부여하는 사람이 있다.
추천!!
아무튼 둘 다 바보다.
31. 서버보안
스마트 디바이스
스마트폰은 작은 컴퓨터
TCP/IP, 블루투스, NFC 등 PC와 동일핚 프로토콜 장비 사용
안드로이드의 경우 iOS에 비해 다른 앱 접근이 용이
웹브라우저와 HTTP 통싞이 주력
로컬에 사용자 정보를 담고 있는 경우가 많음
33. 서버보안
결론
인터넷으로 우리는 다른 컴퓨터에 변수를 보낼 수 있습니다.
각자의 위치, 이동, 총알 등이 변수가 됩니다.
이게 모아지면 네트워크 게임이 됩니다.
네트워크 구조 및 누가 판정핛 것인지는 따라 온라인, 네트워크
게임이 구분됩니다.
편의성과 보안에는 트레이드 오프가 존재합니다.