TWI608856B - 資訊處理裝置、成像裝置、方法及程式 - Google Patents

資訊處理裝置、成像裝置、方法及程式 Download PDF

Info

Publication number
TWI608856B
TWI608856B TW103107188A TW103107188A TWI608856B TW I608856 B TWI608856 B TW I608856B TW 103107188 A TW103107188 A TW 103107188A TW 103107188 A TW103107188 A TW 103107188A TW I608856 B TWI608856 B TW I608856B
Authority
TW
Taiwan
Prior art keywords
client device
imaging
image
information
game
Prior art date
Application number
TW103107188A
Other languages
English (en)
Other versions
TW201442770A (zh
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 史克威爾 艾尼克斯控股公司
Publication of TW201442770A publication Critical patent/TW201442770A/zh
Application granted granted Critical
Publication of TWI608856B publication Critical patent/TWI608856B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/4104Peripherals receiving signals from specially adapted client devices
    • H04N21/4126The peripheral being portable, e.g. PDAs or mobile phones
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • 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/355Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an encoded video stream for transmitting to a mobile phone or a thin client
    • 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/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • A63F13/525Changing parameters of virtual cameras
    • A63F13/5255Changing parameters of virtual cameras according to dedicated instructions from a player, e.g. using a secondary joystick to rotate the camera around a player's character
    • 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/85Providing additional services to players
    • A63F13/86Watching games played by other players
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1083In-session procedures
    • H04L65/1094Inter-user-equipment sessions transfer or sharing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234318Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into objects, e.g. MPEG-4 objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/038Indexing scheme relating to G06F3/038
    • G06F2203/0383Remote input, i.e. interface arrangements in which the signals generated by a pointing device are transmitted to a PC at a remote location, e.g. to a PC in a LAN

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Human Computer Interaction (AREA)
  • Computer Graphics (AREA)
  • General Business, Economics & Management (AREA)
  • Business, Economics & Management (AREA)
  • Processing Or Creating Images (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)

Description

資訊處理裝置、成像裝置、方法及程式
本發明係大致有關於雲端為基礎的電玩遊戲(video game),並且尤其是提供用於容許一旁觀者(spectator)能夠確認被旁觀的遊戲是即時地發生的一種資訊處理裝置、一種成像裝置、一種方法以及一種程式。
電玩遊戲產業已經有看到相當大的發展,從獨立的機台遊戲的問世、到家庭為基礎的電腦遊戲、到針對專用的遊戲主機所做的遊戲之崛起。網際網路的平民化係接著致能下一個主要的發展,亦即"雲端遊戲"。在一雲端遊戲系統中,一玩家可以利用一例如是智慧型手機或平板電腦之普通的網際網路驅動的設備以透過網際網路來連接至一電玩遊戲伺服器。該電玩遊戲伺服器係對於玩家開始一對話,並且可以對於多個玩家同樣開始一對話。該電玩遊戲伺服器係根據玩家的動作(例如,移動、選擇)以及該遊戲的其它屬性而對於該玩家來成像影像並且產生音訊。編碼的視訊及音訊係透過網際網路而被傳遞至該玩家的裝置,並且被再現為可見的影像以及可聽見的聲音。以此種方式,來自世界各地的玩家都可以在不使用專門的電玩遊戲主機、軟體或是圖形處理硬體下進行一電玩遊戲。
在其中藉由在一伺服器側上的成像處理所產生的畫面係以 此種方式被提供至一玩家的裝置的情形中,在該些產生的畫面被編碼為移動的影像之後,該些移動的影像係以一如同一般的移動的影像觀看位置之串流格式加以發送。換言之,同時發送根據來自一玩家的裝置的操作輸入所產生的一移動的影像至一些如同一移動的影像觀看位置之裝置是可能的。因為,在此種配置之下,一玩家係能夠提供另一使用者在該玩家的裝置上所進行遊戲的遊戲畫面,該另一使用者係能夠例如在他或她本身的裝置上觀看(旁觀)該玩家的遊戲進行狀態。
近來,對於所謂的"實況報導(play-by-play)"之移動的影像的需求已經一直在生長,其中例如一玩家在一離線的家庭用的遊戲主機上進行的一遊戲的畫面係被記錄,而藉由一移動的影像觀看位置或類似者來加以解譯及散布。有關用於在一伺服器側上執行遊戲畫面的成像並且用於產生例如是用於雲端遊戲之對應的編碼的移動的影像資料之系統,一如上所述的旁觀功能可被視為滿足使用者及玩家的需求,因為不單只是能夠散布移動的影像資料,而且是能夠大致同時散布該玩家的遊戲進行。
然而,在其中針對於一裝置而藉由在一伺服器側上的成像圖形所獲取的不限於遊戲畫面的畫面以此種方式被提供至該裝置以及另一裝置的情形中,有可能另一裝置的使用者將不會有一所要的顯示狀態。例如,對於在一畫面中的一GUI而言,一執行操作的使用者係能夠改變成一適當的佈局、色彩或類似者,但是在一僅僅接收該些畫面並且執行顯示的裝置上,使用者並不能夠改變該佈局、色彩或類似者。
本發明係在考慮到該習知技術中的此種問題下加以完成 的。本發明係提供一種用於根據在另一裝置上的一操作來適當地改變一成像的畫面的一顯示狀態之技術。
本發明在其第一特點中係提供一種資訊處理裝置,其係對於一待被提供至複數個客戶裝置的畫面產生一成像命令,該裝置係包括:用於從一第一客戶裝置獲取在該第一客戶裝置上所做的一操作輸入的資訊之第一獲取構件;用於根據該操作輸入的資訊以對於一待被提供至該第一客戶裝置的第一畫面產生一第一成像命令之第一產生構件;用於從一第二客戶裝置獲取用於改變一成像物件的一顯示狀態的改變資訊之第二獲取構件,一第二畫面係根據被提供至該第二客戶裝置的該操作輸入的資訊來加以改變;以及用於藉由根據該改變資訊來改變該第一成像命令以對於該第二畫面產生一第二成像命令之第二產生構件。
本發明在其第二特點中係提供一種成像裝置,其係包括:用於利用藉由該資訊處理裝置所產生的成像命令以產生一畫面之成像構件,該成像裝置係包括:用於發送一根據該第一成像命令所產生的第一畫面至一第一客戶裝置之第一發送構件;以及用於發送一根據該第二成像命令所產生的第二畫面至一第二客戶裝置之第二發送構件。
本發明在其第三特點中係提供一種用於控制一資訊處理裝置之方法,其係對於一待被提供至複數個客戶裝置的畫面產生一成像命令,該方法係包括:一從一第一客戶裝置獲取在該第一客戶裝置上所做的一操作輸入的資訊之第一獲取步驟;一根據該操作輸入的資訊以對於一待被提供至該第一客戶裝置的第一畫面產生一第一成像命令之第一產生步驟;一從一第二客戶裝置獲取用於改變一成像物件的一顯示狀態的改變資 訊之第二獲取步驟,一第二畫面係根據被提供至該第二客戶裝置的該操作輸入的資訊來加以改變;以及一藉由根據該改變資訊來改變該第一成像命令以對於一待被提供至該第二客戶裝置的第二畫面產生一第二成像命令之第二產生步驟。
本發明在其第四特點中係提供一種用於使得一或多個電腦執行一種對於一待被提供至複數個客戶裝置的畫面產生一成像命令的方法之程式,該方法係包括:一從一第一客戶裝置獲取在該第一客戶裝置上所做的一操作輸入的資訊之第一獲取步驟;一根據該操作輸入的資訊以對於一待被提供至該第一客戶裝置的第一畫面產生一第一成像命令之第一產生步驟;一從一第二客戶裝置獲取用於改變一成像物件的一顯示狀態的改變資訊之第二獲取步驟,一第二畫面係根據被提供至該第二客戶裝置的該操作輸入的資訊來加以改變;以及一藉由根據該改變資訊來改變該第一成像命令以對於一待被提供至該第二客戶裝置的第二畫面產生一第二成像命令之第二產生步驟。
本發明的進一步特點從以下的範例實施例的說明(參考所附的圖式)將會變成明顯的。
10‧‧‧參與者資料庫
100‧‧‧雲端遊戲伺服器系統
120‧‧‧客戶裝置
120A‧‧‧客戶裝置
130‧‧‧網際網路
140‧‧‧客戶裝置的輸入
140A‧‧‧客戶裝置的輸入
200C‧‧‧計算伺服器
200H‧‧‧混合式伺服器
200R‧‧‧成像伺服器
204‧‧‧成像命令
205‧‧‧影像串流
206‧‧‧圖形輸出串流
206A‧‧‧圖形輸出串流
210C1‧‧‧網路介面構件(NIC)
210C2‧‧‧網路介面構件(NIC)
210H‧‧‧網路介面構件(NIC)
210R1‧‧‧網路介面構件(NIC)
210R2‧‧‧網路介面構件(NIC)
220C‧‧‧中央處理單元(CPU)
220H‧‧‧中央處理單元(CPU)
220R‧‧‧中央處理單元(CPU)
222C‧‧‧中央處理單元(CPU)
222H‧‧‧中央處理單元(CPU)
222R‧‧‧中央處理單元(CPU)
230C‧‧‧隨機存取記憶體(RAM)
230H‧‧‧隨機存取記憶體(RAM)
240R‧‧‧圖形處理單元(GPU)
240H‧‧‧圖形處理單元(GPU)
242H‧‧‧GPU核心
242R‧‧‧GPU核心
246H‧‧‧視訊隨機存取記憶體(VRAM)
246R‧‧‧視訊隨機存取記憶體(VRAM)
250H‧‧‧圖形處理單元(GPU)
250R‧‧‧圖形處理單元(GPU)
252H‧‧‧GPU核心
252R‧‧‧GPU核心
256H‧‧‧視訊隨機存取記憶體(VRAM)
256R‧‧‧視訊隨機存取記憶體(VRAM)
260‧‧‧網路
270‧‧‧電玩遊戲功能模組
280‧‧‧成像功能模組
285‧‧‧視訊編碼器
300A‧‧‧主要遊戲程序
300B‧‧‧圖形控制程序
310A‧‧‧步驟
310B‧‧‧步驟
310C‧‧‧步驟
320A‧‧‧步驟
320B‧‧‧步驟
320C‧‧‧步驟
330B‧‧‧步驟
330C‧‧‧步驟
410A‧‧‧步驟
410B‧‧‧步驟
420A‧‧‧步驟
420B‧‧‧步驟
430A‧‧‧步驟
430B‧‧‧步驟
440A‧‧‧步驟
440B‧‧‧步驟
500P‧‧‧玩家
500S‧‧‧旁觀者
610‧‧‧玩家相關的參數
620‧‧‧基本的旁觀者相關的參數
630‧‧‧可自訂的旁觀者相關的參數
710‧‧‧顯示設定參數
804‧‧‧成像命令
804P‧‧‧成像命令
804S‧‧‧成像命令
805P‧‧‧影像串流
805S‧‧‧影像串流
810‧‧‧修改器
820‧‧‧圖形程序
830‧‧‧圖形程序
圖1是根據本發明的一非限制性的實施例之一種雲端為基礎的電玩遊戲系統架構的方塊圖。
圖2A是展示根據本發明的一非限制性的實施例之圖1的架構的各種實體構件之方塊圖。
圖2B是圖2A的一變化例。
圖2C是展示圖1的架構的各種功能模組之方塊圖,其可藉由圖2A或2B的實體構件加以實施。
圖3A至3C是展示根據本發明的非限制性的實施例,在一電玩遊戲的執行期間加以實行的一組程序的執行之流程圖。
圖4A及4B是展示根據本發明的非限制性的實施例,一客戶裝置用以分別處理接收到的視訊及音訊的操作之流程圖。
圖5是根據本發明的一實施例之一種雲端為基礎的電玩遊戲系統架構之方塊圖。
圖6是用於展示根據本發明的實施例,藉由一參與者資料庫10所管理的各種參數之視圖。
圖7是用於展示在根據本發明的實施例之雲端為基礎的電玩遊戲系統中傳送的資料的細節之視圖。
圖8是用於展示藉由電玩遊戲功能模組270產生成像命令以及藉由成像功能模組280產生圖形輸出串流206、206A之視圖。
圖9是用於展示在本發明的實施例中,一被提供至一玩家的遊戲畫面的一個例子之視圖。
圖10是用於展示在本發明的實施例中,一被提供至一旁觀者的遊戲畫面的一個例子之視圖。
I.雲端遊戲架構
圖1係概要地展示根據本發明的一非限制性的實施例之一種雲端為基 礎的電玩遊戲系統架構。該架構係包含複數個透過網際網路130而連接至一雲端遊戲伺服器系統100的客戶裝置120、120A。該些客戶裝置120、120A的每一個可以用任何適當的方式連接至該網際網路130,其包含透過一個別的區域存取網路(未顯示)。儘管該伺服器系統100可以在無中間的區域存取網路下直接連接至該網際網路130,但該雲端遊戲伺服器系統100亦可以透過一區域存取網路(未顯示)而連接至該網際網路130。在該雲端遊戲伺服器系統100以及該些客戶裝置120、120A中的一或多個之間的連線可包括一或多個通道。這些通道可以是由實體及/或邏輯鏈路所組成的,並且可以行進在各種的實體媒體之上,其係包含射頻、光纖、自由空間的光學、同軸及雙絞線。該些通道可以遵守一例如是UDP或TCP/IP的協定。再者,該些通道中的一或多個可以藉由一虛擬私人網路(VPN)所支援。在某些實施例中,該些連線中的一或多個可以是對話為基礎的。
該雲端遊戲伺服器系統100係使得該些客戶裝置120、120A的使用者能夠個別地(亦即,單一玩家的電玩遊戲)或是成群組地(亦即,多玩家的電玩遊戲)進行電玩遊戲。電玩遊戲之非限制性的例子可以包含針對休閒、教育及/或運動所進行的遊戲。一電玩遊戲可以不需要提供參與者獲取貨幣的可能性。儘管只有兩個客戶裝置120、120A被展示,但應該體認到的是,在該雲端為基礎的電玩遊戲系統架構中的客戶裝置數目並未特別受到限制。
該些客戶裝置120、120A中之一的使用者可以向該雲端遊戲伺服器系統100註冊為在一電玩遊戲中的一參與者。該使用者可以註冊為一"玩家",並且將會有機會控制在一藉由該電玩遊戲所維持的虛擬的世界內 之一角色、虛擬角色(avatar)、賽車、座艙、等等。在多玩家的電玩遊戲的情形中,該虛擬的世界是由兩個或多個玩家所共用的,因而一玩家的遊戲進行可能會影響到另一玩家的遊戲進行。在某些實施例中,該些客戶裝置120、120A中之一的使用者可以註冊為一非玩家的"旁觀者",因而此種使用者將會觀察玩家的遊戲進行,但是並不控制在該遊戲中的主動角色。在其中該術語"參與者"被使用的情形中,除非另有指出,否則都是意謂等同適用於玩家及旁觀者。
相關於各種玩家以及旁觀者的參數可被儲存在一參與者資料庫10中,該參與者資料庫10可以是該雲端遊戲伺服器系統100的部分、或是位在其遠端處。
該些客戶裝置120、120A中之任何給定的一個的配置並未特別受限的。在某些實施例中,該些客戶裝置120、120A中的一或多個例如可以是一個人電腦(PC)、一家用遊戲機(例如是XBOXTM、PS3TM、WiiTM、等等的主機)、一可攜式遊戲機、一智慧型電視、一機上盒(STB)、等等。在其它實施例中,該些客戶裝置120、120A中的一或多個可以是一通訊或計算裝置,例如一行動電話、一個人數位助理(PDA)、或是一平板電腦。
該些客戶裝置120、120A中之任何給定的一個可配備有一或多個輸入裝置(例如一觸控螢幕、一鍵盤、一遊戲控制器、一搖桿、等等),以容許該給定的客戶裝置的使用者能夠提供輸入並且參與一電玩遊戲。在其它實施例中,該使用者可以產生人體運動或是可以揮動一外部的物體;這些移動係藉由一攝影機或是其它感測器(例如,KinectTM)來加以偵測,而操作在該給定的客戶裝置內之軟體係嘗試正確地猜測該使用者是否打算提供 輸入至該給定的客戶裝置,並且若是的話,猜測出此種輸入的本質。該給定的客戶裝置係將該接收到的使用者輸入以及偵測到的使用者移動轉變成為"客戶裝置的輸入",此係透過網際網路130而被傳送至該雲端遊戲伺服器系統100。在該舉例說明的實施例中,客戶裝置120係產生客戶裝置的輸入140,而客戶裝置120A係產生客戶裝置的輸入140A。
該雲端遊戲伺服器系統100係處理從各種的客戶裝置120、120A接收到的客戶裝置的輸入140、140A並且產生用於該各種的客戶裝置120、120A的"媒體輸出"。該媒體輸出可包含編碼的視訊(亦即,影像)以及音訊(亦即,聲音)。該媒體輸出係以封包的形式透過網際網路130來加以傳送。目標是該些客戶裝置120、120A中之一特定的客戶裝置之封包可以用此種方式被定址,以透過網際網路130被指定路由至該裝置。該些客戶裝置120、120A的每一個可包含用於緩衝及處理從該雲端遊戲伺服器系統100接收到的封包中之媒體輸出的電路、一用於顯示影像的顯示器、以及一用於輸出音訊的換能器(例如,一揚聲器)。額外的輸出裝置亦可被設置,例如一機電系統以誘發運動。
II.雲端遊戲伺服器系統100(分散式架構)
圖2A係展示用於該雲端遊戲伺服器系統100的構件之一種可能的非限制性的實體配置。在此實施例中,在該雲端遊戲伺服器系統100內之個別的伺服器係被配置以實行專門的功能。例如,一計算伺服器200C可以是主要負責根據使用者輸入來追蹤在一電玩遊戲中的狀態改變,而一成像伺服器200R可以是主要負責成像圖形(影像)。
為了目前所敘述的範例實施例之目的,客戶裝置120以及客 戶裝置120A係被假設參與在該電玩遊戲中,不是作為玩家、就是旁觀者。然而,應瞭解的是在某些情形中可能只有單一玩家而沒有旁觀者,而在其它情形中可能有多個玩家以及單一旁觀者,在仍然是其它情形中可能有單一玩家以及多個旁觀者,並且在另外其它情形中可能有多個玩家以及多個旁觀者。
為了單純化的緣故,以下的說明係參照到單一計算伺服器200C連接至單一成像伺服器200R。然而,應該體認到的是,可以有超過一成像伺服器200R連接至同一個計算伺服器200C、或是超過一計算伺服器200C連接至同一個成像伺服器200R。在其中有複數個成像伺服器200R的狀況中,這些成像伺服器200R可被散布在任何適當的地理區域處。
如同在圖2A的構件之非限制性的實體配置中所示,該計算伺服器200C係包括一或多個中央處理單元(CPU)220C、222C以及一隨機存取記憶體(RAM)230C。該些CPU 220C、222C例如可以透過一通訊匯流排架構而存取到該RAM 230C。儘管只有兩個CPU 220C、222C被展示,但應該體認到的是一較大數目個CPU或是只有單一CPU都可在該計算伺服器200C的某些範例實施方式中被設置。該計算伺服器200C亦包括一網路介面構件(NIC)210C2,其中客戶裝置的輸入係透過網際網路130以從該些參與在該電玩遊戲中的客戶裝置的每一個來加以接收。在目前敘述的範例實施例中,客戶裝置120以及客戶裝置120A兩者都被假設是參與在該電玩遊戲中,並且因此該接收到的客戶裝置的輸入可包含客戶裝置的輸入140以及客戶裝置的輸入140A。
該計算伺服器200C進一步包括另一網路介面構件 (NIC)210C1,其係輸出複數組成像命令204。從該計算伺服器200C經由該NIC 210C1輸出的該些組成像命令204可被傳送至該成像伺服器200R。在一實施例中,該計算伺服器200C可以直接連接至該成像伺服器200R。在另一實施例中,該計算伺服器200C可以透過一網路260而連接至該成像伺服器200R,該網路260可以是網際網路130或是另一網路。一虛擬私人網路(VPN)可以透過該網路260而被建立在該計算伺服器200C以及該成像伺服器200R之間。
在該成像伺服器200R之處,藉由該計算伺服器200C所傳送的該些組成像命令204係在一網路介面構件(NIC)210R1加以接收,並且被導引至一或多個CPU 220R、222R。該些CPU 220R、222R係連接至複數個圖形處理單元(GPU)240R、250R。藉由舉例非限制性的例子,GPU 240R可包含一組的GPU核心242R以及一視訊隨機存取記憶體(VRAM)246R。類似地,GPU 250R可包含一組的GPU核心252R以及一視訊隨機存取記憶體(VRAM)256R。該些CPU 220R、222R的每一個可以連接至該些GPU 240R、250R的每一個、或是連接至該些GPU 240R、250R的一子集合。在該些CPU 220R、222R以及該些GPU 240R、250R之間的通訊可以例如利用一通訊匯流排架構而被建立。儘管只有兩個CPU以及兩個GPU被展示,但是在該成像伺服器200R的實施的一特定例子中可以有超過兩個CPU以及GPU、或甚至是單一CPU或GPU。
該些CPU 220R、222R係與該些GPU 240R、250R合作以轉換該些組成像命令204成為用於該些參與的客戶裝置的複數個圖形輸出串流。在本實施例中,有兩個分別用於該些客戶裝置120、120A的圖形輸出 串流206、206A。此將會在稍後更詳細地加以描述。該成像伺服器200R係包括另一網路介面構件(NIC)210R2,該些圖形輸出串流206、206A係分別透過該網路介面構件(NIC)210R2而被傳送至該些客戶裝置120、120A。
III.雲端遊戲伺服器系統100(混合式架構)
圖2B係展示用於該雲端遊戲伺服器系統100的構件之一第二種可行的非限制性的實體配置。在此實施例中,一混合式伺服器200H係負責根據使用者輸入來追蹤在一電玩遊戲中的狀態改變以及成像圖形(影像)兩者。
如同在圖2B的構件之非限制性的實體配置中所示,該混合式伺服器200H係包括一或多個中央處理單元(CPU)220H、222H以及一隨機存取記憶體(RAM)230H。該些CPU 220H、222H例如可以透過一通訊匯流排架構而存取到該RAM 230H。儘管只有兩個CPU 220H、222H被展示,但應該體認到的是一較大數目個CPU或是只有單一CPU都可被設置在該混合式伺服器200H的某些範例實施方式中。該混合式伺服器200H亦包括一網路介面構件(NIC)210H,其中客戶裝置的輸入係透過網際網路130以從該些參與在該電玩遊戲中的客戶裝置的每一個加以接收。在目前敘述的範例實施例中,客戶裝置120以及客戶裝置120A都被假設是參與在該電玩遊戲中,並且因此該接收到的客戶裝置的輸入可包含客戶裝置的輸入140以及客戶裝置的輸入140A。
此外,該些CPU 220H、222H係連接至複數個圖形處理單元(GPU)240H、250H。藉由舉例非限制性的例子,GPU 240H可包含一組的GPU核心242H以及一視訊隨機存取記憶體(VRAM)246H。類似地,GPU 250H可包含一組的GPU核心252H以及一視訊隨機存取記憶體(VRAM)256H。該些 CPU 220H、222H的每一個可以連接至該些GPU 240H、250H的每一個、或是連接至該些GPU 240H、250H的一子集合。在該些CPU 220H、222H以及該些GPU 240H、250H之間的通訊可以利用例如一通訊匯流排架構而被建立。儘管只有兩個CPU以及兩個GPU被展示,但是在該混合式伺服器200H的實施的一特定例子中可以有超過兩個CPU及GPU、或甚至只是單一CPU或GPU。
該些CPU 220H、222H係與該些GPU 240H、250H合作以將該些組成像命令204轉換成為用於該些參與的客戶裝置的圖形輸出串流。在此實施例中,有兩個分別用於該些參與的客戶裝置120、120A的圖形輸出串流206、206A。該圖形輸出串流206、206A係分別經由該NIC 210H而被傳送至該些客戶裝置120、120A。
IV.雲端遊戲伺服器系統100(功能概觀)
現在另外參考到圖2C,該計算伺服器200C以及該成像伺服器200R(在圖2A中)及/或該混合式伺服器200H(在圖2B中)之上述的實體構件係實施一組功能模組,其包含一電玩遊戲功能模組270、一成像功能模組280以及一視訊編碼器285。根據圖2A之非限制性的實施例,該電玩遊戲功能模組270係藉由該計算伺服器200C來加以實施,而該成像功能模組280以及該視訊編碼器285係藉由該成像伺服器200R來加以實施。根據圖2B之非限制性的實施例,該混合式伺服器200H係實施該電玩遊戲功能模組270、成像功能模組280以及視訊編碼器285。
為了圖解的簡化起見,本範例實施例係論述單一電玩遊戲功能模組270。然而,應注意到的是,在該雲端遊戲伺服器系統100的一實際 的實施中,許多類似於該電玩遊戲功能模組270的電玩遊戲功能模組將會平行地加以執行。因此,該雲端遊戲伺服器系統100可以同時支援同一電玩遊戲的多個獨立的實例化(instantiation)、或是多個不同的電玩遊戲。再者,應注意到的是,該電玩遊戲可以是任何類型之單一玩家的電玩遊戲或是多玩家的遊戲。
該電玩遊戲功能模組270可藉由該計算伺服器200C(在圖2A中)或是該混合式伺服器200H(在圖2B中)的某些實體構件來加以實施。明確地說,該電玩遊戲功能模組270可以被編碼為電腦可讀取的指令,該些指令是可藉由一CPU(例如,在該計算伺服器200C中的CPU 220C、222C或是在該混合式伺服器200H中的CPU 220H、222H)來加以執行的。該些指令可以和該電玩遊戲功能模組270所用的常數、變數及/或其它資料一起實體地儲存在該RAM 230C(在該計算伺服器200C中)、或是該RAM 230H(在該混合式伺服器200H中)或是在另一記憶體區域中。在某些實施例中,該電玩遊戲功能模組270可以在一虛擬機器的環境內加以執行,該虛擬機器可以藉由一CPU(例如,在該計算伺服器200C中的CPU 220C、222C、或是在該混合式伺服器200H中的CPU 220H、222H)所執行的一作業系統來加以支援。
該成像功能模組280可藉由該成像伺服器200R(在圖2A中)或是該混合式伺服器200H(在圖2B中)的某些實體構件來加以實施。在一實施例中,該成像功能模組280可以佔據一或多個GPU(在圖2A中的240R、250R、在圖2B中的240H、250H),並且可以利用或是可不利用到CPU的資源。
該視訊編碼器285可藉由該成像伺服器200R(在圖2A中)或 是該混合式伺服器200H(在圖2B中)的某些實體構件來加以實施。熟習此項技術者將會體認到有各種的方式用來實施該視訊編碼器285。在圖2A的實施例中,該視訊編碼器285可藉由該些CPU 220R、222R及/或藉由該些GPU 240R、250R來加以實施。在圖2B的實施例中,該視訊編碼器285可藉由該些CPU 220H、222H及/或藉由該些GPU 240H、250H來加以實施。在又一實施例中,該視訊編碼器285可藉由一個別的編碼器晶片(未顯示)來加以實施。
在操作上,該電玩遊戲功能模組270係根據接收到的客戶裝置的輸入來產生該些組成像命令204。該接收到的客戶裝置的輸入可以載有識別其目標的電玩遊戲功能模組的資料(例如,一位址)、以及識別其所源自於的使用者及/或客戶裝置的資料。由於該些客戶裝置120、120A的使用者是在該電玩遊戲中的參與者(亦即,玩家或是旁觀者),因此該接收到的客戶裝置的輸入係包含從該些客戶裝置120、120A接收到的客戶裝置的輸入140、140A。
成像命令係指稱可被利用來指示一專門的圖形處理單元(GPU)以產生一影像或是影像的序列之命令。參照圖2C,該些組成像命令204係定義最終由該成像功能模組280所產生的影像。這些影像係以對於該客戶裝置的輸入140、140A之響應的一函數來改變,該些響應係被程式化到該電玩遊戲功能模組270中。例如,該電玩遊戲功能模組270可以用此種響應於某些特定的刺激以提供該使用者一進展的體驗(其中未來的互動被做成是不同的、更有挑戰性或是更刺激的),而對於某些其它特定的刺激之響應將會提供該使用者一退回或終止的體驗之方式而被程式化。儘管該些用於該電玩遊戲功能模組270的指令可被固定具有二進位可執行檔的形式, 但是該客戶裝置的輸入140、140A是未知的,直到和一使用對應的客戶裝置120、120A的玩家互動之時點為止。因此,根據所提供的特定客戶裝置的輸入,可以有廣泛而多樣的可能的結果。此種經由該些客戶裝置120、120A而在玩家/旁觀者以及該電玩遊戲功能模組270之間的互動可被稱為"遊戲進行"或是"進行一電玩遊戲"。
該成像功能模組280係處理該複數組成像命令204以產生複數個影像串流205。一般而言,每位參與者(或等同地每個客戶裝置)將會有一影像串流205。當執行成像時,用於在三維空間(例如,實體物件)或是二維空間(例如,文字)中表現一或多個物件之資料可被載入到一特定的GPU 240R、250R、240H、250H的一快取記憶體(未顯示)。此資料可藉由該GPU 240R、250R、240H、250H而被轉變成為一個二維的影像,該影像可被儲存在適當的VRAM 246R、256R、246H、256H中。就此而論,該VRAM 246R、256R、246H、256H可以提供用於一遊戲畫面的畫面元素(像素)值的暫時儲存。
該視訊編碼器285係壓縮並且編碼在每個影像串流205中的影像成為壓縮的視訊幀的串流。所產生的壓縮的視訊幀的串流係被稱為圖形輸出串流,其係依照每一客戶裝置分別被產生的。在本範例實施例中,該視訊編碼器285係產生用於客戶裝置120的圖形輸出串流206以及用於客戶裝置120A的圖形輸出串流206A。額外的功能模組可被設置以用於格式化該些視訊幀成為封包,因而它們可以透過網際網路130來加以發送。
V.成像命令的產生
藉由該電玩遊戲功能模組270以產生成像命令現在係參考圖2C、3A及 3B來更加詳細地加以敘述。明確地說,該電玩遊戲功能模組270的執行係牽涉到數個程序,其包含一主要遊戲程序300A以及一或多個圖形控制程序300B,其係在以下更加詳細地加以描述。
主要遊戲程序
一被稱為該主要遊戲程序的第一程序係參考圖3A加以描述。該主要遊戲程序300A係連續地執行。其係提供有一步驟310A作為該主要遊戲程序300A的部分,在該步驟期間,客戶裝置的輸入可加以接收。若該電玩遊戲是不可以旁觀的單一玩家的電玩遊戲,則來自單一客戶裝置(例如,客戶裝置120)之客戶裝置的輸入(例如,客戶裝置的輸入140)係被接收作為步驟310A的部分。若該電玩遊戲是多玩家的電玩遊戲或是具有旁觀的可能性之單一玩家的電玩遊戲,則來自一或多個客戶裝置(例如,該些客戶裝置120及120A)之客戶裝置的輸入(例如,該客戶裝置的輸入140及140A)可被接收作為步驟310A的部分。
藉由舉例非限制性的例子,來自一給定的客戶裝置之輸入可以傳達該給定的客戶裝置的使用者希望使得一在他或她的控制下之角色移動、跳動、踢、轉動、搖擺、拉、抓取、等等。替代或是額外地,來自該給定的客戶裝置之輸入可以傳達一由該給定的客戶裝置的使用者所做的功能表選擇以便於改變一或多個音訊、視訊或遊戲設定、載入/儲存一遊戲、或是產生或加入一網路對話。替代或是額外地,來自該給定的客戶裝置之輸入可以傳達該給定的客戶裝置的使用者希望選擇一特定的攝影機視角(例如,第一人稱或是第三人稱)或是改變他或她在該虛擬的世界內之視角的位置。
在步驟320A,該遊戲狀態可以至少部分是根據在步驟310A接收到的客戶裝置的輸入以及其它參數而被更新。更新該遊戲狀態可能牽涉到以下的動作:
首先,更新該遊戲狀態可以牽涉到更新和已經接收到的客戶裝置的輸入所來自的客戶裝置相關的參與者(玩家或旁觀者)的某些性質。這些性質可被儲存在該參與者資料庫10中。可被維持在該參與者資料庫10中並且在步驟320A被更新的參與者性質的例子可包含一攝影機視角選擇(例如,第一人稱、第三人稱)、一遊戲進行的模式、一所選的音訊或視訊設定、一技術等級、一消費者等級(例如,訪客、加值、等等)。
其次,更新該遊戲狀態可能牽涉到根據該客戶裝置的輸入的一解譯來更新在該虛擬的世界中的某些物件的屬性。其屬性將被更新的物件在某些情形中可藉由二維或三維的模型來加以表示,並且可包含進行遊戲的角色、非進行遊戲的角色以及其它物件。在一進行遊戲的角色的情形中,可被更新的屬性可包含該物件的位置、強度、武器/裝甲、剩餘壽命、特殊能力、速率/方向(速度)、動畫、視覺效果、能量、彈藥、等等。在其它物件(例如背景、植物、建築物、車輛、計分板、等等)的情形中,可被更新的屬性可包含該物件的位置、速度、動畫、損壞/健康的狀況、視覺效果、文字內容、等等。
應該體認到的是,除了客戶裝置的輸入以外的參數也可以影響以上的(參與者的)性質以及(虛擬的世界之物件的)屬性。例如,各種的計時器(例如,經過的時間、從一特定事件開始之經過的時間、虛擬的時刻、玩家的總數、一參與者的地理位置、等等)可以對於該遊戲狀態的各種特點 具有影響。
一旦該遊戲狀態在步驟320A的執行下已經進一步被更新後,該主要遊戲程序300A係回到步驟310A,之後從上一次通過該主要遊戲程序後接收之新的客戶裝置的輸入係加以收集與處理。
圖形控制程序
一被稱為該圖形控制程序的第二程序現在係參考圖3B加以敘述。該圖形控制程序300B可以連續地執行,並且可以有複數個別的圖形控制程序300B,該些圖形控制程序300B的每一個係產生該些組成像命令204中之個別的一組成像命令204。在不可能旁觀的單一玩家的電玩遊戲的情形中只有一玩家,並且因此只有一組產生的成像命令204,並且因此該圖形控制程序300B可以執行作為上述的主要遊戲程序300A的一延伸。在多玩家的電玩遊戲的情形中,多個不同組成像命令需要為了該多個玩家而被產生,並且因此多個圖形控制程序300B可以平行地執行。在具有旁觀可能性的單一玩家的遊戲的情形中,同樣可以只有單一組成像命令204,並且因此單一圖形控制程序300B可以執行在該電玩遊戲功能模組270中,但是該所產生的影像串流可藉由該成像功能模組280而被複製用於該些旁觀者。當然,這些只是實施方式的例子而已,而且並非被視為限制性的。
在該圖形控制程序300B的步驟310B之處,對於需要一不同的影像串流之一給定的參與者而言,該電玩遊戲功能模組270係決定將被成像給該給定的參與者之物件。此步驟可包含識別以下的物件類型:
首先,此步驟可包含針對於該給定的參與者以從該虛擬的世界識別出那些在"遊戲畫面的成像範圍"(亦以一"場景"著稱)內的物件。該遊 戲畫面的成像範圍係包含從該給定的參與者的攝影機的視野來看將會是"可見的"虛擬的世界之部分。此係依據該攝影機相對在該虛擬的世界中的該些物件之位置及方位而定。在步驟310B的實施方式的一非限制性的例子中,一視景體(frustum)可被施加至該虛擬的世界,並且在該視景體內之物件係被保留或標記。該視景體係具有一位在該給定的參與者的攝影機的位置處之頂端,並且具有一同樣藉由該攝影機的方向性所界定之方向性。
其次,此步驟可包含識別出並未出現在該虛擬的世界中之額外的物件,但仍然被成像以用於該給定的參與者。例如,這些額外的物件可包含文字訊息、圖形警告以及儀表板指示器,此僅舉出一些非限制的可能性而已。
在步驟320B,該電玩遊戲功能模組270係產生一組用於將步驟310B所識別出的物件成像成為影像的命令。成像可以指稱一物件或是群組的物件的3D或2D座標根據該觀看的視角以及主要的照明狀況而轉換成為一可顯示的影像。此可以利用任意數目個不同的演算法及技術來加以達成,例如是如同在2005年Springer-Verlag倫敦有限公司的由MaxK.Agoston所著的"電腦圖形及幾何模型:實施方式及演算法"中所敘述者,其係在此被納入作為參考。
在步驟330B之處,在步驟320B所產生的成像命令係被輸出至該成像功能模組280。此可能牽涉到分封化(packetizing)該些產生的成像命令成為一組被傳送至該成像功能模組280的成像命令204。
熟習此項技術者將會體認到,上述的圖形控制程序300B的多個實例化可被執行,此係產生多組成像命令204。
VI.圖形輸出的產生
該成像功能模組280係解譯該複數組成像命令204,並且產生複數組影像串流205,每個參與的客戶裝置各有一影像串流205。成像可藉由該些GPU 240R、250R、240H、250H在該些CPU 220R、222R(在圖2A中)或是220H、222H(在圖2B中)的控制下來加以達成。對於一參與的客戶裝置產生影像所用的速率可被稱為幀速率。
在一其中有N個參與者的實施例中,可以有N組成像命令204(每個參與者分別有一組)以及N個影像串流205(每個參與者分別有一個)。在該情形中,成像功能並未被該些參與者所共用。然而,該N個影像串流205亦可從M組成像命令204(其中M<N)來加以產生,使得較少組成像命令是需要藉由該成像功能模組280加以處理的。在該情形中,該成像功能單元280可以執行共用或複製,以便於從一較小數目組成像命令204產生一較大數目個影像串流205。當多個參與者(例如,旁觀者)希望觀看相同的攝影機視角時,此種共用或複製可能是普遍的。因此,該成像功能模組280可以對於一或多個旁觀者執行例如是複製一被產生的影像串流之功能。
接著,在該些影像串流205的每一個中的影像係藉由該視訊編碼器285加以編碼,此係產生和每個客戶裝置相關的一序列的編碼的影像,其係被稱為一圖形輸出串流。在圖2A-2C的範例實施例中,目標是客戶裝置120之編碼的影像的序列係被稱為圖形輸出串流206,而目標是客戶裝置120A之編碼的影像的序列係被稱為圖形輸出串流206A。
該視訊編碼器285可以是一裝置(或是電腦可讀取的指令組),其係致能、執行或是界定一用於數位視訊的視訊壓縮或解壓縮演算法。 視訊壓縮係轉換一原始串流的數位影像資料(以像素位置、色彩值、等等表示)成為一傳達實質相同的資訊但是利用較少的位元之輸出串流的數位影像資料。任何適當的壓縮演算法都可被使用。除了資料壓縮之外,被用來編碼一特定影像的編碼程序可以施加、或是可不施加密碼的加密。
用以上的方式產生的圖形輸出串流206、206A係透過網際網路130而被傳送至個別的客戶裝置。藉由舉例非限制性的例子,該些圖形輸出串流可被分段並且格式化成為封包,每個封包都具有一表頭(header)以及一裝載資料(payload)。包含針對於一給定的參與者之一影像的一封包的表頭係可包含和該給定的參與者相關的客戶裝置的一網路位址,而該裝載資料可包含該影像的全部或部分。在一非限制性的實施例中,被用來編碼一給定的影像的壓縮演算法之身分及/或版本可被編碼在一或多個傳遞該給定的影像之封包的內容中。其它發送該編碼的影像之方法亦將會被具有此項技術中的技能者所思及。
儘管本說明係聚焦在一視訊幀之個別的2D影像的成像,但是本發明並不排除每個幀成像及編碼多組2D影像以產生一3D效果的可能性。
VII.在客戶裝置處的遊戲畫面再現
現在係參考到圖4A,其係藉由舉例非限制性的例子來展示和一給定的參與者相關的客戶裝置的操作,該客戶裝置可以是客戶裝置120或是客戶裝置120A。
在步驟410A,編碼的影像(在該圖形輸出串流206、206A中之一)係根據實施例而透過網際網路130從該成像伺服器200R(圖2A)或是從 該混合式伺服器200H(圖2B)來加以接收。
在步驟420A,該編碼的影像係根據和用在該編碼程序的壓縮演算法互補的解壓縮演算法來加以解碼。在一非限制性的實施例中,被用來編碼該影像的壓縮演算法的身分或版本可以是事先已知的。在其它實施例中,被用來編碼該影像的壓縮演算法的身分或版本可以是在一或多個傳遞該影像之封包的內容中被指明的。
在步驟430A,該些(解碼後的)影像係被處理。此可以包含將該解碼後的影像設置在一緩衝器中、執行錯誤校正、重新排列及/或組合多個連續的影像、alpha混合、內插遺失的影像之部分、等等。其結果可以是一以逐幀的方式被呈現至使用者之最終的影像。
在步驟440A,該最終的影像係經由該客戶裝置的輸出機構來加以輸出。例如,一複合的視訊幀可被顯示在該客戶裝置的顯示器上。
VIII.音訊的產生
一被稱為該音訊產生程序的第三程序現在係參考圖3C來加以敘述。該音訊產生程序係對於每個需要一不同的音訊串流之參與者連續地執行。在一實施例中,該音訊產生程序可以獨立於該圖形控制程序300B之外地執行。在另一實施例中,該音訊產生程序以及該圖形控制程序的執行可加以協調。
在步驟310C,該電玩遊戲功能模組270係決定待被產生的聲音。明確地說,此步驟可包含識別出那些和在該虛擬的世界中之物件相關的聲音,該些聲音係由於其音量(響度)及/或在該虛擬的世界內位於該參與者的附近而構成聲景觀(acoustic landscape)。
在步驟320C,該電玩遊戲功能模組270係產生一音訊片段。該音訊片段的持續期間可以跨越一視訊幀的持續期間,儘管在某些實施例中,音訊片段可以比視訊幀較不頻繁地加以產生,而在其它實施例中,音訊片段可以比視訊幀更頻繁地加以產生。
在步驟330C,該音訊片段例如是藉由一音訊編碼器而被編碼,此係產生一編碼的音訊片段。該音訊編碼器可以是一裝置(或是指令組),其係致能、或實行、或是界定一音訊壓縮或解壓縮演算法。音訊壓縮係轉換一原始串流之數位音訊(被表示為一隨著時間過去在振幅及相位上改變的聲波)成為一傳遞實質相同的資訊但是利用較少位元的輸出串流的數位音訊資料。任何適當的壓縮演算法都可被使用。除了音訊壓縮之外,被用來編碼一特定的音訊片段的編碼程序可以施加、或是可不施加密碼的加密。
應該體認到的是,在某些實施例中,該些音訊片段可以藉由在該計算伺服器200C(圖2A)或是該混合式伺服器200H(圖2B)的任一者中之專門的硬體(例如,一音效卡)來加以產生。在一可以適用於圖2A的分散式配置的替代實施例中,該音訊片段可藉由該電玩遊戲功能模組270而被參數化成為語音參數(例如,LPC參數),並且該些語音參數可以藉由該成像伺服器200R而被重新散布至目的地的客戶裝置(例如,客戶裝置120或客戶裝置120A)。
用以上的方式產生之編碼的音訊係透過網際網路130來加以傳送。藉由舉例非限制性的例子,該編碼的音訊輸入可被分解及格式化成為封包,每個封包係具有一表頭以及一裝載資料。該表頭可以載有一和該音訊產生程序正為了其而被執行的參與者相關的客戶裝置的一位址,而 該裝載資料可以包含該編碼的音訊。在一非限制性的實施例中,被用來編碼一給定的音訊片段的壓縮演算法的身分及/或版本可被編碼在一或多個傳遞該給定的片段之封包的內容中。其它發送該編碼的音訊之方法亦將會被具有此項技術中的技能者所思及。
現在係參考到圖4B,其係藉由舉例非限制性的例子來展示和一給定的參與者相關的客戶裝置的操作,該客戶裝置可以是客戶裝置120或客戶裝置120A。
在步驟410B,一編碼的音訊片段係從該計算伺服器200C、該成像伺服器200R或是該混合式伺服器200H(根據實施例而定)加以接收。在步驟420B,該編碼的音訊係根據和用在該編碼程序的壓縮演算法互補的解壓縮演算法而被解碼。在一非限制性的實施例中,被用來編碼該音訊片段的壓縮演算法的身分或版本可以是在一或多個傳遞該音訊片段之封包的內容中被指明的。
在步驟430B,該些(解碼後的)音訊片段係被處理。此可以包含設置該些解碼後的音訊片段在一緩衝器中、執行錯誤校正、組合多個連續波形、等等。該結果可以是一以逐幀的方式被呈現至該使用者之最終的聲音。
在步驟440B,該最終產生的聲音係經由該客戶裝置的輸出機構來加以輸出。例如,該聲音係透過該客戶裝置的一音效卡或是揚聲器而被播放。
IX.非限制性的實施例之特定的說明
本發明的某些非限制性的實施例之更詳細的說明現在係加以提供。然 而首先,提供有關該參與者資料庫10之額外的細節可能是有用的,其係在圖1中展示並且現在進一步參考到圖6來加以敘述。該參與者資料庫10係儲存每一位玩家的參數(亦即,"玩家相關的參數"610)。每位玩家可具有一玩家ID,並且該些玩家相關的參數610可以根據玩家ID來加以組織。用於一具有一給定的玩家ID之玩家的玩家相關的參數可以包含例如是該玩家的客戶裝置的IP位址、該玩家的客戶裝置的位置、該玩家的帳戶資訊、該玩家的用戶設定檔、該玩家的人口統計資料(年齡、性別、收入等)、等等之資料。
此外,該參與者資料庫10係儲存用於每一位旁觀者的基本參數(亦即,"基本的旁觀者相關的參數"620)。每位旁觀者都可具有一旁觀者ID,並且該些基本的旁觀者相關的參數620可以根據旁觀者ID來加以組織。用於一具有一給定的旁觀者ID之旁觀者的基本的旁觀者相關的參數可以包含例如是該旁觀者的客戶裝置的IP位址、該旁觀者的客戶裝置的位置、該旁觀者的帳戶資訊、該旁觀者的用戶設定檔、該旁觀者的人口統計資料(年齡、性別、收入等)、該旁觀者正在旁觀的玩家的玩家ID、等等之資料。
再者,該參與者資料庫10係儲存用於該些旁觀者中的一或多個之可自訂的顯示設定參數(亦即,"可自訂的旁觀者相關的參數"630)。在某些實施例中,該些可自訂的旁觀者相關的參數可以包含代表一色彩、名稱或商標之資料。在其它實施例中,該些可自訂的旁觀者相關的參數可包含一代表一表面紋理的檔案,其可以是包含一照片、標誌等等的任何種類之影像。在另外其它實施例中,該些可自訂的旁觀者相關的參數可包含一視訊。
現在考量一其中該電玩遊戲是可以藉由一註冊為該遊戲的 旁觀者的參與者旁觀之實施例。在此實施例中,並且如同在圖5中所示,為了舉例的緣故係假設單一玩家500P以及單一旁觀者500S,但將瞭解到的是,超過一玩家可以進行該電玩遊戲並且超過一旁觀者可以旁觀該電玩遊戲。在本實施例中,該玩家500P是客戶裝置120的一使用者,並且該旁觀者500S是客戶裝置120A的一使用者。
現在參考到圖7,客戶裝置120A的旁觀者500S係供應一顯示設定參數710至該雲端遊戲伺服器系統100。該顯示設定參數710可被提供做為來自客戶裝置120A的客戶裝置的輸入140A的部分。根據本發明的實施例,該雲端遊戲伺服器系統100係藉由根據該顯示設定參數710來修改該些可自訂的旁觀者相關的參數630中的一或多個來作為響應。此係導致一特定的物件的一圖形特點(例如,色彩、紋理)之一修改,該修改係出現在被提供至該旁觀者500S的圖形輸出串流206A中,但是並未出現在被提供至該玩家500P的圖形輸出串流206中。因此,該玩家500P不會分心而脫離該遊戲,而該旁觀者500S將能夠從觀察在圖形輸出串流206A中的影像來確認他/她正即時地旁觀遊戲,而不是觀看一記錄。
實施例
為了描述該實施例,其係參考到圖8,圖8係概念上描繪藉由該電玩遊戲功能模組270產生成像命令以及藉由該成像功能模組280產生圖形輸出串流206、206A。
主要遊戲程序
該電玩遊戲功能模組270係執行標示為300A的主要遊戲程序。該主要遊戲程序300A係包含步驟310A及320A,其係先前參考圖3A所敘述的, 而現在是在牽涉到該玩家500P以及該旁觀者500S的實施例的背景下加以敘述。
在步驟310A,客戶裝置的輸入可加以接收。在此例中,回想起的是客戶裝置120是一玩家裝置,並且客戶裝置120A是一旁觀者裝置。從這兩種類型的客戶裝置接收到輸入140、140A的本質是不同的,並且現在係加以解說。
在該玩家500P的客戶裝置120的情形中,該客戶裝置的輸入140可以傳達該玩家500P希望使得一在他或她的控制下之角色移動、跳動、踢、轉動、搖擺、拉、抓取、等等。替代或是額外地,客戶裝置的輸入140可以傳達一由該玩家500P所做的功能表選擇以便於改變一或多個音訊、視訊或遊戲設定、載入/儲存一遊戲、或是產生或加入一網路對話。替代或是額外地,客戶裝置的輸入140可以傳達該玩家500P希望選擇一特定的攝影機視角(例如,第一人稱或是第三人稱)或是改變他或她在該虛擬的世界內之視角的位置。
在該旁觀者500S的客戶裝置120A的情形中,該客戶裝置的輸入140A可以傳達一由該旁觀者500S所做的功能表選擇以便於改變一或多個音訊或視訊設定、載入/儲存一遊戲、或是產生或加入一網路對話。此外,對於該旁觀者500S的客戶裝置120A的情形而言,客戶裝置的輸入140A可以傳達一顯示設定參數710。該顯示設定參數710可包含藉由該旁觀者500S經由客戶裝置120A所設定用於顯示之額外的資料。額外的資料的例子可能是一特定的色彩、紋理、照片、文字訊息、商標、標誌、網頁位址視訊、或是其它個人化的指標。再者,該顯示設定參數710可包含用於改變 內含在一被旁觀的畫面,亦即一用於一正由玩家500P的操作所進行的遊戲的畫面中之一特定的成像物件的一顯示狀態之資訊。用於改變一成像物件的一顯示狀態之資訊可以是如上所解說的用於改變一色彩、一紋理或類似者之資訊,並且可以是決定一顯示位置、一通透性、顯示的存在或不存在、額外效果的存在或不存在、或類似者之某種資訊。
在步驟320A,該遊戲狀態可以根據在步驟310A接收到的客戶裝置的輸入140以及其它參數來加以更新。更新該遊戲狀態可能牽涉到以下的動作:
首先,更新該遊戲狀態可能牽涉到根據該客戶裝置的輸入140來更新該玩家相關的參數610中的某些個。可被維持在該參與者資料庫10中並且在步驟320A被更新之玩家相關的參數的例子可包含一攝影機視角選擇(例如,第一人稱、第三人稱)、一遊戲進行的模式、一所選的音訊或視訊設定、一技術等級、一消費者等級(例如,訪客、加值、等等)。
此外,更新該遊戲狀態可能牽涉到根據該客戶裝置的輸入140的一解譯來更新在該虛擬的世界中的某些物件的屬性。其屬性將被更新的物件在某些情形中可藉由二維或三維的模型來加以表示,並且可包含進行遊戲的角色、非進行遊戲的角色以及其它物件。在一進行遊戲的角色的情形中,可在步驟320A被更新的屬性可包含該物件的位置、強度、武器/裝甲、剩餘壽命、特殊能力、速率/方向(速度)、動畫、視覺效果、能量、彈藥、等等。在其它物件(例如,背景、植物、建築物、車輛、計分板、等等)的情形中,可被更新的屬性可包含該物件的位置、速度、動畫、損壞/健康的狀況、視覺效果、文字內容、等等。該些物件模型以及其屬性可被儲存 在一物件資料庫(未顯示)中。
應該體認到的是,除了該客戶裝置的輸入140以外的刺激可以影響該些參數以及物件屬性。例如,各種的計時器(例如,經過的時間、從一特定事件開始之經過的時間、虛擬的時刻、玩家的總數、一參與者的地理位置、等等)可以對於該遊戲狀態的各種特點(例如是玩家相關的參數以及物件屬性)具有影響。
此外,在步驟320A中,該些基本的旁觀者相關的參數620或是該些可自訂的旁觀者相關的參數630中的某些個係根據從客戶裝置120A接收到的顯示設定參數710來加以更新。
因為內含在該顯示設定參數710中的資訊只對於被提供至客戶裝置120A的畫面的成像有影響,因此其係和該遊戲狀態分開地加以處理。換言之,在此實施例中,為了傳送到利用客戶裝置120的玩家500P,對應於他或她本身的操作、設定或類似者的遊戲畫面係被產生及呈現。在另一方面,為了傳送到利用客戶裝置120A的旁觀者500S,對應於該些被提供至玩家500P的畫面之畫面係被提供,但是所採取的配置係使得在該些畫面的產生中,該些成像物件的一部分的一顯示狀態例如可加以改變。這是因為一藉由旁觀者500S所做的顯示狀態的改變並非玩家500P所期望的改變之可能性是高的,並且有可能玩家500P的遊戲進行將會因為由旁觀者500S所做的顯示狀態的改變施加至被提供至玩家500P的畫面而變成困難的。於是,對於在此實施例中的每個客戶裝置120A而言,儘管基本上具有一類似施加至該些被提供至客戶裝置120的畫面之配置,但是具有一顯示狀態的畫面係被提供,其中使用該些畫面的使用者(玩家500P)的愛好係被反映出 來。根據該顯示設定參數710來更新該些可自訂的旁觀者相關的參數630的顯示設定係藉由在圖8中介於該主要遊戲程序300A以及該參與者資料庫10之間的一虛線箭頭來加以描繪。
一旦該遊戲狀態在步驟320A的執行下已經進一步被更新後,該主要遊戲程序300A係回到步驟310A,之後從上一次通過該主要遊戲程序後接收到的新的客戶裝置的輸入係加以收集與處理。
圖形控制程序
在該實施例中,回想起的是有單一玩家500P以及單一旁觀者500S。該電玩遊戲功能模組270係對於該玩家500P執行單一圖形控制程序(在圖8中被標示為"300B(玩家)"),此係造成一組成像命令804的產生,該組成像命令804係被提供至該成像功能模組280。該圖形控制程序300B(玩家)係包含步驟310B、320B及330B,其係先前參考圖3B加以敘述的,並且現在是在本發明的第一實施例的背景下加以敘述。
明確地說,在該圖形控制程序300B(玩家)的步驟310B,該電玩遊戲功能模組270係決定待被成像用於該玩家500P的物件。步驟310B可包含從該虛擬的世界識別出那些位在用於該玩家500P的遊戲畫面的成像範圍中的物件。步驟310B亦可包含識別並未出現在該虛擬的世界中之額外的物件,但仍然被成像以用於該玩家500P。例如,這些額外的物件可包含文字訊息、圖形警告以及儀表板指示器,此僅舉出一些非限制的可能性而已。
在步驟320B,該電玩遊戲功能模組270係產生該組命令804P,以用於將在步驟310B識別出的物件成像成為影像。此步驟係考量到 該攝影機參數、以及照明狀況及各種的物件特徵。
在步驟330B之處,在步驟320B所產生的該組成像命令804P係被輸出至該成像功能模組280。
用於玩家500P的圖形輸出串流206的產生
一在該成像功能模組280中的圖形程序820係解譯該組成像命令804P,並且產生一用於該玩家500P的客戶裝置120之對應的影像串流805P。在影像串流805P中的影像係藉由該視訊編碼器285來加以編碼,此係產生被傳送至該玩家500P的客戶裝置120之圖形輸出串流206。
用於旁觀者500S的圖形輸出串流206A的產生
在該成像功能模組280內,用於該玩家500P的該組成像命令804P(藉由該圖形控制程序300B(玩家)產生的)可被複製並且饋入到一修改器810的一輸入。該修改器810係根據該顯示設定來修改該組複製的成像命令804P。明確地說,該顯示設定係被輸入至該修改器810。該修改器810係根據該顯示設定來修改在該組複製的成像命令804P中之成像命令中的一或多個,此係產生一組修改後的成像命令804S。
更明確地說,該修改器810係在內含於該組複製的成像命令804P的參數中識別出一因為用於旁觀者500S的顯示設定而發生改變的參數。接著,藉由該修改器810以一內含在該顯示設定中的值來取代以改變該參數,用於具有一符合旁觀者500S的愛好之顯示狀態的畫面之該組修改後的成像命令804S係被產生。注意到的是,在此實施例中所給予的解說是使得該組修改後的成像命令804S是藉由該顯示設定來改變一內含在該組複製的成像命令804P中的參數加以產生的,但是在其中該顯示設定係包含使 得一特定的成像物件為不顯示的內容的情形中,可以採取配置以使得該組修改後的成像命令804S是藉由從該組複製的成像命令804P刪除該些成像命令之一對應的部分的成像命令加以產生的。
該組修改後的成像命令804S係接著藉由一類似於該圖形程序820的圖形程序830來加以處理,此係產生一用於該旁觀者500S的影像串流805S。該影像串流805S係包含對於該顯示設定參數710的響應之一顯示,而影像串流805P則無。
在影像串流805S中的影像係藉由該視訊編碼器285來加以編碼,此係產生被傳送至該旁觀者500S的客戶裝置120之圖形輸出串流206A。
在客戶裝置120之處,該玩家500P係觀看在圖形輸出206中編碼的影像,而在客戶裝置120A之處,該旁觀者500S係觀看在圖形輸出串流206A中編碼的影像。圖9係展示該玩家500P可看到的一個例子,而圖10係展示該旁觀者500S可看到的一個例子。
以此種方式,在本實施例的系統中,藉由再利用一對於提供至該玩家的畫面所產生的成像命令來改變該些參數的一部分以符合該旁觀者想要的一顯示狀態,該些所要的畫面可以在不發生對於該玩家的畫面之影響下被提供至該旁觀者。
變化
先前係對於一種藉由改變該些命令的一部分以產生用於被提供至希望觀看相同的畫面之旁觀者500S的畫面的成像命令之方法給予解說,因為用於被提供至該客戶裝置120的玩家500P的畫面之成像命令係在上述實施例 的系統中之伺服器上加以產生。
注意到的是,在雲端遊戲系統中,一旁觀者通常以和該玩家相同的視角來旁觀成像的畫面。然而,若一種其中成像命令係如同在上述的實施例地改變以便於改變該顯示狀態之配置被採用,則產生一其中該視角係為了該旁觀者而被改變的畫面是可能的。然而,考量在雲端遊戲系統中的處理資源以及記憶體資源,投入和提供至玩家等同的資源於提供畫面給並未進行遊戲的旁觀者是不切實際的。換言之,例如,在其中用於該旁觀者的畫面產生中容許一視角改變的情形中,由於該視角改變而新內含在該成像範疇中的物件之成像及照明計算會變成是必要的。在此,與該玩家的遊戲進行無關的資源使用係發生在用於讀取發生新成像的必要性的一物件之資料的處理、將其載入到記憶體中、配置該載入所必要的一記憶體區域、用於照明計算、與類似者,以用於該旁觀者的畫面之產生。換言之,有可能會因為允許一視角改變而發生資源短缺,並且在最壞情況中會對於該玩家的遊戲進行有所影響。
在另一方面,因為對於旁觀者所做的一視角改變之需求是強烈的,因此將會對於一種在用於該旁觀者的畫面產生中辨識出一視角改變之方法給予解說,同時避免在該變化中之一大量增加的資源使用。
在該變化中,圖8的修改器810係判斷一用於一視角改變的設定是否內含在該顯示設定中。在用於視角改變的設定是內含在其中的情形中,例如在用於客戶裝置120的圖形控制程序300B(玩家)的步驟310B中識別出之被判斷為使用於成像的一表列的成像物件係加以獲取。接著,在其中一視角改變係根據該設定而被執行的情形中,該修改器810係判斷 內含在該成像範疇中的成像物件是否全部都內含在該表列中。即使一視角改變係被做成,若用於畫面成像的成像物件係和用於該玩家的畫面成像之成像物件相同、或是若其係為那些用於該玩家的畫面成像之成像物件的一部分,則至少重新載入新的成像物件資料到記憶體中是不必要的。因為在像是此種其中在該些成像物件上有很少改變的情形中,在照明狀況上的一改變或類似者是不太可能的,因此其可被視為對於考慮用於照明計算的計算量上的增加之必要性是低的。於是,只有在其中於該視角改變後之用於畫面成像的成像物件都是內含在用於被提供至玩家500P的畫面的成像之成像物件群組內的情形中,該修改器810才會為了一視角設定而從該組複製的成像命令804P改變一成像命令。
在此種配置下,在該變化的系統中,當該旁觀者旁觀該玩家的遊戲進行時,該旁觀者係能夠接收到針對於一所要的視角成像的畫面之提供。
注意到的是,在該變化中,為了畫面提供而投入和該玩家等同的資源至並非執行遊戲進行的旁觀者是被假設為不切實際的,並且所給予的解說是使得一限制被加到在提供給該旁觀者的畫面中所容許的視角改變的範疇,但是本發明的成果並不限於此。在其中有充沛的資源的情形中,並不需要增加限制到視角的改變。
結論
在該旁觀者500S已經發出該顯示設定參數710後,在觀看圖形輸出串流206A中之編碼的影像時,該旁觀者500S可能有機會觀察到一成像的物件的外觀之改變。由於認知到僅僅根據影像後置處理來造成此種外觀的改 變所牽涉到的困難度,因此該旁觀者500S可被提供增大的信心度於該些正被觀看的影像係代表即時的遊戲進行。
即時的遊戲進行之確認在提供額外的便利性及刺激性給個別的旁觀者上可能是有用的。在某些商業的背景中,當管理對於被旁觀的電玩遊戲的結果之賭注的下注時,由本發明的某些實施例所提供的確認可能是一種有用的工具。
熟習此項技術者應該體認到,以上論述的實施例係欲被視為舉例說明而非限制性的。亦應該體認到的是,對於本發明的某些實施例的操作可能是所需的額外元件可能尚未加以敘述或說明,因為它們被假設是在此項技術中具有普通技能者的範疇之內。再者,本發明的某些實施例可以不具有明確在此揭露的任何元件、可以缺少該元件且/或可以在無該元件下運作。
熟習此項技術者亦將會體認到,可以對所述的實施例做成額外的調適及修改。因此,本發明的範疇並不限於以上特定實施例的說明,而是由在此所附的申請專利範圍所界定。
其它實施例
儘管本發明已經參考範例實施例加以敘述,但將瞭解到的是,本發明並不限於該些揭露的範例實施例。以下的申請專利範圍的範疇係欲被授予最廣的解釋,以便於涵蓋所有此種修改以及等同的結構及功能。再者,根據本發明的資訊處理裝置以及該資訊處理裝置的控制方法係可藉由一種在一電腦上執行該方法之程式來加以實現的。該程式是可藉由儲存在一電腦可讀取的儲存媒體上或是透過一電子通訊線路來提供/散布的。
10‧‧‧參與者資料庫
100‧‧‧雲端遊戲伺服器系統
120‧‧‧客戶裝置
120A‧‧‧客戶裝置
130‧‧‧網際網路
140‧‧‧客戶裝置的輸入
140A‧‧‧客戶裝置的輸入

Claims (7)

  1. 一種資訊處理裝置,其係對於一待被提供至複數個客戶裝置的畫面產生一成像命令,該裝置係包括:用於從一第一客戶裝置獲取在該第一客戶裝置上所做的一操作輸入的資訊之第一獲取構件;用於根據該操作輸入的資訊以對於一待被提供至該第一客戶裝置的第一畫面產生一第一成像命令之第一產生構件;用於從一第二客戶裝置獲取用於改變一成像物件的一顯示狀態的改變資訊之第二獲取構件,一第二畫面係根據被提供至該第二客戶裝置的該操作輸入的資訊來加以改變;以及用於藉由根據該改變資訊來改變該第一成像命令以對於該第二畫面產生一第二成像命令之第二產生構件。
  2. 根據申請專利範圍第1項之資訊處理裝置,其中該第二產生構件係藉由利用一內含在該改變資訊中的成像參數來取代內含在該第一成像命令中的成像參數的至少一部分以產生該第二成像命令。
  3. 根據申請專利範圍第1或2項之資訊處理裝置,其進一步包括用於指明一用於一畫面的產生之成像物件群組的指明構件,其中在一其中該第一成像命令係根據內含在該改變資訊中的視角資訊而被改變的情形中,當一用於一藉由該命令所產生的畫面之成像物件群組的全部係內含在一用於該第一畫面的產生之成像物件群組中時,該第二產生構件係根據內含在該改變資訊中的視角資訊來改變該第一成像命令的視角資訊。
  4. 一種成像裝置,其係包括:用於利用藉由根據申請專利範圍第1至3項的任一項之資訊處理裝置所產生的成像命令以產生一畫面之成像構件,該成像裝置係包括:用於發送一根據該第一成像命令所產生的第一畫面至一第一客戶裝置之第一發送構件;以及用於發送一根據該第二成像命令所產生的第二畫面至一第二客戶裝置之第二發送構件。
  5. 根據申請專利範圍第4項之成像裝置,其中該成像構件係平行地執行該第一畫面的產生以及該第二畫面的產生。
  6. 一種用於控制一資訊處理裝置之方法,該資訊處理裝置係對於一待被提供至複數個客戶裝置的畫面產生一成像命令,該方法係包括:一從一第一客戶裝置獲取在該第一客戶裝置上所做的一操作輸入的資訊之第一獲取步驟;一根據該操作輸入的資訊以對於一待被提供至該第一客戶裝置的第一畫面產生一第一成像命令之第一產生步驟;一從一第二客戶裝置獲取用於改變一成像物件的一顯示狀態的改變資訊之第二獲取步驟,一第二畫面係根據被提供至該第二客戶裝置的該操作輸入的資訊來加以改變;以及一藉由根據該改變資訊來改變該第一成像命令以對於一待被提供至該第二客戶裝置的第二畫面產生一第二成像命令之第二產生步驟。
  7. 一種用於使得一或多個電腦執行一種對於一待被提供至複數個客戶裝置的畫面產生一成像命令的方法之程式,該方法係包括: 一從一第一客戶裝置獲取在該第一客戶裝置上所做的一操作輸入的資訊之第一獲取步驟;一根據該操作輸入的資訊以對於一待被提供至該第一客戶裝置的第一畫面產生一第一成像命令之第一產生步驟;一從一第二客戶裝置獲取用於改變一成像物件的一顯示狀態的改變資訊之第二獲取步驟,一第二畫面係根據被提供至該第二客戶裝置的該操作輸入的資訊來加以改變;以及一藉由根據該改變資訊來改變該第一成像命令以對於一待被提供至該第二客戶裝置的第二畫面產生一第二成像命令之第二產生步驟。
TW103107188A 2013-03-05 2014-03-04 資訊處理裝置、成像裝置、方法及程式 TWI608856B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US201361772690P 2013-03-05 2013-03-05

Publications (2)

Publication Number Publication Date
TW201442770A TW201442770A (zh) 2014-11-16
TWI608856B true TWI608856B (zh) 2017-12-21

Family

ID=51491427

Family Applications (1)

Application Number Title Priority Date Filing Date
TW103107188A TWI608856B (zh) 2013-03-05 2014-03-04 資訊處理裝置、成像裝置、方法及程式

Country Status (6)

Country Link
US (1) US9858210B2 (zh)
EP (1) EP2965212A4 (zh)
JP (1) JP6232423B2 (zh)
CA (1) CA2872130C (zh)
TW (1) TWI608856B (zh)
WO (1) WO2014136920A1 (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9374552B2 (en) * 2013-11-11 2016-06-21 Amazon Technologies, Inc. Streaming game server video recorder
US9634942B2 (en) 2013-11-11 2017-04-25 Amazon Technologies, Inc. Adaptive scene complexity based on service quality
US9582904B2 (en) 2013-11-11 2017-02-28 Amazon Technologies, Inc. Image composition based on remote object data
US9805479B2 (en) 2013-11-11 2017-10-31 Amazon Technologies, Inc. Session idle optimization for streaming server
US9578074B2 (en) 2013-11-11 2017-02-21 Amazon Technologies, Inc. Adaptive content transmission
US9641592B2 (en) 2013-11-11 2017-05-02 Amazon Technologies, Inc. Location of actor resources
US20150133216A1 (en) * 2013-11-11 2015-05-14 Amazon Technologies, Inc. View generation based on shared state
US9604139B2 (en) 2013-11-11 2017-03-28 Amazon Technologies, Inc. Service for generating graphics object data
JP6659479B2 (ja) * 2016-06-28 2020-03-04 Line株式会社 情報処理装置の制御方法、情報処理装置及びプログラム
JP6808419B2 (ja) * 2016-09-26 2021-01-06 キヤノン株式会社 画像処理システム及びその制御方法
PT109807A (pt) * 2016-12-23 2018-06-25 Inst Superior Tecnico Método para interação remota em tempo-real entre um telespetador e um programa de televisão em direto, e sistema que o implementa
US11210965B2 (en) * 2018-05-17 2021-12-28 Pearson Education, Inc. Diagnostic analyzer for visual-spatial content
US10688390B2 (en) 2018-11-05 2020-06-23 Sony Interactive Entertainment LLC Crowd-sourced cloud gaming using peer-to-peer streaming
GB2583511B (en) * 2019-05-02 2024-01-10 Sony Interactive Entertainment Inc Method of and system for controlling the rendering of a video game instance
US20220219078A1 (en) * 2019-06-01 2022-07-14 Ping-Kang Hsiung Systems and methods for a connected arcade cabinet with cloud gaming and broad-casting capabilities
CN111951366B (zh) * 2020-07-29 2021-06-15 北京蔚领时代科技有限公司 一种云原生3d场景游戏方法和系统
GB2598000A (en) * 2020-08-08 2022-02-16 Sony Interactive Entertainment Inc Content generation system and method
JP7323700B2 (ja) * 2021-03-10 2023-08-08 17Live株式会社 インタラクション型ユニバーサルライブストリーミング
GB2606165B (en) * 2021-04-27 2024-01-10 Sony Interactive Entertainment Inc Content generation system and method

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030038805A1 (en) * 2001-08-22 2003-02-27 Wong Curtis G. System and method to provide a spectator experience for networked gaming
JP2009223650A (ja) * 2008-03-17 2009-10-01 Nomura Research Institute Ltd 仮想空間提供装置、仮想空間提供システム、仮想空間提供方法及びコンピュータプログラム
US20110157196A1 (en) * 2005-08-16 2011-06-30 Exent Technologies, Ltd. Remote gaming features

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003175278A (ja) * 2001-12-11 2003-06-24 Webstream:Kk 競技仮想参加装置、競技仮想参加方法、競技仮想参加プログラム、競技観戦装置、競技観戦方法、競技観戦プログラム、及び、競技観戦画像生成サーバ
US6956566B2 (en) * 2002-05-23 2005-10-18 Hewlett-Packard Development Company, L.P. Streaming of images with depth for three-dimensional graphics
JP5283150B2 (ja) * 2007-03-30 2013-09-04 株式会社バンダイナムコゲームス プログラム、ゲーム機、及びゲームシステム
US9498714B2 (en) * 2007-12-15 2016-11-22 Sony Interactive Entertainment America Llc Program mode switching
JP5076132B1 (ja) * 2011-05-25 2012-11-21 株式会社スクウェア・エニックス・ホールディングス 描画制御装置、その制御方法、プログラム、記録媒体、描画サーバ、及び描画システム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030038805A1 (en) * 2001-08-22 2003-02-27 Wong Curtis G. System and method to provide a spectator experience for networked gaming
US20110157196A1 (en) * 2005-08-16 2011-06-30 Exent Technologies, Ltd. Remote gaming features
JP2009223650A (ja) * 2008-03-17 2009-10-01 Nomura Research Institute Ltd 仮想空間提供装置、仮想空間提供システム、仮想空間提供方法及びコンピュータプログラム

Also Published As

Publication number Publication date
WO2014136920A1 (en) 2014-09-12
CA2872130C (en) 2020-01-14
CA2872130A1 (en) 2014-09-12
TW201442770A (zh) 2014-11-16
EP2965212A1 (en) 2016-01-13
JP2016513826A (ja) 2016-05-16
US20150331813A1 (en) 2015-11-19
JP6232423B2 (ja) 2017-11-15
US9858210B2 (en) 2018-01-02
EP2965212A4 (en) 2016-10-26

Similar Documents

Publication Publication Date Title
TWI608856B (zh) 資訊處理裝置、成像裝置、方法及程式
CN107735152B (zh) 用于虚拟现实(vr)观看的扩展视野重新渲染
JP5987060B2 (ja) ゲームシステム、ゲーム装置、制御方法、プログラム及び記録媒体
JP6069528B2 (ja) 画像処理装置、画像処理システム、画像処理方法、及び記憶媒体
US20190325634A1 (en) Foveal adaptation of particles and simulation models in a foveated rendering system
JP6310073B2 (ja) 描画システム、制御方法、及び記憶媒体
JP6576245B2 (ja) 情報処理装置、制御方法及びプログラム
US11107183B2 (en) Adaptive mesh skinning in a foveated rendering system
EP3044765A1 (en) Rendering apparatus, rendering method thereof, program and recording medium
US10916061B2 (en) Systems and methods to synchronize real-world motion of physical objects with presentation of virtual content
JP6379107B2 (ja) 情報処理装置並びにその制御方法、及びプログラム
JP5776954B2 (ja) 情報処理装置、制御方法、プログラム、記録媒体及び描画システム
US20160271495A1 (en) Method and system of creating and encoding video game screen images for transmission over a network
CA2798066A1 (en) Method and system of creating and encoding video game screen images for transmission over a network