ES2260830T3 - Dispositivo y metodo para el procesamiento de imagenes. - Google Patents

Dispositivo y metodo para el procesamiento de imagenes.

Info

Publication number
ES2260830T3
ES2260830T3 ES98904377T ES98904377T ES2260830T3 ES 2260830 T3 ES2260830 T3 ES 2260830T3 ES 98904377 T ES98904377 T ES 98904377T ES 98904377 T ES98904377 T ES 98904377T ES 2260830 T3 ES2260830 T3 ES 2260830T3
Authority
ES
Spain
Prior art keywords
polygons
game
camera
virtual
image processing
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.)
Expired - Lifetime
Application number
ES98904377T
Other languages
English (en)
Inventor
Norio Sega Enterprises Ltd. HAGA
Tadanobu Sega Enterprises Ltd. NUMATA
Satoshi Sega Enterprises Ltd. MIFUNE
Makoto Sega Enterprises Ltd. YAMAMOTO
Kaori Sega Enterprises Ltd. YAMAMOTO
Masaki Sega Enterprises Ltd. YAMASHITA
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sega Corp
Original Assignee
Sega Corp
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
Priority claimed from JP9034163A external-priority patent/JP2955989B2/ja
Application filed by Sega Corp filed Critical Sega Corp
Application granted granted Critical
Publication of ES2260830T3 publication Critical patent/ES2260830T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

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/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
    • 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/45Controlling the progress of the video game
    • 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/5258Changing parameters of virtual cameras by dynamically adapting the position of the virtual camera to keep a game object or game character in its viewing frustum, e.g. for tracking a character or a ball
    • 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/55Controlling game characters or game objects based on the game progress
    • A63F13/56Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
    • 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/80Special adaptations for executing a specific game genre or game mode
    • A63F13/812Ball games, e.g. soccer or baseball
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/60Methods for processing data by generating or executing the game program
    • A63F2300/63Methods for processing data by generating or executing the game program for controlling the execution of the game in time
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6607Methods for processing data by generating or executing the game program for rendering three dimensional images for animating game characters, e.g. skeleton kinematics
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6623Methods for processing data by generating or executing the game program for rendering three dimensional images for animating a group of characters
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/663Methods for processing data by generating or executing the game program for rendering three dimensional images for simulating liquid objects, e.g. water, gas, fog, snow, clouds
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6653Methods for processing data by generating or executing the game program for rendering three dimensional images for altering the visibility of an object, e.g. preventing the occlusion of an object, partially hiding an object
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6661Methods for processing data by generating or executing the game program for rendering three dimensional images for changing the position of the virtual camera
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6661Methods for processing data by generating or executing the game program for rendering three dimensional images for changing the position of the virtual camera
    • A63F2300/6684Methods for processing data by generating or executing the game program for rendering three dimensional images for changing the position of the virtual camera by dynamically adapting its position to keep a game object in its viewing frustrum, e.g. for tracking a character or a ball
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/8011Ball

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Processing Or Creating Images (AREA)

Abstract

LOS JUEGOS SE PROCESAN DE FORMA MAS REALISTA Y DE MANERA INMEDIATA DURANTE EL PROCESO DE LA IMAGEN PARA JUEGOS DE FUTBOL Y SIMILARES. MAS CONCRETAMENTE, LOS MOVIMIENTOS DE LOS PERSONAJES SIMULAN DE FORMA MUCHO MAS EXACTA LOS DE CONTRARIOS REALES, DANDO COMO RESULTADO UN MAYOR REALISMO AL JUEGO. LA INVENCION TRATA DE UN DISPOSITIVO PARA PROCESO DE IMAGENES, A FIN DE DISPONER Y VISUALIZAR EL COMPORTAMIENTO DE PERSONAJES MODELADOS CONTRA SUS OPONENTES EN UN ESPACIO PRACTICAMENTE TRIDIMENSIONAL. SE DETERMINA (S21 A S24) SI EXISTE O NO UNA DETERMINADA SITUACION EN LA QUE LA RELACION CON EL CONTENIDO DEL JUEGO (POR EJEMPLO, EN EL AREA DE CENTRADO) O LA RELACION POSICIONAL (COMO LA DISTANCIA) ENTRE PERSONAJES Y UN BLANCO (COMO PERSONAJES CONTRARIOS O EL BALON), QUE TIENEN UNA RELACION, A TRAVES DEL JUEGO, CON DICHOS PERSONAJES, CUMPLE CIERTAS CONDICIONES, Y QUE LOS OJOS DE LOS PERSONAJES SE DIRIJAN AL BLANCO (S25, S26, S28, ETC.), CUANDO SE DETERMINA QUE EXISTE ESA SITUACION CONCRETA. LA INVENCIONES ESPECIALMENTE ADECUADA PARA LOS JUEGOS DE FUTBOL.

Description

Dispositivo y método para el procesamiento de imágenes.
Campo de la invención
La presente invención guarda relación con una técnica de procesamiento de imágenes adecuada para el uso en dispositivos de procesamiento de imágenes como los juegos de TV, en los cuales los personajes (objetos, en el sentido más amplio) están situados en el espacio virtual para jugar un partido de fútbol o algo semejante, y más particularmente, guarda relación con una técnica de procesamiento de imágenes para hacer que los juegos parezcan más reales y su ejecución más inmediata, ejecutando procesos diversos como el control de la dirección del ojo de un personaje, control del comportamiento de un personaje, y el procesamiento de la niebla para ajustar los colores en la pantalla. La presente invención también guarda relación con una técnica de procesamiento de imágenes que proporciona imágenes que son más fáciles de ver para los jugadores debido a un adecuado control del ángulo de la cámara virtual que transmite la evolución de la situación en un juego o la orientación de objetos situados en el campo de juego.
Estado de la técnica
El progreso de la tecnología en las computadoras recientes, ha conducido a la popularización extendida de las técnicas de procesamiento de imágenes para los juegos de TV, los dispositivos de simulación, y similares. La sofisticación de las técnicas de procesamiento de imágenes que de modo más realista dibujen los contenidos a mostrar en la pantalla es sumamente importante para incrementar el valor comercial.
Los componentes de los juegos de TV, por ejemplo, abarcan dispositivos periféricos, incluyendo un monitor de visualización y los instrumentos operacionales como almohadillas y palancas de juego, así como también los procesadores con una unidad central de procesamiento (CPU, por sus siglas en inglés) que ejecuta procesamiento de imagen, procesamiento de audio, transmisión de datos con periféricos, y demás, permitiendo a los juegos interactivos sean jugados con tales instrumentos operativos.
Los dispositivos de juego que permiten que los partidos de fútbol sean jugados son uno de los campos de tales máquinas de juego de TV. En tales juegos de fútbol, un estadio de fútbol con un campo y asientos para los espectadores (las graderías) se construye comúnmente en el espacio virtual tridimensional, y los personajes (referidos como objetos de visualización u objetos) de dos equipos juegan un partido de fútbol virtual en el campo. Específicamente, el movimiento es calculado de acuerdo a los datos en funcionamiento de los jugadores, la pelota es procesada, las colisiones (los golpes) son procesadas, los robots son procesados, el campo es procesado, y similares, un tras otro, y el desarrollo de juego que refleja la manipulación de los jugadores es mostrado en la pantalla.
Porque el comportamiento de los espectadores en las graderías es también un elemento importante que contribuye al ambiente de juego en ese momento, el comportamiento de los espectadores es también a menudo tratado. Los ejemplos de métodos para controlar el comportamiento de los espectadores incluyen: 1) los métodos en los cuales una gran cantidad de datos de imágenes de espectadores en movimiento está preparada por adelantado para cada marco, en el mismo modo que la animación (imágenes en movimiento), y las imágenes son trazadas con textura, según el escenario competitivo y son mostradas en imágenes en movimiento; y 2) métodos en los cuales se preparan polígonos que representan los espectadores, y son movidos los polígonos según el escenario competitivo.
El problema de cuando si, o cuando no, la coloración de la pantalla equivale al brillo real (como el de la luz del sol) con el paso del tiempo de todo el día es otro elemento importante en afinar el ambiente de juego o la inmediatez. Este es un rasgo particularmente importante de los juegos de fútbol debido a que son a menudo jugados a puertas afuera, y hay cambios sutiles en el ambiente físico relacionados con el brillo a en dependencia de los husos horarios durante el día en el cual el partido de fútbol es jugado. En otras palabras, los cambios de brillo dependen del intervalo de tiempo - mañana, tarde o noche - en el cual el juego está siendo jugado y donde en esos husos horarios el juego está siendo jugado. Un método para ajustar la iluminación del color de la pantalla según el intervalo de tiempo ha sido conocido en el pasado.
Sin embargo, dicha máquina de juego padece de los siguientes inconvenientes en términos de la inmediatez y el realismo del juego.
Primero, utilizando los juegos de fútbol por poner un ejemplo, cuando los personajes juegan entre ellos mientras driblan la pelota en máquinas convencionales de juego, los personajes pueden driblar sólo mientras están de frente a la dirección en la cual marchan. Sin embargo, cuando disparan o pasan a un compañero de equipo mientras driblan en los partidos de fútbol reales, el atleta que dribla mira (mira alrededor) en la misma dirección en la cual él está corriendo, o en otras direcciones para planear el momento de patear, o para buscar una zona de pateo, o para buscar compañeros de equipo. Esto es, es difícil de una manera realista simular el comportamiento real de los futbolistas solo por controlar movimientos de corrida mientras driblan, y las acciones de los personajes en la pantalla son primitivas y no naturales. El control de la dirección en la cual un personaje está mirando (esto es, la dirección del ojo) es lo mismo para el jugador que corre mientras dribla como para otros jugadores que no tienen la pelota. Los personajes del equipo local también naturalmente vuelven sus caras (la dirección del ojo) en dependencia de las acciones de los personajes del equipo opuesto, pero tal control no ha sido manejado en el pasado.
Segundo, el comportamiento de los espectadores es también un elemento importante afectando la inmediatez de un juego. En el pasado, sin embargo, los movimientos diversos de espectadores individuales (comportamiento más real), simplicidad del diseño de software, reducción de la carga de cómputo, la disminución en la capacidad de memoria, y algo semejante no ha sido logrado simultáneamente de manera satisfactoria.
En los casos donde los espectadores son mostrados con trazado de textura animada como en el pasado, el número bajo de marcos que mostraba el movimiento resulta en un movimiento burdo y discontinuo del espectador. El número de marcos es aumentado en un esfuerzo para evitar esto. Como consecuencia, los datos de imágenes que son manipulados incrementa, requiriendo mayor capacidad de memoria. El diseño del software también se pone más complicado, y la carga de cómputo aumenta. Cuando la carga aumenta demasiado, el control de personaje (o de objeto) es entorpecido, resultando en la necesidad de conservar la carga del espectador. Sin embargo, cuando el control del espectador se reduce para tal conservación, la pantalla que es exhibida no es muy excitante y carece de
inmediatez.
Por otra parte, cuando los espectadores son mostrados con polígonos, el número de espectadores que pueden ser exhibidos con polígonos está sumamente limitado al tener en cuenta la carga involucrada en monitorearlos. Si la carga de cómputo para tal control es desatendida, entonces podría lograrse exhibir a los espectadores individuales con polígonos e individualmente controlar su movimiento, pero eso realmente sería difícil para números grandes de espectadores. Sólo los espectadores principales específicos (seleccionados) deberían ser exhibidos con polígonos. De hecho, los espectadores tienen movimientos individualmente diferentes, pero ellos a veces tienen el mismo movimiento en grupos. Los movimientos principales de los espectadores específicos de este modo carecen de animación e inmediatez.
Tercero, los dispositivos convencionales no son capaces de hacer frente a los requisitos de las máquinas de juego hoy día, en términos de controlar el ambiente físico referente al brillo real durante el día. Por ejemplo, la pantalla debería igualarse con el ambiente circundante de los jugadores que disfrutan el partido de fútbol, mientras se sientan frente a la máquina de juegos en determinados husos horarios durante la mañana, la tarde, o la noche. Sin embargo, cuando la iluminación de la pantalla entera está meramente ajustada, como en los dispositivos convencionales, la pantalla se vuelve más oscura mientras la noche se acerca, haciendo que todo sea más difícil de jugar.
Cuarto, cuando los juegos que se desarrollan en espacios virtuales de tres dimensiones son exhibidos en una pantalla, la facilidad de jugar el juego varía a merced de la dirección del ojo de la cámara, dirección en la cual la cámara virtual que transmite el juego ve los personajes (o los objetos). La facilidad de jugar del juego también varía a merced de la posición de la cámara virtual. El visualización tridimensional de objetos debería ser enfatizado según el área de desarrollo del juego.
Quinto, cuando los juegos que se desarrollan en espacios virtuales de tres dimensiones son exhibidos en una pantalla, el punto de vista y la posición de la cámara virtual deberían ser alejados de regreso para exhibir tanto del campo de juego como sea posible en la pantalla para hacer más fácil que los jugadores jueguen el juego. Cuando tal procesamiento es realizado, las líneas y los marcadores que indican el rango permitido del juego deportivo están limitados en comparación con el espacio virtual entero, y por lo tanto desaparecen debido a la resolución de la pantalla. Por lo tanto líneas más gruesas han de ser preparadas para impedir tal desaparición. Sin embargo, cuando la cámara se acerca (el punto de vista se aproxima a punto central de vista) para afinar la animación del juego, líneas especialmente gruesas son exhibidas, lo cuál es antinatural.
Un objetivo de la presente invención es proporcionar una pantalla de juego vista con más comodidad asegurando la exhibición de los objetos que son necesarios para los jugadores, en el sentido de que los objetos que tienen una función específica en el espacio de juego virtual de tres dimensiones, pero que tienden a desaparecer en la conversión a las imágenes de dos dimensiones, todavía permanezcan en la pantalla de juego de dos dimensiones aún cuando sean más pequeñas.
La divulgación de la invención
El dispositivo de procesamiento de imágenes de la presente invención está definido en las reivindicaciones anexadas.
Breve descripción de los dibujos
La Figura 1 es un diagrama de bloques que describe la estructura funcional de la máquina de juego en una realización de la presente invención;
La Figura 2 es un diagrama esquemático de flujo que describe el procesamiento del CPU;
La Figura 3 ilustra el cálculo del ángulo en el control de la dirección del ojo;
La Figura 4 ilustra el cálculo del ángulo en el control de la dirección del ojo;
La Figura 5 ilustra la apariencia de un personaje durante el control de la dirección del ojo;
La Figura 6 es un diagrama esquemático de flujo que describe un ejemplo del control de la dirección del ojo;
La Figura 7 es un diagrama esquemático de flujo que describe un ejemplo del control de la dirección del ojo junto con la Figura 6;
La Figura 8 ilustra la estructura de datos de los datos de espectador basados en polígonos;
La Figura 9 es un diagrama esquemático de flujo que describe un ejemplo de procesamiento para controlar el comportamiento de los espectadores;
La Figura 10 ilustra un marco en un ejemplo del control del comportamiento del espectador;
La Figura 11 ilustra otro marco en un ejemplo del control del comportamiento del espectador;
La Figura 12 ilustra otro marco en un ejemplo del control del comportamiento del espectador;
La Figura 13 ilustra otro marco en un ejemplo del control del comportamiento del espectador;
La Figura 14 ilustra otro marco en un ejemplo del control del comportamiento del espectador;
La Figura 15 ilustra otro marco en un ejemplo del control del comportamiento del espectador;
La Figura 16 ilustra otro marco en un ejemplo del control del comportamiento del espectador;
La Figura 17 ilustra otro marco en un ejemplo del control del comportamiento del espectador;
La Figura 18 es un diagrama esquemático de flujo referente a un ejemplo de control de niebla;
La Figura 19 ilustra división de intervalo de tiempo para el control de niebla;
La Figura 20 ilustra un ejemplo de una pantalla basado en control de niebla;
La Figura 21 ilustra otro ejemplo de una pantalla basado en el control de niebla;
La Figura 22 es un esquema de una imagen exhibida en una pantalla como resultado del control de la dirección del ojo de un personaje;
La Figura 23 ilustra un ejemplo de la estructura global de un dispositivo de juego;
La Figura 24 es un diagrama por bloques que ilustra la estructura del circuito del dispositivo de juego;
La Figura 25 ilustra el espacio virtual de juego formado por el dispositivo de juego;
La Figura 26 ilustra la perspectiva de una línea dibujada entre la posición de la cámara y la tierra;
La Figura 27 ilustra un proceso en el cual los vértices interiores de un polígono de línea son elevados para hacer la línea visible;
La Figura 28 es un diagrama de flujo que ilustra el proceso para prevenir la desaparición de líneas;
La Figura 29 ilustra la relación posicional entre la cámara y los vértices de los polígonos de línea;
La Figura 30 ilustra la relación posicional entre la cámara y los vértices de los polígonos de línea;
La Figura 31 ilustra un ejemplo de los datos para los vértices de los polígonos de línea;
La Figura 32a ilustra el movimiento de un jugador desde y hacia el televidente;
La Figura 32b ilustra la dirección de la línea del vector normal de la cámara en ese momento;
La Figura 33a ilustra el movimiento lateral de un jugador;
La Figura 33b ilustra la dirección del vector de la dirección del ojo de la cámara en ese momento;
La Figura 34a ilustra el movimiento lateral de un jugador;
La Figura 34b ilustra la dirección del vector de la dirección del ojo de la cámara en ese momento;
La Figura 35 es un diagrama de flujo que describe el proceso de ajuste del ángulo lateral de la cámara;
La Figura 36 es una continuación del diagrama de flujo que ilustra el proceso de ajuste el ángulo lateral de la cámara.
La Figura 37 ilustra un caso en el cual el punto central de vista de la cámara está en un jugador;
La Figura 38 ilustra un ejemplo del ajuste del ángulo de la cámara cuando el punto central de vista está dentro de 8 m de un área de penalti;
La Figura 39 ilustra un caso en el cual el avance del jugador es hacia el televidente;
La Figura 40 ilustra un caso en el cual en el avance el jugador se aleja del televidente;
La Figura 41 ilustra un ejemplo de la dirección del vector del ojo de la cámara cuando el avance del jugador es desde y hacia el televidente;
La Figura 42 ilustra un ejemplo de un jugador moviéndose a la izquierda;
La Figura 43 ilustra el ajuste del ángulo de la cámara cuando el jugador se mueve a la izquierda;
La Figura 44 ilustra un ejemplo del jugador moviéndose a la derecha;
La Figura 45 ilustra el ajuste del ángulo de la cámara cuando el jugador se mueve a la derecha;
La Figura 46 ilustra un ejemplo de cuando el punto central de vista de la cámara es la pelota;
La Figura 47 ilustra un ejemplo del ajuste del ángulo de la cámara cuando la pelota y el jugador están separados por al menos 15 m;
La Figura 48 ilustra otro ejemplo del ajuste del ángulo de la cámara cuando la pelota y jugador están separados por al menos 15 m;
La Figura 49 ilustra un caso en el cual el punto central de vista de la cámara está dentro de 8 m de un área de penalti;
La Figura 50 ilustra el ajuste del ángulo de la cámara cuando el punto central de vista de la cámara está dentro de 8 m de un área de penalti;
La Figura 51 ilustra un caso en el cual el punto central de vista no está dentro de 8 m de un área de penalti;
La Figura 52 ilustra el ajuste del ángulo de la cámara cuando el punto central de vista no está dentro de 8 m de un área de penalti;
La Figura 53 es un diagrama de flujo que ilustra el ajuste vertical del ángulo de la cámara;
La Figura 54 ilustra el ajuste vertical del ángulo de la cámara;
La Figura 55 es un diagrama de flujo que ilustra el ajuste del acercamiento de la cámara. La Figura 56 ilustra un área en la cual el jugador está presente en la pantalla;
La Figura 57 es un diagrama de flujo que ilustra otro ejemplo de un objeto impedido de desaparecer;
La Figura 58 ilustra un objeto impedido de desaparecer;
La Figura 59 es otro ejemplo de textura incluyendo espectadores;
La Figura 60 es otro ejemplo de esto;
La Figura 61 es una realización de exhibición de la textura cuando los polígonos integrados con texturas están superpuestos;
La Figura 62 es una realización para polígonos en movimiento; y
La Figura 63 es otra realización.
Mejor modo para llevar a cabo la invención
Una primera realización de la presente invención es descrita más abajo con referencia a las Figuras de la 1 a la 22, una segunda realización es descrita con referencia a las Figuras de la 23 a la 31, y una tercera realización es descrita con referencia a las Figuras de la 32 a la 58. Estas realizaciones guardan relación con juegos incorporando en forma integral el dispositivo de procesamiento de imágenes de la presente invención. El software de aplicación en estos casos asume el software del partido de fútbol como ejemplo, pero de modo semejante pueden ser implementados otros tipos de software como los destinados para los partidos de béisbol, los partidos de softball, y los partidos de baloncesto.
La Figura 1 esquemáticamente ilustra la estructura por bloques del dispositivo de juego relacionado con la primera realización. El dispositivo de juego posee una CPU (la unidad central de procesamiento, por sus siglas en inglés) 1, con ROM (memoria de solo lectura, por sus siglas en inglés) 2, RAM (memoria de acceso aleatorio, por sus siglas en inglés) 3, un dispositivo de entrada 4, y un procesador de exhibición de vídeo (VDP por sus siglas en inglés) 5, todo conectado por un canal a esta CPU 1. La CPU 1 ejecuta de forma secuencial el programa de juego previamente almacenado en ROM 2. Los diversos procesos relacionados con la presente invención son realizados a medida que el VDP 5 periódicamente ejecuta el programa almacenado en ROM 2. Tres procesos relacionados con la presente invención incluyen el proceso por el cual la vista de línea de los personajes se controla, el proceso por el cual el comportamiento del espectador es controlado, y el proceso de control de la niebla a través del ajuste de color de la pantalla. Además del programa procesado por la CPU 1 o el VDP 5, los datos del polígono de personaje, así como los programas y datos fijos necesarios por los tres procesos (como los datos del polígono del espectador y los datos de referencia para la niebla) son previamente almacenados en ROM 2.
La RAM 3 en funcionamiento almacena temporalmente varios tipos de datos durante la ejecución del juego. El dispositivo de entrada 4 está equipado con un instrumento operado por el jugador, algo semejante a una palanca de juego, y se usa para introducir los datos necesarios para ejecutar el juego, como cuando se controlan el movimiento y los gestos de los personajes.
La RAM del vídeo (VRAM por sus siglas en inglés) 6, el dispositivo de representación 7, y la RAM 8 en funcionamiento están conectados al VDP 5. Los datos del polígono de ROM 2 son almacenados en VRAM 6. Los datos del polígono comprenden los datos de las coordenadas para el número de vértices que deben ser exhibidos y los datos de color dados en forma de paletas de color para los vértices. El VDP 5 tiene un procesador de señales digitales (DSP por sus siglas en inglés). En respuesta a señales periódicas de cronometraje como el cronometraje de cambio de marco, el VDP 5 acciona y ejecuta un programa dedicado al procesamiento de imágenes almacenado previamente en ROM 2. Las coordenadas de los datos del polígono almacenado en VRAM 6 son convertidas y procesadas como resultado del procesado ejecutado por el BDP 5, y son transferidos para el dispositivo de representación 7.
Una ROM de textura 9 y una memoria temporal para marco (del inglés frame buffer memory) 10 están conectadas al dispositivo de representación 7. La textura es integrada por el dispositivo de representación 7 a los datos del polígono, que ha experimentado una conversión de sus coordenadas, y es escrita en forma de datos de pixel por marco (la pantalla) para la memoria temporal para marco 10.
La memoria temporal para marco 10 está conectada por un convertidor D/A 11 a un dispositivo de procesamiento de imágenes 12 como un CRT. El convertidor D/A 11 funciona como un circuito generador de señales de vídeo, leyendo los datos de pixel de la memoria temporal para marco 10 y convirtiéndolos a señales analógicas. Los datos convertidos son enviados de manera secuencial en forma de señales de vídeo al dispositivo de vídeo 12, y las imágenes son exhibidas.
El dispositivo de juego también comprende un circuito de niebla 13 y el reloj de tiempo real 14 que están conectados al canal BUS. El reloj de tiempo real 14 tiene un tiempo y una función de calendario, para dar datos de tiempo real del día a la CPU 1. Como es descrito más abajo, el circuito de niebla 13 tiene lo que es aludido como una ''función de niebla'', que involucra ajustar el color de la pantalla cubriéndola mediante el uso de datos de color especialmente establecidos, aludidos como datos de niebla, de acuerdo al momento en que el dispositivo de juego es operado (esto es, la hora del día en el cual el dispositivo de juego está siendo utilizado estar por un jugador), y genera los datos de niebla bajo el control de la CPU 1 y los transmite al VDP 5.
La Figura 2 ilustra un ejemplo de procesamiento por marco ejecutado por la CPU 1. Primero, la CPU 1 recibe del dispositivo de entrada 4 las órdenes de movimiento de personaje (como correr, cambiar de dirección, y patear la pelota) que corresponden a los datos de las operaciones del jugador, y calcula el movimiento de personajes en el espacio virtual tridimensional (S1).
La CPU 1 luego procesa la pelota (S2) en el espacio virtual tridimensional, como adelantar la posición de la pelota de fútbol, y procesa las colisiones (los golpes) (S3) en el espacio virtual tridimensional. El proceso de colisiones es la determinación y procesamiento de tipos diversos de colisiones, como entre los personajes y la tierra, entre personajes, y entre personajes y la pelota. La CPU 1 luego procesa el comportamiento de los personajes (los robots) operados por el jugador en el espacio virtual tridimensional en respuesta a los datos operativos del jugador (S4).
La CPU 1 también procesa el control de la dirección de los ojos de los personajes (S5). Este control de la dirección de los ojos constituye un rasgo característico de la presente invención en un esfuerzo para proporcionar más acción diversa de personaje durante el juego y afinar el realismo del partido de fútbol. Este proceso es descrito detalladamente debajo.
Cuando el proceso para controlar la dirección del ojo es completado, la CPU 1 procesa el campo de juego de fútbol (S6). Este procesamiento del campo involucra ejecutar comandos para los procesos necesarios para el juego como la posición de los personajes presentes en el campo en espacio tridimensional virtual es utilizada como referencia para determinar qué personajes están fuera de lugar y cuáles personajes están en el área de portería para adelantar el juego.
La CPU 1 luego procesa el control del comportamiento de los espectadores (S7) y emite comandos para el control de niebla (S8). Estos dos procesos también constituyen parte de las características propias de la presente invención. El proceso de control del comportamiento del espectador es un intento para afinar el realismo y la inmediatez mediante la representación de una colección variada de comportamientos de espectadores mientras disminuye la carga de cómputo, y el cual es descrito en detalle debajo. El proceso de control de niebla es un intento para afinar el realismo y la inmediatez controlando el brillo de la pantalla según el tiempo durante el día (ajuste de color basado en si el juego es jugado durante el día o en la noche) en el cual el juego está siendo jugado por el jugador, y es descrito en detalle debajo. Finalmente, otro procesamiento necesario es ejecutado (59).
Solamente el punto central de vista del personaje es determinado en el control del punto de vista en el paso S5; el movimiento de realmente dar vuelta a un personaje puede ser manipulado en el subsiguiente tiempo de procesamiento S1. El paso S4 puede ser manipulado de modo semejante. En otras palabras, un cronometrado de a lo sumo cerca de 1/60 segundos puede ser establecido desde la adquisición de datos y la determinación del punto central de vista hasta que el movimiento es realmente efectuado en la dirección pertinente.
La CPU 1 repite el procesamiento antedicho para cada marco. Así, mientras el juego se desarrolla, la CPU 1 envía al VDP 5 órdenes para el movimiento y similares que corresponden a las manipulaciones del jugador. Los datos necesarios del polígono son transferidos desde la ROM 2 para el VDP 5 bajo el control de la CPU 1. El VDP 5 almacena temporalmente los datos del polígono en la VRAM 6, los datos del polígono experimentan una conversión de coordenadas del espacio virtual tridimensional al espacio de dos dimensiones perspectivo según las órdenes, y las coordenadas convertidas son transferidas al dispositivo de representación 7. El dispositivo de representación 7 traza un mapa de textura para los datos del polígono que han experimentado la conversión de coordenadas y lo escribe en la memoria temporal para marco 10. Como consecuencia, las imágenes con datos nuevos de pixel son exhibidas en el dispositivo de vídeo 12 para cada marco.
El proceso para el control de la antedicha dirección del ojo de personaje es descrito más abajo con referencia a las Figuras desde la 3 hasta la 7. Este proceso es el paso ejecutado en el paso S5 en la Figura 2.
Los principios del cálculo de ángulos que determinan la dirección del ojo de un personaje C son descritos primeros. Aquí, se asume que el personaje C está localizado en las coordenadas (Xp, Yp, Zp) en el espacio virtual tridimensional, y que la pelota de fútbol B sirviendo como objetivo está localizada en las coordenadas (Xt, Yt, Zt) en el mismo espacio. En este caso, basados en la geometría vista en la dirección del eje Y en la Figura 3, los siguientes valores pueden calcularse:
X' = Xt - Xp
Z' = Zt - Zp
y el ángulo \thetay y la distancia L en el plano X-Z entre el personaje C y la pelota B pueden ser calculados de los valores X' y Z'. De modo semejante, la distancia L entre el personaje C y la pelota B en el eje horizontal puede ser obtenida basados en esta geometría, y la geometría obtenida cuando el eje vertical es el eje Y puede ser imaginado como se describe en la Figura 4. En otras palabras, las coordenadas (Yp, Lp) para el personaje C y las coordenadas (Yt, Lt) para la pelota B pueden ser determinadas. En este caso, los valores
Y' = Yt - Lt
L' = Lt - Lp
pueden ser calculados, y el ángulo \thetay en el cual el personaje C ve la pelota B en el plano Y-L puede ser calculado basado en Y' y L'. En otras palabras, la dirección del ojo cuando cada personaje mira la pelota, por ejemplo, es determinada por el parámetro \thetay, L, y \thetax. El objetivo no está limitado a la pelota, y puede ser calculado de modo semejante cuando es otro jugador, un gol, o un árbitro. En otras palabras, eso puede ser manipulado dando las coordenadas de nuestro propio personaje y las coordenadas de un punto dado de otro jugador o árbitro o las coordenadas de una posición central como las de un gol.
La dirección de los ojos es determinada de esta manera, pero el cuerpo del personaje hace frente hacia una variedad de direcciones (rotando) mientras sus ojos están dirigidos en esa dirección. La Figura 5 ilustra esto. En la presente invención, la cabeza HD, el torso BD, y cintura HP del personaje C son dados como componentes donde el cuerpo cambia de dirección (rota) durante el control de la dirección del ojo. Así, los modos de rotación como
1) cuando la cabeza HD cambia de dirección primero (cambio de dirección vertical o lateral), el torso BD luego cambia de dirección, y la cintura HP luego cambia de dirección;
2) cuando la cabeza HD y el torso BD primero cambian de dirección simultáneamente, y la cintura HP luego cambia de dirección; y
3) cuando sólo el torso HD cambia de dirección
pueden ser controlados para cada situación en la cual el personaje esté situado en cada escenario de juego. Este control puede ser realizado, por ejemplo, almacenando el ángulo para el cual cada parte HD, BD, y HP cambian de dirección por marco, dando las órdenes para el movimiento basado en un ligero aumento del ángulo actual de rotación en los subsiguientes marcos, y terminando las órdenes del movimiento de rotación en el marco donde los ángulos calculados \thetax y \thetay son alcanzados para cada parte del cuerpo.
En general, los movimientos del cuerpo humano se basan en principios estructurales naturales, y los movimientos del cuerpo parecen más naturales si estos principios naturales son ejercidos cuando los personajes son puestos en movimiento. Por ejemplo, cuando un cuerpo gira, como se indica en la Figura 5, el cuello cambia de dirección más rápidamente, seguido por la mitad superior del cuerpo, y finalmente por el cuerpo entero. Así, cuando un cuerpo gira, el cuello debería cambiar de dirección más rápido que la mitad superior del cuerpo, y la mitad superior del cuerpo debería cambiar de dirección más rápido que el cuerpo entero.
Haciendo que el torso BD comience a cambiar de dirección cuando el ángulo de rotación de la cabeza HD alcance un cierto valor, el cambio de dirección del cuerpo puede ser representado como las rotaciones escalonadas de la cabeza, torso, y cintura.
Las Figuras 6 y 7 describen un ejemplo del proceso para controlar la dirección del ojo determinada de esta manera. El procedimiento para controlar la dirección del ojo de un personaje puede asumir formas diversas. Lo que es mostrado aquí es sólo un ejemplo, y la presente invención no está de ninguna forma limitada a los ejemplos. El proceso para controlar la dirección del ojo puede ser llevado a cabo para todos los competidores (los personajes) en el campo, o puede ser llevado a cabo sólo para personajes en un campo visual para designado para aliviar la carga de cómputo. Aun puede ser llevado fuera para sólo personajes dentro del campo visual designado, como personajes de preocupación particular (por ejemplo, personajes en movimiento que guardan relación con la pelota o personajes bajo el control del jugador (utilización individual del dispositivo de juego)).
Como es indicado en la Figura 5, por ejemplo, se determina cuando un personaje está corriendo o no, ya sea SÍ (corriendo) o NO (no corriendo) (S21). Si SÍ, se determina además si el otro equipo tiene la pelota o no (S22). Si la determinación es SÍ (el otro equipo tiene la pelota), se determina además si un personaje del otro equipo está dribleando o no (S23). Si SÍ (está dribleando), se determina con base en los valores de la distancia calculada si el personaje que briblea está a menos de 3 metros (S24). Si SÍ (menos de 3 metros), la dirección del ojo del personaje que actualmente se está controlando es dirigida hacia la pelota (S25). En el proceso de paso 25, el proceso de rotación en la Figura 5 de arriba se agrega. Por ejemplo, dado que el personaje en el paso 25 está corriendo, el modo de rotación 1) es aplicable, por ejemplo, para dirigir la dirección del ojo del personaje a la pelota mientras corre.
Si NO (no menos de 3 metros) en el paso S24, la dirección del ojo del personaje que actualmente se está controlando es dirigida al personaje que driblea (S26). El control de rotación en ese momento puede ser hecho en cualquiera de las formas descritas con referencia a la Figura 5, y debería ser seleccionado según el tipo de relación del ángulo con el otro personaje en ese momento.
Si NO (no dribleando) en el paso S23, y si NO (equipo opuesto no tiene la pelota) en el paso S22, se determina si el comportamiento actual de la pelota es el de una "pelota alta" (S27). Aquí, una "pelota alta" es cuando la posición de la pelota es más alta que las cabezas de los personajes. Si SÍ (la pelota alta), una orden es dada al personaje que actualmente se está controlando para dirigir sus ojos a la pelota (S28). Por otra parte, si NO (no una pelota alta), la dirección del ojo no se controla, y la dirección del ojo dependiente del movimiento es mantenida (S29). Por ejemplo, dado que el personaje está por lo menos corriendo, los ojos son mantenidos en la dirección en la cual el personaje está corriendo. "Dependiente del movimiento" significa cuando no se controla la dirección del ojo y el movimiento del patrón de acción del personaje (el movimiento) determinado por el programa es usado sin más modificaciones.
Si NO en el paso S21, esto es, cuando ha sido determinado que nuestro propio personaje no está corriendo, se determina de manera secuencial cuando el personaje está dribleando (Figura 7, S30) o está del área de centrado (S31). Si SÍ en el paso 31, dado que el personaje briblea y está del área de centrado, entonces el personaje naturalmente apuntará a la portería. En este caso, los ojos del personaje son dirigidos a la portería (S32).
Cuando el personaje no está en el anillo central en el paso S31, los ojos del personaje son dirigidos para la parte alta del atleta a una tasa de una vez cada 4 segundos (S33), por ejemplo, y los ojos del personaje son dirigidos para la portería en una tasa de una vez cada 4 segundos (S34). Si NO (no dribleando) en paso S30, se determina cuando el juego está como juego determinado o no (S35). Si SÍ (juego determinado), se determina si otro personaje ha resuelto pasar y está listo para patear (S37), y si SÍ, la dirección del ojo es dirigida para el personaje pasajero (S37), mientras que si NO, una dirección del ojo dependiente del movimiento es mantenida sin cualquier control especial de la dirección del ojo (S38).
La Figura 22 describe en forma de diagrama una pantalla mostrando los resultados del control de la dirección del ojo de un personaje. En la Figura, el atleta A dirige su línea de visión en la dirección del atleta B (los pies) que es el personaje pasador. El atleta B dirige su línea de visión en la dirección a donde la pelota será pasada.
Controlando la dirección del ojo del personaje de esta manera permite que el comportamiento deportivo de lo juegos de fútbol actuales sea simulado con mucho más detalle. La dirección del ojo ya no es del tipo en el cual la pelota es repentinamente pateada en otra dirección mientras el personaje está de frente a la dirección en la cual corre, por ejemplo, como en el pasado. En tales casos igualmente, los ojos del personaje son primeramente dirigidos en dirección a la patada o la pretendida patada, así es que el comportamiento del personaje puede ser simulado de una manera más realista, y puede ser proporcionado un dispositivo de juego más excitante con mayor inmediatez. Además, cuando la dirección del ojo está siendo controlada, no sólo la cabeza es rotada, el torso o la cintura también son rotados, ya sea consecutivamente o simultáneamente, según se necesite, permitiendo que el comportamiento durante el control de la dirección del ojo sea realizada de una más manera real.
Otra ventaja del antes mencionado control de la dirección del ojo es que la dirección en la cual los ojos del personaje están dirigidos brinda por sí misma indicios (sugiere) para el jugador (utilización individual del dispositivo de juego) cuál será el siguiente movimiento del personaje. Por ejemplo, cuando un personaje que briblea comienza a dirigir sus ojos frecuentemente hacia detrás, se puede inferir que un personaje del otro equipo se está acercando desde atrás, permitiendo al jugador (utilización individual del dispositivo de juego) evitar la persecución. El comportamiento de los personajes puede entonces telegrafiar (sugerir) situaciones durante el juego al jugador (utilización individual del dispositivo de juego).
Por el contrario, se logra hacer sugerencias engañosas en los pasos de decisión en las Figuras 6 y 7. En otras palabras, la dirección del ojo puede ser deliberadamente dirigida en una dirección completamente diferente de la decisión real. Esto puede confundir el buen juicio del jugador (utilización individual del dispositivo de juego), puede incrementar más aún el interés y la emoción del dispositivo de juego, y puede aumentar la dificultad de juego.
El proceso de controlar el comportamiento del espectador es descrito más abajo con referencia a las Figuras desde la 8 hasta la 17.
La estructura de los datos de imágenes (los datos de espectador) para simular a los espectadores en la presente invención es descrita primero con referencia a la Figura 8. Primero, los espectadores están sentados en graderías en las cuales m (> 2) columnas de asientos son progresivamente más altas mientras se alejan, y los espectadores en estas m columnas están divididos en n (> 2) filas. De estas "m columnas x n filas", "m' columnas x n filas" de espectadores por m' columnas (> 0) son representados trazando un mapa de texturas que contiene una pluralidad de espectadores en cada polígono rectangular. Por ejemplo, la Figura 8 muestra la estructura de datos en el espacio virtual, donde de A hasta D, A' hasta D', y A'' hasta D'' indican 12 polígonos rectangulares, y los polígonos están basados en capas en un patrón que es progresivamente más alto en el sentido de profundidad de la dirección de las graderías. Cada uno de los polígonos desde A hasta D, A' hasta D', y A'' hasta D'' son un polígono simple, representando una pluralidad de espectadores en secciones de 3 columnas (= m') x 4 filas (= n), por ejemplo. El segundo polígono B localizado en el espacio virtual detrás (en el sentido de profundidad de la dirección) el primer polígono A asume un estado inicial que es una columna más alta, por ejemplo, el tercer polígono C asume un estado inicial que es una columna más alta, por ejemplo, y el cuarto polígono D asume un estado inicial que es una columna más alta, por ejemplo. Tal así, ''14 columnas x 4 filas'' de espectadores, por ejemplo, son ordenados las graderías según los 12 polígonos A hasta D, A' hasta D', y A'' hasta D''.
Los primeros cuatro polígonos desde A hasta D, por ejemplo, entre los 12 polígonos A hasta D, A' hasta D', y A'' hasta D'' están mutuamente conectados en un patrón de espectador, los próximos cuatro polígonos desde A' hasta D' está mutuamente conectados en un patrón de espectador, y los últimos cuatro polígonos desde A'' hasta D'' están mutuamente conectados en un patrón de espectador. Al mismo tiempo, tres polígonos - los polígonos primero, quinto y noveno A, A', A'' - entre los 12 polígonos A hasta D, A' hasta D', y A'' hasta D'' constituyen un objeto OB1 en el cual se mueven de la misma manera. De modo semejante, otros tres polígonos - los polígonos segundo, sexto y décimo B, B', B'' - constituyen un objeto OB2 en el cual se mueven de la misma manera. Otros tres polígonos - el tercero, el séptimo y el decimoprimero C, C', C'' - similarmente constituyen un objeto OB3, y otros tres polígonos - el cuarto, el octavo, y decimosegundo D, D', D'' constituyen un objeto OB4. Los patrones de espectador de cada objeto no están conectados. Esto es, un rasgo característico de los datos de espectador en la presente invención es que una pluralidad de polígonos constituye un objeto mientras son separados uno del otro en el espacio virtual. Los patrones de espectador de cada objeto no necesitan estar conectados.
El proceso de controlar el comportamiento del espectador mostrado en la Figura 9 es ejecutado por la CPU 1 usando la estructura de datos de esta manera. Esto es, la CPU 1 determina los grupos de polígono cuyo comportamiento se controla entre todos los polígonos de datos de espectador (S41). Así, cualquier grupo de polígonos de espectador (como los 12 polígonos A hasta D, A' hasta D', y A'' hasta D'' en la Figura 10) ordenados según el equipo que animan, por ejemplo, puede ser seleccionado de entre los espectadores vistos por la cámara virtual (el punto de vista). Una pluralidad de grupos de polígonos también puede ser seleccionada, por supuesto.
La CPU 1 luego selecciona un patrón de comportamiento para mover los escogidos (seleccionados) grupos de polígono (S42). Los patrones en los cuales uno o varios grupos de polígonos son movidos de arriba a abajo (verticalmente) o de lado a lado (lateralmente) han sido preparados como patrones de comportamiento. Cuando el patrón de comportamiento es seleccionado, la CPU 1 ejecuta el proceso de mover uno o más grupos de polígonos de acuerdo a patrón de comportamiento seleccionado (desde S43a hasta S43n).
Las Figuras desde la 10 hasta la 17 describen ejemplos de formas para mover los polígonos. El grupo de polígonos en estas Figuras es un ejemplo de un grupo y tiene la misma estructura de datos que la Figura 8. La Figura 10 muestra el estado antes de que los polígonos sean movidos, y el estado cambia de manera secuencial marco por marco a los estados de las posiciones de polígonos mostradas en las Figuras 11, 12, 13, 14, 15, y 16, retornando después de varios marcos al estado de las posiciones de polígonos mostrado en la Figura 17 (el mismo que en la Figura 10).
Específicamente, en el primer marco nuevo mostrado en la Figura 11, el primero, el quinto, y el noveno polígono A, A', y A'' del frente que constituyen el primer objeto OB1 son elevados en el espacio virtual (arriba). En el siguiente marco nuevo mostrado en la Figura 12, los tres polígonos A, A', A'' del objeto OB1 se elevan aún más (arriba), y el segundo, sexto, y décimo polígono B, B', y B'' que constituyen el segundo objeto OB2 son elevados (arriba). En el siguiente marco nuevo descrito en la Figura 13, los polígonos A, A', y A'' del objeto OB1 descienden en el espacio virtual (abajo), los polígonos B, B', y B'' del segundo objeto OB2 están se elevan aún más, y el tercero, el séptimo, y el decimoprimer polígonos C, C', y C'' que constituyen el tercer objeto OB3 son elevados (arriba). En el siguiente marco nuevo descrito en la Figura 14, los polígonos B, B', y B'' del segundo objeto OB2 y los polígonos C, C', y C'' del tercer objeto OB3 descienden (abajo), y los polígonos D, D', y D'' del objeto OB4 son elevados (arriba). En el siguiente marco nuevo descrito en la Figura 15, los polígonos C, C', y C'' del tercer objeto OB3 y los polígonos D, D', y D'' del objeto OB4 descienden (abajo). En el siguiente marco nuevo, los polígonos D, D ', y D'' del objeto OB4 que desciende más lentamente desciende más abajo aún (abajo). Así, como se muestra en la Figura 17, la secuencia retorna al estado inicial de las posiciones de los polígonos. Los polígonos de modo semejante pueden ser movidos de lado a lado.
Los datos de espectador de la porción vista desde la cámara virtual son designado por la CPU 1 para el VDP 5 cada vez que uno o más grupos de polígonos es movido (del estado en la Figura 10 para el de la Figura 11, por ejemplo) (S44). El proceso con posterioridad regresa al proceso del paso S41, repitiendo el proceso antes mencionado de control del patrón de comportamiento para cada marco nuevo. Este proceso para controlar el comportamiento de los espectadores puede ser ejecutado también para grupos de marcos a mostrar en lugar de marco por marco para simplificar el proceso. El proceso para controlar el comportamiento de los espectadores también puede ser ejecutado durante ciertos modos (por ejemplo durante los goles). Los objetos a mostrar en el espacio virtual tridimensional son exhibidos cambiando la perspectiva, relativa a la pantalla, desde un cierto punto de vista de la cámara virtual en el espacio virtual (el cual puede ser movido por el modo de utilización individual el dispositivo de juego). Justamente para estar seguros, el punto de vista en el control de la dirección del ojo de un personaje y el punto de vista correspondiente al centro proyectado y la posición de la cámara virtual deberían estar separados.
Como consecuencia, una pluralidad de polígonos son conectados como un solo objeto, los polígonos en una pluralidad de grupos son intercalados en agrupamientos de corte transversal, y cada grupo está texturizado con patrones contiguos, a fin de que el comportamiento diverso de los espectadores constantemente en movimiento pueda ser simulado de una manera más realista simplemente moviendo los polígonos en sus unidades de objeto. Porque se mueven en unidades de objeto, el diseño del software puede ser simplificado con menos comandos, por ejemplo.
El control del comportamiento por sí mismo es simple, resultando en inferior carga de cómputo para tal control. El control puede ser hecho con mucho menos datos a manipular, mientras se muestra un comportamiento mucho más realista que cuando los espectadores son en representados individualmente con polígonos. Por lo tanto, menos capacidad de memoria es necesaria para almacenar los datos de espectador. Por supuesto, el comportamiento del espectador puede ser exhibido de una manera más realista e inmediata con menos datos que cuando tal comportamiento es exhibido por animación.
El proceso para el control de niebla que se mencionó arriba es descrito más abajo con referencia a las Figuras de la 18 a la 21. Este control de niebla es un proceso en cuál un tipo datos de máscara que tiene valores de color, como fue descrito anteriormente, es superpuesto en los datos de imagen. Esto ofrece una visualización de imágenes más realista que no puede ser obtenido sólo reflejando en la pantalla los cambios de brillo que acompañan los cambios en la luz del sol a lo largo del día usando sólo datos de iluminación convencional.
Este proceso es ejecutado por la CPU 1 como se muestra en la Figura 18, por ejemplo. El proceso de la Figura 18 también puede ser ejecutado por el VDP 5.
La CPU 1 primero lee el tiempo actual, esto es, la hora oficial en la cual un jugador (utilización individual del dispositivo de juego) utiliza el dispositivo de juego, del reloj de tiempo real 13 (S51). Se determina entonces si la hora difiere del intervalo de tiempo predeterminado sirviendo de referencia para la hora del día, la tarde, o la noche (S52). El horario oficial para el día, la tarde, y la noche es determinado como se muestra en la Figura 19, por ejemplo. Por ejemplo, el horario oficial del día es establecido en una duración relativa desde las 6:00 hasta las 16:30, el intervalo de tiempo del atardecer es establecido de 17:00 a 18:30, y el horario estándar de la noche es establecido de 19:30 a 5:30. El intervalo de tiempo oficial del día es más largo para evitar diferencias en el juego debido a los cambios en el brillo de la pantalla de jugadores que estén jugando en la mañana y de los jugadores que estén jugando al
atardecer.
Cuando SÍ en el paso S52, los parámetros predeterminados de los datos de niebla para los horarios estándar del día, el atardecer, y la noche son leídos de ROM 2 (S53). Los tres parámetros son los códigos de niebla rojo, azul, y verde, valores de desbalance (indicando la profundidad de la niebla), y densidad (el grado para el cual la niebla es aplicada relativa a la profundidad), y estos parámetros son predeterminados para satisfacer los horarios estándar.
La CPU 1 luego calcula los datos de la niebla, y devuelve los datos en forma de datos de máscara al VDP 5 (S54, S55).
Si NO en el paso S52, la diferencia entre el tiempo actual y los horarios estándar se calcula (S56). Por ejemplo, cuando son las 5:45 en la mañana, la desviación es de 15 minutos exactamente a medio camino entre el intervalo de tiempo de referencia estándar de la noche y el del día.
La CPU 1 luego lee los parámetros de los datos de niebla (códigos de color R, G, B, valores de desbalance, densidad) para los dos intervalos de tiempo entre los cuales la diferencia de tiempo está ubicada (S57). Cuando son las 5:45, por ejemplo, los parámetros de los horarios estándar de la noche y el día son leídos.
El desbalance y los valores de los parámetro de densidad se corrigen (S58). Por ejemplo, cuando son las 5:45, los valores de desbalance y la densidad son los valores medios para 1/2 del desbalance y los valores de densidad de los intervalos de tiempo estándar para la noche y el día. Cuando la hora está más cerca a un de los intervalos de tiempo estándar, los valores son promediados (corregidos), con los valores del intervalo de tiempo más cercano dándole considerado de más importancia.
Los valores de desbalance y densidad son determinados por tal corrección cuando la hora se desvía de ese modo del intervalo de tiempo estándar, y los datos de niebla son calculados y devueltos en la misma manera que fue citado anteriormente (S54, S55).
Esto resulta en una exhibición de imágenes de tiempo real que han sido opacadas según el estado de la luz del sol asumida para el horario durante el cual el juego está siendo jugado por un jugador (utilización individual del dispositivo de juego). Por ejemplo, cuando un juego es jugado en la tarde, la ambientación más allá del campo de juego presenta un opacado de tono oscuro (vea las líneas ladeadas en la Figura 20). Cuando un juego es jugado de noche, por ejemplo, la ambientación tiene un opacado de tono oscuro y un opacado amarillento debido al brillo de la luz de la luna, asumiendo que la luna está fuera en un segundo plano sobre le terreno (vea las líneas ladeadas en la Figura 21).
Es de este modo posible representar de una manera más real los cambios espectrales y el brillo de la fuente de luz, a diferencia de casos en los cuales el estado de la luz del sol (el brillo físico) en las imágenes que representan el campo de juego y su ambiente son visualizadas meramente a través del control del iluminación como en el pasado. En particular, los brillos locales como en las porciones donde la luna está afuera, por ejemplo, pueden ser más fáciles de controlar debido a la aplicación de los datos del color de la niebla. En la realización presente, el brillo sutil de intervalos de tiempo estándar como cuando el sol naciente o poniente está afuera puede ser procesado basado en los parámetros corregidos obtenidos utilizando dos intervalos de tiempo estándar entre los del día, del atardecer, y de la noche.
De tal manera que, el estado del color es determinado preparando por adelantado el estado del color correspondiente a estados adecuados de color para un juego de día, al atardecer, o en la noche, y haciendo correcciones (específicamente, procesos para mezclar color; valores de iluminación corregidos con base en dos conjuntos de valores estándar también pueden agregarse) basado en los valores estándar entre el día y el atardecer, el atardecer y la noche, o la noche y el día para los estados del color adecuados al momento en el cual el juego es jugado. De este modo ya no difícil jugar el juego mientras la pantalla se ensombrece, lo cual es lo que ocurre cuando los ajustes son hechos usando sólo valores de iluminación. El punto en el cual el ajuste de color comienza (un valor estándar) y el punto donde este acaba (otro valor estándar) son predeterminados, y los estados que son adecuados para los juegos son determinados, por lo tanto ninguna ventajas o desventajas se producen por el estado del color de la pantalla, sin importar el momento en el cual el juego es jugado. De tal manera que, por la misma naturaleza del juego, es importante que "ninguna falta de equidad sea experimentada como resultado de ventajas o desventajas causadas por el intervalo de tiempo en el cual el juego es jugado" cuando "los cambios de color basados en los cambios de hora" se presentan, y el dispositivo de la realización presente puede manejar esto. Se logra así proporcionar imágenes de mejor inmediatez en retratar el brillo del ambiente en el cual el campo de juego y sus afueras son envueltos.
El anteriormente dicho control de la dirección del ojo de personaje, el control de comportamiento del espectador, y el control de niebla no requieren necesariamente ser realizados de manera simultánea. Uno cualquiera o dos pueden ser realizados.
Una segunda realización de la presente invención es descrita más abajo con referencia a las Figuras desde la 23 hasta la 58.
La Figura 23 ilustra la apariencia de una máquina de vídeo juego presentando el uso de un dispositivo de procesamiento de imágenes referente a otra realización de la presente invención. En la Figura, la unidad principal de la máquina de vídeo juego 50 tiene apenas la forma de una caja, con tarjetas y similares para procesar el juego instaladas en el interior. Dos conectores 60a son provistos en la superficie frontal de la unidad principal de la máquina de vídeo juego 50, y mandos para jugar el juego (PAD por sus siglas en inglés) 60b están conectado por cables 60c a los conectores 60a. Cuando dos jugadores juegan el juego, ambos PADs 60b son utilizados.
Un cartucho I/F 50a para conectar cartuchos ROM y una unidad de CD-ROM 50b para lectura de CD-ROM les son provistos en la parte superior de la unidad principal de la máquina de vídeo juego 50. Aunque no son mostradas en la Figura, las terminales de salida de vídeo y las terminales de salida de audio son provistas en la parte trasera de la unidad principal de la máquina de vídeo juego 50. Las terminales de salida de vídeo están conectadas por un cable 70a a las terminales de entrada de vídeo de un receptor de TV 80, y las terminales de salida de audio están conectadas por un cable 70b a las terminales de entrada de audio del receptor de TV 80. Los usuarios utilizan el PAD 60b en dichas máquinas de vídeo juego para jugar el juego mientras observan las imágenes proyectadas en el receptor de TV 80.
La Figura 24 es un diagrama de bloques que muestra un esquema de la máquina de juego TB en la realización presente. El dispositivo de procesamiento de imágenes está compuesto de un bloque de la CPU 51 para controlar el sistema entero, un bloque de vídeo 52 para controlar la visualización de la pantalla de juego, un bloque de audio 53 para generar los efectos de sonido y similares, sistema substituto 54 para leer el CD-ROM, y similares.
El bloque de la CPU 51 está compuesto de un SCU (la unidad de control sistema por sus siglas en inglés) 100, una CPU principal 101, una RAM 102, y la ROM 103, un cartucho I/F 50a, una subCPU 104, un canal de la CPU 103, y similares. La CPU principal 101 controla el sistema entero. La CPU principal 101 tiene muestra de cómputo similares a las de un DSP interno (procesador de señales digitales por sus siglas en inglés), permitiendo a los software de aplicación ser rápidamente ejecutados. La RAM 102 es utilizada como un área de trabajo para la CPU principal 101. Un programa inicial o algo semejante para a la inicialización es escrito en la ROM 103. El SCU 100 controla los canales 105, 106, y 107 para asegurar una entrada y salida de datos sin problemas entre la CPU principal 101, VDP 120 y 130, DSP 140, la CPU 141, y similares. El SCU 100 tiene un controlador de acceso directo a memoria (DMA por sus siglas en inglés) instalado en el interior, permitiendo a los datos del objeto móvil del juego ser transmitidos al VRAM en el bloque de vídeo 52. Software de aplicación para los juegos y similares pueden de esta forma ser rápidamente ejecutados. El cartucho 50a se usa para introducir el software de aplicación provisto en forma de un cartucho
ROM.
La subCPU 104 es aludida como un SMPC (administración de sistema y control periférico por sus siglas en inglés), y tiene la función de colectar datos periféricos desde los PADs 60b a través de conectores 60a en respuesta a las órdenes de la CPU principal 101. La CPU principal 101 ejecuta procesos basados en los datos periféricos recibidos de la CPU 104. Cualquier dispositivo periférico de entre los PADs, palancas de control, los teclados, y algo semejante puede estar conectado a los conectores 60a. La subCPU 104 tiene las muestra de reconocer de forma automática el tipo de dispositivo periférico conectado a los conectores 60a (las terminales principales del lado de la unidad), y de colectar los datos del dispositivo periférico según el modo de transmisión correspondiente al tipo de dispositivo periférico.
El bloque de vídeo 52 está equipado con un VDP (procesador de visualización de vídeo) 120 para la representación de personajes y similares que consisten en datos de polígono del vídeo juego, y un VDP 130 para la representación de las pantallas de fondo, sintetizando datos de imágenes de polígonos e imágenes de fondo, procesado por recortado, y similares. El VDP 120 está conectado al VRAM 121, y a los almacenes temporales de marco 122 y 123. Los datos de imágenes para los polígonos que representan los personajes de la máquina de vídeo juego son enviados de la CPU principal 101 a través del SCU 100 al VDP 120, y son escritos en el VRAM 121. Los datos de representación escritos en el VRAM 121 son representados por el almacén temporal de marcos de representación 122 o 123 en forma de 16 ó 8 bits por píxeles, por ejemplo. Los datos representados en el almacén temporal de marcos 122 o 123 se envían al VDP 130. Los datos que controlan la representación son enviados de la CPU principal 101 a través del SCU 100 al VDP 120. El VDP 120 ejecuta el proceso de representación como corresponde.
El VDP 130 está conectado al VRAM 131, y la salida de datos de imágenes del VDP 130 es enviada a un codificador 160 a través de la memoria 132. El codificador 160 genera señales de imágenes añadiendo señales sincronizadas o algo semejante a los datos de imagen, y las envía al receptor de TV 80. La pantalla de juego es entonces visualizada en el receptor de TV 80.
El bloque de sonido 53 está compuesto por un DSP 140 para sintetizar sonidos según sea modo PCM o modo FM, y una CPU 141 para controlar el DSP 140. Los datos de audio sintetizados por el DSP 140 son convertidos a señales de 2 canales por un convertidor D/A 170, y son luego enviados a los altavoces 80b.
El subsistema 54 está compuesto de un lector de CD-ROM 50b, un CD I/F 180, la CPU 181, audio MPEG 182, vídeo MPEG 183, y similares. El subsistema 54 tiene la función de lectura del software de aplicación provisto en forma de CD-ROM, y de reproducir la animación. El lector de CD-ROM 50b lee los datos del CD-ROM. La CPU 181 ejecuta procesos como el control del lector de CD-ROM 50b y como la corrección de los errores en los datos que son leídos. Los datos leídos del CD-ROM se envían a través del CD I/F 180, del almacén temporal 106, y del SCU 100 para la CPU 101, donde son utilizados como software de aplicación. El audio MPEG 182 y el vídeo MPEG 183 son dispositivos para restaurar los datos que han sido comprimidos según las normas MPEG (grupo experto en imágenes en movimiento). La animación puede ser reproducida mediante el uso del audio MPEG 182 y del vídeo MPEG 183 para restaurar los datos comprimidos según MPEG escritos en el CD-ROM.
La Figura 25 ilustra el caso de un partido de fútbol que está siendo jugado, por poner un ejemplo de un juego, en un espacio de juego virtual tridimensional formado por un sistema computarizado.
En la Figura, una cancha de fútbol se forma en el plano x-z en el espacio virtual tridimensional. La dirección a lo largo (la dirección de izquierda a derecha) de la cancha está de la dirección del eje x, la dirección a lo ancho (la dirección en profundidad) de la cancha está en dirección del eje y, y la dirección según la altura está en dirección del eje z. Diversos objetos atleta no mostrados en la Figura están situado en la cancha, y los jugadores del dispositivo de juego controlan los movimientos de los personajes atletas por medio de los dispositivos de entrada. Los objetos de las líneas están descritos en el terreno para formar la cancha de fútbol. El juego es transmitido por una cámara virtual (el punto de vista) que está situada para visualizar circunstancias en el campo visual en espacio virtual de juego por medio del cambio de coordenadas o algo semejante en un monitor de pantalla de dos dimensiones.
Las Figuras 26 y 27 ilustran perspectivas en la presente invención. En La Figura 26, los objetos de línea son ordenados por una combinación de polígonos (a partir de ahora llamados polígonos de línea) formando líneas sobre el terreno, y una cancha de fútbol dibujada por las líneas se forma, como se muestra en la Figura 25. Las líneas son visualizadas adecuadamente en la pantalla cuando la posición de la cámara en el espacio de juego está en un ángulo mirando el campo desde arriba, pero el área de la superficie de las líneas en la pantalla disminuye mientras el ángulo vertical (el eje y) de la cámara se acerca a la dirección horizontal, y las líneas gradualmente desparecen de la pantalla del monitor. Además, en los casos donde los polígonos de línea y la cámara se enfrentan, es decir, cuando el vector normal del polígono de línea y el vector de dirección del ojo de la cámara son paralelos, es algunas veces posible que los polígonos de línea se vuelvan tan finos que no puedan ser visualizados en pantallas de proyección de dos dimensiones en las cuales el espacio virtual tridimensional ha experimentado un cambio de coordenadas cuando el punto de vista está suficientemente distante. Ésta es una desventaja en juegos que son jugados dentro de tales líneas (o una cancha).
De esta manera, en la presente invención, las coordenadas de posición de alguno de los vértices de los polígonos de línea son modificadas para aumentar el área de la superficie proyectada por la cámara bajo condiciones que dificultan que las líneas puedan ser proyectadas en la pantalla del monitor. De tal manera que,
De tal manera que, en la relación recíproca con la cámara, el área de la superficie de los polígonos de línea proyectada por la cámara es aumentada mediante un ligero aumento, como es mostrado en la Figura 27, de la altura de la posición de vértices localizados en la dirección a profundidad, como es visto desde la cámara, de los polígonos de línea situados en el terreno.
La Figura 28 es un diagrama de flujo que ilustra el algoritmo para tal proceso.
Primero, cuando los polígonos de línea (o los objetos de línea) están presentes en el campo visual de la cámara que ve los objetos situados en espacio virtual de juego, una bandera correspondiente que no es mostrada en la Figura es establecida por el programa. Cuando esto es determinado en el programa principal (que no es mostrado en la Figura), un proceso para impedir la desaparición de las líneas es ejecutado (S102, SÍ).
Se determina primero si los vértices de los polígonos de línea están ubicados separados o en dirección a la cámara. Un método para esto, como se muestra en la Figura 29, se utiliza para calcular la distancia 11 entre la cámara y el vértice P1 y para calcular la distancia 12 entre la cámara y el vértice P3, y para determinar los vértices más alejados y más cercanos basados en la magnitud de las dos distancias.
Otro método, como se muestra en la Figura 30, se utiliza para comparar los ángulos \theta1 y \theta3 de los vértices P1 y P3 y los ángulos \phi1 y \phi3 de la cámara para determinar los vértices más alejados y más cercanos P1 y P3. Aunque cualquiera de estos dos métodos puede ser usado en la realización presente, el último es más ventajoso porque hay menos cálculos para el hardware que en el método anterior.
El método más reciente para comparar ángulos se usa para describir la determinación de los vértices más alejados y más cercanos de los polígonos de línea en los pasos desde el S104 hasta el S110 debajo.
Los datos de un polígono de línea son leídos de una tabla de objetos que no es mostrada en la Figura que muestra los grupos de objetos situados en la escena (S104). La Figura 31 es un ejemplo de datos de polígono de línea, donde, por ejemplo, los valores de las coordenadas (x_{n}, z_{n}) de un sistema de coordenadas mundial así como también los ángulos predeterminados y similares para determinar los vértices más alejados y más cercanos están correlacionados en los datos de los vértices P1 al P4 de polígono.
Como se muestra en la Figura 30, la posición actual de la cámara en el sistema de coordenadas mundo (plano
x - z) y el ángulo \phin en la dirección del vértice Pn de un polígono de línea visto desde la posición de la cámara son entonces leídos. El ángulo \phin puede ser determinado por una función trigonométrica de las coordenadas del vértice Pn del polígono de línea y las coordenadas de la posición de la cámara (S106).
El vértice del polígono de línea y el ángulo de la cámara son entonces comparados (S108). En la Figura 30, por ejemplo, el ángulo predeterminado para el vértice P1 es de 90 grados, y el ángulo predeterminado para el vértice P3 es de 270 grados. Cuando el ángulo \phi1 del eje x del vector de la dirección del ojo entre la cámara y el vértice P1 es de 120 grados, entonces 120 grados - 90 grados = 30 grados < 90 grados (donde 90 grados es el valor de referencia para la determinación en este caso) (S108), permitiéndole ser determinado como el vértice en la arista según la profundidad del polígono (S110).
Cuando el ángulo \phi3 del eje x del vector de la dirección del ojo entre la cámara y el vértice P3 es de 150 grados, entonces 150 grados - 270 grados = ABS (120 grados) > 90 grados (donde 90 grados es el valor de referencia para la determinación en este caso, y ABS el valor absoluto) (S108), permitiéndole ser determinado como el vértice en la arista más cercano de la línea (S110).
Cuando el vértice Pn es la arista más cercana de un objeto de línea, ningún ajuste de altura es efectuado para el vértice Pn, y los datos para el siguiente vértice de polígono de línea son leídos (S110, NO).
Cuando el vértice Pn es la arista más cercana de un objeto de línea (S110, SÍ), se determina si la distancia hasta el vértice Pn es de 10 m o menos o no. Si es de 10 m o menos (S112, SÍ), es decir, cuando la cámara está cerca de la línea, la línea es normalmente visible en la pantalla, por lo tanto la altura del vértice Pn no es ajustada, y los datos para el próximo vértice del polígono de línea son leídos (S112, NO).
Cuando la distancia hasta el vértice Pn es más de 10 m (S112, NO), es decir, cuando la cámara está alejada de la línea, la línea es usualmente difícil de ver, por lo tanto el valor en la dirección de eje y (la dirección según la altura) en los datos de coordenadas del vértice Pn en la arista más alejada de la línea es aumentado una cierta cantidad para elevar la arista más alejada del polígono de línea sobre el terreno (S114). Este proceso es efectuado para cada uno de los vértices de todos los polígonos de línea en la pantalla (S116).
Como consecuencia, las próximas aristas de los objetos de línea situados en el espacio virtual de juego son elevados, como se muestra en la Figura 27, permitiéndoles ser vistos por la cámara.
Una tercera parte de la realización de la presente invención es descrita más abajo. La tercera invención involucra dividir el campo de juego (el terreno de fútbol) en las áreas prescriptas, determinando el área en la cual la pelota está localizada, y ajustando el ángulo de la cámara a fin de que la dirección en la cual la pelota avanza (la dirección en la cual el jugador quiere mirar) pueda ser fácilmente vista.
Las Figuras de la 32 a la 34 ilustran las direcciones en las cuales los jugadores del dispositivo de juego se mueven y las direcciones deseables de la cámara al moverse entre tales direcciones.
Primero, como se muestra en la Figura 25, la cámara básicamente se mueve a lo largo de las líneas de borde del terreno y es dirigida en la dirección del jugador. Por supuesto, la cámara puede moverse hacia dentro del terreno para seguir del juego.
Cuando los jugadores controlados por los jugadores del dispositivo de juego se mueven en dirección hacia y fuera del espectador (la dirección del eje z) en el plano x - y (Figura 32a), la cámara es dirigida en la dirección del eje z (Figura 32b).
Cuando los jugadores controlados por los jugadores del dispositivo de juego se mueven en dirección a la izquierda (en la dirección del eje x) en el plano x - y (Figura 33a), la cámara es rotada de la dirección del eje z a un ángulo específico, como -15 grados, para aumentar la visualización de la pantalla en el área en la dirección en la cual la pelota está avanzando (Figura 33b). Aquí, el ángulo es medido en la dirección en que gira el reloj (dirección positiva) del eje z es un valor positivo, y los ángulos medidos en contra de la dirección en que gira el reloj (dirección negativa) son valores negativos.
Cuando los jugadores controlados por los jugadores del dispositivo de juego se mueven en dirección a la derecha (en la dirección del eje x) en el plano x - y (Figura 34a), la cámara es rotada de la dirección del eje z a un ángulo específico, como 15 grados, para aumentar la visualización de la pantalla en el área en la dirección en la cual la pelota está avanzando (Figura 34b).
Un ejemplo en el cual la dirección del punto de vista de la cámara es determinada combinando el ajuste del ángulo de la cámara y el área del terreno de juego es descrito con referencia a las Figuras 35 y 36.
La rutina principal para el ajuste del ángulo lateral de la cámara es ejecutada primero según el momento prescripto (las condiciones) determinado en el programa principal no mostrado en la Figura, y está determinada según si el punto central de vista de la cámara está en el lado del jugador o del lado de la pelota (S132).
Cuando está en el lado del jugador (S132, lado del jugador), se determina si el punto central de vista está a una distancia prescripta o no, como 8 m o menos, del área de penalti de la cancha de fútbol (S134). Cuando está dentro de 8 m (S134, SÍ), adversarios y compañeros de equipo se reúnen en las afueras del área de penalti, con una oportunidad mayor para pasar o disparar (Figura 37), así es que la cámara se inclina cerca de -15 grados relativos al eje z para ofrecer una mejor vista de las afueras del área de penalti (S136, Figura 38).
Cuando está a más de 8 m del área de penalti (S134, NO), la dirección en la cual el jugador avanza es determinada (S138). Cuando el jugador se mueve hacia el espectador (Figura 39) o se aleja del espectador (Figura 40), el ángulo de la cámara en el plano x - z es 0 grados relativos al jugador (S140, Figura 41). Cuando el jugador se mueve a la izquierda (Figura 42), el ángulo de la cámara relativo al jugador es de -15 grados desde el eje z (S142, Figura 43). Cuando el jugador se mueve a la derecha (Figura 44), el ángulo de la cámara relativo al jugador es de 15 grados desde el eje z (S144, Figura 45).
Cuando la pelota es el punto central de vista de la cámara (S132, del lado de la pelota), se determinada si la distancia entre la pelota y jugador es una distancia prescripta o no, como 15 m o más (S146). Si está a 15 m o más (S146, SÍ, Figura 46), el ángulo de la cámara se determina de manera que el vector director del ojo desde la pelota hacia el jugador quede a un ángulo de 20 grados desde el eje z (S154, Figura 47). Cuando la posición entre el jugador y pelota es lo opuesto, relativo al eje z, el ángulo de la cámara es determinado de manera que el vector director del ojo desde la pelota hacia el jugador quede a un ángulo de -20 grados desde el eje z (S154, Figura 48).
Cuando la distancia entre la pelota y jugador no es una distancia específica como 15 m o más (S146, NO), se determina si el punto central de vista de la cámara está a menos de 8 m (S148) de un área de penalti o no. Cuando el punto central de vista de la cámara está a menos de 8 m del área de penalti (S148, Sí, Figura 49) el vector director de la cámara es establecido en un ángulo de -15 grados (Figura 50). Cuando la posición entre la pelota un jugador es lo opuesto, como se muestra en la Figura 48, la dirección de la cámara es establecida en 15 grados desde el eje z.
Cuando la distancia entre la pelota y jugador es menos de 15 m, y el punto central de vista de la cámara no está a menos de 8 m del área de penalti (S148, NO, Figura 51), el vector director del ojo de la cámara se establece en 0 grados relativos a la pelota (0 grados relativos al eje z) (Figura 52). Cuando estos procesos son concluidos, el sistema regresa al programa principal.
Ocasionalmente, se torna difícil jugar con los ángulos correctos para la dirección en la cual el jugador en la pantalla se mueve en los casos donde el movimiento del jugador en las direcciones x y z es entrado por el jugador del dispositivo de juego usando un dispositivo de entrada como un PAD o una palanca de control si el ángulo de la cámara del eje z es demasiado grande cuando la cámara se mueve a lo largo de los bordes del terreno. Un ángulo de la cámara de aproximadamente 15 grados es entonces ventajoso.
El ángulo de la cámara del jugador en el plano x - z en entonces ajustado de acuerdo a áreas en el terreno de juego, ofreciendo una mejor vista en la dirección en la cual la pelota avanza.
El ajuste vertical (la dirección de eje y) del ángulo de la cámara es descrito más abajo. La Figura 53 es un diagrama de flujo del proceso para ajustar el ángulo vertical de la cámara, el cual es ejecutado de acuerdo al momento prescripto (condiciones) en el programa principal no mostrado en la Figura. La posición de altura de la cámara es usualmente establecida, pero no limitada, a una altura de aproximadamente 10 m. La rutina principal, como se muestra en la Figura 54, establece el ángulo en el cual la cámara sigue la pista del terreno de juego según las áreas de juego. Es decir, la posición del punto central de vista de la cámara es establecida (S162). Cuando el jugador es el punto central de vista (S162, jugador), es determinado si el punto central de vista está cerca del área de penalti (S164) o no. Cuando el punto central de vista no está junto al área de penalti (S164, NO), la dirección de la cámara es determinada de manera tal que el vector director del ojo de la cámara sea de -8 grados desde el eje z, para ofrecer un campo visual relativamente amplio (S166). Aquí, cuando la cámara mire hacia abajo, el ángulo es negativo, cuando mire hacia arriba, el ángulo es positivo, y cuando este nivelada, el ángulo es 0. Cuando el punto central de vista está cerca de un área de penalti (S164, SÍ), la dirección de la cámara es establecida de manera tal que el vector director del ojo de la cámara sea de -11 grados desde el eje z (S168). Esto permite a la cámara brindar una mejor vista mirando desde lo alto el terreno, resultando en imágenes con un mejor sentido de profundidad y dimensión.
Cuando la pelota es el punto central de vista (S162, la pelota), se determina si el punto central de vista está cerca de un área de penalti (S170) o no. Cuando el punto central de vista no está cerca de un área de penalti (5170, NO), la dirección de la cámara es determinada de manera tal que el vector de la línea de visión de la cámara sea de -11 grados desde el eje z (S166). Cuando el punto central de vista está cerca de un área de penalti (S170, SÍ), la dirección de la cámara es establecida de manera que el vector director del ojo de la cámara sea de -13 grados desde el eje z
(S174).
Luego de la conclusión de estos procesos, el sistema retorna al programa principal.
La Figura 55 es un diagrama de flujo del ajuste del acercamiento de la cámara. Cuando es determinado en el programa principal que el ajuste del acercamiento de la cámara es necesitado, el proceso se mueve a la rutina principal.
Primero, se determina si el de punto central de vista de la cámara está cerca de un área de penalti (S182) o no. Cuando está cerca de un área de penalti, la cámara se aleja hasta una distancia prescripta del punto central de vista (S184). Esto permite que el área de penalti sea vista por completo.
Cuando el punto central de vista de la cámara no está cerca del área de penalti (S182, NO) y el jugador está fuera de la pantalla (S186, SÍ), la cámara se acerca para proyectar el jugador en la pantalla (S188). Como se muestra en la Figura 56, cuando el jugador está en la pantalla (S186, NO) y el jugador está en 3/4 de la pantalla (S190, SÍ), la cámara se acerca a una distancia prescripta del punto central de vista (S190). Esto permite tomar de cerca a los jugadores en situaciones donde un rango fijo no es visible. Cuando el jugador está en proyectado en la pantalla pero está en 3/4 de la pantalla (S190, NO), la distancia entre la cámara y el punto central de vista es mantenida (S194).
La Figura 57 es un diagrama de flujo de otro ejemplo que permite la visualización de objetos que deberían ser impedidos de desaparecer de la pantalla, como los polígonos de línea antes mencionados.
En la Figura, los datos de atributo que indican que de un objeto debe impedirse su desaparición se agregan a los datos de los polígonos que deberían impedirse su desaparición. Cuando los grupos de objetos en el campo visual de la cámara virtual son visualizados en la pantalla, el sistema computacional determina si hay polígonos que deben ser impedidos de desaparecer en el campo visual (S202) o no.
Cuando hay polígonos que deberían ser impedidos de desaparecer, como los polígonos de línea (S202, SÍ), un programa que impide que polígonos desaparezcan es accionado. Esto es, como se muestra en la Figura 58, un vector director unitario del ojo es determinado del punto central de vista de la cámara y la posición de la cámara (S204). El vector unitario de la línea normal es determinado de los datos de los polígonos que deben ser impedidos de desaparecer (S206). El ángulo entre el vector director unitario del ojo y vector unitario de la línea normal es determinado. Esto puede ser determinado como el producto vectorial entre el vector director unitario del ojo y el vector unitario de la línea normal (S208). Los valores de coordenada del vértice del polígono están ajustados a fin de que el ángulo quede a un ángulo prescripto (S210). El proceso del paso 204 al paso 210 es ejecutado para cada polígono que debe ser impedido de desaparecer en el campo visual. Aquí, el paso 202 corresponde a la manera de impedir tal desaparición, los pasos 204 hasta el 208 corresponden a la manera de calcular del ángulo, y el paso 310 corresponde a la manera de inclinado de polígonos.
Esto permite que las líneas y similares que son indispensables para un juego sean impedidas de desaparecer.
La presente invención no está limitada a juegos de fútbol, y es aplicable a una variedad de juegos en los cuales un terreno o cancha está descrito por líneas, como el tenis, el béisbol, el baloncesto, el voleibol, el Rugby, y el fútbol americano.
El acercamiento de la camera es entonces ajustado según el estado del área y de la visualización.
Un programa para ejecutar dicho dispositivo de procesamiento de imágenes y para ejecutar el método para visualizar las imágenes en un sistema de cómputo puede ser provisto como una grabación en soportes de grabación de datos como los CD-ROMs, los DVD-ROMs, y los casetes ROM.
La realización descrita con referencia a las Figuras de la 8 hasta la 17 no está limitada a las realizaciones en las cuales a las superficies de los polígonos del A hasta el D'' le son trazado mapas con texturas de espectadores de cara al terreno de juego, es decir, ejemplos de objetos de visualización visualizados en el espacio virtual tridimensional sirviendo como el espacio de juego. Por ejemplo, entre las texturas de las que se trazó mapas a superficies de polígono, porciones del fondo más que de los objetos de visualización modelados en los espectadores pueden ser usados texturas de bit transparente, y porciones de objetos de visualización pueden ser utilizadas como texturas de bit opacas.
La Figura 59 es un esquema de tales texturas. El área de textura de bit opaco incluye los objetos de visualización del espectador 300 y las porciones que le rodean 301 según se necesite. La Figura 60 es un ejemplo de textura relacionada con otra realización del espectador. El fondo 302 es similarmente de bits transparentes, y los personajes 304 son bits opacos. Con esta textura se le trazó un mapa a polígonos además de trazarle a polígonos un mapa con la textura en la Figura 59, y los polígonos a los que se le trazó mapas con la textura en la Figura 60 están ordenados en la parte delantera de los polígonos de los que se trazó un mapa con la textura de la Figura 59, esto es, más en el lado del punto de vista virtual. La Figura 61 muestra un estado en la cual estas texturas son a capas, es decir, superpuestas, como se muestra en las Figuras de la 8 a la 17. Los personajes 304 en la Figura 60 están superpuestos en el fondo transparente de la Figura 59. Consecuentemente, cuando los polígonos en las Figuras 59 y 60 están superpuestos, los espectadores con las dos texturas son visualizados en la pantalla mientras son mezclados, agrupados, y superpuestos. Cuando los espectadores que son estos personajes de polígono están superpuestos, los espectadores hacia el fondo del espacio tridimensional, es decir, los espectadores de polígonos que tienen la prioridad mínima, están bajo los polígonos que tienen la prioridad más alta, y no son visualizados en la pantalla.
Los movimientos de los espectadores pueden ser reproducidos o simulados en la misma manera que la realización previa del comportamiento del espectador moviendo una pluralidad de polígonos a los que se les trazó un mapa con tales texturas a lo largo de planos perpendiculares o intersecando de otra manera la dirección en la cual la pluralidad de polígonos está superpuesta, o en una dirección intersecando la cámara virtual que está orientada a los polígonos desde el A hasta el D'' en espacio tridimensional, o en una dirección intersecando la dirección en la cual están superpuestos, como se muestra en las Figuras de la 8 a la 17.
Las Figuras 62 y 63 son de un caso en el cual los polígonos 400 descritos en la Figura 59 y los polígonos 402 descritos en la Figura 60 están superpuestos, donde la Figura 62 muestra los polígonos 400 ascendiendo, y la Figura 63 muestra los polígonos 402 ascendiendo.
Por lo tanto, en la presente invención, los movimientos como esos de varios objetos de visualización moviéndose como en el caso de espectadores alrededor de un terreno de juego de fútbol, movimientos de grupos consistentes en varios objetos de visualización, y los movimientos en los casos donde varios objetos de visualización están preferentemente divididos en varios bloques y son movidos mientras los bloques son controlados (movimientos de animales e insectos) pueden ser creados más eficientemente. Tales movimientos son producidos en modos específicos, como en el caso de partidos de fútbol y cuando los atletas compitiendo sobre una pelota hacen un gol. Es soportable repetir que las texturas descritas aquí pueden ser datos de imágenes que incluyen personajes como los espectadores y el fondo (las nubes, las olas, etc.). Además, en lugar de construir las porciones del fondo en la Figura 59 con texturas transparentes, una textura de un fondo completo puede ser usada, y la textura en la Figura 60 puede ser construida de una textura con otro color distinguible de este solo color. Además, la porción de del fondo de la Figura 60 puede ser hecho de una textura de un solo color, y la porción de fondo de la Figura 59 puede ser usado como está con colores transparentes, mientras como mínimo los perfiles de los personajes en la Figura 59 no son el único color antes mencionado. En el caso de las Figuras de la 8 a la 17, los polígonos fueron ordenados en, pero no están limitados, posiciones de manera que gradualmente puedan ser inclinados hacia arriba en el espacio virtual, así es que los polígonos también pueden ser ordenados en un plano virtualmente nivelado.
En las realizaciones antes mencionadas, los ojos de un personaje fueron dirigidos a un objetivo cuando fue determinado si la relación con el contenido del juego o la relación posicional como la distancia entre los personajes y el objetivo que tenía una relación a lo largo del juego para los dichos personajes cumplía ciertas condiciones o no, por lo tanto cuando un personaje competía mientras driblaba una pelota en un partido de fútbol, por ejemplo, el personaje miraba (examinado) a otras direcciones para buscar a compañeros de equipo o zonas para patear, permitiendo que el comportamiento de los competidores reales de fútbol fuera simulado de una manera más realista, brindando movimientos más naturales, y logrando mayor realismo e inmediatez.
El control del punto de vista proporciona efectúa efectos como 1) afectando las estrategias usadas en el juego y el nivel de dificultad de juego, y 2) dar facilidades para entender y jugar situaciones o puntos para los cuales la pelota puede ser (debería) ser pasada basado en el comportamiento de los personajes en posesión de la pelota en partidos con pelotas.
En las realizaciones, una pluralidad de polígonos trazados con mapas de textura modelados en una pluralidad de espectadores son virtualmente superpuestos, y la pluralidad de polígonos es movida en una dirección intersecando la dirección en la cual están superpuestas, a fin de que movimientos diversificados (comportamiento más realista) de espectadores individuales puedan ser representados. El diseño del software es simplificado, la carga computacional es reducida, y la capacidad de memoria puede ser reducida. Estas y otras demandas pueden ser simultáneamente logradas, y la inmediatez de juego puede ser adicionalmente incrementada.
Además en las realizaciones, la hora en que el juego está siendo jugado por un jugador del dispositivo de juego es detectada, y los colores de la pantalla para las imágenes son determinados según esa hora por correcciones basadas en colores de pantalla previamente optimizados para los juegos, a fin de que las presentaciones con cambios en los colores de la pantalla sean agregadas según la hora en la cual el juego está siendo jugado, permitiendo que los colores de la pantalla sean constantemente mantenidos de tal manera en eviten interferir con el juego. Es posible lograr también evitar los inconvenientes que ocurren cuando el estado de color de la pantalla es ajustado usando sólo al iluminación, como en el pasado, y es además posible hacer los cambios en el brillo de forma más consistente y exacta a lo largo del día compatible con el estado de color de la pantalla de visualización, además incrementando la inmediatez del juego.
Polígonos que son difícil de ver en el espacio virtual debido a la posición de la cámara algunas veces ocurren en juegos que se desarrollan en el espacio virtual tridimensional, por lo tanto en otra realización, los objetos de línea en el terreno, por ejemplo, se imposibilitan de desaparecer por medio del procesamiento de imágenes.
No obstante otra realización ofrece un dispositivo de juego para ajustar la posición de la cámara, la dirección de la cámara, el rango del campo visual, y similares según la dirección en la cual los objetos se mueven o las áreas de juego, resultando en una pantalla que simplifica el jugado de los juegos.
Aplicabilidad industrial
Como es descrito arriba, el dispositivo de procesamiento de imágenes de la presente invención permite que simulaciones (como los juegos) en el espacio virtual puedan ser visualizadas más visiblemente y con más inmediatez para los observadores (como personas físicas jugando con el dispositivo de juego). La invención sirve particularmente para dispositivos de juego de vídeo (o televisión).

Claims (26)

1. Un dispositivo de procesamiento de imágenes para visualizar circunstancias en el espacio virtual tridimensional en forma de imágenes vistas desde una cámara virtual, en donde dicho dispositivo de procesamiento de imágenes comprende:
medios para visualizar polígonos situados en dicho espacio virtual tridimensional;
medios de determinación para determinar la relación posicional entre dichos polígonos y dicha cámara virtual; y
medios de inclinación de polígonos para la inclinación de dichos polígonos, según los resultados determinados por dichos medios de determinación, para así aumentar el área de la superficie de dichos polígonos vistos desde la cámara virtual para mejorar la visibilidad de los polígonos desde la cámara virtual.
2. Un dispositivo de procesamiento de imágenes según la reivindicación 1, en el que dichos polígonos están situados en un plano de referencia sirviendo de referencia en dicho espacio virtual tridimensional.
3. Un dispositivo de procesamiento de imágenes según la reivindicación 2, en el que dichos polígonos son polígonos que forman líneas en dicho plano de referencia.
4. Un dispositivo de procesamiento de imágenes según la reivindicación 2 o la reivindicación 3, en el que dicho plano de referencia es el terreno.
5. Un dispositivo de procesamiento de imágenes según cualquier reivindicación precedente, en el que dichos polígonos son cuadriláteros, y dichos medios de inclinación de polígonos son operables para modificar los valores de las coordenadas de los vértices en uno de los lados mutuamente enfrentados a dichos polígonos.
6. Un dispositivo de procesamiento de imágenes según cualquiera de las reivindicaciones desde la son operables para permitir que los vértices del interior, relativos a dicha cámara virtual, de dichos polígonos sobresalgan de dicho plano de referencia, mientras está centrado en los vértices del frente, relativos a dicha cámara virtual, de dichos polígonos.
7. Un dispositivo de procesamiento de imágenes según la reivindicación 1, dicho dispositivo de procesamiento de imágenes teniendo unos medios visualizadores generadores de imágenes para convertir el espacio virtual construido con un modelo tridimensional consistente en dichos polígonos en imágenes de dos dimensiones vistas desde dicha cámara virtual, y visualizándolas en un dispositivo de visualización, en el que dichos medios de determinación comprende medios de cálculo de ángulos para calcular el ángulo entre un vector director del ojo que representa la dirección en la cual dicha cámara virtual está orientada y un vector de la línea normal que representa la orientación del plano de ciertos polígonos situados en dicho espacio virtual; y en el que dichos medios de inclinación de polígonos son operables para cambiar los valores de las coordenadas de los vértices de dichos polígonos, a fin de que el ángulo calculado por dichos medios de cálculo de ángulos asuma un cierto valor.
8. Un dispositivo de juego que comprende un dispositivo de procesamiento de imágenes según la reivindicación 1, para ejecutar un juego situando objetos en dicho espacio virtual tridimensional y controlando los movimientos de dichos objetos según el control de la entrada del jugador y reglas determinadas.
9. Un dispositivo de juego según la reivindicación 8, en el que dicho juego es un juego en el cual los objetos están situados en un plano, y dichos polígonos son polígonos que forman líneas descritas en dicho plano.
10. Un dispositivo de juego que comprende un dispositivo de procesamiento de imágenes según la reivindicación 2 ó la reivindicación 6, para ejecutar un juego situando objetos en dicho espacio virtual tridimensional y controlando dichos objetos según el control de la entrada del jugador y reglas determinadas.
11. Un dispositivo de juego según la reivindicación 10, en el que dicho juego es un juego en el cual los objetos están situados en un terreno de juego formado en dicho plano de referencia, y dichos polígonos son polígonos que forman las líneas descritas en dicho terreno de juego.
12. Un dispositivo de juego según la reivindicación 8, en el que dichos polígonos están situados en un plano de referencia sirviendo como referencia de dicho espacio virtual; y dichos medios de determinación son operables para determinar la relación del ángulo entre la dirección del ojo de dicha cámara virtual y dicho polígono.
13. Un dispositivo de juego según la reivindicación 8, que comprende además:
Unos medios de determinación adicionales para determinar si dicho objeto está en un área específica en dicho espacio virtual; y
Unos medios de ajuste del ángulo de la cámara para ajustar el ángulo de dicha cámara virtual basado en los resultados de dicha determinación.
14. Un dispositivo de juego según la reivindicación 13, en el que dichos medios de ajuste del ángulo de la cámara son operables para además ajustar el ángulo de dicha cámara virtual basado en la dirección en la cual dicho objeto se mueve.
15. Un dispositivo de juego según la reivindicación 13 ó la reivindicación 14, en el que dichos medios de ajuste del ángulo de la cámara son capaces de ajustar el ángulo de dicha cámara virtual en las direcciones lateral y vertical en dicho espacio virtual.
16. Un dispositivo de procesamiento de imágenes según la reivindicación 3 en el que dichos medios de inclinación de polígonos están dispuestos para inclinar los polígonos cuando dichos polígonos que forman líneas están por lo menos a una distancia predeterminada de la cámara virtual.
17. Medios de grabado de datos que incluyen un programa para permitir que un sistema de cómputo funcione como un dispositivo de procesamiento de imágenes o como un dispositivo de juego según cualquiera de las reivindicaciones de la 1 a la 16.
18. Un dispositivo de juego según la reivindicación 9, en el que dichos polígonos son líneas en un terreno en un partido con pelota y dichos objetos son partícipes en el partido con pelota y en la pelota.
19. Un dispositivo de juego según la reivindicación 8, en el que dichos objetos son partícipes en un partido con pelota y una pelota.
20. Un método de procesamiento de imágenes de juego que usa un dispositivo de juego para situar objetos en el espacio virtual por un sistema de cómputo, desarrollando un juego al controlar los movimientos y las posiciones de dichos objetos, y al visualizar imágenes de dicho espacio virtual como una pantalla vista de una cámara virtual situada en un punto de vista predeterminado, dicho método de procesamiento de imágenes de juego comprende los
pasos de:
Determinar una relación posicional entre un polígono de línea situado a lo largo de un plano de referencia sirviendo como una referencia en dicho espacio virtual y dicha cámara virtual; e
inclinando dicho polígono según dicha relación posicional algo semejante a que un área de dichos polígonos de línea se incremente a medida que sea vista desde dicha cámara virtual, y la visibilidad del polígono sea por eso mejorada.
21. Un método de procesamiento de imágenes de juego según la reivindicación 20, en el que dicho paso de determinación comprende calcular un ángulo entre un vector director del ojo que representa la dirección en la cual dicha cámara virtual está orientada y un vector normal que representa la orientación de un plano de ciertos polígonos situado en dicho espacio virtual; y dicho paso de inclinación comprende cambiar los valores de coordenadas de los vértices de dichos polígonos, como que dicho ángulo tenga un valor deseado.
22. Un método de procesamiento de imágenes de juego según la reivindicación 20 o la reivindicación 21, que comprende además el paso de:
ajustar la dirección de dicha cámara virtual basada en la dirección de movimiento de un objeto controlado por una señal de entrada que es entrada por un jugador que controla un dispositivo de entrada.
23. Un método de procesamiento de imágenes de juego según la reivindicación 20 o la reivindicación 21, que comprende además el paso de:
ajustar una dirección de dicha cámara virtual basado en la posición de un objeto controlado por un jugador y un punto de atención de dicha cámara virtual correspondiente a un área predeterminada de dicho espacio virtual.
24. Un método de procesamiento de imágenes de juego según la reivindicación 23, que comprende además el paso de:
acercamiento de dicha cámara virtual basado en dicho punto de atención de dicha cámara virtual y dicha posición de dicho objeto controlado por dicho jugador.
25. Un método de procesamiento de imágenes de juego según la reivindicación 20 o la reivindicación 21, en el que dicho plano de referencia es el terreno, y dichos polígonos de línea forman líneas situadas en dicho terre-
no.
\newpage
26. Un método de procesamiento de imágenes de juego según la reivindicación 20 o la reivindicación 21, en el que dichos polígonos de línea son líneas en un campo de un partido con pelota y dichos objetos son partícipes en el partido con pelota y en la pelota.
ES98904377T 1997-02-18 1998-02-18 Dispositivo y metodo para el procesamiento de imagenes. Expired - Lifetime ES2260830T3 (es)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP9-34089 1997-02-18
JP9-34163 1997-02-18
JP9034163A JP2955989B2 (ja) 1997-02-18 1997-02-18 ゲーム装置
JP3408997 1997-02-18

Publications (1)

Publication Number Publication Date
ES2260830T3 true ES2260830T3 (es) 2006-11-01

Family

ID=26372888

Family Applications (1)

Application Number Title Priority Date Filing Date
ES98904377T Expired - Lifetime ES2260830T3 (es) 1997-02-18 1998-02-18 Dispositivo y metodo para el procesamiento de imagenes.

Country Status (8)

Country Link
US (3) US6989829B2 (es)
EP (2) EP0901803B1 (es)
KR (1) KR100300832B1 (es)
CN (2) CN1640519B (es)
DE (1) DE69833482T2 (es)
ES (1) ES2260830T3 (es)
HK (1) HK1081135A1 (es)
WO (1) WO1998035734A1 (es)

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0901803B1 (en) * 1997-02-18 2006-02-15 Sega Corporation Device and method for image processing
US6612930B2 (en) 1998-11-19 2003-09-02 Nintendo Co., Ltd. Video game apparatus and method with enhanced virtual camera control
US6712703B2 (en) 1998-11-19 2004-03-30 Nintendo Co., Ltd. Video game apparatus and information storage medium for video game
JP2000153063A (ja) * 1998-11-19 2000-06-06 Nintendo Co Ltd ビデオゲーム装置およびビデオゲーム用情報記憶媒体
JP2000153061A (ja) * 1998-11-19 2000-06-06 Nintendo Co Ltd ビデオゲーム装置およびビデオゲーム用情報記憶媒体
TW452748B (en) * 1999-01-26 2001-09-01 Ibm Description of video contents based on objects by using spatio-temporal features and sequential of outlines
US7085995B2 (en) * 2000-01-26 2006-08-01 Sony Corporation Information processing apparatus and processing method and program storage medium
KR100752455B1 (ko) * 2000-01-26 2007-08-24 소니 가부시끼 가이샤 정보 처리 장치 및 처리 방법과 프로그램 저장 매체
US7685534B2 (en) * 2000-02-16 2010-03-23 Jlb Ventures Llc Method and apparatus for a three-dimensional web-navigator
EP1406218A4 (en) * 2001-05-21 2005-07-20 Sega Corp IMAGE PROCESSING APPARATUS AND GAME APPARATUS
JP3594915B2 (ja) * 2001-08-03 2004-12-02 株式会社ナムコ プログラム、情報記憶媒体及びゲーム装置
JP2005505357A (ja) * 2001-10-10 2005-02-24 ソニー・コンピュータ・エンタテインメント・アメリカ・インク ゲーム環境におけるキャラクタによりゲーム情報を提供するための方法
US6952207B1 (en) * 2002-03-11 2005-10-04 Microsoft Corporation Efficient scenery object rendering
US20030227453A1 (en) * 2002-04-09 2003-12-11 Klaus-Peter Beier Method, system and computer program product for automatically creating an animated 3-D scenario from human position and path data
JP4079358B2 (ja) * 2002-12-06 2008-04-23 株式会社コナミデジタルエンタテインメント ゲーム装置、ゲーム制御方法、及びプログラム
DE10325382A1 (de) * 2003-05-30 2004-12-23 Karl Storz Gmbh & Co. Kg Verfahren und Vorrichtung zum Visualisieren von medizinischen Patientendaten auf einer medizinischen Anzeigeeinheit
US7420574B2 (en) * 2004-04-16 2008-09-02 Autodesk, Inc. Shape morphing control and manipulation
US7064761B2 (en) 2004-05-10 2006-06-20 Pixar Techniques for animating complex scenes
JP4474640B2 (ja) * 2004-05-11 2010-06-09 株式会社セガ 画像処理プログラム、ゲーム処理プログラムおよびゲーム情報処理装置
JP2006018476A (ja) * 2004-06-30 2006-01-19 Sega Corp 画像の表示制御方法
JP2006060652A (ja) * 2004-08-23 2006-03-02 Fuji Photo Film Co Ltd デジタルスチルカメラ
KR100612874B1 (ko) * 2004-11-22 2006-08-14 삼성전자주식회사 스포츠 동영상의 요약 방법 및 장치
JP4488996B2 (ja) * 2005-09-29 2010-06-23 株式会社東芝 多視点画像作成装置、多視点画像作成方法および多視点画像作成プログラム
JP4706966B2 (ja) * 2005-12-06 2011-06-22 株式会社セガ 画像生成プログラム、画像処理装置
JP5025950B2 (ja) * 2005-12-12 2012-09-12 任天堂株式会社 情報処理プログラム、情報処理装置、情報処理システムおよび情報処理方法
JP4125758B2 (ja) * 2006-02-27 2008-07-30 株式会社スクウェア・エニックス ビデオゲーム処理装置、ビデオゲーム処理方法、およびビデオゲーム処理プログラム
CN100437608C (zh) * 2006-04-30 2008-11-26 珠海市西山居软件有限公司 游戏中虚拟人物作交互动作的装置和方法
US9327191B2 (en) * 2006-05-08 2016-05-03 Nintendo Co., Ltd. Method and apparatus for enhanced virtual camera control within 3D video games or other computer graphics presentations providing intelligent automatic 3D-assist for third person viewpoints
JP4707034B2 (ja) * 2006-07-07 2011-06-22 株式会社ソニー・コンピュータエンタテインメント 画像処理方法、入力インタフェース装置
US20080039967A1 (en) * 2006-08-11 2008-02-14 Greg Sherwood System and method for delivering interactive audiovisual experiences to portable devices
US20080231627A1 (en) * 2007-03-20 2008-09-25 Robert Allen Shearer Using Ray Tracing to Enhance Artificial Intelligence Character Behavior
JP4929061B2 (ja) * 2007-06-04 2012-05-09 株式会社コナミデジタルエンタテインメント ゲーム装置、ゲーム装置の制御方法及びプログラム
JP4964057B2 (ja) * 2007-08-08 2012-06-27 株式会社コナミデジタルエンタテインメント ゲーム装置、ゲーム装置の制御方法及びプログラム
US9108108B2 (en) 2007-09-05 2015-08-18 Sony Computer Entertainment America Llc Real-time, contextual display of ranked, user-generated game play advice
US9126116B2 (en) 2007-09-05 2015-09-08 Sony Computer Entertainment America Llc Ranking of user-generated game play advice
GB2454681A (en) * 2007-11-14 2009-05-20 Cybersports Ltd Selection of animation for virtual entity based on behaviour of the entity
CN101593362B (zh) * 2008-05-26 2012-09-05 新奥特(北京)视频技术有限公司 一种图形的路径构建方法
GB2465538B (en) 2008-08-01 2013-03-13 Sony Corp Method and apparatus for generating an event log
JP4498449B2 (ja) * 2008-08-22 2010-07-07 株式会社コナミデジタルエンタテインメント ゲーム装置、ゲーム装置の制御方法及びプログラム
US8914854B2 (en) * 2008-09-11 2014-12-16 International Business Machines Corporation User credential verification indication in a virtual universe
US8412662B2 (en) * 2009-06-04 2013-04-02 Motorola Mobility Llc Method and system of interaction within both real and virtual worlds
US20120210205A1 (en) 2011-02-11 2012-08-16 Greg Sherwood System and method for using an application on a mobile device to transfer internet media content
US11647243B2 (en) 2009-06-26 2023-05-09 Seagate Technology Llc System and method for using an application on a mobile device to transfer internet media content
JP5050094B2 (ja) * 2010-12-21 2012-10-17 株式会社東芝 映像処理装置及び映像処理方法
US8798777B2 (en) 2011-03-08 2014-08-05 Packetvideo Corporation System and method for using a list of audio media to create a list of audiovisual media
RU2479040C1 (ru) * 2011-12-23 2013-04-10 Владимир Евгеньевич Афоньшин Способ тактической подготовки команды в игровых видах спорта
US9833707B2 (en) 2012-10-29 2017-12-05 Sony Interactive Entertainment Inc. Ambient light control and calibration via a console
CN105204805B (zh) * 2015-09-15 2018-08-03 网易(杭州)网络有限公司 一种基于高度变化的3d动态路标显示方法和显示装置
KR102434406B1 (ko) * 2016-01-05 2022-08-22 한국전자통신연구원 공간 구조 인식을 통한 증강 현실 장치 및 그 방법
JP7314475B2 (ja) * 2016-11-11 2023-07-26 セイコーエプソン株式会社 ロボット制御装置、及び、ロボット制御方法
CN106570914B (zh) * 2016-11-15 2020-01-14 华南理工大学 一种移植二维图像中角色的姿态的方法
KR101931564B1 (ko) 2017-03-03 2018-12-24 한국과학기술원 영상 정합을 이용한 영상 처리 장치 및 방법
US10561942B2 (en) 2017-05-15 2020-02-18 Sony Interactive Entertainment America Llc Metronome for competitive gaming headset
JP6223617B1 (ja) * 2017-05-26 2017-11-01 株式会社テクテック 仮想地図表示システム、プログラム及び方法
US10128914B1 (en) 2017-09-06 2018-11-13 Sony Interactive Entertainment LLC Smart tags with multiple interactions
CN108159701B (zh) * 2017-12-27 2021-02-12 网易(杭州)网络有限公司 游戏角色显示位置的调整方法、装置、处理器及终端
CN110009714A (zh) * 2019-03-05 2019-07-12 重庆爱奇艺智能科技有限公司 在智能设备中调整虚拟角色眼神的方法及装置
CN111311523B (zh) * 2020-03-26 2023-09-05 北京迈格威科技有限公司 图像处理方法、装置、系统和电子设备
JP7233399B2 (ja) * 2020-06-23 2023-03-06 任天堂株式会社 ゲームプログラム、ゲーム装置、ゲームシステム、およびゲーム処理方法

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE8801043D0 (sv) * 1988-03-22 1988-03-22 Orjan Strandberg Genimator
US6054991A (en) * 1991-12-02 2000-04-25 Texas Instruments Incorporated Method of modeling player position and movement in a virtual reality system
JPH05249953A (ja) 1991-12-03 1993-09-28 Toshiba Corp 画像表示装置
JP2914823B2 (ja) 1992-05-27 1999-07-05 株式会社ハドソン 奥行き表現方法
US5363297A (en) * 1992-06-05 1994-11-08 Larson Noble G Automated camera-based tracking system for sports contests
JP2807608B2 (ja) * 1992-12-29 1998-10-08 株式会社ナムコ ソーティング処理装置、これを用いた画像合成装置及びソーティング処理方法
JP2539153B2 (ja) 1993-03-19 1996-10-02 インターナショナル・ビジネス・マシーンズ・コーポレイション 仮想会議システム用端末装置及び仮想会議システム
JP2888723B2 (ja) 1993-03-26 1999-05-10 株式会社ナムコ 3次元ゲーム装置及び画像合成方法
US5347306A (en) 1993-12-17 1994-09-13 Mitsubishi Electric Research Laboratories, Inc. Animated electronic meeting place
JP3496205B2 (ja) 1993-12-21 2004-02-09 株式会社セガ ゲーム機における球技ゲームでの視点変更方法
ES2165422T3 (es) * 1994-06-20 2002-03-16 Sega Corp Aparato y procedimiento para controlar la direccion de un objeto.
EP1138358B1 (en) 1994-06-28 2004-01-21 Sega Corporation Game apparatus and method of playing game
JPH0884861A (ja) * 1994-09-14 1996-04-02 Taito Corp Tvボールゲーム
US6608622B1 (en) * 1994-10-14 2003-08-19 Canon Kabushiki Kaisha Multi-viewpoint image processing method and apparatus
JP3431320B2 (ja) * 1994-12-01 2003-07-28 株式会社ナムコ 3次元ゲーム装置及び画像合成方法
JP3538248B2 (ja) * 1994-12-02 2004-06-14 株式会社ナムコ 画像合成装置及び画像合成方法
JP3651943B2 (ja) 1994-12-09 2005-05-25 オリンパス株式会社 アイコン作成方法及び動画用のコマ作成方法
JP3781309B2 (ja) * 1995-01-19 2006-05-31 株式会社セガ・エンタープライゼス 画像処理方法及び画像処理装置
JP3442181B2 (ja) * 1995-02-17 2003-09-02 株式会社ナムコ 3次元ゲーム装置及び画像合成方法
US6768563B1 (en) * 1995-02-24 2004-07-27 Canon Kabushiki Kaisha Image input system
JPH08257238A (ja) 1995-03-24 1996-10-08 Taito Corp ビデオゲーム機
US5651104A (en) * 1995-04-25 1997-07-22 Evans & Sutherland Computer Corporation Computer graphics system and process for adaptive supersampling
KR100372852B1 (ko) * 1995-04-27 2003-04-10 가부시키가이샤 세가 화상처리장치,화상처리방법및그것을사용한게임장치및기억매체
JP3141737B2 (ja) * 1995-08-10 2001-03-05 株式会社セガ 仮想画像生成装置及びその方法
JP3461980B2 (ja) * 1995-08-25 2003-10-27 株式会社東芝 高速描画方法および装置
JPH09153146A (ja) * 1995-09-28 1997-06-10 Toshiba Corp 仮想空間表示方法
JP3544268B2 (ja) * 1995-10-09 2004-07-21 任天堂株式会社 三次元画像処理装置およびそれを用いた画像処理方法
WO1997014102A1 (en) * 1995-10-13 1997-04-17 Na Software, Inc. Creature animation and simulation technique
US6267673B1 (en) * 1996-09-20 2001-07-31 Nintendo Co., Ltd. Video game system with state of next world dependent upon manner of entry from previous world via a portal
US5990896A (en) * 1996-09-30 1999-11-23 Mitsubishi Electric Information Technology Center America, Inc. (Ita) Rapid and efficient terrain surface finding system
US6280323B1 (en) * 1996-11-21 2001-08-28 Konami Co., Ltd. Device, method and storage medium for displaying penalty kick match cursors in a video soccer game
US5953077A (en) * 1997-01-17 1999-09-14 Fox Sports Productions, Inc. System for displaying an object that is not visible to a camera
EP0901803B1 (en) 1997-02-18 2006-02-15 Sega Corporation Device and method for image processing
US20020049690A1 (en) * 2000-06-16 2002-04-25 Masanori Takano Method of expressing crowd movement in game, storage medium, and information processing apparatus

Also Published As

Publication number Publication date
US20010040575A1 (en) 2001-11-15
EP0901803A4 (en) 2001-02-28
US20050239547A1 (en) 2005-10-27
WO1998035734A1 (fr) 1998-08-20
DE69833482T2 (de) 2006-10-12
CN1640519B (zh) 2010-06-09
CN1217668A (zh) 1999-05-26
US20090115781A1 (en) 2009-05-07
EP1642624A2 (en) 2006-04-05
KR100300832B1 (ko) 2002-10-19
EP1642624A3 (en) 2007-02-28
US7532211B2 (en) 2009-05-12
KR20000064948A (ko) 2000-11-06
EP0901803B1 (en) 2006-02-15
EP0901803A1 (en) 1999-03-17
US6989829B2 (en) 2006-01-24
CN1640519A (zh) 2005-07-20
DE69833482D1 (de) 2006-04-20
HK1081135A1 (en) 2006-05-12
US7737968B2 (en) 2010-06-15
CN1188193C (zh) 2005-02-09

Similar Documents

Publication Publication Date Title
ES2260830T3 (es) Dispositivo y metodo para el procesamiento de imagenes.
ES2332271T3 (es) Dispositivo de procesamiento de graficos, metodo de procesamiento de graficos, maquina de juegos y medio de almacenamiento.
US6746331B1 (en) Assisting a player to contact an object by adjusting timing
US7479958B1 (en) Image generating device and image generating method
US6831659B1 (en) Image processor unit, game machine, image processing method, and recording medium
US20120212491A1 (en) Indirect lighting process for virtual environments
WO2016154359A1 (en) Systems and methods for programmatically generating anamorphic images for presentation and 3d viewing in a physical gaming and entertainment suite
JPH10290886A (ja) 画像処理装置および画像処理方法
US7131907B2 (en) System and method for superimposing an image on another image in a video game
JP2006061717A (ja) ゲーム画像の表示制御プログラム及びゲーム装置並びに記憶媒体
KR100721751B1 (ko) 게임장치, 게임 제어방법, 및 프로그램
JP4600793B2 (ja) 画像処理装置
JPH1173525A (ja) 画像処理装置および画像処理方法
JP4688405B2 (ja) プログラム、情報記憶媒体及びゲーム装置
JP5303592B2 (ja) 画像処理装置、画像処理方法、及び画像処理プログラム
US20230334781A1 (en) Simulation system based on virtual environment
JP2007054656A (ja) 画像処理装置および画像処理方法
JPH11306385A (ja) 3dcgアニメーション画像の表示方法及びそのプログラムを記録した記録媒体
JP2002298157A (ja) ゲーム情報、情報記憶媒体およびゲーム装置
JP2002273029A (ja) ゲーム情報、情報記憶媒体、および、ゲーム装置
JP2021016406A (ja) ゲーム装置及びプログラム