본문 바로가기

부트캠프

게임 서버와 클라이언트

 

1.게임 서버와 게임 클라이언트의 개념을 학습하고, 각각의 역할과 기능을 정확하지는 않더라도 자신이 좋아하는 게임을 바탕으로 설명해주세요.




게임 서버의 종류

 

게임 서버의 종류는 크게 3가지로 찾아볼수 있었다.

1.전용 서버(Dedicated Server)

하나의 단위 작업만을 전담하는 서버 방식으로 
게임이 시작됨과 동시에 서버를 동작하고 
게임이 종료됨과 동시에 서버를 종료한다
게임당 서버 비용이 좋지않을수있음

 

2.리슨 서버(listen Server)

한명의 플레이어가 서버를 담당 "Paly as Host"
플레이어가 서버를 담당하기에 서비스 유지비용이 적음
물리적 거리에 따라 전용 서버 보다 속도가 빠를수 있음
하지만 호스트가 종료함에 따라 게임이 일시정지되고 
남은 클라이언트중 새로운 호스트를 지정해야하는 작업이 별도로 필요하다.

 

3.P2P(Peer to Peer)

별도의 서버나 클라이어트가 존재하지않고
모두가 서버이며 모두가 클라이언트가 될수있다.
전용서버가 없다는점에선 리슨서버와 비슷하지만
호스트가 종료해도 모두가 호스트이기 때문에 별도의 작업이 필요하지않음
서비스 비용또한 들어가지않지만
클라이언트가 많아질수록 각자의 연산이 급격하게 늘어나
통상적으로 16명을 넘어가지않음

 

 

게임 서버와 게임 클라이언트의 개념과 역할

 

게임 서버는 게임 데이터를 관리하며 플레이어 간의 상호작용을 조정하는 중앙 시스템이며
게임 클라이언트는 플레이어가 게임을 실행하고 게임 서버에 접속하도록 하는 프로그램이다.

게임서버는 게임의 상태,플레이어의 진행도,아이템등의 데이터를 관리하며 모든 플레이어의 행동을 동기화하여
일관된 게임 환경을 유지하며 서비스를 이용중인 플레이어들의 정보에 대한 불법적인 접근을 차단하기도한다.

게임 클라이언트는 게임의 그래픽과 사운드를 렌더링하여 플레이어에게 시각적,청각적 경험을 제공하며
플레이어의 입력을 처리하여 이를 서버에 전달한다.

클라이언트와 서버는 지속적으로 데이터를 주고받으며 게임 상태를 업데이트하거나 서버에서 오는 명령을
클라이언트에서 수행한다.

예시로 "로스트 아크"라는 게임에서는 
서버에서 플레이어가 세계를 탐험하고 퀘스트를 수행하며 다른 플레이어와의 상호작용하는 모든 것을 관리하며 
플레이어가 보스를 처치하면 이 정보가 서버에 저장 > 다른 플레이어들에게 전달 되는 알림을 보내며 
모든 플레이어가 동일한 게임을 경험할수 있도록한다.

 

2.자신이 조사한 게임 서버의 역할/기능 중 가장 흥미롭다고 생각한 것이 무엇인지 설명해주세요.


게임 서버를 조사하던중 가장 흥미로웠던 것은 플레이어 동기화다.
한명의 플레이어가 보스를 공격하면 이 공격이 서버를 타고 다른 모든 플레이어에게 실시간으로 방영된다
이는 마치 동일한 공간에서 게임을 즐기는 것처럼 느껴지는데
평소에 게임을 할때는 당연하게 생각하던 부분이었지만
게임 서버의 개념을 조사하다보니 그 단순한 결과안의 과정이
상당히 복잡하며 흥미로웠다.

'부트캠프' 카테고리의 다른 글

wep페이지 만들기 연습 1일차  (0) 2024.08.08
API  (0) 2024.08.07
Git & GitHub 리눅스 기본 명령어  (0) 2024.08.06
팀 소개 웹 페이지 프로젝트 연습  (0) 2024.08.05
스타터 노트  (1) 2024.06.17