KR20130026713A - 다중 3차원 게임 서비스 장치 및 방법 - Google Patents

다중 3차원 게임 서비스 장치 및 방법 Download PDF

Info

Publication number
KR20130026713A
KR20130026713A KR1020110090041A KR20110090041A KR20130026713A KR 20130026713 A KR20130026713 A KR 20130026713A KR 1020110090041 A KR1020110090041 A KR 1020110090041A KR 20110090041 A KR20110090041 A KR 20110090041A KR 20130026713 A KR20130026713 A KR 20130026713A
Authority
KR
South Korea
Prior art keywords
game
server
sound
capture unit
network
Prior art date
Application number
KR1020110090041A
Other languages
English (en)
Inventor
임충규
김경일
김성수
원종호
박창준
최병태
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020110090041A priority Critical patent/KR20130026713A/ko
Publication of KR20130026713A publication Critical patent/KR20130026713A/ko

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/358Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Tourism & Hospitality (AREA)
  • Multimedia (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

종래에는 하나의 서버에서 다수의 3D 애플리케이션을 구동할 수 없으며, 사운드 하드웨어와 사용자 입력 장치도 별도의 공유 기술을 제공해야만 한다. 또한, 높은 화질이 필요한 경우에는 실현이 거의 불가능하며, 사용자의 단말기에 별도의 3D가속기가 필요하고 적지 않은 메모리 공간이 필요하다는 단점이 있다. 이에 본 발명의 실시예에서는, 게임 스트리밍 기술에서 하나의 서버로 다수의 게임을 서비스하기 위한 다중 게임 서비스 기술을 제안하고자 한다. 본 발명은 서버의 시스템 자원을 게임 당 관리함으로써, 기존 레거시 게임(legacy game)의 수정 없이 다수의 게임을 하나의 서버에서 구동하여 서비스할 수 있는 장점이 있다.

Description

다중 3차원 게임 서비스 장치 및 방법{METHOD AND APPARATUS FOR PROVIDING MULTI 3D GAME SERVICE}
본 발명은 스트리밍(streaming) 게임 서비스 기술에 관한 것으로, 특히 스트리밍 기술을 사용하여 컴퓨터 게임 등의 3D 어플리케이션을 서비스 하는 경우에 하나의 서버에서 다수의 게임을 서비스하는데 적합한 다중 3차원 게임 서비스 장치 및 방법에 관한 것이다.
컴퓨터 게임, 통신 기술 및 컴퓨터 하드웨어 분야의 기술 발달은 게이머가 이동 중이거나 원격지에 있는 경우에도 고품질 영상의 컴퓨터 게임을 즐길 수 있도록 한다. 이동 중에 이용하는 모바일 단말기나 고성능 단말기를 사용할 수 없는 원격지에서 사용하게 되는 저사양 단말기에서도 네트워크 기술을 활용하여 원격지에 있는 서버의 고성능 그래픽 처리 기능을 활용할 수 있기 때문이다.
일반적으로 컴퓨터 게임은 많은 용량의 그래픽 데이터를 사용하고 있기 때문에 적은 용량의 보조 기억 장치를 탑재하고 있는 이동 단말기에서는 컴퓨터 게임의 이용이 제한적일 수밖에 없다. 보조 기억 장치의 용량을 늘리거나 3D 그래픽 데이터를 처리하기 위하여 3D 가속기를 추가적으로 탑재한다면 이동 단말기는 부피가 커지게 된다. 또한, 대규모 연산에서 발생하는 열 처리의 문제점 때문에 이동 단말기를 사용한 컴퓨터 게임의 이용은 더욱 제한적일 수 밖에 없다. 이러한 문제점을 해결하기 위하여 컴퓨터 게임을 서버에서 구동하고 게임 콘텐츠를 각 클라이언트에 전송하는 게임 스트리밍 기술이 개발되고 있다. 이러한 기술을 사용한다면 3D 가속기를 탑재하지 않는 저 성능 PC나 모바일 단말기에서도 고품질의 컴퓨터 게임을 플레이 할 수 있으므로, 컴퓨터 게임에 대한 접근성을 향상 시킬 수 있다.
이러한 게임 스트리밍 기술은 네트워크가 제한적인 상황에서는 실현이 불가능할 수 있지만, 초고속 인터넷의 보급이 증가하고 있고 이동통신의 네트워크 대역폭이 대폭 증가하는 광 인터넷의 사용이 일반화된다면 어렵지 않게 실현시킬 수 있는 기술이다. 하지만 이러한 기술은 게임 영상을 생성하고 전송하는 시간이 적지 않게 소요되기 때문에 조작감과 반응도가 떨어지는 문제점이 있다. 따라서, 아래 특허문헌6처럼 네트워크 지연을 최소화하여 조작감과 반응도를 극대화하는 기술이 제안되고 있다.
또한, 게임 스트리밍 기술을 적용하여 게임을 다수의 게이머에게 상업적으로 서비스하기 위해서는 서버당 서비스 게임의 수를 최대화하여야 한다. 하나의 서버에서 서비스 가능한 게임의 수가 제한적이라면 서버 구축 비용이 증가하고 게이머에게 부과하게 되는 서비스 사용료의 증가로 게이머는 저사양 단말기로 게임을 플레이하는 경제적 장점을 잃게 되기 때문이다. 하지만, 대다수의 컴퓨터 게임은 그래픽 하드웨어와 사운드 하드웨어, 사용자 입력 장치의 배타적인 사용을 가정하여 만들기 때문에, 하나의 서버에서 다수의 게임을 구동한다면 여러 기술적인 문제점을 발생시킨다.
고성능 서버에서 컴퓨터 게임을 구동하여 게임 영상을 원격 단말기에 실시간으로 전송하고, 전송된 게임 영상을 보고 게이머가 게임 플레이를 진행하는 게임 스트리밍 기술은 크게 영상 기반 게임 스트리밍 기술과 3D 기반 게임 스트리밍 기술 등 2가지로 분류할 수 있다.
영상 기반 게임 스트리밍은 서버에서 게임 영상과 음향을 생성하고 AV 스트리밍으로 인코딩하여 유무선 네트워크를 통하여 원격 단말기에 전송하고, 원격 단말기는 AV 스트리밍을 디코딩하여 디스플레이하는 방법이다. 게이머는 디스플레이된 AV 영상을 보고 게임을 진행한다. 게이머의 사용자 입력은 네트워크를 통하여 서버에 전달되고 게임에 반영된다. 원격 단말기에서 3D 가속 기능이 필요하지 않기 때문에 원격 단말기의 하드웨어적 요구사항이 낮다는 장점이 있으나, 서버에서 원격 단말기를 지원하기 위하여 3D 가속기를 탑재해야만 하고, 경우에 따라서는 원격 단말기 하나당 하나의 3D 가속기를 탑재해야 하는 단점이 있다(특허문헌1, 특허문헌2, 비특허문헌1 참조).
3D 기반 게임 스트리밍 기술은 서버에서 3D 데이터 또는 3D 명령어를 원격 단말기에 전송하여 게임을 진행하는 방법이다. 대표적인 방법은 서버에서 구동하는 게임 어플리케이션의 3D 그래픽 API 함수의 호출을 가로채어 원격 단말기에 스트리밍 방식으로 전송하는 방법이다. 원격 단말기는 3D 가속기를 사용하여 전송된 3D 그래픽 API 함수의 호출을 처리한다. 원격 단말기가 3D 가속기를 보유해야 하는 제한 사항이 있지만 하나의 서버에서 다수의 원격 단말기를 지원할 수 있는 장점이 있다. 서버에서 캡쳐된 그래픽 API 호출이 서버에서 수행되지 않기 때문에 하나의 서버에서 다수의 3D 어플리케이션을 구동할 수 있다(특허문헌3, 비특허문헌2, 비특허문헌3 참조).
이와 유사한 방법으로, 게임 코드와 데이터의 일부를 원격 단말기에 전송하여 게임 플레이를 시작하는 방법이 있다. 필요에 따라 추가적인 게임 코드와 데이터를 원격 단말기에 전송하여 게임 플레이를 지속한다. 위에서 언급한 방법처럼, 원격 단말기가 3D 가속기를 보유해야 하는 제한 사항이 있다. 대용량의 게임 코드와 데이터의 저장하기 위하여 보조 기억장치를 확장하지 않아도 되는 장점이 있다(특허문헌4, 비특허문헌4, 비특허문헌5 참조).
이외에도 3D 기반 게임 스트리밍 기술로서 원격 쉐이딩 기술이 제안되었다. 그래픽 파이프라인 중 3D 가속 기능이 필요한 부분을 서버에서 처리하고 2D 화면 렌더링을 원격 단말기에서 수행하는 방법이다(특허문헌5 참조).
하지만, 3D 기반 게임 스트리밍 기술 이외의 기술은 그래픽 하드웨어를 공유하여 사용하는 기술을 추가로 제공하지 않는다면, 하나의 서버에서 다수의 3D 어플리케이션을 구동할 수 없다. 사운드 하드웨어와 사용자 입력 장치도 별도의 공유 기술을 제공해야 한다.
특허문헌1(US공개2007-0265094)은 게임 또는 게임 서비스 장치를 사용하는 게이머에게 게임 서비스를 제공하는 게임 시스템에 관한 것이다. 장치는 시스템으로부터 전송 받은 AV 스트림을 재생하고, 입력 장치로부터 얻은 입력을 서버에 전송한다. 사용자 입력에 따라 게임 저장 장치로부터 게임 데이터를 얻고 AV 스트림을 동적으로 생성한다.
특허문헌2(US공개2009-0289945)는 다수의 어플리케이션으로부터 렌더링 명령어를 가로채고 이를 중앙 집중적으로 영상 스트리밍을 제작하여 전송하는 방법을 제안하고 있다. 특히, 스트리밍 대역폭과 시스템 지연에 따라 압축 품질을 조절하는 방법을 제안하고 있다.
비특허문헌1은 기존의 Thin-Client 방식에 추가적으로 동작의 변화가 많은 3D 영상의 전송을 위해 서버의 가속기를 사용하여 영상을 생성하고 실시간 인코더를 통하여 원격 단말기에 전송하는 방법을 제안하고 있다.
특허문헌3(US공개2009-0305790)은 가상 그래픽 드라이버를 활용하여 그래픽 렌더링 명령어를 가로채는 단계와 네트워크를 통하여 전송된 그래픽 명령어를 사용하여 게임 장면을 렌더링하는 단계, 그래픽 가속기를 활용하여 게임 영상 압축하고 인코딩하여 클라이언트에 전송하는 방법에 관한 발명이다.
비특허문헌2와 3은 서버에서 동작하는 게임 어플리케이션의 그래픽 렌더링 명령어를 가로채어 원격 단말기에 전송하고, 원격 단말기의 3D 가속기를 사용하여 게임 영상을 원격 단말기의 디스플레이에 표현하는 방법이다. 원격 단말기의 사용자 입력은 네트워크를 통하여 서버에 전송되고, 게임 어플리케이션에 반영된다.
특허문헌4(US등록7.007,295)는 초기 데이터 파일과 다수의 스트리밍 파일로 나누고, 이를 인터넷을 통하여 전송하고 클라이언트의 3D 엔진을 사용하여 실시간으로 표현하는 기술을 제안하고 있다. 특허문헌2처럼, 일정 프레임을 유지하기 위하여 3D 가속기가 필요하고, 많은 저장 공간이 필요한 단점이 있다.
비특허문헌4는 사용자의 시야 각과 네트워크 대역폭을 고려하여 장면의 일부 만을 전송하고 낮은 화질의 데이터를 전송하는 실시간 최적화 기술을 적용하고 있다. 높은 화질이 필요한 경우는 실현이 거의 불가능하다는 문제가 있다.
비특허문헌5는 원격 클라이언트의 메모리에 3D 데이터를 전송하고 이에 대한 관리를 최적화함으로써 3D 데이터를 효과적으로 전송하는 방법을 제안하고 있다. 가상 공간의 여러 가지 정보를 활용하여 이동 단말기의 적은 메모리 공간을 효과적으로 사용하고 있다. 이동 단말기에 3D 가속기가 필요하며, 적지 않은 메모리 공간이 필요한 단점이 있다.
특허문헌5(US공개2010-0134494)은 3D 가속기가 필요한 3D 파이프라인은 고성능 PC에서 수행하고 2D Rasterizer 기능은 3D 가속기가 탑재되지 않은 원격 단말기에서 수행하는 방법에 관한 발명이다.
US 공개 2007-0265094, KONAMI Gaming Inc., "System and Method for Streaming Games and Services to Gaming Devices", 2007 US 공개 2009-028945, Playcast Media System, Ltd.(Israel), "Centralized Streaming Game Server", 2008 US 공개 2009-0305790, VITIE Inc., "Methods and Apparatuses of Game Appliance Execution and Rendering Service", 2009 US 등록 7,007,295, B3D Inc.(US), “System and Method for Internet Streaming of 3D Animated Content", 1999 US 공개 2010-0134494, ETRI, "Remote Shading-based 3D Streaming Apparatus and Method", 2010 한국 출원 10-2010-0114590, ETRI, "게임 어플리케이션 스트리밍 장치 및 방법", 2010
D. De Winter et. al., "A Hybrid Thin-Client Protocol for Multimedia Streaming and Interactive Gaming Applications", Pro. ACM International Workshop on Network and Operating Systems Support for Digital Audio and Video NOSSDAV06, 2006 A. Jurgelionis, P. Fechteler, P. Eisert, F. Belloti, H. David, J.P. Lauajainen, R. Carmichael, V. Poulopoulos, A. Laikari, P. Perala, A. De Gloria, C. Bouras, "Platform for Distributed 3D Gaming", IJCGT2009 Y. Tzruya, A. Shani, F. Bellotti, A. Jurgelionis, "Games@Large - a new platform for ubiquitous gaming and multimedia", Proc. BBEurope, 2006 E. Teler, D. Lischinski, "Streaming of Complex 3D Scenes for Remote Walkthroughs", Eurographics 2001 D. Schmalstieg, "The Remote Rendering Pipeline", PhD Thesis, Vienna University of Technology, 1997
이에 본 발명의 실시예에서는, 게임 스트리밍 기술에서 하나의 서버로 다수의 게임을 서비스하기 위한 다중 게임 서비스 기술을 제안하고자 한다.
본 발명은 서버의 시스템 자원을 게임 당 관리함으로써, 기존 레거시 게임(legacy game)의 수정 없이 다수의 게임을 하나의 서버에서 구동하여 서비스할 수 있는 장점이 있다.
본 발명의 실시예에 따른 다중 3차원 게임 서비스 장치는, 네트워크를 통해 원격 단말기로부터의 사용자 입력 정보를 수신하여 임의의 게임에 적용하되, 상기 임의의 게임에 종속적인 입력 이벤트 큐를 구성하여 순차적으로 입력 이벤트를 처리할 수 있게 하는 사용자 입력 적용부와, 상기 임의의 게임에 대한 프레임 이미지를 프레임 버퍼로부터 획득하는 프레임 버퍼 캡쳐부와, 상기 임의의 게임의 게임 사운드를 독립적으로 획득하되, 사운드 드라이버와 별도의 가상 사운드 드라이버를 제공하는 게임 사운드 캡쳐부와, 상기 프레임 버퍼 캡쳐부가 획득한 상기 프레임 이미지와 상기 게임 사운드 캡쳐부가 획득한 상기 게임 사운드를 사용하여 게임 동영상 스트림을 생성하는 게임 AV(Audio/Video) 스트림 생성부와, 상기 사용자 입력 적용부와, 상기 게임 사운드 캡쳐부와, 상기 프레임 버퍼 캡쳐부와, 상기 게임 AV 스트림 생성부에서 필요한 게임에 대한 정보를 저장 및 관리하는 게임 관리부를 포함할 수 있다.
본 발명에 의하면, 서버의 시스템 자원인 디스플레이 드라이버와 사운드 드라이버를 공유함으로써 하나의 서버에서 다수의 3D 게임을 동시에 구동할 수 있을 뿐만 아니라, 하나의 서버에서 다수의 게임을 구동하여 서비스함으로써 서버 구축 및 운용 비용을 절감할 수 있다.
도 1은 일반적인 레거시 게임의 시스템 자원에 대한 배타적 사용을 설명하기 위한 도면,
도 2는 본 발명의 실시예에 따른 다중 3차원 게임 서비스 장치가 포함되는 게임 서비스 시스템에 대한 구성 블록도,
도 3은 본 발명의 실시예에 따른 다중 3차원 게임 서비스 방법, 구체적으로 도 2의 사용자 입력 적용부(101)에 의해 수행되는 서비스 과정의 흐름도,
도 4는 본 발명의 실시예에 따른 다중 3차원 게임 서비스 방법, 구체적으로 도 2의 프레임 버퍼 캡쳐부(102), 게임 사운드 캡쳐부(103), 게임 AV 스트림 생성부(104)에 의해 수행되는 서비스 과정의 흐름도.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 도면부호는 동일 구성 요소를 지칭한다.
본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또한, 몇 가지 대체 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
실시예의 설명에 앞서, 본 발명은 게임 스트리밍 서비스 시스템에서 서버의 시스템 자원을 다수의 게임이 공유할 수 있도록 관리함으로써, 하나의 서버에서 다수의 게임을 구동할 수 있도록 하는 것으로, 이러한 기술사상으로부터 본 발명의 목적으로 하는 바를 용이하게 달성할 수 있을 것이다.
일반적으로 컴퓨터 게임은 도 1과 같이 시스템 자원을 활용하여 게임이 구동되며, 자원에 대한 배타적 사용을 가정하여 개발된다.
이하, 본 발명의 실시예에 대해 첨부된 도면을 참조하여 상세히 설명하기로 한다.
도 2는 본 발명의 실시예에 따른 다중 3차원 게임 서비스 장치(100)가 포함되는 게임 서비스 시스템의 구성 블록도로서, 3차원 게임 서비스 장치(100), 네트워크(200), 원격 단말기(300/1~300/N) 등을 포함할 수 있다.
여기서, 본 발명의 실시예에 따른 다중 3차원 게임 서비스 장치(100)는, 사용자 입력 적용부(101), 프레임 버퍼 캡쳐부(102), 게임 사운드 캡쳐부(103), 게임 AV(Audio/Video) 스트림 생성부(104), 게임 관리부(105) 등을 포함할 수 있다.
도 1에 도시한 바와 같이, 사용자 입력 적용부(101)는 원격 단말기, 예를 들어 도면부호 300/1의 사용자 입력 정보를 네트워크(200)를 통해 수신하여 각 게임에 적용하는 역할을 할 수 있다. 구체적으로 사용자 입력 적용부(101)은 각 게임에 종속적인 입력 이벤트 큐(101A, 101B)를 구성하여 제공함으로써, 각 게임의 진행 모듈이 필요에 따라 순차적으로 입력 이벤트를 처리할 수 있도록 한다. 다른 게임의 입력 처리나 다른 프로세스의 영향을 최소화하여 이벤트를 처리함으로써 게임의 조작감과 반응도를 최적화할 수 있다.
프레임 버퍼 캡쳐부(102)는 각 게임의 프레임 이미지를 프레임 버퍼로부터 획득하는 역할을 할 수 있다. 구체적으로 프레임 버퍼 캡쳐부(102)는 통상적인 디스플레이 드라이버와 별도의 가상 디스플레이 드라이버(102A)를 구현하여 제공할 수 있다. 각 게임의 프레임 이미지가 완성되면 가상 디스플레이 드라이버(102A)는 이를 프레임 버퍼 캡쳐부(102)에 전달할 수 있다.
게임 사운드 캡쳐부(103)는 각 게임의 사운드를 독립적으로 획득하는 역할을 할 수 있다. 구체적으로 게임 사운드 캡쳐부(103)은 시스템이 제공하는 사운드 드라이버와 별도의 가상 사운드 드라이버(103A)를 구현하여 제공할 수 있다. 가상 사운드 드라이버(103A)에서는 각 게임이 재생해야 하는 음향을 캡쳐하고 이를 게임 사운드 캡쳐부(103)에 전달할 수 있다.
게임 AV 스트림 생성부(104)는 캡쳐된 프레임 이미지와 게임 사운드를 사용하여 동영상 스트리밍을 구성하는 역할을 할 수 있다. 구체적으로 게임 AV 스트림 생성부(104)는 프레임 버퍼 캡쳐부(102)가 획득한 연속적인 프레임 이미지와 게임 사운드 캡쳐부(103)가 획득한 게임 사운드를 사용하여 게임 동영상 스트림을 생성할 수 있다. 이렇게 생성된 게임 동영상 스트림은 네트워크(200)를 통해 게이머의 원격 단말기, 예컨대 도면부호 300/1로 전송될 수 있다.
게임 관리부(105)는 서비스 게임에 대한 정보를 저장 관리하는 역할을 할 수 있다. 구체적으로 게임 관리부(105)는 사용자 입력 적용부(101), 게임 사운드 캡쳐부(102), 프레임 버퍼 캡쳐부(103), 게임 AV 스트림 생성부(104) 등이 필요한 게임에 대한 정보를 저장 및 관리하는 기능을 수행할 수 있다.
네트워크(200)는 광대역 통신망 및 근거리 통신망 등을 포함할 수 있으며, 원격 단말기(300/1~300/N)와 다중 3차원 게임 서비스 장치(100)를 연결시켜 본 발명의 실시예에 따라 하나의 서버로 다수의 게임을 서비스하기 위한 다중 게임 서비스 기술이 제공될 수 있게 한다.
여기서, 광대역 통신망은 광대역 무선 통신망과 광대역 유선 통신망을 포함할 수 있다.
광대역 무선 통신망은, 원격 단말기(300/1~300/N)의 호 설정 및 자원 할당에 관여하는 것으로, 도면에는 도시하지 않았으나 제2의 다른 원격 단말기 그룹의 호 설정 및 자원 할당에 관여하는 무선 네트워크가 구축될 수 있음을 본 발명의 기술 분야에서 통상의 지식을 가진 자라면 용이하게 이해할 수 있을 것이다.
이와 같은 광대역 무선 통신망은 원격 단말기(300/1~300/N)의 이동성을 보장하는 역할을 하며, 핸드 오버 및 무선 자원을 관리하는 기능을 수행할 수 있다. 광대역 무선 통신망은 기지국 및 기지국 제어기를 포함하여 구성될 수 있으며, 동기식 및 비동기식을 모두 지원할 수 있다. 여기서, 동기식인 경우에는 기지국은 BTS(Base Transceiver Station), 기지국 제어기는 BSC(Base Station Controller)가 될 것이고, 비동기식인 경우에는 기지국은 노드 B(Node B), 기지국 제어기는 RNC(Radio Network Controller)가 될 것이다. 물론, 광대역 무선 통신망은 이에 한정되는 것은 아니고, CDMA망이 아닌 GSM(Global System for Mobile Communication)망 및 향후 구현될 모든 이동 통신 시스템의 접속망을 포함할 수 있을 것이다.
광대역 유선 통신망은, 예를 들어 인터넷(internet)으로서, TCP/IP 프로토콜 및 그 상위계층에 존재하는 여러 서비스, 즉 HTTP(HyperText Transfer Protocol), Telnet, FTP(File Transfer Protocol), DNS(Domain Name System), SMTP(Simple Mail Transfer Protocol), SNMP(Simple Network Management Protocol), NFS(Network File Service), NIS(Network Information Service)를 제공하는 전 세계적인 개방형 컴퓨터 네트워크 구조를 의미하며, 원격 단말기(300/1~300/N)의 임의의 단말기, 예를 들면 도면부호 300/1이 다중 3차원 게임 서비스 장치(100)에 접속될 수 있게 하는 환경을 제공한다.
네트워크(200) 내의 근거리 통신망은 근거리 유선 통신망과 근거리 무선 통신망을 포함할 수 있다.
근거리 유선 통신망은, 예를 들어 LAN(Local Area Network)으로서, 원격 단말기(300/1~300/N)와 다중 3차원 게임 서비스 장치(100) 간의 근거리 유선 통신 환경을 제공할 수 있다.
근거리 무선 통신망은, 원격 단말기(300/1~300/N)와 다중 3차원 게임 서비스 장치(100) 간의 근거리 무선 통신 환경을 제공하는 것으로, 예컨대 와이파이 등의 무선통신 환경을 포함할 수 있다.
원격 단말기(300/1~300/N)는 본 실시예에 따라 하나의 서버로 다수의 게임을 서비스하기 위한 다중 3차원 게임 서비스를 사용자에게 제공하기 위한 디바이스(device)로서, 예를 들면, 영상전화폰, 스마트폰(smart phone), 랩톱(laptop) 컴퓨터, 태블릿(tablet) 컴퓨터, 노트패드(notepad) 등의 다양한 형태의 멀티미디어 단말들을 포함할 수 있다.
이러한 원격 단말기(300~300/N)는 네트워크(200)와 무선접속으로 인터페이스 하여 가입자에게 광대역 무선통신 서비스에 기반한 다중 3차원 게임 서비스를 제공할 수 있으며, CDMA(Code Division Multiple Access) 방식을 지원하는 2세대뿐만 아니라, W-CDMA(Wideband Code Division Multiple Access) 방식의 3세대, 또는 그 이상의 무선통신 기술을 지원하는 무선 환경을 모두 포함할 수 있다. 또한, 원격 단말기(300/1~300/N)는 와이파이(Wi-Fi) 등의 근거리 무선통신 서비스 기반의 다중 3차원 게임 서비스를 제공할 수도 있다.
이하, 상술한 구성과 함께, 본 발명의 실시예에 따른 다중 3차원 게임 서비스 방법을 첨부한 도 3 및 도 4의 흐름도를 참조하여 보다 구체적으로 설명하기로 한다.
먼저, 도 3은 사용자 입력 적용부(101)의 다중 3차원 게임 서비스 과정을 예시한 흐름도이다.
도 3에 도시한 바와 같이, 원격 단말기, 예를 들어 도면부호 300/1은 사용자 입력 패킷을 네트워크(200)를 통해 전송하고(S200), 사용자 입력 적용부(101)는 사용자 입력 패킷을 수령할 수 있다(S202).
이후, 사용자 입력 적용부(101)는 사용자 입력 패킷에 대한 복호화를 수행할 수 있으며(S204), 사용자 입력을 반영할 게임 윈도우를 식별하기 위하여 게임 관리부(105)에게 게임 윈도우 식별자(또는 윈도우 핸들)을 요청할 수 있다(S206).
게임 관리부(105)는 윈도우 핸들을 추출하여(S208) 사용자 입력 적용부(101)에 전송할 수 있다.
이에 따라 사용자 입력 적용부(101)은 각 게임 윈도우에 부여된 이벤트 큐에 이번트를 푸시할 수 있으며(S210), 각 게임은 푸시된 사용자 이벤트를 게임에 반영하여 처리할 수 있다(S212).
도 4는 프레임 버퍼 캡처부(102)와 게임 사운드 캡처부(103), 게임 AV 스트림 생성부(104) 등을 통해 수행되는 다중 3차원 게임 서비스 과정을 예시적으로 도시한 흐름도이다.
도 4에 도시한 바와 같이, 가상 디스플레이 드라이버(102A)는 프레임 이미지의 생성에 대한 완료 신호를 검출하고(S300), 이를 게임 AV 스트림 생성부(104)에 전달하며 프레임 버퍼의 이미지를 획득할 수 있다(S302).
획득된 이미지는 프레임 이미지 캡쳐부(102)의 제어를 통하여 게임 AV 스트림 생성부(104)에 전달될 수 있다(S304).
가상 사운드 드라이버(103A)는 사운드 시작 신호를 검출하고(S306), 이를 게임 AV 스트림 생성부(104)로 전달할 수 있다. 이와 동시에 가상 사운드 드라이버(103A)는 사운드 스트림을 생성하여 게임 AV 스트림 생성부(104)에 전달할 수 있다(S308).
게임 AV 스트림 생성부(104)는 가상 디스플레이 드라이버와 가상 사운드 드라이버로부터 전달받은 동기화 신호와 연속적인 프레임 이미지와 사운드 스트림 데이터를 사용하여 게임 동영상 스트림을 생성할 수 있다(S310)(S312).
이렇게 생성된 동영상 스트림은 네트워크(200)를 통해 원격 단말기(300/1~300/N)에 전송될 수 있다(S314).
이러한 과정은 게임이 최종 종료 시까지 수행될 수 있다(S316).
이상 설명한 바와 같은 본 발명의 실시예에 의하면, 서버의 시스템 자원인 디스플레이 드라이버와 사운드 드라이버를 공유함으로써 하나의 서버에서 다수의 3D 게임을 동시에 구동할 수 있을 뿐만 아니라, 하나의 서버에서 다수의 게임을 구동하여 서비스함으로써 서버 구축 및 운용 비용을 절감할 수 있도록 구현한 것이다.
100: 다중 3차원 게임 서비스 장치
101: 사용자 입력 적용부
102: 프레임 버퍼 캡쳐부
103: 게임 사운드 캡쳐부
104: 게임 AV 스트림 생성부
105: 게임 관리부
200: 네트워크
300/1~300/N: 원격 단말기

Claims (1)

  1. 네트워크를 통해 원격 단말기로부터의 사용자 입력 정보를 수신하여 임의의 게임에 적용하되, 상기 임의의 게임에 종속적인 입력 이벤트 큐를 구성하여 순차적으로 입력 이벤트를 처리할 수 있게 하는 사용자 입력 적용부와,
    상기 임의의 게임에 대한 프레임 이미지를 프레임 버퍼로부터 획득하는 프레임 버퍼 캡쳐부와,
    상기 임의의 게임의 게임 사운드를 독립적으로 획득하되, 사운드 드라이버와 별도의 가상 사운드 드라이버를 제공하는 게임 사운드 캡쳐부와,
    상기 프레임 버퍼 캡쳐부가 획득한 상기 프레임 이미지와 상기 게임 사운드 캡쳐부가 획득한 상기 게임 사운드를 사용하여 게임 동영상 스트림을 생성하는 게임 AV(Audio/Video) 스트림 생성부와,
    상기 사용자 입력 적용부와, 상기 게임 사운드 캡쳐부와, 상기 프레임 버퍼 캡쳐부와, 상기 게임 AV 스트림 생성부에서 필요한 게임에 대한 정보를 저장 및 관리하는 게임 관리부를 포함하는
    다중 3차원 게임 서비스 장치.
KR1020110090041A 2011-09-06 2011-09-06 다중 3차원 게임 서비스 장치 및 방법 KR20130026713A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110090041A KR20130026713A (ko) 2011-09-06 2011-09-06 다중 3차원 게임 서비스 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110090041A KR20130026713A (ko) 2011-09-06 2011-09-06 다중 3차원 게임 서비스 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20130026713A true KR20130026713A (ko) 2013-03-14

Family

ID=48177883

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110090041A KR20130026713A (ko) 2011-09-06 2011-09-06 다중 3차원 게임 서비스 장치 및 방법

Country Status (1)

Country Link
KR (1) KR20130026713A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020107427A1 (en) * 2018-11-30 2020-06-04 Intel Corporation Apparatus and method for a virtualized display

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020107427A1 (en) * 2018-11-30 2020-06-04 Intel Corporation Apparatus and method for a virtualized display

Similar Documents

Publication Publication Date Title
US11623141B2 (en) Cloud game streaming with client side asset integration
US11266906B2 (en) System and method for combining multiple game or application views into a single media stream
JP6310073B2 (ja) 描画システム、制御方法、及び記憶媒体
EP3871744B1 (en) Methods and systems for rendering and encoding content for online interactive gaming sessions
JP7436644B2 (ja) レイテンシとビデオ品質の間のトレードオフをクラウドゲーミングアプリケーションにおいて改善するためのエンコーダ調整
CN106028092B (zh) 一种电视截屏的分享方法及装置
US20200260149A1 (en) Live streaming sharing method, and related device and system
US11882188B2 (en) Methods and systems for maintaining smooth frame rate during transmission of streaming video content
US9375635B2 (en) System and method for improving the graphics performance of hosted applications
CN111951366B (zh) 一种云原生3d场景游戏方法和系统
US10525344B2 (en) System and method for improving the graphics performance of hosted applications
KR20130026713A (ko) 다중 3차원 게임 서비스 장치 및 방법
KR20130062463A (ko) 다중 사용자 및 멀티 플랫폼 지원을 위한 게임 스트리밍 시스템 및 방법
Börner et al. Performance of Augmented Reality Remote Rendering via Mobile Network
CA2798066A1 (en) Method and system of creating and encoding video game screen images for transmission over a network
WO2013148595A2 (en) System and method for improving the graphics performance of hosted applications
WO2013040261A1 (en) System and method for improving the graphics performance of hosted applications

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination