세션이란, 멀티 player 게임의 1 개의 인스턴스이다. 1 개의 세션에는 동시에 플레이 하는 복수의 사용자가 존재해, 각각이 자신의 컴퓨터상에 게임 클라이언트를 가지고 있다. player란, 게임안의 엔티티여, 각 게임에서 정의한다. 각 사용자가, 1 개의 게임에 복수의player를 가지는 경우도 있다. 다만, 게임 애플리케이션은, 개별의 Microsoft® DirectPlay® 인터페이스 또는 각 player의 개체를 사용해, 이러한 player를 애플리케이션 자신으로 관리해야 한다.
세션 생성의 최초의 순서는, 사용자 그룹의 수집이다. 이 때문에는, 2 개의 기본적 방법이 있다.
- 많은 게임 세션은, 리모트 컴퓨터로 실행되는로비 애플리케이션에 의해 준비된다. 이 방법은, 많은 인터넷 베이스의 게임에서 사용되고 있다.
- 또, 각 사용자의 컴퓨터를 서로 통신시켜 게임을 어레인지 할 수도 있다. 이 방법은, 일반적으로, 참가하는 사용자 그룹이 모두 같은 LAN 상에 존재하는 것 같은 경우로 한정된다.
세션이 어레인지 되면 게임이 기동해, 게임 플레이가 시작 된다. 세션이 진행되는 것에 따라, player가 세션으로부터 사라지거나 새로운 player가 추가 되거나 한다. 자세한 것은 각각의 게임에 따라서 다르다.
멀티 player 게임에서는, 각 사용자의 사용자 인터페이스 (UI)는, 세션의 다른 모든 사용자의 UI 와 동기 할 수 있다. 따라서, 멀티 player 세션의 관리에는, 사용자간에서의 계속적인 메시지의 스트림이 필요하다. 예를 들어, player가 이동할 때마다 메시지가 송신되어 세션내의 다른 모든 게임 클라이언트상에서의 그 player의 위치가 갱신된다. DirectPlay 의 중심이 되는 것은, 세션의 모든 컴퓨터간에 효율적 한편 유연하게 메시지의 송신을 지원 하는, 애플리케이션 프로그래밍 인터페이스 (API)의 부분이다.
세션에 있어서의 메시징의위상기하학을 구축하려면 , 주로 2 개의 방법이 있다. 그것들은,피어 투 피어와클라이언트/서버이다. 어느 쪽의 위상기하학에도 이점과 제약이 있기 (위해)때문에, 어느 쪽이 자신의 게임에 적절하고 있는지를 평가할 필요가 있다.
'CS > OS & 하드웨어' 카테고리의 다른 글
가상 메모리와 가상 주소 공간 (0) | 2024.04.12 |
---|---|
프로그램 (Program) 이란? (0) | 2024.01.03 |
세그멘테이션 (Segmentation) 오류 (0) | 2023.10.23 |
세그멘테이션(Segmentation)이란? 세그멘테이션 vs 페이징 (0) | 2023.10.23 |
아스키코드(ASCII Code) - 컴퓨터의 문자 처리 원리 (0) | 2023.10.08 |