ES2557295T3 - Sistema y método para la distribución selectiva de información - Google Patents
Sistema y método para la distribución selectiva de información Download PDFInfo
- Publication number
- ES2557295T3 ES2557295T3 ES06750476.1T ES06750476T ES2557295T3 ES 2557295 T3 ES2557295 T3 ES 2557295T3 ES 06750476 T ES06750476 T ES 06750476T ES 2557295 T3 ES2557295 T3 ES 2557295T3
- Authority
- ES
- Spain
- Prior art keywords
- file
- information
- remote
- files
- character
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Classifications
-
- A63F13/12—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/35—Details of game servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/131—Protocols for games, networked simulations or virtual reality
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/40—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of platform network
- A63F2300/402—Communication between platforms, i.e. physical link to protocol
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/53—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Processing Or Creating Images (AREA)
- Information Transfer Between Computers (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Un método para la distribución selectiva de información a un dispositivo de juego remoto, que comprende además: recibir una comunicación desde una aplicación cliente que se ejecuta en un dispositivo remoto (104, 106, 108), indicando la comunicación una condición de un personaje del juego; desarrollar un manifiesto filtrado que comprende una recopilación de información necesaria para la aplicación cliente y asociada a la condición, desarrollándose el manifiesto filtrado mediante: la identificación de un archivo como ya residente en el dispositivo remoto; y la exclusión del archivo del manifiesto filtrado; identificar una parte de la recopilación para comunicarla a la aplicación cliente basándose en el manifiesto filtrado; e iniciar la comunicación de la parte.
Description
5
10
15
20
25
30
35
40
45
50
55
60
65
DESCRIPCION
Sistema y metodo para la distribucion selectiva de informacion
El genero de los juegos en linea multijugador masivos (MMOG) es cada vez mas popular.
Muchos usuarios disfrutan realmente de la idea de jugar estos juegos con y contra miles de otros usuarios. Los usuarios tambien tienden a apreciar el aspecto de “evasion” de muchos MMOG. Los desarrolladores de juegos pasan incontables horas creando enormes mundos en linea con niveles de interactividad y de detalle antes nunca vistos.
Aunque los mundos en linea que permiten a los usuarios evadirse son populares, estos juegos tienden a ser extraordinariamente complejos. Hay varios desafios asociados a la creacion y el equilibrio de una sociedad virtual para miles de jugadores. Y los desafios no terminan una vez que el juego se ha desarrollado. Una vez desarrollados, muchos de los juegos todavia necesitan gestionarse de manera activa.
Aunque se dedica una gran cantidad de tiempo a hacer juegos mejores, mas grandes, y mas detallados, se dedica muy poco tiempo a abordar los retos asociados a la gestion real del juego de los juegos (por ejemplo, la distribucion, la ejecucion, el soporte y la actualizacion de los MMOG).
El documento US5898834 desvela un sistema de procesamiento diversificado y un metodo asociado para actualizar al menos una plataforma informatica remota con una accion que se produce en una plataforma informatica local. El sistema y el metodo desvelados minimizan la cantidad de informacion generada localmente que necesita transferirse a traves de una red con el fin de mantener en una plataforma informatica remota una copia de lo que se ha producido localmente. Para minimizar la informacion enviada entre las plataformas, cada plataforma puede contener unos elementos, denominados instancias, que responden a diversos tipos de comandos. Los tipos de instancias incluyen instancias master, proxy y free. Las instancias master y las instancias proxy se refieren al mismo elemento localizado en diferentes plataformas. Cada instancia master mantiene sus instancias proxy relacionadas actuales con su estado transmitiendo sus cambios entre las plataformas a sus instancias proxy relacionadas. Las instancias free responden a los cambios que se producen preferentemente en una sola plataforma. Al minimizar la cantidad de informacion que se necesita transmitir entre las plataformas, se reduce el ancho de banda consumido para actualizar diversas plataformas.
Avi Bar-Zeev, “Nomad Programming: Scenegraphs: Past, Present and Future”,
http://developer.nomadph.com/guest004.html (consultado el 7 de febrero de 2012) desvela los conceptos basicos de los grafos de escena.
En consecuencia, en un primer aspecto, la presente invencion proporciona un metodo de acuerdo con la reivindicacion 1.
Breve descripcion de los dibujos
Se apreciara que por motivos de simplicidad y claridad de la ilustracion, los elementos ilustrados en las figuras no se han dibujado necesariamente a escala. Por ejemplo, las dimensiones de algunos de los elementos se exageran en relacion con otros elementos. Las realizaciones que incorporan ensenanzas de la presente divulgacion se muestran y se describen con respecto a los dibujos presentados en el presente documento, en los que:
La figura 1 representa un sistema que distribuye selectivamente informacion de acuerdo con las ensenanzas de la presente divulgacion;
La figura 2 muestra una representacion simplificada de un grafo aciclico dirigido que representa diversos elementos de programacion y su interrelacion de una manera que incorpora al menos una parte de las presentes ensenanzas; y
La figura 3 presenta un diagrama de flujo para una tecnica de distribucion selectiva que incorpora al menos alguna de las presentes ensenanzas.
El uso de los mismos simbolos de referencia en diferentes dibujos indica elementos similares o identicos. Descripcion detallada de los dibujos
Como se ha indicado anteriormente, la siguiente descripcion en combination con las figuras se proporciona para ayudar a comprender las ensenanzas desveladas en el presente documento. La siguiente exposition se centrara en las implementaciones y realizaciones especificas de las ensenanzas. Este enfoque se proporciona para ayudar a describir las ensenanzas y no debe interpretarse como una limitation en el alcance o la aplicabilidad de las ensenanzas. Por ejemplo, gran parte de lo siguiente se centra en la distribucion de actualizaciones y/o cualquier otra
5
10
15
20
25
30
35
40
45
50
55
60
65
information en relation con el funcionamiento de un MMOG. Aunque las ensenanzas pueden utilizarse sin duda en esta aplicacion, las ensenanzas tambien pueden utilizarse en otras aplicaciones y con varios tipos de arquitecturas diferentes, tales como las arquitecturas de computation distribuida, las arquitecturas cliente/servidor o las arquitecturas servidor middleware.
En el contexto de los juegos, una tecnica que incorpora al menos alguna de las presentes ensenanzas pueden incluir, por ejemplo, recibir una comunicacion desde una aplicacion cliente que se ejecuta en un dispositivo remoto. La comunicacion puede indicar una condition de un personaje del juego con el que se esta jugando en un juego en llnea multijugador masivo (MMOG). El metodo tambien puede incluir desarrollar un manifiesto filtrado que incluye una lista de archivos necesaria para la aplicacion cliente y asociada a la condition. Una parte de la recopilacion puede identificarse para la comunicacion a la aplicacion cliente, y puede iniciarse la comunicacion de la parte.
En una realization, la information a comunicar puede incluir un archivo de geometrla, un archivo de textura, un archivo de sonido y un archivo de animation. Los archivos pueden asociarse con alguna condition especlfica del personaje, tal como una localization de personaje actual, una localization de personaje prevista, y/o una interaction de personajes. En la practica, un proceso de identificar que archivos son necesarios para un usuario remoto puede facilitarse por el mantenimiento de un grafo de dependencia que mapea una pluralidad de elementos y/o localizaciones de juego con archivos de geometrla, archivos de textura, archivos de sonido y archivos de animation asociados. En una implementation especlfica, el grafo de dependencia puede ser un grafo aclclico dirigido (DAG).
Como se ha indicado anteriormente, la figura 1 representa un sistema 100 que distribuye selectivamente information de acuerdo con las ensenanzas desveladas en el presente documento. Como se muestra, una plataforma informatica 102 esta configurada para servir un juego en llnea a varios clientes remotos que se ejecutan en dispositivos informaticos remotos (representados en los ordenadores 104, 106, y 108). En la realization representada del sistema 100, una interfaz 110 esta asociada a la plataforma informatica 102 y esta configurada para recibir una senal de actualization de uno o mas de los clientes remotos. Como se muestra, la plataforma 102 tambien puede incluir un motor de actualization 112 que responde a una senal de actualization recibida. La senal de actualization puede ser, por ejemplo, una solicitud expllcita de actualizaciones. La senal de actualization tambien puede ser una comunicacion que indica una situation (por ejemplo, una condition de un personaje del juego) que se interpreta y/o se reconoce que indica una necesidad de actualizaciones.
Durante el funcionamiento, el motor de actualization 112 puede acoplarse comunicativamente a un almacen de datos 114 que mantiene la information implicada durante el juego de un MMOG. Por ejemplo, un usuario en el ordenador 104 puede estar jugando con un personaje en un juego servido por la plataforma 102. El personaje del usuario puede trasladarse de una parte de un mundo en llnea a otra parte. Una comunicacion que indica esta transition puede representar la senal de actualization y puede indicar al motor de actualization 112 que information adicional es o puede ser necesaria para el usuario en el ordenador 104.
Si el ordenador 104 no tiene la information que necesita para soportar la transition del personaje a una nueva parte del mundo en llnea, puede reconocerse esta deficiencia y puede enviarse la information necesaria al ordenador 104. En la practica, el motor de actualization 112 puede acceder al menos a una lista parcial de la information disponible para el MMOG determinado que se esta jugando, puede seleccionar una parte de la information para su salida, y puede iniciar una salida de la parte al ordenador 104.
En funcion del detalle de implementation, el motor de actualization 112 puede implementarse, al menos parcialmente, por un procesador y un medio legible por ordenador manteniendo unas instrucciones operativas para dirigir el procesador para reconocer la senal de actualization, para acceder a la lista parcial, para seleccionar la parte, y para iniciar la salida. En una realization especlfica, el proceso de selection de la parte para su salida puede incluir un proceso de filtrado. Tal proceso podrla implicar, por ejemplo, la comunicacion de una parte de un grafo aclclico dirigido (DAG) al ordenador 104. La parte podrla ser la parte de un DAG mas grande que se asocia con una condition de un personaje con el que juega el usuario en el ordenador 104. El proceso de filtrado tambien puede implicar la reception de una comunicacion desde el ordenador 104 que indica al menos un archivo del DAG que necesita el usuario. En la practica, los archivos necesitados realmente por el ordenador 104 pueden identificarse considerando una lista de la information pertinente y reduciendo la lista para eliminar una entrada ya almacenada en el ordenador 104.
Por ejemplo, los archivos asociados a un arbol determinado en el mundo en llnea pueden usarse en mas de una parte del mundo (por ejemplo, el “mismo” arbol puede estar en el fondo de varias escenas diferentes). Como resultado, incluso si el motor de actualization 112 “sabe” que un personaje se esta trasladando a una nueva zona y que la nueva zona incluye un arbol determinado, el motor de actualization 112 puede no “saber” que el ordenador 104 ya tiene archivos asociados al arbol, debido a que el mismo arbol aparecio en una escena anterior. Para reducir descargas innecesarias, el ordenador 104 puede ayudar al motor de actualization 112 reduciendo una lista de archivos necesarios y/o desarrollando realmente la lista de los archivos necesarios.
Como se ha descrito anteriormente, se presentan a los usuarios varios MMOG modernos con un mundo virtual muy detallado y amplio. En la practica, alguna parte del mundo virtual puede descargarse inicialmente a un usuario a
5
10
15
20
25
30
35
40
45
50
55
60
65
traves de una red de area amplia 116. La descarga inicial puede incluir suficientes archivos para permitir jugar con el personaje en una parte inicial de un mundo virtual. La descarga inicial tambien podria ser un nucleo que es insuficiente por si solo para permitir jugar con el personaje. Sin embargo, dicho nucleo puede facilitar una descarga posterior de la information necesaria para jugar.
En la practica, para descargar el mundo completo para trabajar de manera eficaz, el mundo virtual puede necesitar ser relativamente pequeno. Para producir un mundo virtual lo suficientemente pequeno para descargar, los desarrolladores pueden necesitar tomar algunos atajos como sustituir los mapas de textura pintados a mano por unos procesados, usar mas modelos procesados, reducir el numero de efectos de sonido y/o cortar escenas de animation sobre la marcha.
En algunos casos estos cambios pueden reducir la calidad percibida del juego. Para mantener la calidad, algunos desarrolladores pueden elegir, en cambio, distribuir al menos una parte de un cliente de juego en un disco compacto (CD) o un disco de video digital (DVD) comprados. La utilization de un CD o un DVD puede permitir que un desarrollador comunique inicialmente cantidades mas grandes de informacion. Sin embargo, dados los mapas de textura, los modelos 3D, los efectos de sonido, la voz grabada, etc., de los MMOG modernos, puede ser dificil y/o de un coste prohibitivo incluir los suficientes CD para representar completamente un gran mundo virtual.
Como tal, puede utilizarse un sistema como el representado en el sistema 100 para mejorar la capacidad de los desarrolladores para actualizar dinamicamente un juego anadiendo nuevos contenidos, modificando el codigo del lado del cliente, eliminando contenidos existentes, y/o cambiando contenidos. Utilizando el sistema 100, estas actualizaciones pueden producirse a traves de enlaces de comunicacion en oposicion a o ademas de la distribution de nuevos CD.
Como se muestra en el sistema 100, un ordenador remoto como el ordenador 104 puede acoplarse comunicativamente a la plataforma 102, al menos parcialmente, a traves de una red de area amplia 116 que puede ser, por ejemplo, la internet publica. Durante el funcionamiento, puede establecerse una sesion de red para facilitar la comunicacion entre el cliente que se ejecuta en el ordenador 104 y la plataforma informatica 102. El establecimiento de la sesion puede incluir uno o mas protocolos de red tales como PPP, TCP/IP, UDP/IP, etc. Una vez establecida, una ruta de comunicacion entre el ordenador 104 y la plataforma informatica 102 puede permitir una transferencia continua de informacion. En algunas realizaciones, dicha ruta sera capaz de comunicar la informacion identificada por el proceso de filtrado descrito anteriormente mientras que, de manera simultanea, sirve el juego en linea al ordenador 104. En otras realizaciones, la informacion filtrada puede comunicarse por fuera de un enlace de juego activo. Si la informacion de actualization se comunica dentro y/o fuera de un periodo de tiempo en el que un usuario esta jugando, un disenador de juegos puede querer utilizar un grafo de dependencia, tal como un grafo aciclico dirigido (DAG), para ayudar a identificar los archivos a descargar.
Como se ha indicado anteriormente en la Breve description de los dibujos, la figura 2 muestra una representation simplificada de un grafo aciclico dirigido 200 que representa diversos elementos de programacion y su interrelation de una manera que incorpora al menos una parte de las presentes ensenanzas. Como se muestra, el DAG 200 contiene una parte de una representacion de objeto de un modelo de mundo virtual.
El DAG 200 representa un grafo dirigido sin ciclos. El DAG 200 puede ser una parte de arbol y una parte de grafo y puede incluir varios elementos de programa en sus nodos, que se indican en general en 202. El DAG 200 puede ayudar a un desarrollador de juegos de varias maneras. Problemas como la programacion de descargas y el analisis de ruta critica, por ejemplo, pueden simplificarse usando un DAG. Esto puede llegar a ser cada vez mas importante en el contexto de la determination de que informacion es necesario descargar a un usuario con el fin de permitir que el usuario se beneficie de una parte “nueva” de un mundo en linea. El DAG puede ayudar a seleccionar la informacion a descargar en virtud de, por ejemplo, la capacidad del DAG para ordenarse topologicamente usando una primera busqueda en profundidad.
Como se muestra, el DAG 200 se usa para representar un conjunto de archivos de programa cuya necesidad esta en funcion de uno o mas de otros archivos de programa. Los programas se representan, en general, en los nodos 202 en el grafo, y los enlaces representados, en general, en 204 identifican dependencias entre los programas. En la practica, un mecanismo tal como el motor de actualizacion 112 de la figura 1 puede considerar el DAG 200 al determinar que informacion se necesita descargar a un cliente. A continuation, puede presentarse la informacion identificada para su descarga. Si bien puede haber varias posibles variaciones, las estructuras de datos ejemplares para el DAG 200 podrian incluir matrices de adyacencia y listas de adyacencia.
De acuerdo con las ensenanzas desveladas en el presente documento, el nodo 1 del DAG 200 puede representar un nodo raiz para un mundo virtual, y los nodos 2, 3, y 4, pueden representar diferentes partes de ese mundo. Por ejemplo, los nodos 2, 3, y 4 pueden incluir varios archivos diferentes, tales como archivos de textura, archivos de animacion, archivos de audio, etc., necesarios para representar las respectivas partes del mundo. Al bajar un nivel enl DAG 200, el nodo 5 puede representar una escena especifica que forma la parte del mundo virtual representada por el nodo 2. Y el nodo 6 puede representar una escena especifica que forma la parte del mundo virtual representada por el nodo 3.
5
10
15
20
25
30
35
40
45
50
55
60
65
Como se muestra, la parte del mundo representada por el nodo 4 puede incluir dos escenas representadas por los nodos 7 y 8. En la practica, los nodos 7 y 8 pueden contener archivos que presentan una version iluminada de una escena y una version a oscuras de la misma escena, respectivamente. En una realizacion, un desarrollador de juegos puede querer actualizar el juego anadiendo algunos elementos nuevos al mundo. Los elementos nuevos pueden representarse, por ejemplo, por los nodos 9, 10, y 11. El nodo 9 puede ser un archivo de textura para un bosque, el nodo 10 puede ser un archivo de animacion para los arboles y las hojas en el bosque, y el nodo 11 puede ser un archivo de audio que suena como el viento que sopla a traves del bosque.
A medida que el personaje del jugador se mueve a traves del mundo, el personaje puede acercarse a la version a oscuras (nodo 8) de la escena mencionada anteriormente. Un servidor remoto que soporta el juego y lo sirve al jugador puede reconocer que el personaje se acerca la escena representada en el nodo 8 y optar por descargar el archivo del nodo 11, de manera que el personaje del jugador escuchara el sonido del viento que sopla a traves del bosque a oscuras. Debido a que el personaje del jugador “se acercaba” a la parte actualizada del mundo virtual a traves del nodo 8, un mundo a oscuras, el servidor “sabla” que el jugador solo necesitaba los archivos del nodo 11 en contraposition a todos los nuevos archivos contenidos en los nodos 9, 10, y 11.
Como tal, el servidor proporciona poco a poco de manera eficaz actualizaciones al jugador a medida que el jugador necesita las actualizaciones, permitiendo una actualization en llnea del tipo justo a tiempo. Si el personaje del jugador se acerca mas tarde a la escena representada por el nodo 6, el servidor puede reconocer que el programa cliente usado por el jugador necesita ahora todos los nuevos archivos contenidos en los nodos 9, 10, y 11. En algunos casos, el servidor puede generar un manifiesto de archivos para descargar, y el manifiesto puede incluir los archivos de los nodos 9, 10 y 11. A continuation, el manifiesto puede reducirse o filtrarse para determinar si el cliente realmente necesita todos los archivos. Como se ha indicado anteriormente, si el jugador ya ha recibido los archivos del nodo 11, estos archivos pueden eliminarse del manifiesto, y el tamano de la descarga se hara mas pequeno. Esta tecnica de descarga razonada puede proporcionar un enfoque mas eficiente para actualizar y/o descargar inicialmente las partes de un MMOG.
Como se ha indicado anteriormente en la Breve description de los dibujos, la figura 3 presenta un diagrama de flujo para una tecnica de distribution selectiva 300 que incorpora al menos alguna de las presentes ensenanzas. En la etapa 312, un desarrollador de juegos puede comenzar el proceso de diseno de un nuevo mundo virtual. El nuevo mundo puede ser el escenario para un nuevo MMOG que el desarrollador espera comercializar para miles de jugadores en llnea.
En la practica, el MMOG y/o el mundo que actua como escenario para el MMOG pueden “convertirse” en la etapa 314 en una representation DAG, en la que cada nodo puede representar un bloque basico de codigo. Cada bloque basico o nodo puede incluir una lista de codigos que termina en algun punto final despues de comenzar en algun otro punto. Cada borde o enlace puede representar una relation o proxima action adoptada si as! se indica en el punto final de un nodo determinado.
En la etapa 316, puede seleccionarse una parte inicial del mundo para su distribucion, y en la etapa 318 puede distribuirse la parte inicial. En la practica, la parte inicial puede distribuirse a traves de una descarga en llnea, como un disco puesto a la venta en una tienda, como un disco distribuido gratuitamente, y/o algun otro mecanismo de distribucion apropiado. Una vez distribuida, un usuario con la intention de jugar el juego puede recibir la parte inicial y cargarla en su ordenador. La parte inicial puede establecer una aplicacion cliente en el ordenador del usuario y facilitar la capacidad del usuario para comenzar a jugar el nuevo juego.
En la etapa 320, puede recaudarse un pago del usuario por la parte inicial y/o por el servicio de servir el juego al usuario. En la etapa 322, puede activarse la cuenta del usuario, y el usuario puede establecer un personaje para jugar el nuevo juego. En la etapa 324, una plataforma informatica remota puede servir el juego al usuario. Aunque el juego puede servirse al usuario desde un dispositivo remoto, la accion de jugar el juego tambien puede hacer uso de los recursos informaticos locales para el usuario. Por ejemplo, un cliente que se ejecuta en el ordenador del usuario puede soportar una parte significativa de la carga de calculo asociada al juego del usuario del MMOG.
En la etapa 326, puede recibirse una comunicacion que indica que el cliente del usuario necesita una actualizacion y/o archivos adicionales para experimentar de manera mas plena el juego. En la etapa 328, pueden identificarse los archivos que deben descargarse al cliente. El proceso de identification de estos archivos puede implicar, por ejemplo, la consideration de un DAG que representa alguna parte del MMOG. Una vez identificados, los archivos pueden descargarse al cliente en un momento posterior, casi en tiempo real, sobre una base justo-a-tiempo, y/o de alguna otra manera. En la etapa 330, los archivos pueden haberse descargado de tal manera que el personaje del usuario sea capaz de experimentar los elementos que estaban representados en los archivos.
En la etapa 332, puede determinarse que el cliente del usuario necesita actualizarse. En la etapa 324, puede crearse un manifiesto de los nuevos archivos necesarios para el cliente. Una vez mas, puede considerarse un DAG para ayudar en la creation del manifiesto. En funcion del detalle de implementation, el ordenador del usuario puede encargarse de considerar el DAG para ayudar a desarrollar el manifiesto y/o una plataforma informatica alejada del usuario puede encargarse de este proceso. En la etapa 336, el manifiesto puede filtrarse con respecto a una lista de
los archivos que ya estan en el ordenador del usuario. Si un archivo ya reside en el ordenador del usuario, el archivo puede reducirse con respecto al manifiesto para evitar su descarga innecesaria. Al igual que con el manifiesto original, el ordenador del usuario puede encargarse del proceso de reduccion y/o una plataforma informatica alejada del usuario puede encargarse de este proceso.
5
En la etapa 338, pueden descargarse los archivos necesarios para el cliente del usuario, y en la etapa 340 el personaje del usuario puede ser capaz de experimentar las partes del juego actualizadas. En la etapa 342, una plataforma informatica remota puede servir el juego a miles de usuarios mientras que ayuda simultaneamente en el proceso de proporcionar archivos de actualizacion y/u otros archivos adicionales. El proceso puede hacerse avanzar 10 hasta detenerse en la etapa 344.
Aunque la tecnica 300 se ha descrito en una serie de etapas secuenciales, la secuencia de las etapas y la parte que ejecuta las etapas pueden cambiarse libremente sin alejarse del alcance de las ensenanzas. Pueden anadirse, eliminarse y/o modificarse etapas de varias maneras. Del mismo modo, las etapas pueden ordenarse y/o enlazarse 15 de nuevo.
El objeto desvelado anteriormente debe considerarse ilustrativo, y no restrictivo, y se pretende que las reivindicaciones adjuntas cubran todas estas modificaciones, mejoras, y otras realizaciones que caigan dentro del verdadero alcance de la presente invencion. Por lo tanto, en la maxima medida permitida por la ley, el alcance de la 20 presente invencion debe determinarse por la interpretacion mas amplia admisible de las siguientes reivindicaciones y sus equivalentes, y no podra restringirse o limitarse por la descripcion detallada anterior.
Claims (9)
- 51015202530354045505560REIVINDICACIONES1. Un metodo para la distribucion selectiva de informacion a un dispositivo de juego remoto, que comprende ademas:recibir una comunicacion desde una aplicacion cliente que se ejecuta en un dispositivo remoto (104, 106, 108), indicando la comunicacion una condicion de un personaje del juego;desarrollar un manifiesto filtrado que comprende una recopilacion de informacion necesaria para la aplicacion cliente y asociada a la condicion, desarrollandose el manifiesto filtrado mediante:la identificacion de un archivo como ya residente en el dispositivo remoto; y la exclusion del archivo del manifiesto filtrado;identificar una parte de la recopilacion para comunicarla a la aplicacion cliente basandose en el manifiesto filtrado; einiciar la comunicacion de la parte.
- 2. El metodo de la reivindicacion 1, en el que la recopilacion de informacion comprende un archivo de geometrla, un archivo de textura, un archivo de sonido y un archivo de animacion.
- 3. El metodo de la reivindicacion 1, en el que la condicion se selecciona a partir de un grupo que consiste en una localization de personaje actual, una localization de personaje prevista y una interaction de personajes.
- 4. El metodo de la reivindicacion 1, que comprende ademas:recibir del dispositivo remoto una solicitud de un grafo de dependencia que mapea una pluralidad de elementos de juego con archivos asociados;comunicar al menos una parte del grafo de dependencia en respuesta a la solicitud; y recibir del dispositivo remoto informacion que representa el manifiesto filtrado.
- 5. El metodo de la reivindicacion 1, que comprende ademas mantener un grafo de dependencia que mapea una pluralidad de elementos de juego con los archivos de geometrla, archivos de textura, archivos de sonido y archivos de animacion asociados.
- 6. El metodo de la reivindicacion 5, en el que el grafo de dependencia es un grafo aclclico dirigido DAG, que comprende ademas proporcionar al menos una parte del DAG a la aplicacion cliente.
- 7. Un sistema para distribuir selectivamente informacion a un cliente remoto que comprende:una plataforma informatica (102) configurada para servir un juego en llnea a una pluralidad de clientes remotos (104, 106, 108);una interfaz (110) configurada para recibir una senal de actualization para al menos uno de la pluralidad de clientes remotos, indicando la senal de actualizacion una condicion de un personaje del juego; un motor de actualizacion (112), que responde a la senal de actualizacion, y que se puede hacer funcionar para acceder a al menos una lista parcial de la informacion disponible,seleccionar, para su salida, una parte de la informacion disponible asociada a la condicion identificando unarchivo ya residente en un dispositivo remoto y excluyendo el archivo de la parte, einiciar una salida de la parte; yuna memoria (114) que mantiene la lista parcial.
- 8. El sistema de la reivindicacion 7, en el que el motor de actualizacion (112) selecciona la parte en respuesta a un proceso de filtrado que comprende:comunicar una parte de un grafo aclclico dirigido DAG a un primer cliente remoto, la parte asociada a una condicion de un personaje con el que juega el primer cliente remoto; yrecibir una comunicacion del primer cliente remoto que indica al menos un archivo del DAG que necesita el primer cliente remoto.
- 9. El sistema de la reivindicacion 7, que comprende ademas un enlace de comunicacion acoplado comunicativamente a la plataforma informatica y que se puede hacer funcionar para interconectar, al menos parcialmente, la plataforma informatica y el al menos uno de la pluralidad de clientes remotos.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US67562405P | 2005-04-28 | 2005-04-28 | |
US675624P | 2005-04-28 | ||
PCT/US2006/014448 WO2006115882A2 (en) | 2005-04-28 | 2006-04-18 | System and method for selective distribution of information |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2557295T3 true ES2557295T3 (es) | 2016-01-25 |
Family
ID=37215233
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES06750476.1T Active ES2557295T3 (es) | 2005-04-28 | 2006-04-18 | Sistema y método para la distribución selectiva de información |
Country Status (5)
Country | Link |
---|---|
US (2) | US8075403B2 (es) |
EP (1) | EP1877919B1 (es) |
ES (1) | ES2557295T3 (es) |
PL (1) | PL1877919T3 (es) |
WO (1) | WO2006115882A2 (es) |
Families Citing this family (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8209679B2 (en) * | 2006-01-12 | 2012-06-26 | Oracle International Corporation | Computer implemented method and system for processing a client request for an application program |
US7967682B2 (en) | 2006-04-12 | 2011-06-28 | Bally Gaming, Inc. | Wireless gaming environment |
US9101820B2 (en) | 2006-11-09 | 2015-08-11 | Bally Gaming, Inc. | System, method and apparatus to produce decks for and operate games played with playing cards |
US9275512B2 (en) | 2006-11-10 | 2016-03-01 | Bally Gaming, Inc. | Secure communications in gaming system |
US8920233B2 (en) | 2006-11-10 | 2014-12-30 | Bally Gaming, Inc. | Assignment template and assignment bundle in a gaming configuration and download system |
US8784212B2 (en) | 2006-11-10 | 2014-07-22 | Bally Gaming, Inc. | Networked gaming environment employing different classes of gaming machines |
US9111078B2 (en) | 2006-11-10 | 2015-08-18 | Bally Gaming, Inc. | Package manager service in gaming system |
US8631501B2 (en) | 2006-11-10 | 2014-01-14 | Bally Gaming, Inc. | Reporting function in gaming system environment |
US8930461B2 (en) | 2006-11-13 | 2015-01-06 | Bally Gaming, Inc. | Download and configuration management engine for gaming system |
US9082258B2 (en) | 2006-11-13 | 2015-07-14 | Bally Gaming, Inc. | Method and system for providing download and configuration job progress tracking and display via host user interface |
US8131829B2 (en) * | 2006-11-13 | 2012-03-06 | Bally Gaming, Inc. | Gaming machine collection and management |
US8347280B2 (en) | 2006-11-13 | 2013-01-01 | Bally Gaming, Inc. | System and method for validating download or configuration assignment for an EGM or EGM collection |
US9613487B2 (en) | 2007-11-02 | 2017-04-04 | Bally Gaming, Inc. | Game related systems, methods, and articles that combine virtual and physical elements |
US8201229B2 (en) | 2007-11-12 | 2012-06-12 | Bally Gaming, Inc. | User authorization system and methods |
US8616958B2 (en) | 2007-11-12 | 2013-12-31 | Bally Gaming, Inc. | Discovery method and system for dynamically locating networked gaming components and resources |
US9005034B2 (en) | 2008-04-30 | 2015-04-14 | Bally Gaming, Inc. | Systems and methods for out-of-band gaming machine management |
US8721431B2 (en) | 2008-04-30 | 2014-05-13 | Bally Gaming, Inc. | Systems, methods, and devices for providing instances of a secondary game |
US8856657B2 (en) | 2008-04-30 | 2014-10-07 | Bally Gaming, Inc. | User interface for managing network download and configuration tasks |
US9483911B2 (en) | 2008-04-30 | 2016-11-01 | Bally Gaming, Inc. | Information distribution in gaming networks |
WO2009151919A2 (en) | 2008-05-24 | 2009-12-17 | Bally Gaming, Inc. | Networked gaming system with enterprise accounting methods and apparatus |
US9443377B2 (en) | 2008-05-30 | 2016-09-13 | Bally Gaming, Inc. | Web pages for gaming devices |
US8412768B2 (en) * | 2008-07-11 | 2013-04-02 | Ball Gaming, Inc. | Integration gateway |
US8260873B1 (en) * | 2008-10-22 | 2012-09-04 | Qurio Holdings, Inc. | Method and system for grouping user devices based on dual proximity |
US8347303B2 (en) | 2008-11-14 | 2013-01-01 | Bally Gaming, Inc. | Apparatus, method, and system to provide a multi-core processor for an electronic gaming machine (EGM) |
US8266213B2 (en) | 2008-11-14 | 2012-09-11 | Bally Gaming, Inc. | Apparatus, method, and system to provide a multiple processor architecture for server-based gaming |
US8423790B2 (en) | 2008-11-18 | 2013-04-16 | Bally Gaming, Inc. | Module validation |
US9467507B2 (en) * | 2011-01-03 | 2016-10-11 | Verizon Patent And Licensing Inc. | Wireless network cloud computing resource management |
US9058716B2 (en) | 2011-06-06 | 2015-06-16 | Bally Gaming, Inc. | Remote game play in a wireless gaming environment |
US9744440B1 (en) * | 2012-01-12 | 2017-08-29 | Zynga Inc. | Generating game configurations |
US9120007B2 (en) | 2012-01-18 | 2015-09-01 | Bally Gaming, Inc. | Network gaming architecture, gaming systems, and related methods |
US8974305B2 (en) | 2012-01-18 | 2015-03-10 | Bally Gaming, Inc. | Network gaming architecture, gaming systems, and related methods |
US9584793B2 (en) * | 2012-04-09 | 2017-02-28 | Intel Corporation | Signaling three-dimensional video information in communication networks |
US20130282564A1 (en) * | 2012-04-21 | 2013-10-24 | Research In Motion Limited | System and method for transmitting application data between two communication devices |
US9736121B2 (en) | 2012-07-16 | 2017-08-15 | Owl Cyber Defense Solutions, Llc | File manifest filter for unidirectional transfer of files |
US10218586B2 (en) | 2013-01-23 | 2019-02-26 | Owl Cyber Defense Solutions, Llc | System and method for enabling the capture and securing of dynamically selected digital information |
US8776254B1 (en) | 2013-01-23 | 2014-07-08 | Owl Computing Technologies, Inc. | System and method for the secure unidirectional transfer of software and software updates |
US9306953B2 (en) | 2013-02-19 | 2016-04-05 | Owl Computing Technologies, Inc. | System and method for secure unidirectional transfer of commands to control equipment |
US20140342810A1 (en) * | 2013-05-17 | 2014-11-20 | Douglas Duba | Electronic coin-operated merchandiser with remote management system |
US9311329B2 (en) | 2014-06-05 | 2016-04-12 | Owl Computing Technologies, Inc. | System and method for modular and continuous data assurance |
JP7158781B1 (ja) * | 2021-11-29 | 2022-10-24 | クラスター株式会社 | 端末装置、サーバ、仮想現実空間提供システム、プログラムおよび仮想現実空間提供方法 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5808625A (en) * | 1995-08-04 | 1998-09-15 | Silicon Graphics Incorporated | System and method for using dependency graphs for the control of a graphics creation process |
US5898834A (en) * | 1996-08-16 | 1999-04-27 | Starwave Corporation | System, method, and medium for control of objects in a multi-platform environment |
US6625813B1 (en) * | 1999-01-12 | 2003-09-23 | Sony Corporation | Digital television broadcast architecture for massively multi-user application |
US7050955B1 (en) * | 1999-10-01 | 2006-05-23 | Immersion Corporation | System, method and data structure for simulated interaction with graphical objects |
US6854012B1 (en) * | 2000-03-16 | 2005-02-08 | Sony Computer Entertainment America Inc. | Data transmission protocol and visual display for a networked computer system |
US6767287B1 (en) * | 2000-03-16 | 2004-07-27 | Sony Computer Entertainment America Inc. | Computer system and method for implementing a virtual reality environment for a multi-player game |
US20030177187A1 (en) * | 2000-11-27 | 2003-09-18 | Butterfly.Net. Inc. | Computing grid for massively multi-player online games and other multi-user immersive persistent-state and session-based applications |
US6931412B2 (en) * | 2000-12-21 | 2005-08-16 | Microsoft Corporation | Extensible actions and container types in an extensible scene graph system |
US20020082065A1 (en) * | 2000-12-26 | 2002-06-27 | Fogel David B. | Video game characters having evolving traits |
US20040143852A1 (en) * | 2003-01-08 | 2004-07-22 | Meyers Philip G. | Systems and methods for massively multi-player online role playing games |
US7921078B2 (en) * | 2005-04-20 | 2011-04-05 | Sony Online Entertainment Llc | System for negotiated differential compression |
-
2006
- 2006-04-18 US US11/406,448 patent/US8075403B2/en not_active Expired - Fee Related
- 2006-04-18 WO PCT/US2006/014448 patent/WO2006115882A2/en active Application Filing
- 2006-04-18 EP EP06750476.1A patent/EP1877919B1/en active Active
- 2006-04-18 PL PL06750476T patent/PL1877919T3/pl unknown
- 2006-04-18 ES ES06750476.1T patent/ES2557295T3/es active Active
-
2011
- 2011-11-14 US US13/295,229 patent/US9077732B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
WO2006115882A2 (en) | 2006-11-02 |
US20120058827A1 (en) | 2012-03-08 |
EP1877919A4 (en) | 2012-03-21 |
WO2006115882A3 (en) | 2008-02-14 |
EP1877919A2 (en) | 2008-01-16 |
EP1877919B1 (en) | 2015-10-28 |
US8075403B2 (en) | 2011-12-13 |
PL1877919T3 (pl) | 2016-05-31 |
US9077732B2 (en) | 2015-07-07 |
US20060248161A1 (en) | 2006-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2557295T3 (es) | Sistema y método para la distribución selectiva de información | |
Paavilainen et al. | The Pokémon GO experience: A location-based augmented reality mobile game goes mainstream | |
CN103657087B (zh) | 身临其境式叙事环境 | |
US20110107239A1 (en) | Device, system and method of interactive game | |
US10933327B2 (en) | Network-based video game editing and modification distribution system | |
JP2017520363A (ja) | ゲームセッションのリプレイの間の新タイムラインのスポーン | |
KR20070029859A (ko) | 카드 게임 ai 제어 방법 및 카드 게임 ai 제어 시스템 | |
JP2007304570A (ja) | インターネット可能で多重相互接続可能な環境下での双方向キャラクターシミュレーションモジュール方法及びシステム | |
JP2007505673A (ja) | ネットワークを利用したゲーム・システム | |
Buettel et al. | Egress! How technophilia can reinforce biophilia to improve ecological restoration | |
Leorke | Location-based gaming apps and the commercialization of locative media | |
Karlsen | Exploited or engaged? Dark game design patterns in Clicker Heroes, Farmville 2, and World of Warcraft | |
Vanhatupa | Browser games for online communities | |
US20100120532A1 (en) | Incorporating player-generated audio in an electronic game | |
Norton et al. | Monsters of Darwin: A strategic game based on artificial intelligence and genetic algorithms | |
Leorke et al. | Location-based Gaming’s second phase (2008–present) | |
US20200353366A1 (en) | System and method for augmented reality game system | |
Guimarães et al. | Prom Week Meets Skyrim. | |
Manning | Animating virtual worlds: Emergence and ecological animation of Ryzom’s living world of Atys | |
US20140323217A1 (en) | Method and server for providing item according to joining an event in online game | |
Tuncel | Procedural Content Generation for Video Games using Open Data | |
Reis et al. | Playing with the Weather | |
Omodunbi et al. | Development of an interactive android-based Ayo-Olopon game | |
KR20170103138A (ko) | 게임 환경을 시뮬레이트 하는 시스템 및 방법 | |
Suckling | Dungeon on the Move: A Case Study of a Procedurally Driven Narrative Project in Progress |