ES2295498T3 - Dispositivo de procesamiento de imagenes para determinar la trayectoria de vuelo de un objeto. - Google Patents

Dispositivo de procesamiento de imagenes para determinar la trayectoria de vuelo de un objeto. Download PDF

Info

Publication number
ES2295498T3
ES2295498T3 ES03025967T ES03025967T ES2295498T3 ES 2295498 T3 ES2295498 T3 ES 2295498T3 ES 03025967 T ES03025967 T ES 03025967T ES 03025967 T ES03025967 T ES 03025967T ES 2295498 T3 ES2295498 T3 ES 2295498T3
Authority
ES
Spain
Prior art keywords
game
player
bullet
vector
data
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
ES03025967T
Other languages
English (en)
Inventor
Makoto Yamamoto
Kenji Tohma
Shinobu Hayashi
Tsuyoshi Matsuda
Yoshitaka Maeyama
Tomoya c/o Sega Corporation Takasugi
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
Application filed by Sega Corp filed Critical Sega Corp
Application granted granted Critical
Publication of ES2295498T3 publication Critical patent/ES2295498T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • 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/25Output arrangements for video game devices
    • A63F13/28Output arrangements for video game devices responding to control signals received from the game device for affecting ambient conditions, e.g. for vibrating players' seats, activating scent dispensers or affecting temperature or light
    • A63F13/285Generating tactile feedback signals via the game input device, e.g. force feedback
    • 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
    • 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/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
    • A63F13/577Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game using determination of contact between game characters or objects, e.g. to avoid collision between virtual racing cars
    • 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/837Shooting of targets
    • 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/90Constructional details or arrangements of video game devices not provided for in groups A63F13/20 or A63F13/25, e.g. housing, wiring, connections or cabinets
    • A63F13/95Storage media specially adapted for storing game information, e.g. video game cartridges
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/603D [Three Dimensional] animation of natural phenomena, e.g. rain, snow, water or plants
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/802D [Two Dimensional] animation, e.g. using sprites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • 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/54Controlling the output signals based on the game progress involving acoustic signals, e.g. for simulating revolutions per minute [RPM] dependent engine sounds in a driving game or reverberation against a virtual wall
    • 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/55Controlling game characters or game objects based on the game progress
    • A63F13/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race 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/55Controlling game characters or game objects based on the game progress
    • A63F13/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
    • A63F13/573Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game using trajectories of game objects, e.g. of a golf ball according to the point of impact
    • 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/803Driving vehicles or craft, e.g. cars, airplanes, ships, robots or tanks
    • 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/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1037Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being specially adapted for converting control signals received from the game device into a haptic signal, e.g. using force feedback
    • 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/20Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of the game platform
    • A63F2300/206Game information storage, e.g. cartridges, CD ROM's, DVD's, smart cards
    • 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/30Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by output arrangements for receiving control signals generated by the game device
    • A63F2300/302Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by output arrangements for receiving control signals generated by the game device specially adapted for receiving control signals not targeted to a display device or game input means, e.g. vibrating driver's seat, scent dispenser
    • 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/6063Methods for processing data by generating or executing the game program for sound processing
    • A63F2300/6081Methods for processing data by generating or executing the game program for sound processing generating an output signal, e.g. under timing constraints, for spatialization
    • 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/64Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car
    • 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/64Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car
    • A63F2300/643Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car by determining the impact between objects, e.g. collision detection
    • 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/64Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car
    • A63F2300/646Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car for calculating the trajectory of 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
    • 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/6638Methods for processing data by generating or executing the game program for rendering three dimensional images for simulating particle systems, e.g. explosion, fireworks
    • 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/6692Methods for processing data by generating or executing the game program for rendering three dimensional images using special effects, generally involving post-processing, e.g. blooming
    • 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/8017Driving on land or water; Flying
    • 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/8076Shooting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/21Collision detection, intersection

Abstract

Un dispositivo de procesamiento de imágenes para visualizar en una pantalla una imagen de un primer objeto moviéndose dentro de un espacio virtual visto desde un punto de vista virtual de un segundo objeto manejado por un jugador, las velocidades del primero y del segundo objeto dentro del espacio virtual siendo dadas por vectores de velocidad respectivos (V1, V2), que comprende: Medios de almacenamiento para almacenar con anticipación patrones de movimiento de dicho primer objeto; Medios para calcular la distancia entre dichos primer objeto y segundo objeto y computar un vector sintético de velocidad (V3) mediante la suma al vector de velocidad (V1) de dicho primer objeto un vector (- k V2) calculado al multiplicar un coeficiente (k) que corresponde a dicha distancia por el vector inverso (- V2) del vector de velocidad (V2) de dicho segundo objeto; y Medios de generación de imágenes para leer patrones de movimiento de dichos medios de almacenamiento y generar imágenes de dicho primer objeto como visto desde un punto de vista virtual de un segundo objeto según dicho vector sintético de velocidad.

Description

Dispositivo de procesamiento de imágenes para determinar la trayectoria de vuelo de un objeto.
Antecedentes de la invención Campo de la invención
La presente invención se refiere a la tecnología de tratamiento de imágenes en los dispositivos de juego de vídeo.
Descripción de la técnica relacionada
De conformidad con el progreso en la tecnología de gráficos por ordenador (CG por sus siglas en inglés), un mundo virtual puede ser representado ahora de una manera aun más realista. Un dispositivo de juego de vídeo utiliza tal tecnología CG.
Como ejemplo de un vídeo juego, hay un juego de tiro. Este tipo de dispositivo de juego está generalmente equipado con una unidad provista del arma, una unidad de procesamiento central (CPU por sus siglas en inglés) para el procesamiento de gráficos, un monitor, etcétera. Cuando un jugador dirige la punta de la pistola a un blanco (el personaje enemigo) que aparece en la pantalla del monitor y tira del gatillo en una unidad provista del arma, el dispositivo de juego detecta la posición en la pantalla del monitor de la señal de luz emitida desde la unidad del arma, y realiza un procesamiento de imágenes, como es el procesamiento de destruir el personaje enemigo basado en tales datos de posición.
Como ejemplo de un juego típico de tiro con pistola hasta ahora existe el "Virtua Cop (Marca Registrada)" confeccionada por Sega Enterprises, Ltd. En este juego con pistola, los jugadores compiten por puntuaciones usando una unidad provista del arma y derribando a disparos a personajes enemigos que aparecen en el espacio tridimensional virtual (el espacio de juego) en la pantalla del monitor. Aquí, un personaje enemigo aparece en una posición predeterminada en la pantalla del monitor en un momento predeterminado. Cuando el jugador dirige la punta de la pistola de la unidad provista del arma hacia el personaje enemigo, el punto de vista en la pantalla del monitor se acerca al enemigo y tal personaje enemigo es ampliado y visualizado en la pantalla del monitor. Las acciones del personaje enemigo se controlan por un programa de procesamiento de imágenes cargado en un dispositivo de juego y, en caso de necesidad, el personaje enemigo ataca al jugador mirando la pantalla del monitor.
Sin embargo, los inventores han descubierto tras un estudio intenso que los siguientes problemas deben ser resueltos para aumentar la realidad del juego y representar la imagen de una manera más realista.
Primero, el procesamiento de las imágenes de despliegue violento en un juego de tiro convencional usa, por ejemplo, polígonos planares y polígonos esféricos para disminuir la cantidad de datos de polígonos para representar las imágenes de despliegue violento. Una textura de imágenes de despliegue violento es fijada a estos polígonos y la animación de los despliegues es realizada mediante rotación, etc., de esta textura. El procesamiento de las imágenes de despliegue violento usando polígonos planares es revelado en la Publicación Internacional WO95/35555. Según este método, los polígonos como patrones de despliegue violento están siempre de cara a la dirección de la línea de visión y las inconveniencias al usar polígonos planares (la necesidad de hacer al plano confrontar siempre la dirección de la línea de visión) se resuelven al comprender ésto medios de procesamiento de la matriz de control de la cámara, medios de procesamiento de la matriz del objeto, y medios de procesamiento de visualización del patrón de objeto.
Sin embargo, al representar las imágenes de despliegue violento con polígonos planares, el límite entre la imagen de despliegue violento y el fondo se vuelve antinatural, dando como resultado que la imagen carezca de realismo. En otras palabras, hay una inconveniencia en que el límite entre la imagen de despliegue violento y el fondo sea una línea recta. Además, al representar las imágenes de despliegue violento con polígonos esféricos, la imagen de despliegue violento se vuelve monótona, dando como resultado que la imagen carezca de realismo. Por lo tanto, es deseada una imagen de despliegue violento que sea más realista.
Segundo, al crear imágenes de despliegue violento combinando una pluralidad de polígonos, convencionalmente, fueron registrados en un campo de almacenamiento prescripto patrones de despliegue violento que conciernen completamente a tales combinaciones. Referencias a la figura 6 (A) y la figura 7 son hechas para la explicación de esto. La figura 6 (A) muestra cuatro combinaciones de datos de despliegue violento A1, B1, B2, C1, y C2 (patrones desde (1) hasta (4)) que estructura el objeto de despliegue violento. La figura 7 muestra las imágenes de despliegue violento representadas por la combinación de tales datos de despliegue violento. El patrón (1) corresponde a la figura 7 (A), el patrón (2) a la figura 7 (B), el patrón (3) a la figura 7 (C), y el patrón (4) a la figura 7 (D), respectivamente. Convencionalmente, los datos de despliegue violento eran registrados por adelantado para cada uno de estos cuatro patrones, y un patrón fue visualizado siendo seleccionado opcionalmente de los patrones de despliegue violento registrados al procesar las imágenes de despliegue violento.
Sin embargo, registrar los datos de despliegue violento por adelantado para todos los patrones de despliegue violento condujo a un problema en que la memoria necesaria aumenta de conformidad con el incremento en las variaciones de patrones de despliegue violento.
Tercero, hay un problema en que el movimiento de personajes es antinatural porque el procesamiento de interpolación de movimiento en medio de los dos movimientos diferentes fue insuficiente hasta ahora. El procesamiento de interpolación de movimiento es, por ejemplo, el procesamiento de imágenes para conectar suavemente dos cambios de movimiento (cambios en los patrones de movimiento), como de un "movimiento de ataque" a un "movimiento de colapso", cuando un personaje enemigo en un modo de ataque es abatido. El procesamiento convencional de interpolación de movimiento es explicado con referencia a la figura 8 (A). Cuando el personaje enemigo está en un movimiento de ataque, el personaje enemigo ataca con un patrón de movimiento predeterminado (el patrón de movimiento M). Si el personaje enemigo es dañado por el ataque hecho por el personaje del jugador, entonces el personaje enemigo efectúa una transición de un "movimiento de ataque" a un "movimiento de colapso". Es predeterminada una pluralidad de patrones para este "movimiento de colapso" y uno de esos patrones es seleccionado de conformidad con la situación del personaje enemigo que está siendo dañado o el ambiente de juego en ese momento, etc. Además, el "movimiento de colapso" es estructurado de una pluralidad de patrones de movimiento (el patrón de aciertos H1, patrón de aciertos H2,...). El procesamiento de interpolación de movimiento C es realizado durante los varios marcos en los cuales está siendo hecha la transición del patrón de movimiento M al patrón de aciertos H1. Por lo tanto, puede ser solucionada la falta de naturalidad de la transición repentina del patrón de movimiento M al patrón de aciertos H1 debido a que será en cámara lenta durante tal transición.
No obstante, como este método sólo realiza el procesamiento de interpolación de movimiento C durante el período de transición del patrón de movimiento M al patrón de aciertos H1, los cambios en el movimiento son sólo desacelerados temporalmente y todavía existía la falta de naturalidad cuando eran mirados como un todo.
Cuarto, en los juegos convencionales de tiro, los personajes enemigos abatidos por bala se retiran en línea recta hacia atrás independientemente de dónde acierta la bala o el poder destructivo de la bala. Por lo tanto, al disparar con similares a las metralletas, las cuales disparan balas sucesivamente, el tiro se vuelve fácil porque no hay cambio en la posición de dos dimensiones del personaje enemigo, dando como resultado que la diversión sea disminuida. Este punto es explicado con referencia a la figura 9. Como se muestra en la figura 9 (A), el personaje enemigo se retira de la posición E1 a la posición E2 a pesar de la posición en la cual el personaje enemigo es abatido. La dirección de retirada es paralela a la línea de visión del jugador. Por consiguiente, la pantalla de juego vista desde el lado del jugador, como se muestra en la figura 9 (B), sólo visualiza los cambios del personaje enemigo moviéndose de la posición E1 a la posición E2. Como no hay cambio en la posición de dos dimensiones del personaje enemigo cuando es visto desde el lado del jugador, el tiro es fácil y la diversión resulta disminuida.
Quinto, cuando el personaje enemigo es atacado y va a contraatacar después del movimiento de colapso (el movimiento de caer abatido por el disparo), se le proporciona al jugador una oportunidad para disparar si el personaje enemigo inicia el movimiento de ataque desde el principio, lo que resulta en el problema de que la diversión del juego se vea disminuida. Este punto es explicado con referencia a la figura 11 (A). Suponga que el personaje enemigo está atacando según el movimiento de ataque de conformidad con los pasos predeterminados de ataque M_{1}, M_{2},..., M_{n-1}, M_{n}. Aquí, por ejemplo, M_{1} es un paso de ataque de sujetar la pistola en condición de listo, M_{2} es un paso de ataque de apuntar la pistola, M_{3} es un paso de ataque de disparar la bala de la pistola, etcétera. Además suponga que el personaje enemigo, durante el paso de ataque M_{3}, resulte dañado al ser atacado por el personaje del jugador. El personaje enemigo efectuará una transición al "movimiento de caer por disparo" y, después de la terminación de tal "movimiento de caer por disparo", regresará al primer paso del movimiento de ataque, esto es, paso de ataque M_{1}. Después de esto, como el personaje enemigo realizará en orden los pasos de ataque M_{1}, M_{2},..., M_{n-1}, M_{n}, no puede contraatacar fácilmente al personaje del jugador. En otras palabras, esto le proporciona al personaje del jugador una oportunidad para atacar mientras el personaje enemigo realiza los pasos de ataque M_{1}, M_{2}, lo que resulta en el problema de que la diversión del juego se vea disminuida. Aunque es posible ignorar el "movimiento de caer por disparo" en el personaje enemigo que está siendo atacado, esto también resultará en que la diversión del juego será aminorada dado que el jugador no podrá disfrutar de la sensación de la bala acertando el blanco.
Sexto, hay un problema en relación al lugar de vuelo de una bala vista desde la línea de visión del personaje del jugador. Como se muestra en la figura 12 (A), los juegos de tiro convencionales visualizaban el lugar de vuelo de una bala vista desde un personaje en movimiento del jugador, como un lugar de vuelo de una bala que tiene como vector de velocidad resultante la sustracción del vector de velocidad del personaje del jugador de la del vector de velocidad de la bala. Por consiguiente, cuando la dirección en movimiento de la bala y la dirección en movimiento del personaje del jugador eran el opuesto exacto, la velocidad de la apariencia externa de la bala es aumentada y el jugador es incapaz de reaccionar a tal velocidad.
Séptimo, hay un problema en la aceleración del juicio de colisión. Aquí, el juicio de colisión es el juicio de cuándo dos objetos colisionaron y un ejemplo de eso es el juicio de colisión de una bala y un edificio. Este juicio de colisión es simplificado modelando la bala como un segmento de la línea y el edificio como un plano y obteniendo la intersección de estos. Como los juicios convencionales de colisión juzgaban la colisión de la bala (el polígono del segmento de línea) con cada edificio (polígono planar), el procesamiento de alta velocidad del juego fue entorpecido debido al tiempo excesivo precisado para el cálculo. Además, como se muestra en la figura 13, cuando un coche manejado por el jugador avanza por una carretera preformada en un espacio de juego, el área en la cual el coche puede moverse está restringida a la carretera. Por lo tanto, el área virtual para el juicio de colisión, el área 1, el área 2, y así sucesivamente, se forman a lo largo de la carretera. Y, como se muestra en la figura 14 (A), los edificios (edificio 1, edificio 2, etcétera) que existen dentro de cada área respectiva se guardan por adelantado en correspondencia con esta. El juicio de colisión entre la bala disparada por el personaje del jugador que conduce el coche y los antes mencionados edificios es realizado mediante, como se muestra en la figura 14 (B), chequear cada área para determinar en cuál área está la bala (paso B1). Este chequeo de área es realizado comparando las coordenadas de la bala modelada como un polígono de segmento de línea y las coordenadas de cada área. Después de confirmar el área en la cual está la bala, el juicio de colisión es realizado con relación a cada uno de los edificios que existen en tal área (paso B2). Según este método, el juicio de colisión entre el polígono de segmento de línea que representa la bala y el polígono planar que representa el edificio puede ser acelerado porque sólo un polígono planar dentro de un área prescripta necesita ser evaluado. Sin embargo, como la antes mencionada área sólo existe en un área limitada del espacio de juego, hay una inconveniencia en que el juicio de colisión no puede ser realizado en una región que no incluya tal área. Hay también otro problema con este método en que los programas de juego se complican porque se necesita proporcionar los polígonos para las áreas según las escenas de juego.
Octavo, en los juegos de tiro, hay un problema al representar los movimientos de onda consecuencia de despliegues de bala y análogos. Como técnicas de representación de ondas, por ejemplo, se conocen el cambio de patrones y desplazamiento de textura. El cambio de patrones es una técnica de visualización de ondas mediante el modelado de cada condición del movimiento de onda y cambiando cada modelo a la misma posición. Con esta técnica, hay un problema en que la cantidad de datos es aumentada tanto como modelos deban ser preparados por adelantado para cada condición de una onda. El desplazamiento de textura es una técnica de preparación de texturas que representa las ondas y visualiza las ondas en los polígonos mediante el desplazamiento de tales texturas. Sin embargo, no es posible representar una onda tridimensional sólo como movimientos de imágenes planares según esta técnica. Por lo tanto, es deseada una técnica de representación de ondas realistas tridimensionales con una pequeña cantidad de datos.
Noveno, cuando una historia de juego es hecha a partir de una pluralidad de etapas y el orden de tales etapas está predeterminado en un programa de juego, hay un problema en el que el progreso del juego es monótono. Por consiguiente, se considera que la diversión en el juego aumentará si es posible cambiar el progreso del juego según la intención del jugador.
Décimo, en dispositivos convencionales de juego, por ejemplo, hay un tipo en donde se le transmite al jugador una vibración prescripta al explotar personajes enemigos. En tales dispositivos convencionales, el dispositivo que genera las vibraciones era operado por una señal de sonido generada de conformidad con los datos de sonido de la música de fondo y análogos. Esto condujo al dispositivo de generación de vibraciones a recoger dichas señales de sonido aun durante escenas que no tenían relación con la despliegue violento de personajes enemigos, dando como resultado vibraciones no naturales.
El documento EP 0 809 214 revela un aparato de generación de imágenes que comprende medios de generación de imágenes, los cuales seleccionan uno de una pluralidad de enemigos que se mueven dentro del espacio de juego y genera imágenes de este enemigo capturadas desde un punto de vista dentro de un espacio tridimensional imaginario, medios de generación de imágenes que implementa el procesamiento de atacar a los enemigos según la operación de una unidad provista del arma, y medios de procesamiento de punto de vista móvil los cuales, conjuntamente con la acción de hacer que dicho punto de vista siga al enemigo, detectan la situación de dicho enemigo e implementan el control del movimiento del punto de vista.
Sumario de la invención
La presente invención fue ideada en vista desde el antes mencionado sexto problema de la técnica convencional. Un objeto de ésta es proporcionar un dispositivo de procesamiento de imágenes y un medio de grabación de información preferible para juegos de tiro de armas y análogos, superior en realismo y la naturalidad en contraste con los juegos hasta el momento, y capaz de mejorar considerablemente la sensación de juego así como el interés en el juego. Otro objeto de la presente invención es reducir la carga de la operación de procesamiento durante el procesamiento de las imágenes. Otro objeto es proporcionar un dispositivo de generación de vibraciones para generar vibraciones apropiadas de conformidad con escenas de juego.
Según la presente invención, se proporciona un dispositivo de procesamiento de imágenes para visualizar en una pantalla una imagen de un primer objeto moviéndose dentro de un espacio virtual visto desde un punto de vista virtual de un segundo objeto manejado por un jugador, siendo dadas las velocidades del primero y del segundo objeto dentro del espacio virtual por respectivos vectores de velocidad que comprenden: medios de almacenamiento para almacenar por adelantado patrones de movimiento de dicho primer objeto; medios para calcular la distancia entre dichos primer objeto y segundo objeto, y computar un vector sintético de velocidad mediante la adición al vector de velocidad de dicho primer objeto, un vector calculado mediante la multiplicación de un coeficiente que corresponde a dicha distancia al vector inverso del vector de velocidad de dicho segundo objeto; y medios de generación de imágenes para leer patrones de movimiento de dichos medios de almacenamiento y generar imágenes de dicho primer objeto como vistas desde un punto de vista virtual de un segundo objeto según dicho vector sintético de velocidad.
Preferentemente, dicho coeficiente (k) es un coeficiente que tiene una proporción inversa a dicha distancia.
Preferentemente, el primer objeto es una "bala".
Con el objeto de que la presente invención sea más fácilmente entendida, las realizaciones y los ejemplos específicos ahora serán descritos con referencia a los dibujos acompañantes.
Breve descripción de los dibujos
La figura 1 es una vista en perspectiva general del dispositivo de juego;
La figura 2 es un diagrama de una máquina voladora y un personaje del jugador montando tal máquina voladora;
La figura 3 es un diagrama de bloques del dispositivo de juego;
La figura 4 es un diagrama de flujo de los pasos de procesamiento de una imagen de despliegue violento;
La figura 5 es un diagrama que explica la estructura del objeto de despliegue violento;
La figura 6 es la estructura de datos del objeto de despliegue violento;
La figura 7 es un diagrama que explica la estructura del objeto de despliegue violento;
La figura 8 es un diagrama explicativo del procesamiento de interpolación de movimiento;
La figura 9 es un diagrama explicativo de acción de personaje enemigo al ser abatido en la técnica convencional;
La figura 10 es un diagrama explicativo de acción de personaje enemigo al ser abatido en la técnica convencional;
La figura 11 es un diagrama explicativo de un movimiento siendo medio cancelado;
La figura 12 es un diagrama explicativo del lugar de vuelo de una bala vista desde la línea de visión del jugador;
La figura 13 es un diagrama explicativo de juicio de colisión en la técnica convencional;
La figura 14 es un diagrama explicativo de juicio de colisión en la técnica convencional;
La figura 15 es un diagrama explicativo de juicio de colisión en la presente invención;
La figura 16 es un diagrama explicativo de juicio de colisión en la presente invención;
La figura 17 es un diagrama explicativo de juicio de colisión en la presente invención;
La figura 18 es un diagrama explicativo de juicio de colisión en la presente invención;
La figura 19 es un diagrama explicativo de la estructura de un objeto que representa un movimiento de onda;
La figura 20 es un diagrama explicativo de la estructura de etapas en un juego de tiro;
La figura 21 es una vista en perspectiva del cuerpo del dispositivo de juego de la presente invención;
La figura 22 es una vista lateral del cuerpo del dispositivo de juego de la presente invención;
La figura 23 es una vista frontal y vista planar del dispositivo de juego de la presente invención;
La figura 24 es un diagrama creciente del dispositivo de generación de vibraciones; y
La figura 25 es un diagrama de circuito del mecanismo que genera vibraciones.
Descripción de las realizaciones preferidas
Las realizaciones de la presente invención son ahora explicadas con referencia a los dibujos pertinentes. El dispositivo de procesamiento de imágenes (el dispositivo de juego) de la presente realización está relacionado con un juego de tiro. En este juego de tiro, un personaje manejado por jugador del jugador se disputa por puntuaciones volando libremente dentro de un espacio tridimensional virtual al montar una máquina voladora, y atacando personajes enemigos (objeto diana) con una metralleta montada en la máquina voladora de conformidad con las operaciones del jugador.
Estructura del Dispositivo de Juego
La figura 1 muestra la apariencia externa del dispositivo de juego. En este diagrama, un cuerpo principal del dispositivo de juego 1 es mostrado. Este cuerpo principal con forma de caja del dispositivo de juego 1 tiene proporcionado un visualizador en la cara de la parte delantera de este. Son proporcionados huecos para montar altavoces en ambos lados del visualizador 1a y los altavoces 14 (no mostrados) son montados en éstos.
Un panel de operación 2 se proporciona en la cara delantera de la parte inferior del visualizador 1a, y una unidad provista del arma 11 se proporciona en este panel de operación 2. Esta unidad provista del arma 11 tiene un gatillo y es manejada por el jugador.
Una placa de procesamiento de juego se proporciona dentro del cuerpo principal del dispositivo de juego 1. El visualizador 1a, la unidad provista del arma 11 del panel de operación 2, y los altavoces están conectados a la placa de procesamiento de juego. Mediante éstos, el jugador puede disfrutar de un juego de tiro con pistola observando el visualizador 1a y usando la unidad provista del arma 11 del panel de operación 2.
La figura 2 es un diagrama global de una máquina voladora 22 y un personaje del jugador 21 montando tal máquina voladora. La máquina voladora 22 está acondicionada con una metralleta 23 que, según las operaciones del personaje del jugador 21, sucesivamente dispara balas y ataca al personaje enemigo. Los personajes enemigos conducen dispositivos voladores como bicicletas voladoras y cinturones de cohetes y vuelan libremente en una ciudad (dentro de un espacio tridimensional virtual). El personaje del jugador forma parte de una brigada antiterrorista y le es ordenado exterminar a los personajes enemigos que destruyen la ciudad. La metralleta 23 puede ser una metralleta automática con suministro ilimitado de munición.
La figura 3 es un diagrama de bloques del dispositivo de juego relacionado con la presente realización. Este dispositivo de juego, en resumen, comprende un visualizador 1a, una unidad provista del arma 11, la placa de procesamiento de juego 10, el dispositivo de salida 12, y los altavoces 14.
La placa de procesamiento de juego comprende un contador 100, una CPU (la unidad central de procesamiento, por sus siglas en inglés) 101, una ROM (memoria sólo de lectura, por sus siglas en inglés) 102, una RAM (memoria de acceso aleatorio, por sus siglas en inglés) 103, un dispositivo de sonido 104, interfaz I/O (de entrada y salida, por sus siglas en inglés) 106, un dispositivo de operación de datos de desplazamiento 107, un coprocesador (dispositivo auxiliar de procesamiento de operación) 108, una ROM de datos de la forma del terreno 109, un geometalizer 110, una ROM de datos de forma 111, un dispositivo de dibujo 112, una ROM de datos de textura 113, una RAM de mapa de textura 114, un búfer de marco 115, un dispositivo de síntesis de imagen 116, y un convertidor D/A (digital/analógico) 117.
La CPU 101 está conectada, a través una línea del bus, a la ROM 102 que almacena programas prescritos y programas de procesamiento de imágenes, a la RAM 103 que almacena datos, al dispositivo de sonido 104, a la interfaz I/O 106, al dispositivo de operación de datos de desplazamiento 107, al coprocesador 108, y al geometalizer 110. La RAM 103 funciona como un búfer, y realiza escrituras de órdenes diversas (visualización de objeto, etc.) para el geometalizer y escrituras de datos necesarios a ser realizadas diversas operaciones.
La interfaz I/O 106 está conectada al gatillo de la unidad provista del arma 11, al sensor de posición, y al sensor de pedal 4. Las señales de operación del gatillo de la unidad provista del arma 11, del sensor de posición, y del sensor de pedal 4 son leídas por la CPU 101 como datos digitales. La CPU realiza el procesamiento de imágenes de conformidad con estas señales de operación. Al recibir la entrada de las señales del gatillo de la unidad provista del arma 11, la CPU 101 le proporciona vibración al dispositivo de salida 12 a través de la interfaz I/O 106. Este dispositivo de salida está, por ejemplo, compuesto de un dispositivo de vibración de sonido como un agitador de base (explicada en detalle debajo), y proporciona vibración cerca de los pies del jugador. El jugador puede disfrutar un juego de tiro realista debido a esta vibración. El dispositivo de sonido 104 está conectado al altavoz 14 a través de un amplificador de potencia 105, y las señales de sonido generadas en el dispositivo de sonido 104 son proporcionadas al altavoz después de ser amplificadas.
La CPU 101 realiza el cálculo de acción (simulación) y el cálculo de efectos especiales al leer las señales de operación de la unidad provista del arma 11 de conformidad con un programa construido en la ROM 102, los datos de la forma del terreno de la memoria de sólo lectura de datos de forma del terreno 109, y los datos de movimiento de la memoria de sólo lectura de datos de forma 111 (datos tridimensionales, por ejemplo, "personajes como los personajes enemigos y el personaje del jugador" y "fondos como las formas del terreno, cielos, carreteras, rascacielos, y diversos edificios").
El cálculo de acción es para simular el movimiento de los personajes en un espacio virtual. Después de que los valores de coordenada en el espacio virtual tridimensional son determinados, la matriz de conversión para convertir estos valores de coordenada a un sistema de coordenadas del campo visual, y los datos de polígono son designados por el geometalizer 110. La memoria de sólo lectura de datos de la forma del terreno 109 está conectada al coprocesador 108, y los datos predeterminados de la forma del terreno son entregados al coprocesador 108 (y a la CPU 101). El coprocesador 108 principalmente manipula la operación de punto flotante. Consecuentemente, el coprocesador 108 realiza juicios diversos y, tales resultados de juicio les son proporcionados a la CPU 101, la carga de cálculo de la CPU se reduce.
El geometalizer 110 está conectado a la memoria de sólo lectura de datos de forma 111 y al dispositivo de dibujo 112. Como se mencionó anteriormente, los datos de forma (los datos tridimensionales como los personajes, las formas del terreno, y los fondos hechos de cada uno de los vértices) formados de una pluralidad de polígonos son almacenados en la memoria de sólo lectura de datos de forma 111 por adelantado, y estos datos de forma se le entregan al geometalizer 110. Al realizar la conversión perspectiva a los datos de forma designados por la matriz de conversión enviada desde la CPU 101, el geometalizer 110 obtiene datos convertidos a partir del sistema de coordenadas en el espacio tridimensional a un sistema de coordenadas del campo visual.
El dispositivo de dibujo 112 fija texturas a los datos de forma convertidos del sistema de coordenadas del campo visual y devuelve el resultado al búfer de marco 115. Debido a la afijación de estas texturas, el dispositivo de dibujo 112 está conectado a la memoria ROM 113 de sólo lectura de datos de textura y a la RAM del mapa de textura 114, así como también al búfer de marco 115. Aquí, los datos de polígono significarán un grupo de datos relativo o absoluto de cada vértice de un polígono (principalmente un triángulo o cuadrilátero) formado de un agregado de una pluralidad de vértices.
Almacenados en la memoria ROM 109 de sólo lectura de datos de la forma del terreno están los de datos de polígono establecidos de modo aproximado comparativamente, suficiente para realizar juicios prescritos. Por otra parte, almacenados en la memoria ROM 111 de sólo lectura de datos de forma están los datos de polígono establecidos de modo más preciso en relación a las visualizaciones de estructurado de forma como los enemigos y los fondos.
El dispositivo de operación de datos de desplazamiento 107 es para manejar datos de desplazamiento de pantalla de cartas y análogos (almacenados en la ROM 102). Este dispositivo de operación 107 y el búfer de marco 115 resultan en la visualización por el dispositivo de sintetización de imágenes 116 y el convertidor D/A 117. Por esto, las pantallas de polígono (resultados de la simulación) como enemigos y forma del terrenos (fondos) temporalmente almacenados en el búfer de marco 115 y las pantallas de desplazamiento de información necesaria de carta son sintetizadas según la prioridad designada, y unos datos finales de imagen de marco son generados. Estos datos de imagen se convierten en señales analógicas en el convertidor D/A 117 y son enviados hacia el visualizador 1a, y la imagen de juego es visualizada en tiempo real.
El programa de juego de tiro en la presente realización puede ser configurado de modo que realiza el juego leyendo tal programa de un medio prescripto registrador. Aquí, un medio de registro de información es cualquier forma de medios físicos que tienen por consiguiente información registrada (un programa de juego por ejemplo) en el área de registro de tal medio, e incluye a un CD-R, cartucho de juego, un disco flexible, una cinta magnética, un disco magnético óptico, un CD-ROM, DVD-ROM, DVD-RAM, cartucho de ROM, cartucho de memoria de RAM con respaldo de batería, cartucho de memoria flash, un cartucho de RAM no volátil, etcétera.
Este también incluye medios de comunicación de medios de comunicación por cables como circuitos telefónicos y medios de comunicación por radio como circuitos de microondas. La Internet está también incluida en el medio de comunicación anteriormente citado.
Procesamiento de Imágenes de Despliegue Violento
Los pasos del procesamiento de Imágenes de despliegue violento de una bala y análogos en juegos de tiro son ahora explicados con referencia a la figura 4. La CPU 101 introduce señales de operación de parecidos a una unidad provista del arma 11 y sensor de pedal 4 vía la interfaz I/O 106 (paso A1) y visualiza en la pantalla una condición de vuelo de una bala (paso A2). En otras palabras, el lugar de vuelo de la bala es calculado en relación a la posición, velocidad, etcétera, del personaje del jugador y la condición de vuelo de la bala es visualizada en la pantalla de conformidad con tal lugar. Después, el juicio de colisión es hecho con relación a la bala y a los personajes enemigos, rascacielos, puentes, otros edificios, carreteras, etc. ubicados dentro del espacio virtual (paso A3). El juicio de colisión es el juicio de contacto entre dos objetos. Los polígonos para el juicio de colisión son colocados para los objetos respectivos, y el juicio de colisión es conducido según el cruce de estos polígonos. Cuando una bala choca con algún objeto, una imagen de despliegue violento de la bala es visualizada en la pantalla (paso A4).
El procesamiento de imagen de despliegue violento en S404 es realizado mediante la combinación de polígonos esféricos (u objetos estructurados tridimensionalmente para representar despliegues) y polígonos planares (u objetos estructurados bidimensionalmente para representar despliegues). Esto está explicado con referencia a la figura 5. En la figura 5, (A), (B), y (C) respectivamente representan los momentos T_{1}, T_{2}, y T_{3} en la imagen de despliegue violento. Con el objeto de realizar esta imagen de despliegue violento, los lugares P_{1} y P_{2} de chispas, humo, llamas, y cosas similares son establecidos primero en consideración del área de impacto de la bala, el ángulo de impacto de la bala, velocidad de la bala, etcétera. A continuación, los polígonos esféricos y los polígonos planares son organizados de modo que los linderos de estos se traslapan en dirección a estos lugares P_{1} y P_{2}. Por ejemplo, en el momento T_{1}, el polígono esférico R1, el polígono planar S1, el polígono esférico R2, y el polígono planar R2 son organizados de modo que traslapan con sus linderos respectivos. En el momento T_{2}, el polígono esférico R3 es organizado de modo que cubre la periferia (el límite) del polígono planar S2. De modo semejante, en el momento T_{3}, el polígono planar S3 es organizado de modo que cubre el límite del polígono esférico R3. Por consiguiente, cubriendo los linderos de los polígonos planares con polígonos esféricos, es posible superar la falta de naturalidad de los linderos lineales causados por imágenes de despliegue violento realizadas sólo con polígonos planares.
A continuación, es explicado abajo el procesamiento de despliegue violento del personaje enemigo alcanzado por una bala, esto es, el procesamiento en el cual un segmento (fragmento) del cuerpo del personaje enemigo se dispersa (el procesamiento para esparcir dentro de un espacio tridimensional virtual una sección de los polígonos que estructuran el personaje enemigo, el cual es un objeto diana). Primero, la CPU se refiere a la medida de la vida del personaje enemigo alcanzado por una bala. Esta medida de la vida visualiza la energía restante del personaje enemigo, y cuando la medida de la vida se vuelve cero, el enemigo es derrotado. En otras palabras, el personaje enemigo es borrado del espacio tridimensional virtual. Si la energía de vida no es cero, entonces el personaje enemigo está todavía vivo. Por lo tanto, es visualizada una imagen de un segmento del cuerpo del personaje enemigo (fragmento, esto es, una sección de los polígonos entre el grupo de polígonos que estructura el personaje enemigo) esparciéndose en el extremo próximo de la pantalla. Por otra parte, si la energía de vida es cero, es visualizada una imagen de un segmento del cuerpo del personaje enemigo (fragmento) esparciéndose en el extremo lejano de la pantalla debido al personaje enemigo está muerto. Consecuentemente, cambiando la dirección de esparcimiento del segmento (fragmento) del cuerpo del personaje enemigo, el jugador fácilmente puede juzgar si el personaje enemigo está muerto o vivo. Al disparar a los personajes enemigos con metralletas y análogos en los juegos de tiro convencionales, no es posible juzgar en qué etapa el personaje enemigo es derrotado dado que el tiro es conducido continuamente. En la presente invención, sin embargo, el juicio de si el personaje enemigo está muerto o vivo puede ser hecho fácilmente dado que la dirección de esparcimiento del segmento (fragmento) del cuerpo del personaje enemigo se varía durante las etapas de tiro a tal personaje enemigo. Por lo tanto, es fácil proceder el juego.
Además, la dirección de esparcimiento del segmento (fragmento) del cuerpo del personaje enemigo no está limitada a lo antedicho, y también puede ser establecida a las direcciones de izquierda (cuando el personaje enemigo está muerto) y derecha (cuando el personaje enemigo está vivo) en la pantalla vista desde la línea de visión del jugador. Además, puede ser establecida adecuada y opcionalmente a las direcciones ascendentes y descendentes, etcétera.
Estructura de Datos del Objeto de Despliegue violento
A continuación, la estructura de datos de los objetos de despliegue violento que representan despliegues de balas y cosas similares es explicada con referencia a la figura 6. El objeto de despliegue violento es estructurado de una pluralidad de datos. Por ejemplo, un objeto de despliegue violento es estructurado de cuatro combinaciones de datos de despliegue violento A1, B1, B2, C1, y C2 (los patrones desde el (1) hasta el (4)). En tal caso, la estructura de datos del objeto de despliegue violento en la presente realización es, por ejemplo, como se muestra en la figura 6 (B), estructurada de modo que todas las cuatro estructuras de datos A1 - B1 - C1, A1 - B1 - C2, A1 - B2 - C1, y A1 - B2 - C2 son organizadas jerárquicamente. En otras palabras, los datos de despliegue violento A1 comunes a todos los objetos de despliegue violento son colocados en la raíz, y luego, B1 y B2 son organizados en la segunda capa y C1 y C2 son organizadas en la tercera capa. Luego, según el transcurrir del tiempo, son borrados en el orden
establecido.
Mediante este acomodamiento, es posible establecer a los datos de despliegue violento A1 un puntero para indicar las direcciones de B1 y B2, y para los datos de despliegue violento B1 y B2 un puntero para indicar las direcciones de C1 y C2, respectivamente. Según esta estructura de datos, en contraste con la técnica convencional (figura 6 (A)), es posible reducir la memoria necesaria para almacenar los datos de los objetos de despliegue violento.
La presente invención puede ser utilizada para una estructura de datos de un objeto aparte de un objeto de despliegue violento.
Procesamiento de Interpolación de Movimiento
A continuación, el procesamiento de interpolación de movimiento es explicado con referencia a la figura 8 (B). Suponga que el personaje enemigo es dañado durante el "movimiento de ataque (patrón de movimientos M)". Acto seguido, el personaje enemigo efectúa una transición a un paso que sucesivamente realiza el "movimiento de colapso (patrón de aciertos H1, H2,...)". En otras palabras, de conformidad con los resultados del juicio de colisión, la CPU lee la serie de datos de condición de movimiento bajo conducidos del objeto diana y la exhibe en una pantalla. En ese momento, el procesamiento de interpolación de movimiento C1 es realizado para unos cuantos marcos entre el patrón de movimiento M y el patrón de aciertos H1. A continuación, el procesamiento de interpolación de movimiento C2 es realizado para n marcos entre el patrón de aciertos H1 y el patrón de aciertos H2. Además, el procesamiento de interpolación de movimiento C3 es realizado n-1 marcos entre el patrón de aciertos H2 y el patrón de aciertos H3, y el procesamiento de interpolación de movimiento C4 es realizado n-2 marcos entre el patrón de aciertos H3 y el patrón de aciertos H4. Consecuentemente, al disminuir gradualmente el número de marcos de interpolación (número requerido para producir datos de interpolación), el movimiento lento es devuelto a la velocidad normal. Esto es, la velocidad de reproducción lenta es gradualmente devuelta a la velocidad normal. Mediante esto, es posible reducir los cambios antinaturales de los patrones de movimiento, por consiguiente presentando un juego de tiro
realista.
Si un marco es 1/60 segundos, entonces es preferible que el valor de n anterior esté dentro del intervalo desde 1 hasta 4.
Movimiento del Personaje Enemigo al ser dañado
A continuación, el movimiento del personaje enemigo al ser dañado es explicado con referencia a la figura 10. Esta invención se refiere al movimiento y la acción del personaje enemigo al ser alcanzado por una bala. En la presente invención, la fuerza de torsión (distancia entre el centro del personaje enemigo y la posición de impacto de la bala multiplicada por la fuerza de la bala) recibida por el personaje enemigo al ser alcanzado por una bala es calculada, y el ángulo \theta, la inclinación del personaje enemigo, es calculado de conformidad con tal fuerza de torsión. Luego, la posición E2, después del movimiento, es calculada desde la posición E1 del personaje enemigo al ser alcanzado por una bala. El movimiento del personaje enemigo al ser alcanzado por una bala vista desde la línea de visión del jugador es como se muestra en la figura 10 (B). Por consiguiente, el cambio de la posición de un personaje enemigo (modelo) al ser alcanzado por una bala, cuando es visto desde la línea de visión de un jugador, resulta en un cambio de la posición bidimensional (el cambio de la posición de un personaje es en una dirección aparte de la dirección de la línea de visión desde el punto de vista virtual). Por lo tanto, apuntar con una metralleta se vuelve difícil, necesitando por consiguiente el perfeccionamiento de la habilidad de uno. En otras palabras, hasta ahora, como los personajes enemigos siendo alcanzados por una bala sólo mostraron cambios en la posición bidimensional cuando eran vistos desde la línea de visión del jugador, fueron posibles aciertos continuos con balas. Por otra parte, la presente realización impide tales aciertos continuos fáciles.
Cancelación a medias de Movimientos
A continuación, es explicada la cancelación a medias de movimientos. La cancelación a medias de movimientos es, al hacer una transición a otro patrón de movimiento (2) durante la realización de un patrón de movimiento (1) hecho de una pluralidad de pasos de movimiento, almacenando el paso de movimiento M en tal momento y realizando el patrón de movimiento (1) desde tal paso de movimiento M después de la terminación del patrón de movimiento (2). Este punto es explicado con referencia a la figura 11 (B). Aquí, el personaje enemigo inicia el movimiento de ataque y sucesivamente realiza cada uno de los pasos de ataque M_{1}, M_{2},..., M_{n-1}, M_{n}. Suponga que el personaje enemigo es alcanzado por balas de un personaje del jugador y dañado en el paso de ataque M_{3}. Luego, la CPU almacena la información de la identificación del paso de ataque M_{3} en la RAM y hace una transición al movimiento de caer por disparo. Después de la terminación del movimiento de caer por disparo, la CPU regresa otra vez al movimiento de ataque desde el paso de ataque M_{3} de conformidad con la información de identificación almacenada en dicha RAM. Según esta estructura, como el personaje enemigo inmediatamente efectúa una transición a un modo de ataque en la terminación del movimiento de caer por disparo, ninguna oportunidad se proporciona al jugador para atacar como en la técnica convencional. Por consiguiente, se impide que la dificultad del juego sea disminuida descuidadamente, y la diversión del juego se ve aumentada.
Además, al regresar al paso de ataque M_{3} en el ejemplo antes mencionado, el establecimiento puede ser tal que el regreso sea hecho unos pocos marcos antes o después del movimiento de caer por disparo.
Además, un punto débil de un personaje enemigo puede ser establecido. En tal caso, una cancelación a medias de movimientos es realizada al regresar del movimiento de caer por disparo si la bala acierta este punto débil, o, si la bala acertara cualquier otro punto aparte de este punto débil, el ataque es continuado sin una transición al movimiento de caer por disparo. Cuando se establece como lo antes dicho, la diversión del juego aumenta porque para que el jugador progrese en el juego ventajosamente, tal jugador está obligado a apuntar al punto débil del personaje
enemigo.
Método para Controlar el Lugar de Vuelo de la Bala
A continuación, el método para controlar el lugar de vuelo de una bala es explicado con referencia a la figura 12. El método de la presente invención para controlar el lugar de vuelo de una bala, por ejemplo, controla el lugar de vuelo de una bala vista desde el punto de vista desde el jugador de conformidad con la distancia entre la bala y el personaje del jugador. En la figura 12 (B), suponga que la bala vuela a velocidad V_{1} y que el personaje del jugador se mueve a velocidad V_{2}. La CPU obtiene la distancia entre la bala y el personaje del jugador de las coordenadas de estos. Entonces, para obtener el lugar de vuelo de la bala vista desde el punto de vista desde el jugador, un vector sintético V_{3} = V_{1} - kV_{1} es obtenido al multiplicar por la velocidad V_{2} el coeficiente k que es inversamente proporcional a dicha distancia. Este vector sintético V_{3} es el vector de velocidad de la bala vista desde el punto de vista del
jugador.
Según esta estructura, la velocidad V_{2} del personaje del jugador apenas influencia el lugar de vuelo de la bala cuando la distancia entre la bala y el personaje del jugador es remota. Por otra parte, si tal distancia entre los dos es cercana, la velocidad de la bala es ajustada de conformidad con la velocidad V_{2} del personaje del jugador. Por lo tanto, no surgen los problemas que surgen con la técnica convencional.
Aceleración del Juicio de Colisión
A continuación, es explicada la aceleración del juicio de colisión. Con el objeto de realizar la aceleración del juicio de colisión, la presente invención divide la pantalla de juego, esto es, el espacio virtual global, en cuadrículas. Entonces, es buscada la cuadrícula de unidad en la cual existe un objeto sujeto a juicio de colisión, y es realizado el juicio de colisión con relación a todos los objetos que existen en tal cuadrícula de unidad. Esto es explicado con referencia a la figura 15. La figura 15 (A) es una imagen de una ciudad, en una forma simplificada y modelada, creada en el espacio virtual 70. Objetos, como los edificios 201, 202 y 203 son mostrados allí dentro. La figura 15 (B) coloca un área tridimensional prescripta 50 dentro del espacio virtual y divide esta área tridimensional 50 en cuadrículas de unidad 51, 52, 53, etcétera. Por ejemplo, suponga que los largos respectivos de las direcciones x, y, y z de estas cuadrículas de unidad es 1. La figura 16 (A) es un diagrama proyectado en el plano xy, y la figura 16 (B) es un diagrama proyectado en el plano xz.
El juicio de colisión, por ejemplo, es realizado a similares de bala y edificio, personaje en movimiento y pared, en otras palabras, un objeto en movimiento y un objeto con una posición fija en el espacio virtual (o, los polígonos que forman el objeto o los polígonos a ser usados para el juicio de colisión de tal objeto). En este caso, el objeto en movimiento es representado en vectores (segmento de línea que contiene el tamaño y la dirección) y el juicio de colisión es realizado con otro objeto (objeto con una posición fija en el espacio virtual y un objeto aparte de dicho objeto en movimiento). Los pasos de juicio de colisión son explicados con referencia a la figura 17. Como se muestra en la figura 17 (A), los objetos como edificios que existen en cada una de las cuadrículas de unidad son convertidos en una lista. El juicio de colisión es realizado de conformidad con los pasos mostrados en la figura 17 (B). Primero, un objeto para el juicio de colisión, por ejemplo, la cuadrícula de unidad en la cual está la bala, es buscado (paso C1). Este paso modela la bala como un vector y se chequea en cuál cuadrícula de unidad existen las coordenadas del punto de inicio y terminado. A continuación, si existe una cuadrícula de unidad con una bala, entonces se realiza el juicio de colisión con los polígonos que forman el objeto que existe en tal cuadrícula de unidad (paso C2). Por ejemplo, como se muestra en la figura 16 (A), la bala moviéndose dentro del espacio virtual es representada por un vector 40, y si este vector 40 existe en la cuadrícula de unidad 54, es realizado el juicio de colisión con los polígonos que forman el objeto 201 que existe en esta cuadrícula de unidad 54. Como esto permitirá la disminución en números de polígono en los cuales el juicio de colisión debe ser realizado, es posible la aceleración del procesamiento.
Además, es posible también realizar el juicio de colisión estableciendo un área tridimensional alrededor de la periferia de un objeto opcional organizado dentro del espacio virtual y dividiendo esta área tridimensional en cuadrículas de unidad. Por ejemplo, como se muestra en la figura 18, un área tridimensional 60 es establecida alrededor de la periferia del automóvil 204 que se mueve en el espacio virtual 70, y esta área tridimensional 60 está dividida en cuadrículas de unidad 61, 62, etcétera. Según esta estructura, es posible disminuir el número de polígonos en los cuales el juicio de colisión debe ser realizado. Además, es posible realizar el juicio de colisión más precisa y más
exactamente.
Por lo tanto, según la presente realización, dado que no hay que realizar el juicio de colisión con cada objeto que existe dentro del espacio virtual y todos los polígonos que forman el objeto, la cantidad de cálculo es disminuida, y la velocidad de procesamiento es grandemente acelerada. Además, dado que la posición del vector puede ser determinada fácilmente por la comparación de coordenadas, solo es necesario realizar el juicio de colisión sólo con los vectores situados dentro del espacio tridimensional, y la cantidad de cálculo se reduce. Asimismo, el número de cuadrículas de unidad puede ser convenientemente establecido a un número adecuado de modo que la cantidad de cálculo es reducida en consideración del tamaño, la cantidad, la posición, la densidad, etcétera, del objeto ubicado dentro del espacio virtual.
Representación de Ondas
A continuación, el método de representar ondas según la presente realización es explicado con referencia a la figura 18. En la presente realización, los polígonos que representan las ondas son, como se muestra en la figura 18 (A), formados de un atesoramiento de numerosos polígonos rectangulares P_{1}, P_{2}, P_{3}, etcétera en los cuales la dirección longitudinal es la dirección de profundidad de la onda. Y, cambiando las alturas respectivas h_{1}, h_{2}, h_{3},..., de los polígonos rectangulares P_{1}, P_{2}, P_{3},..., de conformidad con pasos predeterminados, el movimiento de ondas puede ser representado. Las figuras 18 (A), (B), y (C) corresponden respectivamente a los momentos T_{1}, T_{2}, y T_{3}. Las alturas de los polígonos rectangulares P_{1}, P_{2}, P_{3},..., por ejemplo, son cambiadas como un movimiento armónico simple de movimiento de modo que las frecuencias de ondas son representadas como movimientos armónicos simples.
Configuración de las Etapas de Juego
A continuación, la configuración de las etapas de juego es explicada con referencia a la figura 19. Las etapas de juego relacionadas con la presente realización son configuradas de modo que la primera etapa y la etapa final están fijas, y el jugador adecuadamente puede seleccionar las etapas intermedias. En otras palabras, en el principio de un juego, el dispositivo de juego automáticamente realiza la etapa 1 con un programa predeterminado (paso D1). Después de la terminación de la etapa 1, la puntuación en la etapa 1 es visualizada en la pantalla. Entonces, una pantalla para seleccionar la siguiente etapa es visualizada y el jugador selecciona la siguiente etapa (paso D2). Por ejemplo, si la etapa 3 es seleccionada, entonces la etapa 3 es realizada (paso D3). Después de eso, una transición al paso S192 es hecha otra vez (paso D4: NO), y la siguiente etapa es seleccionada. De esta forma, después de que todas las etapas han sido completadas (paso D4: SÍ), la fase final es realizada (paso D5). Después de la terminación de la fase final, la puntuación total, etcétera es visualizada, y se termina el juego.
Mediante la selección de las etapas intermedias por parte del jugador y su realización, el flujo del juego será de conformidad con la intención del jugador. Asimismo, restringiendo el orden de seleccionado de las etapas de juego o las etapas seleccionables por un jugador en relación a las puntuaciones de las etapas previas y análogas, es mejorada la diversión del juego.
Estándares de Evaluación de Puntuaciones
Hay cuatro estándares de evaluación para la puntuación en el juego de tiro relacionado con la presente invención.
\vskip1.000000\baselineskip
(1) Evaluación por plano enemigo
Esta evaluación de la puntuación es conducida de conformidad con el método de abatir a los personajes enemigos respectivos, el tiempo precisado para tal abatimiento, el número de balas disparadas, y así sucesivamente.
(2) Evaluación por tropa enemiga
Un personaje enemigo no está limitado a ser independiente, sino que también puede atacar en tropas. Por lo tanto, mientras más pequeño sea el tiempo requerido para eliminar la tropa enemiga, más alta será la evaluación. Esta evaluación, por ejemplo, está compuesta de seis etapas, y el porcentaje extra es determinado por el ranking en cada una de estas etapas.
\vskip1.000000\baselineskip
(3) Evaluación por etapa
El ranking por etapa es conducido de conformidad con la puntuación del jugador en cada una de las etapas.
\vskip1.000000\baselineskip
(4) Evaluación por juego
El ranking por juego es conducido de conformidad con la puntuación total de un juego.
Consecuentemente, dividiendo los estándares de evaluación de puntuaciones por enemigos, tropas enemigas, etc., es posible la evaluación de puntuación en una variedad de formas por la combinación de estos.
Mecanismo de Generación de Vibración
El mecanismo de generación de vibraciones en el dispositivo de juego de la presente realización es explicado con referencia a las figuras desde la 21 hasta la 25. La figura 21 es una vista en perspectiva de un cuerpo 600 del dispositivo de juego y un visualizador 701. El cuerpo 600 tiene una base 603 y un sostén 604, y varios botones de operación y pistolas 601 están adjuntos a este sostén 604. El jugador dispara a los personajes enemigos visualizados en el visualizador 701 operando esta pistola 601. La figura 22 es una vista lateral, la figura 23 (A) es la vista frontal y la figura 23 (B) es una vista en planta de este cuerpo. Un plato de vibración 602 se proporciona en la posición donde el jugador/la jugadora coloca sus pies en la base 603. Como se muestra en la figura 24, dispositivos de generación de vibraciones ("Vibradores de la Base") 605R y 605L son proporcionados en el lado inverso de este plato de vibración (posición de los pies del jugador). Cuando la bala acierta el personaje enemigo, estos Vibradores de la Base 605R y 605L generan vibraciones simultáneamente con la imagen de despliegue violento de tal personaje enemigo siendo visualizado en el visualizador 701. Como Vibradores de la Base 605R y 605L, pueden ser usados dispositivos de generación de vibración de sonido de baja frecuencia. Es preferentemente usado, por ejemplo, el "130-5172" transductor manufacturado por la compañía Aura (vendido por Kaga Denshi Company).
El sistema de circuitos del mecanismo de generación de vibraciones de la presente realización es explicado con referencia a la figura 25. La unidad de procesamiento de sonido 801 comprende una CPU de sonido, memoria de sonido, y convertidor D/A. En la memoria de sonido, aparte de datos de sonido (datos de forma de onda) como la música de fondo establecida para cada escena de juego, son registrados datos de forma de onda de vibración que son previamente asociados a cada objeto. Los efectos de sonido como la música de fondo predeterminada para cada escena de juego son generados por la CPU de sonido al leer los datos de sonido (datos de forma de onda) de la CPU de sonido de conformidad con dicho programa de juego, convirtiendo estos datos D/A y devolviendo al amplificador 802 las señales de dos canales, y devolviendo el resultado a los altavoces 702R y 702L. Asimismo, los sonidos de bajo de tono bajo son realizados sintetizando dichos dos canales en el amplificador 802, haciendo que esta señal sintetizada atraviese el amplificador 803 que tiene un filtro de paso bajo, y devolviendo ésta a un altavoz de bajos
702C.
Contrariamente, al generar vibraciones de modo sincronizado con la imagen de despliegue violento de los personajes enemigos y análogos, el siguiente método es tomado. Cuando una bala acierta al personaje enemigo y una orden para generar vibraciones de modo sincronizado con la despliegue violento del personaje enemigo es enviada desde la CPU principal (no mostrada) a la CPU de sonido, la CPU de sonido lee desde la memoria de sonido los datos de forma de onda de vibración que son asociados previamente a cada objeto, convierte éstas D/A en señales de dos canales y envía los mismos al amplificador 804. Las señales amplificadas en el amplificador 804 son entradas a los Vibradores de Base 605R y 605L para vibrar el plato de vibración 602.
Según el mecanismo de generación de vibraciones de la presente realización, los datos de sonido para la música de fondo y los datos de forma de onda de vibración relacionados con la despliegue violento de objetos son divididos y almacenados en la memoria de sonido de modo tal que los caminos de las respectivas señales son diferentes. Por lo tanto, ya no es necesario vibrar el Vibrador de Base con señales de sonido generadas de conformidad con datos de sonido para la música de fondo, y son generadas las vibraciones adecuadas de conformidad con la escena. Además, también puede resolverse la falta de naturalidad del Vibrador de Base que innecesariamente vibra de conformidad con el sonido de la música de fondo.
\vskip1.000000\baselineskip
Referencias citadas en la descripción
Esta lista de referencias citadas por el solicitante ha sido confeccionada exclusivamente para conveniencia del lector y no forma parte integral del documento de patente europea. A pesar de que se puso sumo cuidado en la compilación de las referencias, no se pueden excluir errores u omisiones y la EPO no asume ninguna responsabilidad en ese sentido.
Documentos de patente citados en la descripción
WO 9535555 A
EP 0809214 A

Claims (3)

1. Un dispositivo de procesamiento de imágenes para visualizar en una pantalla una imagen de un primer objeto moviéndose dentro de un espacio virtual visto desde un punto de vista virtual de un segundo objeto manejado por un jugador, las velocidades del primero y del segundo objeto dentro del espacio virtual siendo dadas por vectores de velocidad respectivos (V_{1}, V_{2}), que comprende:
\quad
Medios de almacenamiento para almacenar con anticipación patrones de movimiento de dicho primer objeto;
\quad
Medios para calcular la distancia entre dichos primer objeto y segundo objeto y computar un vector sintético de velocidad (V3) mediante la suma al vector de velocidad (V1) de dicho primer objeto un vector (- k V_{2}) calculado al multiplicar un coeficiente (k) que corresponde a dicha distancia por el vector inverso (- V_{2}) del vector de velocidad (V_{2}) de dicho segundo objeto; y
\quad
Medios de generación de imágenes para leer patrones de movimiento de dichos medios de almacenamiento y generar imágenes de dicho primer objeto como visto desde un punto de vista virtual de un segundo objeto según dicho vector sintético de velocidad.
2. Un dispositivo de generación de imágenes según la reivindicación 1, en donde dicho coeficiente (k) es un coeficiente que tiene una proporción inversa a dicha distancia.
3. Un dispositivo de generación de imágenes según la reivindicación 2, en donde dicho primer objeto es una "bala".
ES03025967T 1998-08-07 1999-08-09 Dispositivo de procesamiento de imagenes para determinar la trayectoria de vuelo de un objeto. Expired - Lifetime ES2295498T3 (es)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP23654098 1998-08-07
JP10-236540 1998-08-07
JP10349349A JP2000200361A (ja) 1998-08-07 1998-11-24 画像処理装置及び情報記録媒体
JP10-349349 1998-11-24

Publications (1)

Publication Number Publication Date
ES2295498T3 true ES2295498T3 (es) 2008-04-16

Family

ID=26532725

Family Applications (1)

Application Number Title Priority Date Filing Date
ES03025967T Expired - Lifetime ES2295498T3 (es) 1998-08-07 1999-08-09 Dispositivo de procesamiento de imagenes para determinar la trayectoria de vuelo de un objeto.

Country Status (5)

Country Link
US (4) US6664965B1 (es)
EP (4) EP0978803A3 (es)
JP (1) JP2000200361A (es)
DE (1) DE69937414T2 (es)
ES (1) ES2295498T3 (es)

Families Citing this family (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000200361A (ja) * 1998-08-07 2000-07-18 Sega Enterp Ltd 画像処理装置及び情報記録媒体
JP3321570B2 (ja) * 1999-09-14 2002-09-03 株式会社ソニー・コンピュータエンタテインメント 動画作成方法、記憶媒体およびプログラム実行装置
FR2799562B1 (fr) * 1999-10-07 2002-06-07 Nemo Procede pour creer et animer de maniere interactive, sur une interface graphique, des images en trois dimensions
WO2002025855A2 (en) * 2000-09-21 2002-03-28 Cantor Michael B Method for non-verbal assessment of human competence
JP3363137B2 (ja) * 2000-11-29 2003-01-08 コナミ株式会社 当たり判定方法、その装置、当たり判定処理プログラムを記録したコンピュータ読み取り可能な記録媒体及びビデオゲーム装置
US7372472B1 (en) * 2001-04-09 2008-05-13 Matrox Electronic Systems Ltd. Method and apparatus for graphically defining a video particle explosion effect
WO2002101655A1 (fr) * 2001-05-16 2002-12-19 Sega Corporation Procede et appareil de traitement d'image, et programme pour accentuer le mouvement d'un objet
JP3887819B2 (ja) * 2002-10-11 2007-02-28 株式会社セガ コンピュータプログラム
US7164423B1 (en) * 2003-04-30 2007-01-16 Apple Computer, Inc. Method and apparatus for providing an animated representation of a reorder operation
JP3601793B1 (ja) * 2003-11-05 2004-12-15 任天堂株式会社 移動時間算出プログラム及び情報記録媒体
JP4287758B2 (ja) * 2004-02-05 2009-07-01 任天堂株式会社 シューティングゲーム装置およびシューティングゲームプログラム
JP2004223267A (ja) * 2004-02-09 2004-08-12 Sony Corp メモリカード、携帯型情報端末装置および情報処理方法、記録媒体、並びにプログラム
JP3968356B2 (ja) * 2004-04-29 2007-08-29 株式会社コナミデジタルエンタテインメント 表示装置、表示方法、ならびに、プログラム
JP4412715B2 (ja) * 2004-05-07 2010-02-10 株式会社バンダイナムコゲームス プログラム、情報記憶媒体および画像生成システム
JP2008513167A (ja) 2004-09-21 2008-05-01 タイムプレイ アイピー インク 多人数参加型ゲームのシステム、方法および手持ち式コントローラ
JP4832826B2 (ja) * 2005-07-26 2011-12-07 任天堂株式会社 オブジェクト制御プログラムおよび情報処理装置
JP4986543B2 (ja) * 2006-08-31 2012-07-25 キヤノン株式会社 情報処理方法、情報処理装置
JP4936522B2 (ja) * 2006-09-29 2012-05-23 キヤノン株式会社 画像処理方法、画像処理装置
JP5101080B2 (ja) 2006-10-19 2012-12-19 任天堂株式会社 ゲームプログラム、ゲーム装置、ゲームシステムおよびゲーム制御方法
JP4302143B2 (ja) * 2007-01-11 2009-07-22 株式会社ソニー・コンピュータエンタテインメント 物体衝突処理方法および物体衝突処理プログラム、物体衝突処理装置
JP4339908B2 (ja) * 2007-11-28 2009-10-07 株式会社コナミデジタルエンタテインメント ゲーム装置、画像生成方法、および、プログラム
US8319771B2 (en) * 2008-09-30 2012-11-27 Disney Enterprises, Inc. Computer modelled environment
WO2011010414A1 (ja) * 2009-07-21 2011-01-27 株式会社ソニー・コンピュータエンタテインメント ゲーム装置
JP2011177203A (ja) * 2010-02-26 2011-09-15 Nintendo Co Ltd オブジェクト制御プログラムおよびオブジェクト制御装置
US9691289B2 (en) * 2010-12-22 2017-06-27 Brightstar Learning Monotonous game-like task to promote effortless automatic recognition of sight words
US8594374B1 (en) * 2011-03-30 2013-11-26 Amazon Technologies, Inc. Secure device unlock with gaze calibration
KR20120119756A (ko) * 2011-04-22 2012-10-31 삼성전자주식회사 타 기기와 연동하여 상호 동작이 가능한 에듀테인먼트 시스템을 위한 방법 및 장치
WO2013168068A1 (en) * 2012-05-09 2013-11-14 Koninklijke Philips N.V. Device and method for supporting a behavior change of a person
US9292616B2 (en) 2014-01-13 2016-03-22 International Business Machines Corporation Social balancer for indicating the relative priorities of linked objects
JP2015166890A (ja) 2014-03-03 2015-09-24 ソニー株式会社 情報処理装置、情報処理システム、情報処理方法及びプログラム
CN104134226B (zh) * 2014-03-12 2015-08-19 腾讯科技(深圳)有限公司 一种虚拟场景中的声音模拟方法、装置及客户端设备
US10532286B2 (en) * 2014-05-01 2020-01-14 Activision Publishing, Inc. Reactive emitters of a video game effect based on intersection of coverage and detection zones
GB201409764D0 (en) 2014-06-02 2014-07-16 Accesso Technology Group Plc Queuing system
US11900734B2 (en) 2014-06-02 2024-02-13 Accesso Technology Group Plc Queuing system
JP6410584B2 (ja) * 2014-12-09 2018-10-24 キヤノン株式会社 画像処理装置、画像処理装置の制御方法、並びにプログラム
US9589316B1 (en) * 2016-01-22 2017-03-07 Intel Corporation Bi-directional morphing of two-dimensional screen-space projections
JP6382880B2 (ja) 2016-04-13 2018-08-29 任天堂株式会社 振動制御システム、振動制御方法、振動出力装置、ゲームコントローラ、振動出力プログラム、および振動出力方法
JP6374904B2 (ja) 2016-04-13 2018-08-15 任天堂株式会社 振動制御システム、振動出力装置、振動出力プログラム、および振動出力方法
CN111918706A (zh) * 2018-03-14 2020-11-10 株式会社魁匠团 用于提高实现多线程的游戏处理速度的装置及其方法
JP6863936B2 (ja) * 2018-08-01 2021-04-21 株式会社カプコン 仮想空間における音声生成プログラム、四分木の生成方法、および音声生成装置
CN109598777B (zh) * 2018-12-07 2022-12-23 腾讯科技(深圳)有限公司 图像渲染方法、装置、设备及存储介质
CN111544888B (zh) * 2020-04-22 2021-03-16 腾讯科技(深圳)有限公司 虚拟群体单位的移动方法和装置、存储介质及电子设备
WO2021233046A1 (zh) * 2020-05-20 2021-11-25 腾讯科技(深圳)有限公司 一种碰撞范围确定方法和相关装置
JP6869412B1 (ja) * 2020-10-01 2021-05-12 エヌエイチエヌ コーポレーション ゲーム制御方法、プログラム、サーバ及び通信装置
US11816772B2 (en) * 2021-12-13 2023-11-14 Electronic Arts Inc. System for customizing in-game character animations by players
CN115212576B (zh) * 2022-09-20 2022-12-02 腾讯科技(深圳)有限公司 游戏数据处理方法、装置、设备以及存储介质
JP7441361B1 (ja) 2023-05-26 2024-02-29 Kddi株式会社 情報処理装置、情報処理方法及びプログラム

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5341463A (en) * 1990-01-31 1994-08-23 The United States Of America As Represented By The Secretary Of The Navy Selective polygon map display method
US5347459A (en) * 1993-03-17 1994-09-13 National Research Council Of Canada Real time collision detection
JP2998096B2 (ja) * 1993-08-25 2000-01-11 株式会社セガ・エンタープライゼス ゲーム装置
DE69530824D1 (de) 1994-06-20 2003-06-26 Sega Corp Verfahren und gerät zur bildverarbeitung
US5715416A (en) * 1994-09-30 1998-02-03 Baker; Michelle User definable pictorial interface for a accessing information in an electronic file system
JP3442184B2 (ja) * 1995-02-28 2003-09-02 株式会社ナムコ 3次元ゲーム装置及びその制御方法
JPH08320949A (ja) 1995-05-24 1996-12-03 Sega Enterp Ltd 画像処理装置及びそれを用いたゲーム装置
WO1997021194A1 (fr) * 1995-12-07 1997-06-12 Sega Enterprises, Ltd. Equipement et procede de production d'images, console de jeu utilisant ce procede et support
JP3785700B2 (ja) * 1995-12-18 2006-06-14 ソニー株式会社 近似化方法および装置
JP2907089B2 (ja) * 1996-01-11 1999-06-21 日本電気株式会社 対話型映像提示装置
JP2950228B2 (ja) * 1996-02-15 1999-09-20 株式会社セガ・エンタープライゼス ゲーム画像表示方法及びゲーム装置
JP3570813B2 (ja) * 1996-03-07 2004-09-29 株式会社ナムコ ゲーム装置
GB9606791D0 (en) * 1996-03-29 1996-06-05 British Telecomm Control interface
US5920492A (en) 1996-04-26 1999-07-06 Southwest Research Institute Display list generator for fire simulation system
US5973699A (en) * 1996-09-19 1999-10-26 Platinum Technology Ip, Inc. System and method for increasing the performance for real-time rendering of three-dimensional polygonal data
JP3709509B2 (ja) * 1996-12-04 2005-10-26 株式会社セガ ゲーム装置
JP3745475B2 (ja) * 1996-12-06 2006-02-15 株式会社セガ ゲーム装置及び画像処理装置
TW357101B (en) * 1996-12-17 1999-05-01 Konami Co Ltd Shooting video game machine and shooting result presentation method
US6275236B1 (en) * 1997-01-24 2001-08-14 Compaq Computer Corporation System and method for displaying tracked objects on a display device
US6256047B1 (en) * 1997-06-04 2001-07-03 Konami Co., Ltd. Method of judging hits and computer-readable storage medium storing game data
JPH11207029A (ja) * 1998-01-28 1999-08-03 Konami Co Ltd ビデオゲーム装置、ビデオゲームにおける画面表示方法及び画面表示プログラムが格納された可読記録媒体
US6672962B1 (en) 1998-05-13 2004-01-06 Kabushiki Kaisha Sega Enterprises Gun-shaped controller and game device
JP2000200361A (ja) * 1998-08-07 2000-07-18 Sega Enterp Ltd 画像処理装置及び情報記録媒体
JP3321570B2 (ja) * 1999-09-14 2002-09-03 株式会社ソニー・コンピュータエンタテインメント 動画作成方法、記憶媒体およびプログラム実行装置

Also Published As

Publication number Publication date
US6980207B2 (en) 2005-12-27
US20040104912A1 (en) 2004-06-03
EP1755084A2 (en) 2007-02-21
EP1431923A2 (en) 2004-06-23
US6664965B1 (en) 2003-12-16
US20060022974A1 (en) 2006-02-02
US7557808B2 (en) 2009-07-07
EP1431923B1 (en) 2007-10-24
EP1431923A3 (en) 2005-12-14
JP2000200361A (ja) 2000-07-18
US20080068387A1 (en) 2008-03-20
EP0978803A3 (en) 2003-03-19
EP1852830A3 (en) 2012-11-07
EP1852830A2 (en) 2007-11-07
US7471297B2 (en) 2008-12-30
EP1755084A3 (en) 2007-09-12
DE69937414T2 (de) 2008-07-24
DE69937414D1 (de) 2007-12-06
EP0978803A2 (en) 2000-02-09

Similar Documents

Publication Publication Date Title
ES2295498T3 (es) Dispositivo de procesamiento de imagenes para determinar la trayectoria de vuelo de un objeto.
ES2297896T3 (es) Dispositivo de generacion de imagenes.
ES2239354T3 (es) Procesador de imagen para juegos.
KR100584706B1 (ko) 화상 처리 시스템 및 화상 처리 방법
ES2308395T3 (es) Dispositivo de generacion de imagenes, metodo de exposicion y producto de programa.
US6652384B2 (en) Image processing device for placing a player character in a virtual space
KR100660075B1 (ko) 화상 처리 장치, 화상 처리 방법 및 매체
JP3871224B2 (ja) 画像生成装置、画像生成方法及びこれを用いたゲーム機並びに媒体
ES2332271T3 (es) Dispositivo de procesamiento de graficos, metodo de procesamiento de graficos, maquina de juegos y medio de almacenamiento.
KR100587553B1 (ko) 화상 표시 장치, 화상 처리 장치, 화상 표시 시스템
US20090104990A1 (en) Game device
US7119817B1 (en) Image generating system and program
JP6935218B2 (ja) シミュレーションシステム及びプログラム
JP4003794B2 (ja) 画像処理方法及び画像処理装置
JP4114825B2 (ja) 画像生成装置及び情報記憶媒体
JP2001087544A (ja) 画像表示装置、画像表示方法および射的ビデオゲーム装置
JP2888830B2 (ja) 3次元ゲーム装置及び画像合成方法
JP2001067496A (ja) 画像生成システム及び情報記憶媒体