ES2319983T3 - Texto en 3d en una maquina de juego. - Google Patents
Texto en 3d en una maquina de juego. Download PDFInfo
- Publication number
- ES2319983T3 ES2319983T3 ES03773084T ES03773084T ES2319983T3 ES 2319983 T3 ES2319983 T3 ES 2319983T3 ES 03773084 T ES03773084 T ES 03773084T ES 03773084 T ES03773084 T ES 03773084T ES 2319983 T3 ES2319983 T3 ES 2319983T3
- Authority
- ES
- Spain
- Prior art keywords
- game
- character
- text
- font
- game machine
- 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
Links
Classifications
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F17/00—Coin-freed apparatus for hiring articles; Coin-freed facilities or services
- G07F17/32—Coin-freed apparatus for hiring articles; Coin-freed facilities or services for games, toys, sports, or amusements
- G07F17/3202—Hardware aspects of a gaming system, e.g. components, construction, architecture thereof
- G07F17/3204—Player-machine interfaces
- G07F17/3211—Display means
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/60—Methods for processing data by generating or executing the game program
- A63F2300/66—Methods for processing data by generating or executing the game program for rendering three dimensional images
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Processing Or Creating Images (AREA)
- Display Devices Of Pinball Game Machines (AREA)
- Slot Machines And Peripheral Devices (AREA)
Abstract
Un procedimiento para generar un juego de azar en una máquina de juego que puede operarse i) para recibir dinero en metálico o pruebas de crédito para una apuesta en el juego de azar y ii) para entregar dinero en metálico o una prueba de crédito como premio por el juego de azar, en el que la máquina de juego comprende un controlador de juego maestro, un dispositivo de visualización, un dispositivo de memoria y un sistema de renderización gráfica en 3D, comprendiendo el procedimiento: proporcionar en la máquina de juego una textura de fuente que comprende una pluralidad de caracteres trazados en un estilo de fuente particular, comprendiendo dicha textura de fuente; uno o más parámetros de fuente para definir características globales de la pluralidad de características en la textura de fuente; uno o más parámetros de carácter para definir características de cada carácter; durante la operación de la máquina de juego, determinar una cadena de texto que comprende una pluralidad de caracteres para su visualización en el dispositivo de visualización; determinar una superficie de página de texto para guiar una colocación de la pluralidad de caracteres en un entorno de juego en 3D; para cada carácter en la cadena de texto, dimensionar un objeto en 3D para el carácter utilizando los parámetros de fuente y los parámetros de carácter; mapear una textura del carácter a partir de la textura de fuente con el objeto en 3D; colocar cada objeto en 3D sobre la superficie de página de texto; aplicar una o más reglas de composición tipográfica a los objetos en 3D para mejorar una calidad visual de la cadena de texto renderizada a partir de los objetos en 3D incluyendo determinar una ubicación de cada carácter en la cadena de texto con respecto a otro en el entorno de juego en 3D; renderizar la cadena de texto utilizando el sistema de renderización gráfica en 3D; visualizar la cadena de texto renderizada en el dispositivo de visualización; recibir la apuesta para los juegos de azar controlados por el controlador de juego maestro en la máquina de juego; determinar un resultado del juego para el juego de azar; visualizar el resultado del juego utilizando el sistema de renderización gráfica en 3D en el dispositivo de visualización.
Description
Texto en 3D en una máquina de juego.
Esta invención se refiere a procedimientos de
presentación de juegos para máquinas de juego tales como máquinas
tragaperras y máquinas de videopóquer. Más particularmente, la
presente invención se refiere a aparatos y procedimientos para
visualizar presentaciones de juegos derivadas de un entorno de juego
en 3D.
A medida que avanza la tecnología en la
industria del juego, las máquinas tragaperras de tambor accionadas
mecánicamente tradicionales se están sustituyendo por equivalentes
electrónicos que tienen pantallas de vídeo CRT, LCD o similares.
Estos avances en el juego por vídeo/electrónico posibilitan la
operación de juegos más complejos, lo que por lo demás no sería
posible en máquinas de juego accionadas mecánicamente. Máquinas de
juego tales como máquinas videotragaperras y máquinas de videopóquer
se están volviendo cada vez más populares. Su mayor popularidad se
debe en parte a la variedad casi infinita de juegos que puede
implementarse en máquinas de juego que utilizan tecnología
electrónica avanzada.
Hay una amplia variedad de dispositivos
asociados que pueden conectarse a máquinas de videojuego tales como
máquinas videotragaperras y máquinas de videopóquer. Algunos
ejemplos de estos dispositivos son luces, impresoras de tiques,
lectores de tarjetas, altavoces, validadores de billetes, lectores
de tiques, receptores de monedas, paneles de visualización,
teclados numéricos, tolvas de monedas y paneles de botones. Muchos
de estos dispositivos están integrados en la máquina de juego o
componentes asociados a la máquina de juego tales como un módulo
superior, que por lo general se apoya sobre la parte superior de la
máquina de juego.
Normalmente, utilizando un controlador de juego
maestro, la máquina de juego controla diversas combinaciones de
dispositivos que permiten a un jugador jugar a un juego en la
máquina de juego y también favorecer el juego en la máquina de
juego. Por ejemplo, un juego jugado en una máquina de juego requiere
por lo general que un jugador introduzca dinero o pruebas de
crédito en la máquina de juego, indique una cantidad de la apuesta,
e inicie una partida de juego. Estas etapas requieren que la máquina
de juego controle dispositivos de entrada, incluyendo validadores
de billetes y receptores de monedas, para aceptar dinero en la
máquina de juego y reconocer entradas de usuarios desde los
dispositivos, incluyendo teclados numéricos y paneles de botones,
para determinar la cantidad de la apuesta e iniciar la partida de
juego.
Una vez iniciada la partida de juego, la máquina
de juego determina un resultado del juego, presenta el resultado
del juego al jugador y puede dispensar un premio de algún tipo,
dependiendo del resultado del juego. Una presentación del resultado
del juego puede utilizar muchos componentes de audio y visuales
diferentes tales como luces parpadeantes, música, sonidos y
gráficos. Los componentes de audio y visuales de la presentación del
resultado del juego pueden utilizarse para captar la atención de un
jugador sobre diversas características del juego y para aumentar el
interés del jugador en seguir jugando. Mantener el interés de un
jugador en la partida de juego, así como en una máquina de juego o
durante otras actividades de juego, es una consideración importante
para un operador de un establecimiento de juego.
Un procedimiento para mantener el interés de un
jugador es presentar múltiples juegos al mismo tiempo durante una
presentación de juego. Por ejemplo, el póquer a tres partidas en el
que un jugador juega tres manos de póquer durante cada presentación
de juego se ha convertido en un juego muy popular implementado en
una máquina de videojuego. Variantes del póquer a tres partidas
incluyen presentaciones de juego en las que se juegan cien o más
manos de póquer durante cada presentación de juego. La presentación
de múltiples juegos durante una única presentación de juego puede
extenderse a otros tipos de juegos, tales como juegos de
videotragaperras.
Una dificultad asociada con la presentación de
múltiples juegos en una presentación de videojuego es la resolución
de la pantalla de visualización en una máquina de juego. Una
resolución de visualización típica en una máquina de juego es de
aproximadamente 640 píxeles por 480 píxeles. A medida que aumenta el
número de juegos presentados en una presentación de juego, la
cantidad de detalles puede quedar limitada por la resolución de
pantalla. Por ejemplo, para un juego de póquer a cien manos en el
que se visualizan cien manos de póquer durante cada presentación de
juego, cada carta debe dibujarse bastante pequeña sin gran detalle
para que encajen todas las cartas en una única pantalla de
visualización. La falta de detalles y el pequeño tamaño de carta
pueden desanimar a algunos jugadores a jugar a estos juegos.
Otro procedimiento para mantener el interés de
un jugador en jugar a un juego en una máquina de juego es presentar
una presentación de juego fascinante que se muestra en una pantalla
de visualización en la máquina de juego. Muchos sistemas de juego
recientes utilizan esquemas de generación gráfica que emplean
dispositivos de almacenamiento masivo que utilizan tiempos de carga
variados y formatos de medios con capacidad de flujo para generar
una presentación de juego fascinante. Con estos sistemas de juego,
se generan numerosas escenas de juego durante el juego usando
renderizaciones complejas y capacidades de reproducción de vídeo.
Normalmente, sin embargo, por motivos de eficacia, un jugador tiene
poco control sobre la presentación del resultado del juego aparte
de mediante decisiones de juego que toman durante la partida del
juego.
En vista de lo anterior, sería deseable
proporcionar un procedimiento y aparato que permita presentaciones
de juego detalladas que permitan el juego simultáneo de múltiples
juegos que han de presentarse en una máquina de videojuego,
pudiendo controlarse también la presentación de juego por un
jugador.
Como ejemplo de la técnica anterior véase el
documento US 2002-111212.
Esta invención aborda las necesidades indicadas
anteriormente proporcionando un procedimiento y aparato en una
máquina de juego para presentar una pluralidad de presentaciones del
resultado del juego derivadas de uno o más entornos de juego en 3D
virtuales almacenados en la máquina de juego tal como se define en
las reivindicaciones 1 y 24. Mientras se está jugando a un juego de
azar en la máquina de juego, pueden renderizarse imágenes
bidimensionales derivadas de un objeto en 3D en el entorno de juego
en 3D en una pantalla de visualización en la máquina de juego en
tiempo real como parte de una presentación del resultado del juego.
Los objetos en 3D pueden incluir objetos de textos en 3D que se
utilizan para visualizar texto en la pantalla de visualización de la
máquina de juego como parte de la presentación de resultado del
juego. Se describen aparatos y procedimientos para generar y
visualizar información en un formato textual que es compatible con
un sistema de renderización gráfica en 3D. En particular, se
describen procedimientos de generación de fuente y composición
tipográfica que son aplicables en un entorno de juego en 3D.
Un aspecto de la presente invención proporciona
un procedimiento para proporcionar un juego de azar en una máquina
de juego que puede operarse i) para recibir dinero en metálico o
pruebas de crédito para una apuesta en un juego de azar y ii) para
entregar dinero en metálico o una prueba de crédito como premio por
el juego de azar, en el que la máquina de juego comprende un
controlador de juego maestro, un dispositivo de visualización, un
dispositivo de memoria y un sistema de renderización gráfica en 3D.
El procedimiento puede caracterizarse en general porque comprende:
a) recibir la apuesta por los juegos de azar controlados por el
controlador de juego maestro en la máquina de juego; b) determinar
un resultado del juego de los juegos de azar; c) renderizar una o
más imágenes bidimensionales derivadas de objetos tridimensionales
(3D) en un entorno de juego en 3D almacenados en el dispositivo de
memoria en la máquina de juego, en el que al menos uno de los
objetos en 3D es un objeto de texto en 3D adaptado para transmitir
información textual; y d) visualizar la una o más imágenes
bidimensionales renderizadas en el dispositivo de visualización en
la máquina de juego. En general, el entorno de juego en 3D
comprende una pluralidad de objetos de texto en 3D y el sistema de
renderización gráfica en 3D puede ser compatible con OpenGL.
En realizaciones particulares, el procedimiento
puede comprender además: a) mapear una cadena de texto que
comprende uno o más caracteres alfanuméricos con el objeto de texto
en 3D pudiendo configurarse el objeto de texto en 3D para
transmitir al menos uno de los caracteres alfanuméricos en la cadena
de texto, b) mapear texturas con patrones de caracteres
alfanuméricos con el objeto de texto en 3D para transmitir la
información textual, c) modelizar el objeto de texto en 3D en una
forma de un carácter alfanumérico para transmitir la información
textual. La forma del carácter alfanumérico puede definirse mediante
una pluralidad de curvas parametrizadas.
En otras realizaciones, el procedimiento puede
comprender además ajustar a escala el objeto de texto en 3D para
transmitir la información textual mediante un factor de ajuste a
escala. El entorno de juego en 3D puede comprender dos o más
objetos de texto en 3D siendo la máquina de juego operable para
aplicar un factor de ajuste a escala diferente a cada uno de los
dos o más objetos de texto en 3D. El factor de ajuste a escala
puede variar en función del tiempo. El objeto de texto en 3D puede
ajustarse a escala en menos de tres de sus dimensiones. Además, la
máquina de juego puede operarse para aplicar un factor de ajuste a
escala diferente a cada una de las tres dimensiones del objeto de
texto en 3D: el objeto de texto en 3D puede ajustarse a escala
utilizando mapeo MIP.
En otras realizaciones más, la máquina de juego
puede operarse para ajustar a escala una pluralidad de objetos de
texto en 3D para que encajen en una superficie acotada. Una forma de
la superficie acotada puede cambiar en función del tiempo. En un
ejemplo, la superficie acotada puede ser una superficie plana. Una
forma de los objetos de texto en 3D también puede cambiar en
función del tiempo.
En realizaciones particulares, el procedimiento
puede comprender además situar cada uno de los objetos en 3D en el
entorno de juego en 3D. La posición de uno o más de los objetos en
3D puede cambiar en función del tiempo. Una pluralidad de los
objetos de texto en 3D puede situarse a lo largo de una línea recta,
dos o más líneas paralelas o a lo largo de una curva en 3D en el
entorno de juego en 3D. En general, una pluralidad de objetos de
texto en 3D puede situarse en el entorno de juego en 3D.
En una realización, el procedimiento puede
comprender además guiar una colocación de los objetos de texto en
3D utilizando una superficie de página de texto. Una o más de una
forma de la superficie de página de texto, una posición de la
superficie de página de texto o una orientación de la superficie de
página de texto puede cambiar en función del tiempo. Una forma de
la superficie de página de texto puede ser un rectángulo plano, un
polígono plano de múltiples lados o una superficie en 3D. La
superficie de página de texto puede ser invisible. Además, el
procedimiento puede comprender además: a) aplicar una o más de una
textura estática, una textura animada o combinaciones de las mismas
a la superficie de página de texto, b) recortar una parte de un
primer objeto de texto en 3D que se extiende más allá de un límite
definido por la superficie de página de texto y c) ajustar a escala
el objeto de texto en 3D para que encaje dentro de los límites
definidos por la superficie de página de texto.
En otras realizaciones, el procedimiento puede
comprender orientar una posición angular de cada uno de los objetos
de texto en 3D en el entorno de juego en 3D. La posición angular de
cada uno de los objetos de texto en 3D puede variar en función del
tiempo. En particular, las posiciones angulares de cada uno de los
objetos de texto en 3D pueden orientarse de manera que una
superficie de los objetos de texto en 3D está alineada con un plano
inclinado o la normal de una línea curva o una superficie curva en
el entorno de juego en 3D.
En realizaciones particulares, el procedimiento
puede comprender además renderizar la información textual en el
entorno de juego en 3D para una o más de i) una presentación del
resultado del juego para el juego de azar, ii) una operación de
mantenimiento de juego, iii) una característica de modo de
atracción, iv) una característica promocional, v) información de
casino, vi) presentación de juego de bonificación y capturar la
información textual en la una o más imágenes bidimensionales.
Además, la información textual transmitida por los objetos de texto
en 3D puede ser información de uno o más de un juego de azar, un
juego de bonificación, un anuncio, noticias, cotizaciones de bolsa,
correo electrónico, una página web, un servicio de mensajería, un
servicio de localización o un servicio de hotel/casino, una
película, una selección musical, una promoción de casino, un evento
de difusión, una operación de mantenimiento, un servicio de
seguimiento de jugador, un menú de bebidas y un menú de
aperitivos.
En realizaciones particulares, una cadena de
texto que comprende una pluralidad de caracteres alfanuméricos
puede mapearse con una pluralidad de objetos de texto en 3D
transmitiendo cada uno de los objetos de texto en 3D la información
textual para uno de los caracteres alfanuméricos en la cadena de
texto. El procedimiento puede comprender además aplicar una o más
reglas de composición tipográfica para mejorar una calidad de la
información textual renderizada a partir de la pluralidad de objetos
de texto en 3D que representan la cadena de texto. Las reglas de
composición tipográfica pueden ser para uno o más de i) ajustar un
espaciado entre los caracteres, ii) ajustar pesos de color de los
caracteres, iii) justificar la cadena de texto, iv) centrar los
caracteres, v) ajustar las dimensiones de los trazos que definen los
caracteres, vi) alinear los caracteres con una línea base, vii),
situar la cadena de texto en dos o más líneas, viii) ajustar el
espaciado entre dos o más líneas de texto, ix) ajustar la
alineación vertical u horizontal de los caracteres, x) ajustar un
tamaño relativo de cada carácter, xi) ajustar los píxeles que
definen un carácter de texto y xii) ajustar los téxeles que definen
un carácter de texto. En otras realizaciones, el procedimiento puede
comprender además uno o más de a) antes de renderizar la una o más
imágenes bidimensionales, generar una o más texturas de fuente
comprendiendo cada textura de fuente una pluralidad de caracteres y
cargar la una o más texturas de fuente en un primer dispositivo de
memoria en la máquina de juego, b) visualizar un menú de juegos de
azar disponible en la máquina de juego; recibir una o más señales
de entradas que contienen información utilizada para seleccionar
uno o más de los juegos de azar enumerados en dicho menú, c) generar
una textura de superficie animada en el entorno de juego en 3D, d)
almacenar una o más de las imágenes bidimensionales renderizadas en
un dispositivo de memoria ubicado en la máquina de juego o e)
cargar una o más texturas de fuente en una biblioteca de fuentes en
el dispositivo de memoria en la máquina de juego.
Otro aspecto de la presente invención
proporciona un procedimiento para proporcionar información textual
para una máquina de juego que es operable i) para recibir dinero en
metálico o pruebas de crédito para una apuesta en un juego de azar
y ii) para entregar dinero en metálico o una prueba de crédito como
premio por el juego de azar comprendiendo la máquina de juego un
controlador de juego maestro, un dispositivo de visualización, un
dispositivo de memoria y un sistema de renderización gráfica en 3D.
El procedimiento puede caracterizarse en general porque comprende:
a) generar una textura de fuente que comprende una pluralidad de
caracteres dibujados en un estilo de fuente particular
comprendiendo la textura de fuente uno o más parámetros de fuente
para definir características globales de la pluralidad de
características en la textura de fuente y uno o más parámetros de
carácter para definir características de cada carácter; b)
determinar una cadena de texto que comprende una pluralidad de
caracteres; c) determinar una superficie de página de texto para
guiar una colocación de la pluralidad de caracteres en un entorno
de juego en 3D, d) para cada carácter en la cadena de texto,
dimensionar un objeto en 3D para el carácter utilizando los
parámetros de fuente y parámetros de carácter; mapear una textura
del carácter a partir de la textura de fuente con el objeto en 3D y
colocar cada objeto en 3D sobre la superficie de página de texto;
e) aplicar una o más reglas de composición tipográfica a los objetos
en 3D para mejorar una calidad visual de la cadena de texto
renderizada a partir de los objetos en 3D; y f) renderizar la
cadena de texto utilizando el sistema de renderización gráfica en
3D.
En realizaciones particulares, el procedimiento
puede comprender además visualizar la cadena de texto renderizada
en el dispositivo de visualización o ubicar un primer carácter en la
textura de fuente utilizando coordenadas de ubicación de carácter.
El sistema de renderización gráfica en 3D puede ser compatible con
OpenGL. Además, el juego de azar puede seleccionarse del grupo que
consiste en un juego tragaperras, un juego keno, un juego de
póquer, un juego de pachinko, un juego de video black jack, un juego
de bingo, un juego de bacará, un juego de ruleta, un juego de dados
y un juego de cartas.
En otras realizaciones, el procedimiento puede
comprender además almacenar una o más texturas de fuente generadas
en una biblioteca de fuentes en el dispositivo de memoria en la
máquina de juego. La biblioteca de fuentes comprende además una
pluralidad de texturas de fuente con el mismo estilo de fuente y
diferentes parámetros de fuente o parámetros de carácter. La
biblioteca de fuentes puede comprender además una pluralidad de
texturas de fuente con diferentes estilos de fuente. Los parámetros
de fuente en la textura de fuente pueden ser uno o más de un nombre
de fuente, un estilo de fuente, un tipo de letra de fuente, un peso
de fuente, una línea base de fuente, una elevación de fuente, un
descenso de fuente, una inclinación de fuente, una altura máxima de
fuente, un ancho máximo de fuente y un número de caracteres en la
textura de fuente. Los parámetros de carácter en la textura de
fuente pueden ser uno o más de una altura de carácter, un ancho de
carácter, una elevación de carácter, un descenso de carácter, un
origen de carácter, una forma de carácter o coordenadas de
ubicación de carácter para ubicar el carácter en la textura
de
fuente.
fuente.
Otro aspecto más de la presente invención
proporciona una máquina de juego. La máquina de juego puede
caracterizarse en general porque comprende: 1) una carcasa; 2) un
controlador de juego maestro acoplado a la carcasa diseñado o
configurado para controlar un juego de azar al que se juega en la
máquina de juego; 3) un entorno de juego tridimensional (3D) para
renderizar al menos una presentación del resultado del juego para el
juego de azar almacenado en un dispositivo de memoria en la máquina
de juego; 4) una lógica de juego para renderizar una o más imágenes
bidimensionales derivadas de objetos en 3D en el entorno de juego en
3D siendo al menos uno de los objetos en 3D un objeto de texto en
3D adaptado para transmitir información textual; 5) al menos un
dispositivo de visualización para visualizar la una o más imágenes
bidimensionales renderizadas, siendo la máquina de juego operable
i) para recibir dinero en metálico o pruebas de crédito para una
apuesta en el juego de azar y ii) para entregar dinero en metálico
o una prueba de crédito como premio por el juego de azar. La
máquina de juego puede comprender además uno o más de a) un sistema
de renderización gráfica en 3D para renderizar la una o más
imágenes en 2D, b) una lógica de juego diseñada o configurada para
renderizar información textual desde una operación de mantenimiento
de la máquina de juego en el entorno de juego en 3D utilizando una
pluralidad de los objetos de texto en 3D y para capturar la
operación de mantenimiento de la máquina de juego en la una o más
imágenes bidimensionales, c) una lógica de juego diseñada o
configurada para renderizar información textual de una o más de i)
una característica operativa de la máquina de juego, ii) una
operación de mantenimiento de la máquina de juego en el entorno de
juego en 3D, iii) una característica de modo de atracción, iv) una
característica promocional, v) información de casino o vi) una
presentación de juego de bonificación utilizando una pluralidad de
los objetos de texto en 3D y para capturar la característica de
operación de la máquina de juego en la una o más imágenes
bidimensionales, d) una unidad de procesamiento gráfico, separada de
dicho controlador de juego maestro, diseñada o configurada para
ejecutar las operaciones gráficas utilizadas para renderizar una o
más imágenes bidimensionales derivadas de los objetos en 3D en el
entorno de juego en 3D, e) un panel de interfaz de red diseñado o
configurado para permitir al controlador de juego maestro comunicar
información textual renderizada a un dispositivo de visualización
remoto, f) una tarjeta de vídeo de múltiples terminales, g) un
dispositivo de memoria para almacenar texturas de fuente en una
biblioteca de fuentes en la máquina de juego. La biblioteca de
fuentes puede comprender además una pluralidad de texturas de fuente
con el mismo estilo de fuente y diferentes parámetros de fuente o
parámetros de carácter o una pluralidad de texturas de fuente con
diferentes estilos de fuente.
Otro aspecto de la invención se refiere a
productos de programa informático incluyendo un medio legible por
máquina en el que están almacenadas instrucciones de programa para
implementar cualquiera de los procedimientos anteriormente
descritos. Cualquiera de los procedimientos de esta invención puede
representarse como instrucciones de programa y/o estructuras de
datos, bases de datos, etc. que pueden proporcionarse en tales
medios legibles por ordenador.
Estas y otras características de la presente
invención se presentarán más detalladamente en la siguiente
descripción detallada de la invención y las figuras asociadas.
La figura 1 es un dibujo en perspectiva de un
entorno de juego virtual en 3D implementado en una máquina de juego
para una realización de esta invención.
La figura 2 es un dibujo en perspectiva de
tambores tragaperras virtuales en un entorno de juego virtual en 3D
implementado en una máquina de juego para una realización de esta
invención.
La figura 3 es un diagrama de flujo para un
procedimiento para generar un juego de azar de la presente
invención.
Las figuras 4A a 4D son diagramas de bloques que
describen algunas cuestiones de renderización en un entorno de
juego en 3D.
Las figuras 5A a 5B son diagramas de bloques que
describen la renderización de objetos de texto en 3D en un entorno
de juego en 3D de la presente invención.
La figura 6A es un diagrama de bloques que
muestra la creación de un archivo de fuente.
La figura 6B es un diagrama de propiedades de
fuente.
La figura 6C es un diagrama de propiedades de
carácter.
La figura 6D es un diagrama de una textura de
fuente.
La figura 7 es un diagrama que muestra la
creación de caracteres de texto en 3D.
Las figuras 8A a 8B son diagramas de objetos de
texto en 3D visualizados utilizando realizaciones de la presente
invención.
La figura 9 es un dibujo en perspectiva de una
máquina de juego para una realización de la presente invención.
La figura 10 es un diagrama de flujo que
representa un procedimiento para generar un juego de azar utilizando
un entorno de juego virtual.
La figura 11 es un diagrama de bloques de
máquinas de juego que utilizan software de juego distribuido y
procesadores distribuidos para generar un juego de azar para una
realización de la presente invención.
\vskip1.000000\baselineskip
La figura 1 es un dibujo en perspectiva de un
entorno 100 de juego virtual en 3D implementado en una máquina de
juego para una realización de esta invención. El entorno de juego
virtual en 3D puede utilizarse por el controlador de juego maestro
en la máquina de juego para presentar un juego de azar. El juego de
azar al que se juega en la máquina de juego puede incluir: 1) una
apuesta seleccionada por un jugador que juega a un juego en la
máquina de juego, 2) una iniciación del juego de azar en la máquina
de juego por el jugador, 3) una determinación de un resultado para
el juego de azar por la máquina de juego y 4) una presentación en la
máquina de juego del resultado del juego al jugador. En la presente
invención, el entorno de juego en 3D puede utilizarse para
presentar un resultado del juego al jugador, describir funciones
operativas de la máquina de juego y proporcionar una interfaz para
obtener información y servicios de juego. En particular, se
describen procedimientos y aparatos para visualizar una cadena de
texto en un entorno de juego en 3D, tal como una cadena de texto
utilizada en un contador de crédito visualizado en la máquina de
juego o una cadena de texto utilizada para proporcionar información
de juego para un juego de azar visualizado en la máquina de juego.
Las cadenas de texto pueden generarse utilizando texturas que se
aplican a un objeto en 3D en el entorno de juego en 3D. Se
describen aparatos y procedimientos que implementan estas
características con respecto a las figuras 1 a 11.
En particular las figuras 1 a 11 proporcionan la
siguiente información. En la figura 1, se describe un entorno de
juego en 3D de la presente invención. En la figura 2, se describen
tambores en 3D en el entorno de juego en 3D. En la figura 3, se
describe un procedimiento para generar un juego de azar en un
entorno de juego en 3D. En las figuras 4A a 4D, se presentan
algunas cuestiones relativas a la renderización de texto desde un
entorno de juego en 3D. En las figuras 5A a 5B, se ilustran
procedimientos para generar texto en un entorno de juego en 3D. En
las figuras 6A a 6D, se describen procedimientos para generar
fuentes, caracteres y texturas utilizados en una renderización de
texto en 3D para una realización de la presente invención. En la
figura 7, se presenta un procedimiento para generar un objeto de
texto en 3D en un entorno de juego en 3D. En las figuras 8A a 8B,
se describen visualizaciones de vídeo que visualizan objetos de
texto generados utilizando diferentes procedimientos de la presente
invención. En la figura 9, se describe una realización de una
máquina de juego de la presente invención. En la figura 10, se
presenta un procedimiento para generar un juego de azar o juego de
bonificación utilizando los entornos de juego en 3D de la presente
invención. En la figura 11, se describe una red de juego de la
presente invención.
Antes de describir la figura 1, se comentan
algunos aspectos generales de los entornos de juego virtual en 3D y
su relación con entornos en 2D. Para utilizar un entorno de juego
virtual en 3D para una presentación de juego u otras actividades de
juego en una máquina de juego, se renderiza una vista en 2D del
entorno de juego virtual en 3D. La vista en 2D captura alguna parte
de las superficies en 3D modelizadas en el entorno de juego virtual
en 3D. Las superficies capturadas definen un objeto en 3D en el
entorno de juego en 3D. Las superficies capturadas en la vista en
2D se definen en las coordenadas tridimensionales del entorno de
juego virtual en 3D y se convierten en un sistema de coordenadas
bidimensionales durante el proceso de captura. Como parte de una
presentación de juego, la vista en 2D puede presentarse como un
cuadro de vídeo en una pantalla de visualización en la máquina de
juego. En cierto modo, la vista bidimensional es análoga a una
fotografía de un entorno físico en 3D tomada por una cámara, en la
que la fotografía captura una parte de las superficies físicas en
3D existentes en el entorno físico en 3D. Sin embargo, la fotografía
de una cámara no es estrictamente análoga a una vista en 2D
renderizada a partir de un entorno de juego virtual en 3D porque
pueden aplicarse numerosas técnicas de manipulación gráfica en un
entorno de juego virtual en 3D que no están disponibles con una
cámara real.
En la presente invención, la vista en 2D se
genera desde un punto de vista dentro del entorno de juego virtual
en 3D. El punto de vista es un factor principal a la hora de
determinar qué superficies del entorno de juego en 3D que definen
un objeto en 3D se capturan en la vista en 2D. Puesto que la
información acerca del entorno de juego en 3D está almacenada en la
máquina de juego, el punto de vista puede alterarse para generar
nuevas vistas en 2D de objetos en el entorno de juego en 3D. Por
ejemplo, en un cuadro, una vista en 2D de un objeto modelizado en
el entorno de juego en 3D, tal como una cara frontal de un edificio
(por ejemplo el punto de vista captura la cara frontal de un
edificio), puede generarse utilizando un primer punto de vista. En
otro cuadro, una vista en 2D del mismo objeto puede generarse desde
otro punto de vista (por ejemplo la cara posterior del
edificio).
Una desventaja de las máquinas de juego actuales
es que las vistas en 2D utilizadas como cuadros de vídeo en
presentaciones de juego sólo se renderizan a partir de objetos en 2D
y la información acerca de la naturaleza multidimensional de los
objetos renderizados en las vistas en 2D, tal como el punto de vista
utilizado para generar la vista en 2D, no está almacenada en la
máquina de juego. Históricamente, debido al entorno normativo de la
industria del juego, el software de juego empleado para presentar un
juego de azar se diseñaba para "ejecutarse in situ" en
una EPROM instalada en la máquina de juego. Utilizando una EPROM, no
era factible almacenar grandes cantidades de datos de juego
relativos a modelos en 3D complicados. Por tanto, sólo la
información de objetos en 2D utilizada para renderizar la vista en
2D estaba almacenada en la máquina de juego.
Sin embargo, los juegos en 2D renderizados en
máquinas de juego también se han vuelto más sofisticados y
frecuentemente emplean animaciones complejas. Cuando se utilizan
animaciones complicadas en un sistema en 2D, tal como reproducir
películas sobre un objeto en 2D, un sistema en 3D puede de hecho
ahorrar memoria porque pueden utilizarse más tipos de animación con
un sistema en 3D frente a un sistema en 2D sin tener que recurrir a
utilizar películas, que ocupan mucha memoria. En un sistema en 2D
sin utilizar películas, las propiedades de animación que pueden
utilizarse son un simple movimiento bidimensional y ciclos de color
utilizando paletas de color que proporcionan un atractivo visual
limitado.
Cuando sólo está disponible información en 2D
acerca de un objeto en 3D, no es posible generar nuevas vistas en
2D desde diferentes puntos de vista del objeto en 3D. Por ejemplo,
cuando una ilustración de un naipe se renderiza en máquinas de
juego actuales, la información en 3D, tal como el grosor de la
carta, no está almacenada. Por tanto, no es posible generar una
vista en 2D del naipe desde un punto de vista de canto, puesto que
el grosor de la carta no se conoce. Como otro ejemplo, pueden
utilizarse cuadros de una película como parte de una presentación
de juego en una máquina de juego. Cada cuadro de la película
representa una vista en 2D desde un punto de vista de una cámara
utilizada para filmar cada cuadro. Si el cuadro incluye una imagen
de un edificio visto desde el frente (por ejemplo, el punto de
vista captura la fachada del edificio), no es posible generar una
nueva vista en 2D de la parte posterior del edificio porque no se
conoce información relativa a la parte posterior del edificio.
Una ventaja de la presente invención es que el
área potencial de juego utilizada para presentar un juego de azar
modelizado en un entorno de juego en 3D es mayor que el área
potencial de juego de un entorno de juego en 2D. Por ejemplo, un
juego de azar puede presentarse en cada una de las seis caras de un
cubo modelizado en un entorno de juego virtual. Para jugar al juego
de azar, pueden renderizarse vistas en 2D del cubo desde diferentes
puntos de vista en el entorno de juego en 3D en tiempo real y
presentarse al jugador. Como se describe más adelante, en algunas
realizaciones, el jugador puede incluso seleccionar el punto de
vista en el entorno de juego en 3D utilizado para generar la vista
en 2D.
En máquinas de juego actuales, el cubo se
renderizaría como un objeto en 2D generado a partir del cubo en 3D
visto desde un punto de vista particular. El punto de vista
particular se selecciona cuando se desarrolla el juego y sólo se
almacenaría información en 2D acerca del cubo visto desde el punto
de vista seleccionado en una EPROM en la máquina de juego. Por
tanto, un juego de azar podría presentarse en las caras del cubo
renderizadas a partir del objeto en 2D que se generó desde el punto
de vista seleccionado del cubo en 3D y se almacena en la EPROM. Sin
embargo, a menos que se generaran objetos en 2D adicionales desde
diferentes puntos de vista, no es posible presentar un juego de
azar en las caras del cubo no visibles desde el punto de vista
seleccionado porque el objeto en 2D no almacena información relativa
a las caras del cubo no visibles desde el punto de vista
seleccionado. Además, incluso si se generaran múltiples objetos en
2D, es difícil y lleva mucho tiempo generar suficientes objetos en
2D para permitir transiciones suaves entre puntos de vista
capturados por los objetos en 2D. También es difícil ajustar a
escala un objeto en 2D, para hacerlo más pequeño o más grande, sin
introducir efectos de distorsión.
También se genera distorsión cuando se ajustan a
escala objetos en 3D. Sin embargo, son más fáciles de manipular
utilizando tarjetas gráficas 3D especializadas porque la tarjeta
aplica un proceso de filtrado bilineal a los téxeles en el momento
de la renderización. Sin un hardware especial, tal como una tarjeta
gráfica 3D, sería difícil corregir la distorsión en tiempo
real.
Finalmente, en un sistema de juego en 2D típico,
debido a la flexibilidad limitada de 2D, los resultados de un juego
de azar renderizado en 2D y visualizado en una máquina de juego han
de cuantificarse y prerenderizarse, es decir, animaciones
enlatadas. Debido a la flexibilidad de un sistema de juego en 3D,
los resultados pueden determinarse mediante entradas del usuario
dando lugar a un número ilimitado de animaciones en respuesta a la
entrada de los jugadores. Al no tener que realizar una serie de
animaciones preenlatadas, sino determinar en lugar de ello la
animación en respuesta a la entrada de los jugadores, se ahorra
muchos bytes en requisitos de espacio de almacenamiento. En las
siguientes figuras, se describen detalles de los procedimientos y
aparatos utilizados para presentar un juego de azar generado a
partir de un entorno de juego en 3D.
Volviendo a la figura 1, el entorno 100 de juego
en 3D incluye tres objetos: 1) una caja 101 rectangular encima de,
2) un plano 114 y 3) una segunda caja 127. La caja 101, la caja 127
y el plano 114 se definen en un espacio 104 de coordenadas
rectangular tridimensional. Normalmente, las superficies de los
objetos en el entorno de juego se definen utilizando una pluralidad
de elementos de superficie. Los elementos de superficie pueden
comprender diferentes formas, tales como diferentes tipos de
polígonos que se conocen bien en las técnicas gráficas en 3D. Por
ejemplo, los objetos en la presente información pueden definirse de
manera que sean compatibles con una o más normas gráficas tales
como Open Graphics Library (OpenGL). Puede encontrarse información
sobre OpenGL en www.opengl.org.
En una realización, los objetos en el entorno
100 de juego pueden definirse por una pluralidad de elementos
triangulares. Como ejemplo, una pluralidad de elementos 125 de
superficie triangular se utiliza para definir una parte de la
superficie 108 y la cara 112 superficial. En otra realización, los
objetos en el entorno 100 de juego, tales como la caja 101 y la
caja 127, pueden definirse por una pluralidad de elementos
rectangulares. En otra realización más, una combinación de
diferentes tipos de polígonos, tales como triángulos y rectángulos
puede utilizarse para describir los diferentes objetos en el entorno
100 de juego. Utilizando un número apropiado de elementos de
superficie, tales como elementos triangulares, puede hacerse que los
objetos parezcan redondos, esféricos, tubulares o implementen
varias combinaciones de superficies curvas.
Los triángulos son, de lejos, el polígono más
popular utilizado para definir objetos en 3D porque son los más
fáciles de manipular. Para representar un objeto sólido, se requiere
un polígono de al menos tres lados (por ejemplo, un triángulo). Sin
embargo, OpenGL soporta cuadrados, puntos, líneas, tiras de
triángulos y tiras de cuadrados y polígonos con cualquier número de
puntos. Además, pueden representarse modelos en 3D mediante una
variedad de curvas en 3D tales como NURB y Bezier Patches.
Cada uno de los elementos de superficie que
comprende el entorno de juego virtual en 3D puede describirse en un
sistema de coordenadas rectangular u otro sistema de coordenadas
apropiado, tal como coordenadas esféricas o coordenadas polares,
según dicte la aplicación. Los entornos de juego virtual en 3D de la
presente invención no se limitan a las formas y elementos mostrados
en la figura 1 o al sistema de coordenadas utilizado en la figura
1, que se muestran con fines ilustrativos únicamente. Detalles de
procedimientos de renderización gráfica en 3D que pueden utilizarse
con la presente invención se describen en "OpenGL Reference
Manual: The Official Reference Document to Open GL, Version
1.2", tercera edición, por Dave Shreiner (editor), OpenGL
Architecture Review Board, Addison-Wesley
Publishing, Co., 1999, ISBN: 0201657651 y "OpenGL Program Guide:
The Official Guide to Learning OpenGL, Version 1.2", tercera
edición, by Mason Woo, Jackie Neider, Tom Davis, Dave Shreiner,
OpenGL Architecture Review Board, Addison-Wesley
Publishing, Co., 1999, ISBN: 0201604582, que se incorporan en el
presente documento en su totalidad y a todos los efectos.
Pueden aplicarse texturas de superficie a cada
uno de los elementos de superficie, tales como los elementos 125,
que definen las superficies en el entorno 100 de juego virtual. Las
texturas de superficie pueden permitir que el entorno de juego en
3D parezca más "real" cuando se ve en una pantalla de
visualización en la máquina de juego. Como ejemplo, pueden
aplicarse colores, texturas y reflectancias a cada uno de los
elementos de superficie que definen los diversos objetos en el
entorno de juego en 3D. Pueden utilizarse millones de colores
diferentes para añadir una "sensación" de realismo a un entorno
de juego dado. Texturas que pueden aplicarse incluyen lisura o
irregularidades superficiales tales como protuberancias,
hundimientos, líneas, mapas de rugosidad, mapas de iluminación,
mapas de reflectancia y mapas de refractancia u otros patrones que
pueden renderizarse en cada elemento. Las texturas pueden aplicarse
como modelos matemáticos almacenados como "mapas de textura"
en la máquina de juego.
En una realización, el "mapa de textura"
puede ser una textura animada. Por ejemplo, cuadros de una película
u otra animación pueden proyectarse sobre un objeto en 3D en el
entorno de juego en 3D. Estas texturas animadas pueden capturarse
en vistas en 2D presentadas en cuadros de vídeo en la máquina de
juego. Múltiples texturas animadas pueden utilizarse al mismo
tiempo. Por tanto, por ejemplo, una primera película puede
proyectarse sobre una primera superficie en el entorno de juego en
3D y una segunda película puede proyectarse sobre una segunda
superficie en el entorno de juego en 3D pudiendo verse
simultáneamente ambas películas.
Las propiedades materiales de una superficie en
3D pueden describir cómo reacciona la superficie a la luz. Estas
propiedades de superficie pueden incluir cosas tales como a) una
capacidad del material para absorber diferentes longitudes de onda
de luz, b) una capacidad del material para reflejar diferentes
longitudes de onda de luz (reflectancia), c) una capacidad del
material para emitir ciertas longitudes de onda de luz tales como
las luces traseras de un coche y d) una capacidad del material para
transmitir ciertas longitudes de onda de luz. Como ejemplo, la
reflectancia se refiere a cuánta luz refleja cada elemento.
Dependiendo de la reflectancia de un elemento de superficie pueden
reflejarse otros elementos en el entorno de juego de manera
borrosa, de manera nítida o no hacerlo en absoluto. Combinaciones de
color, textura y reflectancia pueden utilizarse para conferir una
ilusión de una calidad particular a un objeto, tal como duro,
blando, caliente o frío.
Algunos procedimientos de sombreado que se
utilizan habitualmente con gráficos en 3D para añadir textura que
pueden aplicarse a la presente invención incluyen sombreado de
Gourand y sombreado de Phong. Los sombreados de Gourand y Phong son
procedimientos utilizados para ocultar una geometría limitada de un
objeto mediante la interpolación entre dos superficies con
diferentes normales. Además, utilizando Alpha Blending, pueden
mezclarse píxeles para hacer que un objeto parezca transparente, es
decir, el objeto transmite luz.
Fuentes de luz virtuales, tales como 102, pueden
utilizarse en el entorno de juego para añadir la apariencia de
sombreado y sombras. El sombreado y sombras se utilizan para añadir
peso y solidez a la renderización de un objeto virtual. Por
ejemplo, para añadir solidez a la caja 101 rectangular, rayos de luz
emitidos desde la fuente 102 de luz se utilizan para generar una
sombra 103 alrededor de la caja 101 rectangular. En un
procedimiento, se utiliza trazado de rayos para trazar trayectorias
de rayos de luz imaginarios emitidos desde una fuente de luz
imaginaria tal como 102. Estos rayos de luz pueden incidir en y
pueden reflejarse desde diversas superficies afectando a los
colores asignados a cada elemento de superficie. En algunos entornos
de juego, pueden utilizarse múltiples fuentes de luz cambiando el
número de luces y la intensidad de cada fuente de luz con el tiempo.
Normalmente, en 3D en tiempo real, las fuentes de luz no generan
sombras y depende del programador añadir sombras manualmente. Como
se indicó anteriormente, sin embargo, las fuentes de luz producen
sombreado sobre objetos.
\newpage
Puede aplicarse perspectiva, que se utiliza para
transmitir la ilusión de distancia, al entorno 100 de juego
definiendo un punto de fuga, tal como 128. Normalmente, se utiliza
una perspectiva de punto único en la que todos los objetos en la
escena se renderizan para parecer como si convergieran eventualmente
en un punto único en la distancia, por ejemplo el punto de fuga.
Sin embargo, también pueden emplearse perspectivas de múltiples
puntos en entornos de juego en 3D de la presente invención. La
perspectiva permite que objetos en el entorno de juego parezcan
unos detrás de otros. Por ejemplo, la caja 101 y la caja 127 pueden
ser del mismo tamaño. Sin embargo, se hace que la caja 127 parezca
más pequeña, y por tanto más alejada, con respecto a un observador
porque está más cerca del punto 128 de fuga. Un entorno de juego en
3D puede proporcionar o no corrección de perspectiva. La corrección
de perspectiva se lleva a cabo transformando puntos hacia el centro
de la pantalla en vista en 2D. Cuanto más alejado esté un objeto
del punto de vista en el entorno de juego en 3D, más se
transformará en el centro de la pantalla.
La presente invención no se limita a vistas en
perspectiva o vistas en múltiples perspectivas del entorno de juego
en 3D. Puede utilizarse una vista ortográfica en la que objetos en
3D renderizados en una vista en 2D siempre parecen del mismo tamaño
sin importar cómo de alejados estén en el entorno de juego en 3D. La
vista ortográfica es lo que se vería como una sombra arrojada desde
una fuente de luz que está infinitamente alejada (de modo que los
rayos de luz son paralelos), mientras que la vista en perspectiva
procede de una fuente de luz que está alejada de manera finita, de
modo que los rayos de luz son divergentes. En la presente invención,
pueden utilizarse combinaciones de ambas vistas en perspectiva y
ortográfica. Por ejemplo, una vista ortográfica de un mensaje de
texto puede aplicarse a modo de capa encima de una vista en
perspectiva del entorno de juego en 3D.
Relacionado con la perspectiva está la
"profundidad de campo". La profundidad de campo describe un
efecto en el que los objetos que aparecen más próximos a un
observador están más enfocados y los objetos que están más alejados
parecen desenfocados. La profundidad de campo puede aplicarse a
renderizaciones de los diversos objetos en el entorno 100 de juego.
Otro efecto que puede aplicarse a las renderizaciones de objetos en
el entorno de juego es el "suavizado de los bordes"
(antialiasing). El suavizado de los bordes se utiliza para
hacer las líneas, que se generan digitalmente como un número de
segmentos rectos, parezcan más suaves cuando se renderizan en una
pantalla de visualización en la máquina de juego. Dado que la
visualización en 2D sólo adopta posiciones de píxel finitas, se
produce un escalonamiento en cualquier línea que no sea recta hacia
arriba y hacia abajo, recta horizontalmente (hacia la izquierda y la
derecha) o a 45 grados en la pantalla de visualización. El
escalonamiento produce un efecto visualmente poco atractivo, por
tanto, se añaden píxeles a las líneas escalonadas para que este
efecto sea menos pronunciado.
Los objetos en el entorno 101 de juego pueden
parecer que son estáticos o dinámicos. Por ejemplo, las coordenadas
de la caja 127 pueden cambiar con el tiempo mientras que las
coordenadas de la caja 101 y el plano 114 permanecen fijas. Por
tanto, cuando se renderizan en una pantalla de visualización en una
máquina de juego, la caja 127 puede parecer que se mueve en el
entorno 101 de juego con respecto a la caja 101. Son posibles
numerosos efectos dinámicos. Por ejemplo, la caja 127 puede parecer
que gira mientras permanece en una posición fija o puede girar
mientras también se traslada para generar un efecto de bote o
tambaleo. Además, en el entorno de juego, puede parecer que los
objetos chocan unos con otros. Por ejemplo, la caja 127 puede
parecer que choca con la caja 101 alterando la trayectoria de la
caja 127 en el entorno de juego. Pueden aplicarse numerosos efectos
de renderización digital al entorno de juego de la presente
invención. Los efectos anteriormente descritos se han proporcionado
con fines ilustrativos únicamente.
Pueden aplicarse texto y símbolos alfanuméricos
convencionales a uno o más elementos de superficie en el entorno
101 de juego para visualizar información de juego a un jugador. Los
símbolos y el texto alfanuméricos pueden aplicarse a diversas
superficies en el entorno de juego para generar una pluralidad de
visualizaciones de juego que pueden utilizarse como parte de
presentaciones del resultado del juego observadas en la máquina de
juego. Por ejemplo, pueden renderizarse visualizaciones de juego en
cada una de las 6 seis caras superficiales de la caja 101 o la caja
127 y también puede renderizarse una pluralidad de visualizaciones
de juego en la superficie 114 plana. En la presente invención,
pueden renderizarse visualizaciones de juego a través de una o más
superficies de cualquier poliedro u otro objeto definido en el
entorno de juego.
El texto y los símbolos renderizados permiten
generar presentaciones del resultado del juego para diferentes
juegos de azar. Por ejemplo, una mano de cartas para un juego de
póquer o juego de black jack puede renderizarse en cada una de las
caras de la caja 101 tales como las superficies 108, 110 y 112. Como
otro ejemplo, pueden renderizarse números keno o números de bingo
en diferentes caras de las cajas 101 y 127. Además, pueden
renderizarse visualizaciones de tragaperras y visualizaciones de
pachinko para presentaciones del resultado del juego de tragaperras
y pachinko en diferentes caras de las cajas 101 y 127.
Pueden renderizarse muchas combinaciones
diferentes de juegos de azar en el entorno 100 de juego. Por
ejemplo, puede renderizarse una visualización de tragaperras en la
cara 108 de la caja 101, puede renderizarse una visualización de
juego de black jack en la cara 110, puede renderizarse una
visualización de juego de póquer en la cara 112, puede renderizarse
una visualización de juego keno en una cara en la caja 101 opuesta a
la cara 108, puede renderizarse una visualización de juego de
pachinko en una cara en la caja 101 opuesta a 110 y puede
renderizarse una visualización de juego de bingo en una cara en la
caja 101 opuesta a la cara 112. Puede renderizarse una combinación
diferente de visualizaciones de juego en las superficies de la caja
127. Otros juegos de azar que pueden utilizarse en la presente
invención incluyen, pero sin limitarse a, juegos de dados (por
ejemplo, craps), bacará y ruleta.
\newpage
En la presente invención, se emplea el término
juegos de azar para indicar actividades de juego en las que un
jugador ha realizado una apuesta sobre el resultado del juego de
azar. Dependiendo del resultado del juego para el juego de azar
iniciado por el jugador, la apuesta puede multiplicarse. El
resultado del juego sólo puede darse al azar, es decir sin ninguna
entrada por parte del jugador o sin que el jugador pueda afectar al
resultado del juego según una o más decisiones. Por ejemplo, en un
juego de videopóquer, el resultado del juego puede determinarse
según las cartas que conserve o descarte el jugador. Mientras que en
un juego de tragaperras, el resultado del juego, es decir, la
posición final de los tambores de tragaperras, se determina
aleatoriamente por la máquina de juego.
Las combinaciones de juegos descritas
anteriormente pueden renderizarse al mismo tiempo en el entorno de
juego en 3D. Un jugador puede jugar a uno o más juegos de manera
secuencial. Por ejemplo, un jugador puede seleccionar uno o más
juegos, hacer una apuesta para el uno o más juegos y entonces
iniciar el uno o más juegos y ver las presentaciones del resultado
del juego para el uno o más juegos. Un jugador también puede jugar a
uno o más juegos en paralelo. Por ejemplo, un jugador puede
seleccionar uno o más juegos, hacer una apuesta para el uno o más
juegos e iniciar el uno o más juegos. Antes de que se hayan
completado las presentaciones del resultado del juego para el uno o
más juegos seleccionados, el jugador puede seleccionar uno o más
juegos nuevos, hacer una apuesta para el uno o más juegos nuevos e
iniciar el uno o más juegos nuevos. Detalles de una metodología de
juego en paralelo se describen en la solicitud estadounidense en
tramitación junto con la presente n.º 09/553,437, presentada el 19
de abril de 2000, por Brosnan et al. y titulada "Juegos
paralelos en un dispositivo de juego" que queda incorporada al
presente documento en su totalidad y a todos los efectos.
El texto y los símbolos renderizados en una
visualización de juego no son necesariamente planos, pueden
renderizarse en múltiples dimensiones en el entorno 100 de juego.
Por ejemplo, cartas renderizadas pueden tener un grosor finito o
símbolos elevados. Las cartas pueden manipularse por manos que se
definen como modelos de objetos tridimensionales en el entorno 100
de juego en 3D y moverse a medida que se manipulan las cartas. Como
otro ejemplo, una visualización de tragaperras puede renderizarse
como tambores multidimensionales con símbolos (véase la figura 2)
que pueden girar en el entorno 100 de juego.
Una visualización de juego para una presentación
del resultado del juego puede renderizarse en una superficie
particular y puede cambiar con el tiempo en respuesta a diversas
entradas del jugador. Por ejemplo, en un juego de póquer, un
jugador puede descartar y conservar diversas cartas mientras están
jugando al juego. Por tanto, las cartas en la mano cambian mientras
se está renderizando el resultado del juego en el entorno de juego
en 3D y algunas cartas (por ejemplo, cartas descartadas) puede
parecer que abandonan el entorno de juego. Como otro ejemplo, los
tambores en una visualización de tragaperras renderizada en el
entorno de juego pueden empezar a rotar en el entorno de juego en
respuesta a que un jugador acciona una palanca o pulsa un botón de
entrada en la máquina de juego física.
Otras características de juego e información de
juego pueden renderizarse también en el entorno 100 de juego. Por
ejemplo, juegos de bonificación, promociones, publicidad y gráficos
de atracción también pueden renderizarse en el entorno de juego.
Por ejemplo, el logotipo de un casino o la cara de un jugador pueden
renderizarse en el entorno de juego. Estas características de juego
adicionales pueden estar integradas en una presentación del
resultado del juego en la máquina de juego o en otros modos
operativos de la máquina de juego tal como un modo de
atracción.
En otra realización de la presente invención,
una persona virtual, por ejemplo un modelo tridimensional de una
parte de (por ejemplo, cara, manos, rostro, cabeza y torso, etc.) o
de todo un ser humano puede renderizarse en el entorno de juego en
3D. La persona virtual puede estar animada. A modo de ejemplo,
ajustando parámetros del modelo tridimensional de la persona
virtual de en una secuencia, la persona virtual puede parecer que
habla o gesticula. La persona virtual puede utilizarse para explicar
instrucciones de juego a un jugador o puede utilizarse como un
componente en una presentación de juego. La persona virtual puede
parecer que responde o interactúa con un usuario conforme a
entradas en la máquina de juego realizadas por el usuario. Por
ejemplo, un jugador puede preguntar a la persona virtual una
pregunta particular mediante un mecanismo de entrada en la máquina
de juego tal como un micrófono en una máquina de juego equipada con
software de reconocimiento de voz. A continuación, la persona
virtual puede parecer que emite una respuesta a la pregunta
introducida por el usuario. También pueden utilizarse modelos en 3D
animados para otros objetos, tales como animales o personajes de
ficción, en el entorno de juego en 3D.
Una vez definido el entorno de juego en tres
dimensiones, para visualizar una parte del entorno de juego en 3D
en una pantalla de visualización en la máquina de juego, se genera
una "fotografía" de una parte del entorno de juego. La
fotografía es una renderización bidimensional de una parte del
entorno de juego tridimensional. Las transformaciones entre
sistemas de coordenadas en 3D y sistemas de coordenadas en 2D se
conocen ampliamente en las técnicas gráficas. La fotografía puede
tomarse desde una "cámara" virtual situada en una ubicación
dentro del entorno 100 de juego. Una secuencia de fotografías
tomadas por la cámara virtual en el entorno de juego puede
considerarse análoga a filmar una película.
Una "fotografía" visualizada en la pantalla
de visualización de una máquina de juego también puede estar
compuesta por muchas fotografías diferentes. Por ejemplo, una
fotografía compuesta puede generarse a partir de partes de una
primera fotografía generada utilizando una vista ortográfica y
partes de una segunda fotografía generada utilizando una vista en
perspectiva. Las partes de las fotografías que comprenden la
fotografía compuesta pueden colocarse unas encima de otras para
proporcionar efectos de "capa", pueden visualizarse unas al
lado de otras para producir un "collage" o
combinaciones de las mismas.
En otra realización de la presente invención,
una fotografía puede ser una combinación mezclada de dos fotografías
diferentes. Utilizando un esquema de interpolación de algún tipo,
dos fotografías pueden mezclarse en una secuencia de fotografías
para proporcionar un efecto de transición (morphing) en el
que la primera fotografía parece transformarse en una segunda
fotografía. Por ejemplo, un juego tragaperras puede parecer que se
transforma en un juego de póquer.
Los parámetros operativos de la cámara virtual,
tales como su posición en un momento particular, se utilizan para
definir una superficie en 3D en el entorno de juego, que se proyecta
sobre una superficie en 2D para producir la fotografía. La
superficie en 3D puede comprender partes de varios objetos en 3D en
el entorno de juego en 3D. La superficie en 3D también puede
considerarse un objeto en 3D. Por tanto, una fotografía es una
imagen en 2D derivada de las coordenadas en 3D de objetos en el
entorno de juego en 3D. La cámara virtual puede representar una
lógica de juego almacenada en la máquina de juego necesaria para
renderizar una parte del entorno 100 de juego en 3D en una imagen
en 2D visualizada en la máquina de juego. La fotografía se convierte
en un cuadro de vídeo, que comprende varios píxeles, que puede
visualizarse en una pantalla de visualización en la máquina de
juego.
La transformación realizada por la cámara
virtual que permite que una parte del entorno de juego virtual se
vea en una o más pantallas de visualización en la máquina de juego
puede ser en función de varias variables. El tamaño de lente en el
entorno de juego virtual, la posición de la lente, una distancia
virtual entre la lente y la fotografía, el tamaño de la fotografía,
la perspectiva y una variable de profundidad asignada a cada objeto
son algunas de las variables que pueden incorporarse en una
transformación por la cámara virtual que renderiza una fotografía
del entorno de juego virtual. La resolución de la pantalla de
visualización en la máquina de juego puede dictar el tamaño de una
fotografía en la cámara virtual. Una pantalla de visualización
típica puede permitir una resolución de 800 por 600 píxeles de color
aunque pueden utilizarse pantallas de mayor o menor resolución. Un
"tamaño de lente" en la cámara virtual define una ventana en el
entorno de juego virtual. La ventana se denomina en ocasiones como
ventana de visualización (viewport). El tamaño y la posición
de la lente determinan qué parte del entorno 100 de juego virtual ve
la cámara virtual.
Una vez generada la fotografía del entorno de
juego virtual, pueden aplicarse otros efectos, tales como suavizado
de los bordes estático y dinámico, a la fotografía para generar un
cuadro visualizado en una o más visualizaciones ubicadas en la
máquina de juego. Normalmente, las operaciones matemáticas y
lógicas, que están codificadas en una lógica de software de juego,
necesarias para realizar una transformación particular y generar un
cuadro de vídeo pueden ejecutarse mediante tarjetas de vídeo y
tarjetas gráficas ubicadas en la máquina de juego y diseñadas
específicamente para realizar estas operaciones. Las tarjetas
gráficas incluyen por lo general unidades de procesamiento gráfico
(GPU). Sin embargo, las operaciones de transformación también pueden
realizarse por una o más CPU de carácter general ubicadas en la
máquina de juego o combinaciones de GPU y CPU.
En general, los aceleradores gráficos de vídeo
2D/3D o coprocesadores, a menudo denominados como unidades de
procesamiento gráfico (GPU), están ubicados en o conectados al
controlador de juego maestro y se utilizan para realizar
operaciones gráficas. Las soluciones descritas se encuentran de la
manera más habitual como tarjetas de vídeo. Los sistemas
electrónicos gráficos pueden incorporarse directamente en la placa
del procesador (por ejemplo, el controlador de juego maestro) de la
máquina de juego, e incluso integrarse estrechamente en otras
soluciones de chip integrado a muy gran escala. Los procedimientos
de integración son a menudo medidas de ahorro de costes utilizadas
habitualmente para reducir los costes asociados con la producción en
masa. Por ejemplo, tarjetas de vídeo, tales como la Vivid!XS de
Video-Logic Systems (VideoLogic Systems es un
departamento de Imagination Technologies Group plc, Inglaterra)
pueden utilizarse para realizar las operaciones gráficas descritas
en la presente invención. Como otro ejemplo, pueden emplearse
tarjetas de vídeo de Nvidia Corporation (Santa Clara, California).
En una realización, la tarjeta de vídeo puede ser una tarjeta de
vídeo en 3D de múltiples terminales, tal como una Matrox G450
(Matrox Graphics Inc., Dorval, Quebec, Canadá). Las tarjetas de
vídeo de múltiples terminales permiten a una única tarjeta gráfica
soportar dos visualizaciones simultáneamente o renderizar dos
imágenes simultáneamente en la misma visualización.
Cuando se visualizan fotografías de una cámara
virtual en un entorno de juego en 3D, una única imagen de la cámara
puede dividirse entre una pluralidad de dispositivos de
visualización. Por ejemplo, cuatro pantallas de visualización
pueden utilizarse para visualizar una cuarta parte de una única
imagen. La alimentación de vídeo a cada uno de la pluralidad de
dispositivos de visualización puede proporcionarse desde una única
tarjeta de vídeo. Las tarjetas de vídeo de múltiples terminales
permiten a una única tarjeta gráfica (o subsistema gráfico)
visualizar salida en dos o más visualizaciones simultáneamente.
Puede tratarse de múltiples salidas que renderizan cada
visualización o una renderización sobre múltiples visualizaciones, o
una variación de ambas. Por ejemplo, cuando se utiliza una tarjeta
de vídeo de múltiples terminales, un primer terminal en la tarjeta
de vídeo de múltiples terminales puede utilizarse para renderizar
una imagen de una primera cámara virtual en un entorno de juego en
3D y un segundo terminal en la tarjeta de vídeo de múltiples
terminales puede utilizarse para renderizar una segunda imagen de
una segunda cámara virtual en un entorno de juego en 3D. Las
imágenes renderizadas primera y segunda del primer y el segundo
terminal pueden visualizarse simultáneamente en la misma
visualización o la primera imagen puede visualizarse en una primera
visualización y la segunda imagen puede visualizarse en una segunda
visualización.
Volviendo a la figura 1, tres lentes 105, 106 y
107 utilizadas en una cámara virtual se muestran situadas en tres
ubicaciones en el entorno de juego virtual. Cada lente ve una parte
diferente del entorno de juego. El tamaño y la forma de la lente
pueden variar, lo que cambia una parte del entorno de juego virtual
capturado por la lente. Por ejemplo, las lentes 105 y 106 son de
forma rectangular mientras que la lente 107 es de forma
ovalada.
La lente 106 está situada para ver la
"visualización de juego" para una presentación del resultado
del juego renderizada en la superficie 108. La parte del entorno de
juego capturada por la lente 106 tiene una forma 120 de seis lados.
Como se describió anteriormente, la visualización de juego puede
contener la presentación de un juego particular al que se juega en
la máquina de juego, tal como una mano de cartas para un juego de
póquer. Después de aplicar una transformación apropiada, una
fotografía 124 de la parte del entorno 100 de juego virtual en
volumen 120 se genera por la cámara virtual con la lente 106.
Utilizando terminología diferente que es común
en la comunidad de las artes gráficas en 3D, las lentes 105, 106 y
107 pueden describirse como una cámara. Cada cámara tiene la
capacidad de tener diferentes configuraciones. Una escena en el
entorno de juego en 3D se graba desde el punto de vista de la
cámara. Una escena diferente se captura desde cada cámara. Por
tanto, la escena se renderiza desde la cámara para producir una
imagen.
La fotografía 124 generada desde la cámara
virtual con la lente 106 puede verse en una o más pantallas de
visualización en la máquina de juego. Por ejemplo, la fotografía 124
puede verse en una visualización principal en la máquina de juego y
en una visualización secundaria en la máquina de juego. En otra
realización, una parte de la fotografía 124 puede visualizarse en
la visualización principal y una parte de la fotografía puede
visualizarse simultáneamente en una visualización secundaria. En
otra realización más, una parte de la fotografía 124 puede
visualizarse en una primera máquina de juego mientra que una parte
de la fotografía 124 puede visualizarse simultáneamente en una
segunda máquina de juego.
La lente 105 de una cámara virtual está situada
para ver el volumen 121 en el entorno 100 de juego virtual. El
volumen 121 interseca tres caras 108, 110 y 112, de la caja 101.
Tras aplicar una transformación apropiada, se renderiza una
fotografía 125 de la parte del entorno 101 de juego virtual en el
volumen 121 por la cámara virtual con la lente 105 que puede
visualizarse en una de las pantallas de visualización en una máquina
de juego.
La lente 107 de una cámara virtual está situada
para ver el volumen 122 en el entorno 100 de juego virtual. La
forma ovalada de la lente produce un volumen 122 redondeado similar
a una luz desde una luz de flash. El volumen 122 interseca una
parte de la cara 110 y una parte del plano 114 incluyendo una parte
de la sombra 103. Tras aplicar una transformación apropiada, se
renderiza una fotografía 126 de la parte del entorno 101 de juego
virtual en el volumen 122 por la cámara virtual con la lente 107 que
puede visualizarse en una o más de las pantallas de visualización
en una máquina de juego. Por ejemplo, una máquina de juego puede
incluir una visualización principal, una visualización secundaria,
una visualización para una unidad de seguimiento de un jugador y
una pantalla de visualización remota en comunicación con la máquina
de juego a través de una red de algún tipo. Cualquiera de estas
pantallas de visualización pueden visualizar fotografías
renderizadas a partir del entorno de juego en 3D.
Una secuencia de fotografías generadas desde una
o más cámaras virtuales en el entorno 101 de juego puede utilizarse
para presentar una presentación del resultado del juego en la
máquina de juego o presentar otras características de la máquina de
juego. La secuencia de fotografías puede parecerse a una película o
cinta cuando la ve el jugador. Por ejemplo, un modelo en 3D de una
persona virtual puede parecer que habla. Normalmente, una tasa de
actualización para una pantalla de visualización en una máquina de
juego es del orden de 60 HZ o más y pueden generarse nuevas
fotografías desde cámaras virtuales en el entorno de juego a medida
que se juega al juego para adecuarse a la tasa de
actualización.
La secuencia de fotografías de una o más cámaras
virtuales en el entorno de juego puede generarse desde al menos una
cámara virtual con una posición y ángulo de lente que varía con el
tiempo. Por ejemplo, la lente 106 puede representar la posición de
una cámara virtual en el tiempo, t_{1}, la lente 105 puede
representar la posición de la cámara virtual en el tiempo, t_{2},
y la lente 107 puede representar la posición de la cámara virtual
en el tiempo t_{3}. Las fotografías generadas en estas tres
posiciones por la cámara virtual pueden incorporarse en una
secuencia de fotografías visualizadas en una pantalla de
visualización.
La posición de la cámara virtual puede cambiar
de manera continua entre las posiciones en los tiempos t_{1},
t_{2}, t_{3} generando una secuencia de fotografías que parece
hacer una panorámica del entorno de juego virtual. Entre las
posiciones en los tiempos t_{1}, t_{2}, t_{3}, la velocidad a
la que se mueve la cámara virtual puede aumentarse o disminuirse.
Además, la cámara virtual puede moverse de manera no continua. Por
ejemplo, una primera fotografía en una secuencia de fotografías
visualizadas en una pantalla de visualización puede generarse desde
la cámara virtual utilizando la posición de la lente 106. La
siguiente fotografía en la secuencia de fotografías puede generarse
desde la cámara virtual utilizando la posición de la lente 105. Una
tercera fotografía en la secuencia de fotografías puede generarse
desde la cámara virtual utilizando la posición de la lente 107. En
general, la cámara virtual en el entorno 101 de juego puede moverse
de manera continua, no continua y combinaciones de las mismas.
En una presentación de juego, puede utilizarse
una pluralidad de cámaras virtuales, con posiciones que varían en
el tiempo, en una pluralidad de entornos de juego virtuales. La
información de cámara y entorno en función del tiempo puede
almacenarse en la máquina de juego y puede accederse a la misma
cuando se necesita una escena particular para un evento de juego en
una presentación del resultado del juego de manera que la escena
puede renderizarse en "tiempo real". Una escena puede
definirse mediante las posiciones de una o más cámaras virtuales en
uno o más entornos de juego en función del tiempo. Las escenas
pueden modularizarse, es decir, puede generarse una biblioteca de
escenas, de modo que pueden incorporarse en diferentes juegos. Por
ejemplo, una escena de un botón siendo presionado puede
incorporarse en cualquier juego utilizando este tipo de
secuencia.
Una secuencia de fotografías generadas desde una
primera cámara virtual en un primer entorno de juego virtual puede
visualizarse simultáneamente con una secuencia de fotografías
generadas desde una segunda cámara virtual en un segundo entorno de
juego virtual. Por ejemplo, la primera secuencia de fotografías y la
segunda secuencia de fotografías pueden visualizarse en una
pantalla dividida o pueden visualizarse en diferentes pantallas.
Además, la primera cámara virtual en un primer entorno de juego
virtual y la segunda cámara virtual pueden estar ubicadas en un
segundo entorno de juego virtual diferente del primer entorno de
juego virtual. El primer entorno de juego virtual y el segundo
entorno de juego virtual también pueden estar en el mismo entorno de
juego. Además, una única cámara virtual puede saltar entre
diferentes entornos de juego, tal como entre un entorno de partida
de juego a un entorno de juego de bonificación. La transición entre
los entornos de juego también puede parecer suave (por ejemplo, la
cámara puede hacer una panorámica desde un entorno de manera
continua).
En algunas realizaciones, puede ser que un
jugador seleccione uno o más entornos de juego virtuales utilizados
en una partida de juego en una máquina de juego. Por ejemplo, un
primer entorno de juego puede implicar un perfil de ciudad, como el
de Nueva York, mientras que un segundo entorno de juego puede
implicar un perfil de ciudad, como el de París. Durante una partida
de juego en una máquina de juego, un jugador puede ser capaz de
seleccionar Nueva York o París como perfil de ciudad para el entorno
de juego virtual utilizado durante la partida de juego. Los
diferentes entornos de juego y las diferentes escenas generadas a
partir de los entornos pueden almacenarse en una memoria en la
máquina de juego como una biblioteca de algún tipo.
En realizaciones particulares, mientras se está
utilizando la máquina de juego, un jugador puede ser capaz de
controlar la posición de la cámara virtual utilizando un mecanismo
de entrada en la máquina de juego (véase la figura 9). Por ejemplo,
un jugador puede ser capaz de mover la posición de la lente 106 más
cerca de la superficie 108 en el entorno 108 de juego lo que genera
la apariencia de un zoom o el objeto puede moverse más cerca de la
cámara. Para juegos de cartas de múltiples manos, un jugador puede
ser capaz de acercarse mediante zoom sobre a una mano particular
para "ampliar a voluntad" la mano aumentando la visibilidad de
la mano. Por ejemplo, un jugador puede utilizar un mecanismo de
entrada para "desplazar" (scroll) la cámara y ver
partes más grandes. Como otro ejemplo, el jugador puede ser capaz de
manipular una cámara virtual por el entorno de juego o seleccionar
una escena en el entorno de juego. Una oportunidad para mover la
cámara virtual puede desencadenarse por ciertos eventos de juego
tales como un evento de juego de bonificación en la máquina de
juego o el movimiento de la cámara está establecido en el guión (por
ejemplo predeterminarse) como parte de la secuencia de juego. Por
ejemplo, como parte de jugar un evento de juego de bonificación, un
jugador puede ser capaz de escoger entre un número de puertas que
lleva a diferentes habitaciones con cofres de tesoro. Cuando el
jugador entra en una de las habitaciones, el cofre se abre y se
muestra su premio de bonificación.
Con la presente invención, algunas ventajas de
generar un entorno de juego en 3D que puede renderizarse en tiempo
real en una pantalla de visualización son las siguientes. En primer
lugar, permite presentar a un jugador y posiblemente que éste
controle una presentación del resultado del juego compleja en tiempo
real. Por tanto, la presentación del resultado del juego puede
variar de un juego a otro de la manera determinada por el jugador.
Las presentaciones del resultado del juego tradicionales se
modelizaban en 2D y se daba poco control al jugador. Por tanto, las
presentaciones del resultado del juego tradicionales no varían mucho
de un juego a otro. En segundo lugar, problemas de resolución de
pantalla asociados con la presentación de un gran número de juegos
simultáneamente en una única pantalla pueden evitarse modelizando
los juegos en un entorno de juego en 3D.
En cualquier momento dado durante una
presentación de juego vista en una pantalla de visualización en la
máquina de juego, el jugador sólo puede visualizar una parte de la
pluralidad de los juegos modelizados en el entorno de juego en 3D.
Por tanto, la jugabilidad en un entorno de juego en 3D es mayor que
en un entorno de juego en 2D porque puede presentarse un juego de
azar en superficies modelizadas en el entorno de juego en 3D que
pueden estar ocultas a la vista. En un entorno de juego en 2D, no
hay superficies ocultas, es decir, "lo que ves" es "lo que
hay". Puesto que el punto de vista en el modelo en 3D puede
variarse, el jugador o máquina de juego puede acercarse mediante
zoom a uno o más juegos de interés, algunos de los cuales pueden
estar ocultos en una vista actual en 2D, y seleccionar un nivel de
resolución deseable. Por tanto, todos los juegos o componentes de
juego no tienen que renderizarse en una única pantalla
simultáneamente.
La figura 2 es un dibujo en perspectiva de tres
tambores 202, 204 y 206 tragaperras virtuales en un entorno 200 de
juego virtual en 3D implementado en una máquina de juego para una
realización de esta invención. Los tres tambores tragaperras están
modelizados como partes cilíndricas en el espacio 201 de
coordenadas. Los tambores parecen estar colgando en el espacio. Se
renderizan diferentes símbolos sobre cada tambor incluyendo un
triángulo 210, una triple barra 212, un "siete" 214, una doble
barra 216 y un óvalo 218. Otros símbolos (no mostrados) pueden
renderizarse en las partes posteriores de los tambores. En un
entorno de juego tragaperras en 3D virtual, tal como 200, puede
variarse un tamaño de los tambores, un número de tambores, un número
de símbolos en los tambores y tipos de símbolos en los tambores.
También, puede variarse el escenario de fondo (no mostrado) en el
entorno.
Una ventana 208 se renderiza sobre los tambores
202, 204 y 206, para ilustrar un número de símbolos que pueden ser
visibles en una visualización de tragaperras mecánica. Como mucho,
pueden verse en la visualización de tragaperras mecánica nueve
símbolos, por ejemplo las tres dobles barras, tres sietes y tres
triples barras. Cuando el jugador ve múltiples símbolos, los
múltiples símbolos pueden utilizarse para generar múltiples líneas
de pago que pueden apostarse durante la partida.
Cuando los tambores en una máquina de juego se
detienen después de haberse recibido una apuesta y haberse iniciado
un juego, una combinación de símbolos a lo largo de una línea de
pago puede compararse con combinaciones ganadoras de símbolos para
determinar un premio para el juego. Por ejemplo, se muestran tres
líneas 228, 229 y 230 de pago. Tres símbolos "siete" se
encuentran a lo largo de la línea 229 de pago. Una triple barra, un
siete y una doble barra se muestran a lo largo de las líneas 228 y
230 de pago. A menudo se utiliza la combinación de triple siete
como combinación ganadora en los juegos tragaperras. El número de
líneas de pago aumenta las oportunidades de apuesta para un juego
dado y algunos jugadores desean juegos de múltiples líneas de pago.
En algunos juegos tragaperras, sólo puede verse una única línea de
símbolos, tal como los tres sietes, y un jugador puede apostar sólo
en una única línea de pago.
Para una presentación de resultado del juego,
los tambores 202, 204 y 206 tragaperras pueden empezar cada uno a
girar y moverse en el entorno de juego virtual. En el espacio 200
virtual, los tambores pueden girar en diferentes direcciones,
trasladarse, girar alrededor de diferentes ejes, encogerse de tamaño
o crecer de tamaño, ya que los tambores no están limitados por las
limitaciones de los tambores tragaperras mecánicos reales. Durante
la presentación del resultado del juego, una cámara virtual, que
puede variar su posición en función del tiempo, puede filmar una
secuencia (por ejemplo, generar un número de fotografías en una
secuencia) que se visualizan en una pantalla de visualización en la
máquina de juego y que capturan el movimiento de los tambores.
Varias cámaras virtuales pueden estar situadas
en el entorno 200 de juego virtual para capturar uno o más símbolos
en los tambores tragaperras. Por ejemplo, la lente 220 de una cámara
virtual captura el símbolo "7" en el tambor 202 en el volumen
221 del entorno 200 de juego virtual. La lente 222 de una cámara
virtual captura el símbolo "triángulo" en el tambor 204 en el
volumen 223 del entorno de juego virtual. La lente 224 de una
cámara virtual captura un símbolo "triple barra" (no mostrado)
en el tambor 204 del entorno de juego virtual. Finalmente, la lente
226 de una cámara virtual captura el símbolo "óvalo" en el
tambor 206 en el volumen 226 del entorno de juego virtual. Sin
embargo, también puede utilizarse una única cámara virtual para
capturar múltiples símbolos tal como una línea de símbolos a través
de múltiples tambores.
Los símbolos capturados desde las cámaras
virtuales utilizando las lentes 220, 222, 224 y 226 pueden
utilizarse para crear varias líneas de pago que pueden utilizarse
para apostar. Por ejemplo, los símbolos capturados desde las lentes
220, 222 y 226 se utilizan para generar una primera combinación de
símbolos 232 sobre la que puede apostarse durante la partida. Los
símbolos capturados desde las lentes 220, 224 y 226 se utilizan
para generar una segunda combinación de símbolos 234 sobre la que
puede apostarse durante la partida. Finalmente, las cámaras
virtuales pueden estar situadas a lo largo de la línea 230 de pago
para capturar la combinación 236 de símbolos.
En la presente invención, el número de líneas de
pago que puede implementarse es bastante grande. Por ejemplo, para
tres tambores virtuales con 25 símbolos en cada tambor, pueden
utilizarse 253 líneas de pago. En una realización, para ayudar a la
visualización de una gran cantidad de información de juego generada
en un entorno de juego virtual, la información de juego generada en
un primer entorno de juego puede transferirse a un segundo entorno
de juego. Por ejemplo, información de juego relativa a combinaciones
de símbolos a lo largo de una pluralidad de líneas de pago
generadas en el entorno 200 de juego puede transferirse a un segundo
entorno de juego con cámaras virtuales para renderizarla en una
visualización vista por un jugador.
En otra realización, los tambores 202, 204, 206
tragaperras pueden parecer translúcidos de modo que los símbolos en
la parte posterior del tambor pueden ser visible desde la parte
frontal. Las líneas de pago, sobre las que puede apostar un
jugador, pueden renderizarse en el "espacio virtual" para
conectar símbolos en la parte frontal de un tambor con un símbolo
en la parte posterior del tambor. Por ejemplo, puede renderizarse
una línea de pago desde la parte frontal del tambor 202 a la parte
posterior del tambor 204 y hacia la parte frontal del tambor
206.
A continuación, se describen otras realizaciones
para visualizar símbolos que pueden utilizarse en juegos de azar y
juegos de bonificación de la presente invención y se contrastan con
una máquina tragaperras mecánica tradicional. En un juego
tragaperras mecánico, se monta una cinta de tambor en un tambor que
se hace girar mediante un motor. La cinta de tambor puede ser una
cinta rectangular de un medio imprimible con un número de símbolos
diferentes impresos sobre la misma. Los símbolos están dispuestos en
una secuencia particular. Un juego tragaperras mecánico típico
puede emplear una pluralidad de tambores, como por ejemplo tres
tambores, para presentar un juego de azar.
La máquina tragaperras mecánica puede incluir
una o más tablas de pago que definen una probabilidad de que se
produzca cada posición para un único tambor/rueda o una probabilidad
de que se produzca cada combinación de posiciones para una
pluralidad de tambores. Por ejemplo, algunas máquinas tragaperras
mecánicas incluyen una rueda de bonificación y 3 tambores. La
probabilidad de cada posición o combinaciones de posiciones puede
ser proporcional a una cantidad de pago de un juego de azar al que
se juega en la máquina tragaperras. Una vez hecha una apuesta e
iniciado el juego, para determinar un resultado para el juego de
azar, puede generarse un número aleatorio y compararse con entradas
en la tabla de pago almacenada en la máquina de juego.
Utilizando la tabla de pago y el número
aleatorio, puede determinarse una posición de cada uno del uno o más
tambores y o ruedas y un resultado para el juego. La máquina
tragaperras puede entonces girar los tambores basándose en un
algoritmo almacenado en la máquina de juego y detenerlos en la
posición predeterminada. La posición de cada tambor está marcada
por lo general con un símbolo impreso sobre la cinta de tambor en la
posición o un espacio vacío. Por lo general, sólo una parte de los
símbolos en cada cinta de tambor es visible para el jugador en un
momento determinado. Por tanto, mientras el uno o más tambores
rotan, el jugador ve diferentes partes de cada cinta de tambor. La
posición final del uno o más tambores indica un símbolo o una
combinación de símbolos. La combinación de símbolos visualizada en
los tambores mecánicos, definida por una línea de pago, puede
utilizarse por el jugador para determinar si la combinación es una
combinación ganadora.
La figura 3 es un diagrama de flujo que
representa un procedimiento para generar un juego utilizando un
entorno de juego virtual en 3D. En 700, se seleccionan eventos de
juego que comprenden un juego de azar al que se juega en la máquina
de juego y que están representados visualmente. En 705, se genera un
guión visual (story-board) en 3D que
describe una escena en uno o más entornos de juego virtuales para
cada evento de juego. La información de la escena puede incluir
posiciones de cámara virtual en función del tiempo en uno o más
entornos de juego. Por ejemplo, un guión para cartas que se están
manipulando en un juego de cartas puede describir un par de manos
en 3D que manipulan la carta sobre una mesa de juego con una cámara
virtual situada directamente por encima de la mesa de juego mirando
hacia abajo hacia las manos. La información de la escena también
puede incluir información de juego generada en un formato textual,
que se renderiza en el entorno de juego en 3D utilizando objetos de
texto en 3D de la presente invención (véanse las figuras 4A a 8B).
En 710, se genera una escena correspondiente al guión visual en 3D
para cada evento de juego en uno o más entornos de juego virtual en
3D. En 715, se "filma" una escena correspondiente al guión
visual para cada evento de juego en el uno o más entornos de juego
en 3D. Filmar cada evento de juego en el entorno de juego en 3D
comprende seleccionar una secuencia de posiciones y ángulos de la
cámara virtual en el uno o más entornos de juego en 3D. En algunas
realizaciones, un jugador puede controlar la posición de la cámara
virtual en cierto modo. En 720, una secuencia de superficies de
proyección en 2D (por ejemplo, imágenes de la cámara virtual)
derivadas de las coordenadas tridimensionales de las superficies en
el entorno de juego en 3D se renderizan en una pantalla de
visualización en la máquina de juego.
En las figuras 4A a 8B, se describen cuestiones
y detalles relacionados con la renderización de texto en 3D en un
entorno de juego en 3D de la presente invención. En la presente
invención, según se describe con respecto a la figura 1, pueden
generarse objetos de texto en 3D para la visualización de
información de juego en un formato textual en tiempo de ejecución
por la máquina de juego, es decir, el texto no está en un formato de
visualización prerrenderizado. Utilizando la presente invención, un
diseñador puede ser capaz de especificar y ajustar fácilmente el
formato y la apariencia de texto gráfico que se renderiza a partir
de un entorno de juego en 3D y se visualiza en una pantalla de
visualización de la máquina de juego. El diseñador puede ser capaz
de especificar el formateo visual de una cadena de texto utilizando
llamadas de función que se almacenan en un archivo de instrucciones
(script) en la máquina de juego. Utilizando estas llamadas de
función, el controlador de juego maestro en la máquina de juego
puede renderizar el texto en la manera especificada por el
diseñador. Cuestiones y procedimientos de alto nivel en relación con
la renderización de texto en 3D en un entorno de juego en 3D se
describen con respecto a las figuras 4A a 5B. A continuación se
describen los detalles de la generación de una fuente específica en
el entorno de juego en 3D.
La primera etapa en la generación de
visualizaciones de texto formateado utilizando objetos de texto en
3D de la presente invención en la máquina de juego puede ser la
creación de una fuente (véanse las figuras 6A a 6D). Una fuente
puede ser una colección de datos que representa el aspecto visual y
colocación de caracteres, que pueden utilizarse entonces para
formar palabras, frases y párrafos. La colección de datos puede
almacenarse en un archivo de fuente.
El archivo de fuente puede entonces cargarse en
la máquina de juego, que puede utilizar la información de fuente
para producir salida de texto formateado utilizada en un entorno de
juego en 3D en tiempo de ejecución (véanse las figuras 7 y 8A a
8B). La salida de texto formateado puede generarse como un objeto de
texto en 3D y renderizarse en el entorno de juego en 3D como un
cuadro de mapa de bits utilizado en una presentación del resultado
del juego visualizada en la máquina de juego. En particular, en una
realización, las fuentes pueden incluir mapas de bits de caracteres
alfanuméricos, que se mapean con polígonos. Los mapas de bits
proporcionan una textura para los polígonos. Los polígonos
resultantes con sus texturas asociadas pueden utilizarse para
representar una cadena de texto y se denominan objeto de texto en
3D. En otra realización, la fuente puede incluir descripciones de
vértices en 3D de formas utilizadas como caracteres alfanuméricos en
3D. Las formas pueden ensamblarse en el entorno de juego en 3D con
una textura apropiada para generar un objeto de texto en 3D de una
cadena de texto. Las ubicaciones de una pluralidad de caracteres
(polígonos con mapas de textura) en el entorno de juego en 3D unos
con respecto a otros pueden determinarse utilizando diversas reglas
de composición tipográfica. Las reglas de composición tipográfica,
tales como espaciado entre caracteres o ancho de línea, pueden
implementarse con el fin de aumentar la calidad del texto cuando se
visualiza en una pantalla visual de la máquina de juego.
El objeto de texto en 3D, que generalmente
comprende una pluralidad de caracteres en una cadena de texto,
puede capturarse mediante una cámara virtual en el entorno de juego
en 3D y utilizarse como parte de la presentación del resultado del
juego o presentación de juego de bonificación en la máquina de
juego. Detalles de la arquitectura de software de juego y el
sistema operativo de juego que pueden utilizarse con la presente
invención se describen en la solicitud estadounidense en
tramitación junto con la presente n.º 10/040.329, presenta el 3 de
enero de 2002, por LeMay, et al., titulada, "Game
Development Architecture That Decouples The Game Logic From The
Graphics Logic", y la solicitud estadounidense nº 10/041.212,
presentada el 7 de enero de 2002, por Breckner, et al.,
titulada "Decoupling Of The Graphical Presentation Of A Game From
The Presentation Logic", que se incorporan cada una en el
presente documento por referencia en su totalidad y a todos los
efectos.
La composición tipográfica, es decir, la
generación de texto impreso, tiene una larga historia, que data de
hace cientos de años. En los últimos años se han adaptado los
procesos mecánicos para la composición tipográfica al ordenador a
través de procesadores de texto. Los procesadores de texto permiten
al usuario disponer caracteres alfanuméricos sobre papel virtual en
una pantalla de visualización de ordenador e imprimir los caracteres
mediante una impresora en una hoja de papel. Los procesadores de
texto emplean reglas, muchas desarrolladas originalmente con
respecto a composición tipográfica mecánica, que especifican cómo
disponer los caracteres unos con respecto a otros y las propiedades
de los caracteres para su máxima legibilidad tras su impresión.
Producir texto fácilmente legible es importante en la industria del
juego porque la visualización de texto poco legible puede asociarse
con una calidad inferior del producto al que el texto está
asociado.
Aunque muchas reglas de composición tipográfica
mecánica que aumentan la legibilidad pueden aplicarse directamente
a procesadores de texto informáticos, otras reglas se han
desarrollado específicamente y/o han tenido que adaptarse para
cuestiones particularmente relacionadas con los medios informáticos.
Por ejemplo, el ajuste a escala de caracteres pixelados es un
ejemplo en el que las reglas de composición tipográfica se han
desarrollado específicamente para los medios informáticos. Algunas
cuestiones de ajuste a escala relacionadas con renderización de
texto por ordenador se describen con respecto a las figuras 4A y 4B.
Este ajuste a escala de caracteres se proporciona para ilustrar que
cuando se introduce un nuevo procedimiento/aparato para generar
texto en un nuevo entorno, por ejemplo, entornos de juego en 3D de
la presente invención, pueden requerirse nuevos procedimientos de
composición tipográfica para adaptarse a los requisitos de los
nuevos procedimientos/aparatos. Además, las cuestiones de ajuste a
escala son también importantes cuando se renderiza texto en un
entorno de juego en 3D.
En una impresora mecánica, tal como una máquina
de escribir, un carácter se forma sobre el papel cuando una tecla
mecánica con un carácter alfanumérico golpea una cinta de tinta para
transferir un patrón del carácter en la tecla al papel. En un
procesador de texto informático, un mapa de bits de un carácter
alfanumérico, que comprende una serie de bits coloreados, puede
utilizarse para generar texto en una pantalla o una impresora. En
el ordenador, un mapa de bits puede ajustarse a escala para hacer
que el carácter parezca más grande o más pequeño, es decir, para
aumentar el tamaño de fuente cuando se imprime en un monitor o una
pantalla de visualización. El ajuste a escala informático es mucho
más sencillo que en un entorno mecánico y es una ventaja de un
procesador de texto informático.
En la figura 4A, se muestra un ajuste 300 a
escala de mapa de bits de un mapa 302 de bits de un carácter
"a". El mapa 302 de bits consiste en un número de bits blancos
y negros en una disposición en un patrón del carácter "a." Los
bits pueden proporcionar información a un dispositivo de
visualización para encender o apagar ciertos píxeles o puede
proporcionar información a una impresora respecto a dónde deberían
ubicarse las gotas de tinta. Cuando se imprime el mapa de bits sin
ajuste 306 a escala en una pantalla o impresora con suficiente
resolución para visualizar el mapa de bits, el patrón de carácter
tiene la misma apariencia que en el mapa de bits. Sin embargo,
cuando se aumenta la escala 308 del carácter, se disminuye la escala
304 o se imprime en una pantalla con una resolución insuficiente,
es posible tener que añadir o quitar píxeles para visualizar el
carácter "a".
Añadir o quitar bits en el mapa de bits puede
alterar el patrón de mapa de bits visualizado, según se muestra en
la figura 4A, de modo que se degrada la legibilidad del texto. El
patrón de mapa de bits se degrada porque la información de mapa de
bits no contiene información relativa a la relación de los bits
entre sí respecto al patrón generado por los bits. Este problema de
degradación de patrón de mapas de bits cuando el ajuste a escala es
exclusivo de visualizaciones informáticas pixeladas y no es un
problema cuando se utiliza composición tipográfica mecánica para
imprimir en papel.
En la figura 4B se muestra ajuste a escala con
fuentes 310 vectoriales, que es una solución al problema de ajuste
a escala. En una fuente 312 vectorial, la información relativa al
patrón del carácter se incluye en la información de fuente. Cuando
se genera una fuente vectorial, se envía información 314 de fuente y
de ajuste a escala a un rasterizador 318 en el dispositivo
informático. El rasterizador es un software que está incrustado en
el sistema operativo. Reúne información sobre el tamaño, color,
orientación y ubicación de la fuente vectorial y convierte la
información en un mapa de bits que puede entender la tarjeta gráfica
y el monitor o una impresora. Por tanto, con una fuente vectorial,
tal como una fuente TrueType, cuando se utiliza un ajuste 320 a
escala disminuido, ningún ajuste 322 a escala o un ajuste 324 a
escala aumentado, puede mantenerse la calidad del carácter
generado.
La información de fuente y de ajuste a escala
puede incluir también información de hinting para disponer
bits cuando la escala de la fuente es bastante pequeña. El
hinting es un proceso que hace que la apariencia de una
fuente que se ha disminuido mediante ajuste a escala a un pequeño
tamaño sea la mejor. En lugar de utilizar simplemente el perfil
vectorial para determinar ubicaciones de píxel, los códigos de
hinting garantizan que los caracteres se alinean bien con
los píxeles de modo que la fuente parece lo más homogénea y legible
posible. Los procedimientos de hinting y vectoriales, así
como otros procedimientos conocidos en las técnicas de
procesamiento de textos, pueden utilizarse con las fuentes y la
generación de texto en 3D de la presente invención. Sin embargo,
como en el ejemplo de ajuste a escala de mapa de bits descrito con
respecto a las figuras 4A y 4B, estos procedimientos pueden no ser
trasladables directamente a renderización gráfica en 3D y pueden
tener que adaptarse para los requisitos exclusivos de un sistema de
renderización gráfica en 3D. Algunos detalles de renderización
gráfica en 3D se han descrito con respecto a la figura 1. Detalles
adicionales de renderización gráfica en 3D en el contexto de
generación de texto se describen con respecto a la figura 4C y
4D.
En la figura 4C, se describe el curso 325 de
ejecución de renderización gráfica en 3D para una realización de la
presente invención. En el curso 325 de ejecución de renderización
gráfica en 3D, una entrada en el curso de ejecución pueden ser
vértices para una pluralidad de formas, es decir, objetos 326 en 3D.
Como se describe con respecto a la figura 1, las formas pueden
discretizarse como varios polígonos triangulares definidos por los
vértices. Se hace referencia a los datos de vértice como datos
primitivos. La salida del curso de ejecución puede ser una
disposición 340 de mapa de bits que pueden dibujarse en una pantalla
de visualización.
Los datos primitivos pueden operarse mediante
varias transformaciones 332. Estas transformaciones incluyen una
transformación de visión, una transformación de modelización, una
transformación de proyección y una transformación de ventana de
visualización. La transformación de visión sitúa la cámara virtual
en el entorno de juego en 3D. La transformación de visión define un
volumen de espacio en el entorno de juego en 3D que se captura por
la cámara virtual. Los vértices que queden fuera de este volumen de
espacio pueden recortarse cuando se renderiza una fotografía del
entorno de juego en 3D.
La transformación de modelización sitúa los
objetos 326 en 3D en el entorno de juego en 3D incluyendo
rotaciones, traslaciones y ajuste a escala de los objetos. Los
objetos de texto en 3D de la presente invención son un tipo de
objeto en 3D y pueden manipularse utilizando la transformación de
modelización. La transformación de proyección es análoga a
seleccionar una lente para la cámara virtual. Afecta al campo de
visión (tamaño del volumen de visión) así como a cómo se proyectan
los objetos sobre la pantalla. Por ejemplo, la transformación de
proyección puede dar como resultado el recorte de objetos no en el
volumen de visión definido por la transformación de proyección. La
transformación de ventana de visualización especifica el tamaño de
pantalla que está disponible para la visualización de una
fotografía tomada en el entorno de juego en 3D. Utilizando la
transformación de ventana de visualización, la fotografía puede
ampliarse, encogerse o estirarse. Las transformaciones de
proyección y de ventana de visualización determinan cómo una escena
se mapea con la pantalla de visualización. El usuario 330 puede
definir estas transformaciones en función del tiempo.
Como resultado de las transformaciones de visión
y modelización se generan nuevos datos de vértice para las
superficies poligonales triangulares. Además, se generan coordenadas
de textura para cada una de las superficies poligonales. Diversos
patrones de color, denominadas texturas, pueden mapearse con las
superficies poligonales triangulares. La textura puede
representarse como una disposición de valores de color para cada
posición en la disposición. Las posiciones en la disposición con
sus valores de color asociados se denominan a menudo téxeles.
En una realización de la presente invención, las
texturas que representan diversos caracteres en una fuente pueden
mapearse con una o más superficies poligonales para generar un
patrón de una cadena de texto especificada en la superficie 336
poligonal (véanse las figuras 7 y 8A). Las coordenadas de textura se
utilizan para mapear las texturas con superficies poligonales. En
otra realización, pueden definirse fuentes como objetos en 3D en el
entorno de juego en 3D utilizando varios vértices. En este caso,
puesto que la fuente se modeliza en 3D, las texturas mapeadas con
la fuente pueden ser más sencillas, tales como un color plano, en
lugar de un patrón de una fuente.
En la rasterización 334, pueden convertirse
datos de píxel y geométricos en fragmentos. Cada fragmento puede
corresponder a un píxel en la memoria intermedia de cuadros. Se
consideran punteados de líneas y polígonos, ancho de línea, tamaño
de punto, modelo de sombreado y cálculos de cobertura para ayudar al
suavizado de los bordes cuando los vértices están conectados en
líneas o se calculan los píxeles interiores para un polígono
relleno. Se asignan valores de color y profundidad para cada
cuadrado de fragmento. Para cada fragmento pueden realizarse
operaciones adicionales, tales como generar un elemento 338 de
téxel, determinadas por los mapas de textura, para cada
fragmento.
Como se describe con respecto a la figura 4D, el
mapa de téxeles puede no estar alineado con los fragmentos
generados después de la rasterización. En este caso, los téxeles
pueden magnificarse o minimizarse creando distorsiones. Además,
otras operaciones, tales como mezclado e interpolación
(dithering), pueden realizarse en cada fragmento, lo que
puede también introducir distorsiones. Estas distorsiones pueden
afectar a la calidad del texto renderizado.
Una vez procesado el fragmento, el píxel
restante puede visualizarse en la pantalla 340 de visualización.
Por ejemplo, se muestra una disposición de píxeles 13 x 16 en la que
un cubo 326 se mapea con una textura de un carácter 336 "a".
La baja resolución de la ventana de visualización 13x16 da como
resultado un cubo y el perfil del carácter "a" relativamente
rudimentarios.
Normalmente, el hardware/software de
renderización gráfica en 3D no proporciona utilidades para generar
texto, tales como un procesador de texto, y los procesadores de
texto comerciales no son compatibles con sistemas de renderización
gráfica en 3D. Todo el texto en el entorno de juego en 3D se genera
en el contexto de definir objetos en 3D, operando sobre los
vértices de estos objetos a través de diversas transformaciones y
aplicando texturas a los objetos que permita el sistema de
renderización gráfica en 3D. El hardware/software de renderización
gráfica en 3D puede procesar todos los polígonos y sus texturas
asociadas de una manera similar que es independiente de si los
polígonos y texturas se utilizan para visualizar texto o no. Al
sistema de renderización gráfica en 3D no le preocupa si el texto
renderizado es legible o no. Es responsabilidad del usuario
proporcionar procedimientos, tales como reglas de composición
tipográfica en 3D, que sean compatibles con un sistema de
renderización gráfica en 3D particular y que produzcan texto
legible.
En la presente invención se proporcionan
procedimientos para renderizar texto legible en un entorno de
renderización gráfica en 3D. Se consideran cuestiones tales como
minimizar el número de vértices procesados, lo que es importante en
lo que respecta a tiempos de renderización, y minimizar distorsiones
resultantes de ajustar a escala mapas de textura y transformaciones
(es decir, las transformaciones de visión, modelización, proyección
y ventana de visualización). Además, se consideran procedimientos
para aprovecharse de los atributos exclusivos del entorno de
renderización gráfica en 3D, tales como la capacidad de escribir
texto en páginas de texto en 3D no rectangulares, variables en el
tiempo. En un procesador de textos típico, el texto siempre se
escribe en una página rectangular en 2D en la que la forma de la
página no varía con el tiempo.
Según se describe con respecto a 4A a 4C, hay
muchas funciones de composición tipográfica que han de adaptarse a
los requisitos exclusivos de un sistema de renderización gráfica en
3D para producir salida de texto de alta calidad. En una
realización de la presente invención, pueden mapearse texturas con
patrones de fuente con polígonos para generar cadenas de texto. El
mapeo de las texturas con los polígonos se ve afectado por los
procedimientos utilizados en el sistema de renderización gráfica en
3D. Las texturas pueden utilizarse para rellenar con un color o un
patrón de color una cara de un polígono definida en 3D por varios
vértices.
En una realización de la presente, las texturas
de fuente se definen como una disposición de téxeles. Los téxeles
se definen en coordenadas paramétricas no dimensionales que se
mapean con polígonos en el entorno de juego en 3D utilizando las
coordenadas de textura de los vértices. Después de aplicar diversas
transformaciones a los primitivos (vértices de los objetos
definidos en el entorno de juego en 3D), pueden generarse las
coordenadas de textura. A continuación, puede rasterizarse una
fotografía inicial del entorno de juego en 3D en fragmentos (véase
la figura 4C). Después de realizar diversas operaciones sobre los
fragmentos, tales como aplicar texturas, los fragmentos pueden
convertirse en píxeles en la memoria intermedia de cuadros para la
visualización en la pantalla de visualización.
Como se ilustra en la figura 4D, el mapeo de
téxeles con fragmentos puede no producirse en modo uno a uno. En el
proceso de aplicación de los téxeles en una textura a los fragmentos
en el sistema de renderización gráfica en 3D, pueden mapearse
varios téxeles en la textura con un único fragmento o puede mapearse
un único téxel con varios fragmentos. Estos procesos se denominan
respectivamente minificación y magnificación.
Como ejemplo de minificación, en la figura 4D,
cuatro téxeles en la textura 346 se mapean con un único fragmento
342. La información procedente de los cuatro téxeles se interpola en
cierto modo para proporcionar la información de textura para el
fragmento 342. En el caso de una textura que visualiza patrones de
carácter. La interpolación puede dar como resultado la pérdida de
información y una degradación de la legibilidad del texto
renderizado utilizando los téxeles.
Como ejemplo de magnificación, en la figura 4D,
información procedente de pequeñas partes de cuatro téxeles en la
textura 346 se magnifica a nueve fragmentos. La información
procedente de los cuatro téxeles se interpola en cierto modo para
proporcionar información de textura para los nueve fragmentos 344.
La interpolación puede añadir información que degrada la
legibilidad del texto visualizado. En la presente invención, se
describen procedimientos que intentan minimizar la degradación en
la legibilidad de texto resultante de la interpolación de texturas
de fuente a las superficies de objetos en 3D en el entorno de juego
en 3D. Estos procedimientos se describen con respecto a las figuras
5A a 8B.
Antes de proporcionar detalles de los
procedimientos de renderización de texto de la presente invención,
los procedimientos de renderización de texto se describen en un
nivel más alto en el contexto de renderización en 3D en un sistema
de renderización gráfica en 3D utilizando los diagramas de flujo de
las figuras 5A y 5B. La figura 5A es un diagrama de bloques que
describe un procedimiento para generar un entorno de juego en 3D
con objetos de texto en 3D. Los objetos de texto en 3D se refieren a
objetos en 3D en el entorno de juego en 3D utilizados para generar
una cadena de texto cuando se renderizan en la pantalla de
visualización. Los objetos de texto en 3D pueden incluir, pero no
se limitan a, objetos en 3D texturizados con patrones que
representan fuentes, objetos en 3D en forma de letras o
combinaciones de las mismas.
En 150, para un estado de presentación, se
determina una configuración de un entorno de juego en 3D para el
estado. La configuración puede depender del guión visual/de audio
desarrollado para el estado (véase la figura 3). El estado de
presentación puede comprender una secuencia de fotografías que se
renderizan en la pantalla de visualización a partir del entorno de
juego en 3D. En general, la información transmitida en el estado de
presentación dependerá de la finalidad del estado de presentación
(por ejemplo, presentación de resultado del juego, presentación de
juego de bonificación, revisión de la historia del juego,
mantenimiento, etc.). El estado de presentación puede ser en
respuesta a un
evento(s) particular(es) que se produce(n) en la máquina de juego, tales como que un jugador inicie un juego de azar.
evento(s) particular(es) que se produce(n) en la máquina de juego, tales como que un jugador inicie un juego de azar.
En 152, para el entorno de juego en 3D
determinado, los tipos y ubicaciones/orientación iniciales de
objetos en 3D que incluyen texturas se especifican en función del
tiempo. Los objetos en 3D pueden comprender objetos de texto en 3D
que están adaptados para transmitir información textual sobre la
pantalla de visualización durante el estado de presentación.
Durante el estado de presentación, los tipos y números de objetos
pueden variar en función del tiempo en el entorno de juego en 3D.
En 154, las transformaciones de visión, modelización, proyección y
ventana de visualización para el estado de presentación se
especifican en función del tiempo. Estas transformaciones, según se
describe con respecto a la figura 4C, afectan a la salida del
proceso de renderización.
En 158, se ensamblan los tipos de objeto en 3D y
texturas especificados. En 160, para cada textura u objeto
especificado, cuando el objeto en 3D o la textura está disponible en
memoria, puede cargarse en 164. En 160, cuando el objeto en 3D o
textura no está disponible puede generarse en 162. Por ejemplo,
pueden almacenarse en memoria modelos paramétricos de objetos en 3D
o texturas que permiten generar los objetos en 3D o texturas
parametrizados según sea necesario. En 168, para el estado de
presentación, se renderiza una secuencia de fotografías. El proceso
de renderización, según se describe con respecto a la figura 4C,
puede implicar aplicar las transformaciones de visión,
modelización, proyección y ventana de visualización en los objetos
ensamblados y añadir las texturas especificadas a los objetos.
En la figura 5B, se proporciona un diagrama de
flujo con detalles adicionales de la renderización de texto en 3D.
En 176, se cargan en la máquina de juego geometrías de fuente y
texturas de fuente disponibles para su uso en la generación de
objetos de texto en 3D. Las geometrías y texturas pueden comprender
parámetros que permiten generar las geometrías y texturas sobre la
marcha o datos que especifican realmente la geometría de fuente o
las texturas de fuente. La generación de textura de fuente para una
realización de la presente invención se describe con más detalle
con respecto a las figuras 6A a D.
En 178, se especifican las cadenas de texto,
páginas de texto y órdenes de composición tipográfica para objetos
de texto en 3D. La cadena de texto puede ser una cadena de
caracteres que va a renderizarse en el entorno de juego en 3D
utilizando texturas de fuente, geometrías de fuente o combinaciones
de ambas. La página de texto puede ser una superficie curva en 3D
utilizada para guiar la colocación de texto en el entorno de juego
en 3D. Los límites, forma, color y posición de la página de texto
pueden variar en función del tiempo. Las órdenes de composición
tipográfica pueden utilizarse para especificar operaciones que han
de realizarse sobre las fuentes, tales como ajuste a escala,
espaciado entre líneas, espaciado entre caracteres, justificación y
centrado de los caracteres en la cadena de texto en la página de
texto en 3D, u operaciones que han de realizarse sobre la página de
texto en 3D, tales como cambiar la posición y la forma de la página
de texto en 3D en función del tiempo.
Las órdenes de composición tipográfica pueden
incluir también aplicar reglas de composición tipográfica que no
están controladas por el usuario. Estas reglas de composición
tipográfica pueden aplicarse para mejorar la calidad del texto
renderizado a partir de los objetos de juego en 3D. Ejemplos de
estas reglas de composición tipográfica pueden incluir, pero no se
limitan a: 1) aplicar hinting a caracteres de escala pequeña,
2) mejorar el "color" de texto que va a renderizarse lo que
puede implicar contrastes entre pesos de asta ancha y delgada, el
tamaño del espaciado interno del carácter, las magnitudes del
espacio entre líneas y entre caracteres, el dentado de trazos
diagonales y espesor global de un trazo, 3) garantizar que cada
glifo es legible, 4) determinar el espaciado entre caracteres y
palabras para maximizar la regularidad de espaciado, 5) ajustar el
peso de los "trazos" utilizados para dibujar los glifos y 6)
ajustar las alineaciones verticales y horizontales de caracteres en
una cadena de texto. Las funciones de composición tipográfica pueden
verse afectadas por las características de la página de texto
definidas en 178.
En 180, se efectúan las funciones de composición
tipográfica automática o especificada por el usuario. En 182, el
objeto de texto en 3D se genera en el entorno de juego en 3D. En
184, se generan fotografías del objeto de texto en 3D, que pueden
visualizarse en la pantalla de visualización.
Pueden generarse y cargarse en la máquina de
juego texturas de fuente y geometrías de fuente utilizadas para
generar objetos de texto en 3D como parte de una biblioteca de
texturas y de geometrías de fuente almacenada en un dispositivo de
memoria en la máquina de juego. En las figuras 6A a 6D, se describe
la generación de texturas de fuente, incluyendo la especificación
de información de fuente utilizada para la composición tipográfica
en una realización de la presente invención. Las texturas de fuente
pueden utilizarse para generar, componer tipográficamente y
renderizar objetos de texto en 3D, lo que se describe con respecto a
las figuras 7 y 8A.
En la figura 6A, se describen la generación 400
de un archivo de fuente y la simulación de cadena de texto
renderizada en un sistema de gráficos en 3D. El archivo de fuente
puede comprender texturas utilizadas para representar texto en el
entorno de juego en 3D e información de fuente/carácter que se
utiliza para operaciones de composición tipográfica. Los archivos
de fuente pueden crearse utilizando una aplicación 408 de interfaz
de fuente.
Pueden cargarse, verse, editarse y guardarse
fuentes en el archivo 410 de fuente, utilizando la aplicación 408
de interfaz de fuente. Utilizando un programa de generación de
fuente apropiado con la aplicación de interfaz, un artista puede
ser capaz de importar imágenes de caracteres denominadas glifos a
partir de fuentes diferentes. Puede introducirse información sobre
la fuente y los caracteres individuales y a continuación guardarse
como un archivo 410 de fuente que utilizará la máquina de juego. El
archivo de fuente puede formatearse para permitir a la máquina de
juego generar un objeto de texto en 3D en tiempo de ejecución que
utiliza la fuente particular representada en el archivo 410 de
fuente.
Pueden utilizarse datos 402 de generación de
fuente introducidos en la aplicación 408 de interfaz para generar
un archivo 410 de fuente. La generación de datos de fuente puede
incluir datos 404 de fuente iniciales, tales como mapas de bits de
fuentes. Por ejemplo, los datos de fuente iniciales pueden incluir,
pero no se limita a, glifos, tiras de glifo y fuentes TrueType en
un formato de imagen Targa o un formato de fuente TrueType. El
diseñador de fuente puede modificar los datos 404 de fuente
iniciales ajustando la configuración de fuente y carácter para cada
fuente 406. El diseñador puede ajustar estas configuraciones 406 de
fuente y carácter para mejorar la calidad del texto
renderizado.
En una realización de la presente invención, la
aplicación 408 de interfaz de fuente puede acoplarse a un simulador
422 de texto en 3D. Un diseñador de fuente puede utilizar el
simulador 422 de texto en 3D para simular texto en 3D utilizando un
archivo de fuente generado y ajustar las propiedades del archivo de
fuente basándose en las calidades de visualización del texto
renderizado a partir de una fuente seleccionada.
El simulador 422 de texto en 3D puede comprender
un generador 412 de objetos de texto en 3D que genera objetos de
texto en 3D utilizando una o más fuentes disponibles. El diseñador
puede controlar propiedades de la simulación especificando una
cadena de texto, una página de texto en 3D y órdenes de composición
tipográfica. El objeto de texto en 3D puede renderizarse utilizando
un simulador de renderización en 3D que simula la renderización de
texto en un dispositivo de juego objetivo, tal como un tipo
particular de máquina de juego.
El objeto de texto en 3D puede renderizarse por
sí mismo o en el contexto de otros objetos 418 en 3D. Por ejemplo,
si el objeto de texto en 3D forma parte de una presentación de
resultado del juego, entonces otros objetos en 3D utilizados en la
presentación del resultado del juego puede renderizarse también con
los objetos de texto en 3D. El texto 420 renderizado puede
entregarse como salida a una memoria intermedia de cuadros para la
visualización en una pantalla de visualización.
En las figuras 6B y 6C, se describen con más
detalle tipos de información que pueden almacenarse en el archivo
de fuente. Se analizan dos categorías de datos, propiedades 425 de
fuente (véase la figura 6B) y propiedades 440 de carácter (véase la
figura 6C). En la figura 6D, se describen propiedades de una textura
de fuente que contiene glifos de carácter definidos en una fuente
470.
Pueden utilizarse datos de fuente o propiedades
425 de fuente para describir todo el juego de caracteres y
normalmente se aplican a todos los caracteres en una fuente. Las
propiedades de fuente pueden comprender, pero no se limitan a, las
siguientes propiedades. El nombre de fuente puede ser una cadena
ANSI que puede utilizarse para conferir al archivo de fuente una
descripción extendida. Puede ser lo que quiera el desarrollador,
pero normalmente se utiliza para almacenar el nombre completo de la
fuente como "Arial Negrita 24pt". Arial se refiere a un estilo
de fuente, negrita se refiere a un espesor de las líneas de los
caracteres y 24pt es el tamaño de la fuente. Pueden utilizarse
muchos estilos de fuentes diferentes, que se conocen bien en el
procesamiento de textos y técnicas de preparación de documentos, con
la presente invención y la presente invención no se limita a Arial.
A continuación se describen más detalles de tipos de fuente y su
información asociada.
Tipo de letra se refiere a atributos gráficos
específicos de caracteres y símbolos en la fuente. Un nombre de
tipo de letra de fuente puede utilizarse para describir el tema
artístico o espesor de los trazos gruesos y delgados que se
utilizan para los caracteres. El uso de remates en una fuente puede
también ser un factor para el nombre del tipo de letra. El remate
es la línea horizontal corta en los extremos de un trazo no
conectado en un carácter. El estilo puede utilizarse para definir
el peso e inclinación de una fuente. Utilizar diferentes valores de
pesos e inclinación puede cambiar radicalmente la apariencia de
carácter en una fuente. El peso de fuente representa el ancho de
trazo utilizado en todos los caracteres y símbolos. La siguiente
lista muestra varios nombres, dispuestos desde la más fina hasta la
más pesada, que pueden utilizarse para describir una fuente.
\vskip1.000000\baselineskip
\vskip1.000000\baselineskip
El atributo de inclinación se refiere al aspecto
vertical de los caracteres en la fuente. Términos tales como
romana, oblicua y cursiva se utilizan para categorizar los
diferentes modos en que puede conseguirse la inclinación. Las
fuentes romanas son verticales sin ninguna inclinación, mientras que
los caracteres oblicuos están inclinados aplicando una
transformación de desviación tangencial a los mismos. Originalmente,
los caracteres a los que se asigna una fuente cursiva están
inclinados y parece como si fuesen una creación artística.
La línea base de fuente proporciona la posición
en la que está colocada la parte inferior de un carácter dentro de
la celda de fuente. Con este valor, una cadena de caracteres o
símbolos con diferentes alturas y diferentes tamaños de fuente
pueden estar alineados verticalmente. La elevación es una medida de
hasta dónde se extiende el carácter por encima de la línea base de
fuente. Este valor también incluye cualquier marca de acento de un
carácter. El descenso es una medida de hasta dónde cae el carácter
por debajo de la línea base de fuente. Este valor puede no incluir
el valor de interlineado externo, que es la cantidad de espacio que
el artista diseñó para que se añadiera entre filas de cadenas de
caracteres.
El atributo de tamaño puede utilizarse para
definir el ancho y altura máximos necesarios para contener el
carácter más grande en la fuente. Este valor no especifica ningún
tamaño que se corresponde con un carácter o símbolo específico en
la fuente, sino más bien una zona en la que podría encajar cualquier
carácter en la fuente. A esta zona, o cuadro virtual, se hace
referencia también como celda de carácter o celda de símbolo. La
colocación del carácter dentro de la celda puede incluir también
cómo el carácter descansa sobre la línea base de la fuente. Esto
puede ser importante debido a que la altura global de la fuente está
determinada no sólo por la altura de un carácter, sino también por
su elevación y descenso desde la línea base. El ancho de fuente
está determinado por el carácter o símbolo más ancho. Por tanto, el
tamaño de fuente está definido por el ancho y la altura de celda de
carácter.
El tipo de fuente puede utilizarse para indicar
el tipo de fuente almacenado en el archivo. Algunos ejemplos de
tipos de fuente son texturizada en 2D, texturizada en 3D y
vectorial. En fuente texturizada en 2D, los caracteres de esta
fuente pueden ser rectángulos planos texturizados con un mapa de
bits en 2D que contiene el glifo de carácter. En una fuente
texturizada en 3D, los caracteres de esta fuente pueden realizarse a
partir de muchos polígonos en 3D y pueden texturizarse para
proporcionar efectos de color y visuales. En una fuente vectorial,
los caracteres en esta fuente pueden generarse a partir de curvas de
Bezier o B-splines u otros tipos de
ecuaciones matemáticas. Las texturas pueden aplicarse entonces para
conferir efectos de color y visuales a la fuente. Combinaciones de
estas fuentes pueden utilizarse con la invención actual.
El ancho es una propiedad de fuente. Puede ser
un valor que contiene el ancho de carácter máximo de fuente. Este
valor se utiliza para crear espaciado entre caracteres no
proporcionado en tiempo de ejecución. Si los caracteres tienen
diferentes anchos y espaciado, se denomina como que tiene un
espaciado proporcional. Puede considerarse que una fuente no es
proporcional si todos sus caracteres tienen el mismo ancho y
espaciado. La máquina de juego puede tener la capacidad de
convertir una fuente proporcional en una no proporcional en tiempo
de ejecución utilizando este valor y otra información proporcionada
por el desarrollador.
La altura 426 es una propiedad de fuente. El
valor de altura puede utilizarse para describir la altura de la
fuente. El valor de la propiedad de altura puede ser mayor que el
carácter más alto en la fuente. Todos los caracteres en la fuente
son iguales o más bajos que la altura de fuente. En una realización
de las reglas de composición tipográfica con la presente invención,
todos los caracteres deben encajar dentro de la propiedad de altura
de fuente una vez colocado el carácter. Por tanto, aunque el glifo
de carácter, tal como 430, puede tener una altura menor que la de
altura de fuente, tal como 432, la altura total de carácter no debe
exceder la altura de fuente. La altura del carácter puede incluir
su colocación vertical sobre la línea 428 base. La propiedad 426 de
altura puede utilizarse también en justificación de texto y cálculos
multilínea.
La línea 428 base es una propiedad de fuente. La
línea base puede ser una punto de referencia vertical que se
utiliza para colocar cada carácter. La mayoría de los caracteres
normalmente descansan sobre la línea base y unos pocos se extienden
por debajo de la línea base, como los caracteres "g" o
"y". El espaciado entre líneas es una propiedad 434 de fuente.
El valor del espaciado entre líneas puede utilizarse para crear
espacio entre múltiples líneas de texto para objetos de texto en 3D
con múltiples líneas. Por ejemplo, el espaciado 434 entre líneas es
la distancia entre la línea de texto que comienza con el carácter
"M" y la segunda línea que contiene la cadena de texto,
"Hello" 436.
"Primer Símbolo" es una propiedad de
fuente. Puede hacerse referencia también a los caracteres en la
fuente como símbolos. La propiedad de primer símbolo define el
código ANSI para el primer carácter en la fuente. "Ultimo
Símbolo" es una propiedad de fuente que define el código ANSI
para el último carácter en la fuente. "Cuenta de Símbolo" es
una propiedad de fuente. Cuenta de Símbolo es varios caracteres
definidos en la fuente, tal como 255.
La textura puede ser una propiedad de fuente
(véase la figura 6D). La propiedad de textura puede ser una
disposición de datos de píxel (o un mapa de bits en 2D) que
contiene todos los glifos de carácter o datos visuales que pueden
aplicarse a los caracteres en la fuente. Información acerca del
ancho y la altura de textura en píxeles y el formato de píxel de la
textura pueden almacenarse también en esta propiedad. Pueden existir
múltiples texturas en una fuente y cada textura contiene todos los
glifos de carácter. Si la fuente tiene capacidades de mapeo MIP
entonces todos los mapas MIP se almacenan también en la propiedad de
textura. Todos los datos de glifo de carácter animado pueden
almacenarse también en la propiedad de textura. El mapeo MIP es una
técnica de texturización que se utiliza normalmente para animación
en 3D en juegos y recorridos simulados de CAD. Para crear un
escenario que contenga polígonos con ángulos agudos que desaparecen
en la distancia, el mapeado MIP mezcla versiones de alta y baja
resolución de la misma textura para reducir el efecto dentado que de
otro modo aparecería.
El segundo conjunto de propiedades almacenadas
en el archivo de fuente puede ir dirigido a los caracteres
individuales que constituyen la fuente. Cada carácter puede tener un
conjunto de propiedades exclusivo que describe la apariencia y
colocación visual del carácter. Las propiedades de carácter se
describen con respecto a la figura 6C. El ancho 444 puede ser una
propiedad de carácter. El ancho 444 puede ser el valor que es el
ancho del glifo de carácter o el espacio horizontal máximo del
aspecto visual del carácter. Este valor puede ser también el ancho
de la geometría en 3D o datos de curva de carácter dependiendo de la
propiedad de tipo de fuente.
La altura puede ser una propiedad de carácter.
La altura 448 puede ser un valor que es la altura del glifo de
carácter o el espacio vertical máximo del aspecto visual del
carácter. Este valor puede ser también la altura de la geometría en
3D o datos de curva de carácter que dependen de la propiedad de tipo
de fuente. El origen X y el origen Y 442 pueden ser también una
propiedad de carácter. El origen 450 x y el origen 448 y pueden
especificar la posición de partida horizontal y vertical de un
carácter respecto a la posición del cursor. El cursor 446 puede ser
un punto de referencia utilizado para calcular dónde ha de colocarse
el próximo carácter utilizando reglas de composición tipográfica
utilizadas por la máquina de juego. A medida que se colocan los
caracteres a lo largo de la línea 428 base, el cursor puede avanzar
para indicar la siguiente posición de carácter.
El avance 452 en X y el avance en Y (no
mostrados) pueden ser una propiedad de carácter. El avance en x y
en y puede especificar la cantidad de desplazamiento horizontal y
vertical del cursor desde su ubicación actual. En esencia, estos
valores pueden añadirse a la posición de cursor actual para moverlo
hasta el extremo del carácter actual. Aplicando esta propiedad
puede recolocar el cursor para la siguiente colocación de carácter
y garantizar que el siguiente carácter no obstruirá el carácter
actual.
Las coordenadas U y V de textura, ilustradas en
la figura 6D, pueden ser una propiedad de carácter. La propiedad de
textura U y V puede utilizarse para ubicar el glifo de carácter a
partir de la propiedad 470 de textura de fuente. Puesto que la
propiedad de textura puede contener todos los datos de glifo de
carácter en una textura, cada glifo de carácter puede ubicarse en
una posición diferente dentro del mapa de bits de textura. Junto
con las propiedades de ancho y altura de carácter, los datos de
glifo de carácter pueden ubicarse y extraerse de la textura. En una
realización, las coordenadas U y V para una textura varían de 0 a 1
para U y de 0 a 1 para V.
Las coordenadas UV de textura pueden especificar
un origen (0,0) de textura, un origen UV de textura, tal como 478,
para cada glifo en coordenadas U y V, tales como 474 y 476. Las
coordenadas UV de textura pueden comprender también un ancho 482 de
glifo y una altura 480 de glifo en coordenadas U y V. Con estas
coordenadas, se define un rectángulo en coordenadas U y V que
contiene cada carácter en la textura.
La geometría en 3D puede ser una propiedad de
carácter. Esta propiedad puede incluir datos para vértices, caras y
normas que constituyen la geometría en 3D del carácter. Todos los
datos de geometría animada pueden almacenarse también en esta
propiedad. Las curvas puede ser una propiedad de carácter. Esta
propiedad puede incluir todos los datos de curva, lo que describe
la forma del carácter. Todos los datos de curva animada pueden
almacenarse también en esta propiedad. Las curvas son normalmente
Bezier o B-spline pero pueden consistir en
otros tipos de ecuaciones matemáticas que representan el carácter. A
continuación, la generación caracteres de texto en 3D se describe
utilizando las propiedades de fuente y de carácter descritas con
respecto a las figuras 6A a 6D.
En la figura 7 se muestra la generación
caracteres de texto en 3D utilizando polígonos triangulares. La
presente invención no se limita al procedimiento descrito con
respecto a la figura 7, que se proporciona únicamente con fines
ilustrativos. Hay dos partes que pueden utilizarse para generar un
carácter. La primera parte es definir un polígono rectangular que
representa un área visible del carácter o la superficie sólida que
puede verse. La segunda parte asigna una imagen de textura del
carácter al polígono. La imagen de textura contiene la imagen de
píxel detallada actual del carácter o la forma del carácter. Cada
carácter en la cadena de texto puede estar comprendido por su
propio conjunto de vértices, caras y coordenadas de textura.
En el ejemplo mostrado en la figura 7 se muestra
un objeto de texto en 3D con la cadena de texto de "Win" 525 y
su zona 530 de visualización. La zona de visualización es resultado
de renderizar la página de texto en la que están dibujados los
caracteres de texto en 3D. En la figura 7 se utiliza una página de
texto rectangular. Se describen páginas de texto más complejas con
respecto a las figuras 8A y 8B. En la presente invención, un módulo
de software denominado, "Actor string", que puede formar parte
de un módulo de software denominado "ActorText" puede
implementar procedimientos utilizados para generar cadenas de texto
en 3D.
Para generar la cadena 525 de texto "Win",
el controlador de juego maestro puede recuperar el primer carácter
en la cadena y buscar su información correspondiente almacenada en
el archivo de fuente. Por ejemplo, las coordenadas 502, 504, 506 y
508 U y V de textura pueden recuperarse de la textura 506 de fuente.
A continuación, puede crearse un polígono para el carácter
"W". Utilizando el ancho y la altura del carácter W, el
polígono pueden definirse por los cuatro vértices etiquetados
Vértice 1 a Vértice 4, 514, 516, 518 y 520, respectivamente. Los
cuatro vértices están definidos en las coordenadas del entorno de
juego en 3D. El polígono puede estar comprendido por dos caras o
superficies triangulares. La Cara 1 se define a partir del Vértice
1, Vértice 2 y Vértice 4 y la Cara 2 a partir del Vértice 2,
Vértice 3 y Vértice 4. Los vértices que constituyen cada carácter
tienen también coordenadas de textura correspondientes (por ejemplo,
502, 504, 508 y 510).
Las coordenadas de textura pueden utilizarse
para enlazar una ubicación en una imagen de textura (mapa de bits)
con vértices en un polígono, esencialmente mapeando un trozo de la
imagen de textura con el polígono. Las coordenadas de textura se
especifican en (u, v) donde (0,0) hace referencia a superior
izquierda de la imagen de textura. La u es la posición horizontal y
la v es la posición vertical dentro de la imagen de textura. Las
coordenadas de textura de los vértices pueden calcularse utilizando
las coordenadas de textura de carácter, tales como el ancho y la
altura del carácter, almacenadas en el archivo de fuente (véase la
figura 6D). Utilizando esta información puede ensamblarse un objeto
de texto en 3D para el carácter "W" individual en el entorno
de juego en 3D y renderizarse en la pantalla de visualización. El
proceso de renderización puede repetirse para cada carácter
definido en la propiedad de cadena de texto. Para determinar la
ubicación del siguiente carácter en la cadena de texto en el objeto
de texto en 3D, se utilizan el avance en x y el avance en y a
partir de las propiedades de carácter del carácter anterior, es
decir, el carácter "W" en este ejemplo.
Una ventaja de utilizar la información de
carácter a partir del archivo de textura de fuente para definir las
dimensiones del polígono para recibir la textura de carácter es
minimizar la magnificación o minificación de los téxeles en la
textura durante la renderización. Según se describe con respecto a
la figura 4D, la magnificación o minificación puede dar como
resultado interpolaciones que degradan la calidad del patrón sobre
la textura cuando se renderiza. En esta realización, el tamaño
inicial del polígono utilizado para la textura se selecciona para
ajustarse a la textura de carácter, lo que minimiza los errores de
interpolación durante la renderización. Además, a partir de sus
tamaños óptimos iniciales, los polígonos para los caracteres pueden
estirarse, encogerse o manipularse hasta cierto punto sin demasiada
degradación de la calidad del texto renderizado.
En esta realización, si los polígonos se ajustan
a escala demasiado desde su tamaño inicial, la calidad del texto
renderizado puede degradarse. En este caso, puede ser deseable
utilizar una textura de fuente más próxima en tamaño al tamaño de
la fuente después del ajuste a escala o aplicar una técnica tal como
un mapeo MIP. La máquina de juego puede adaptarse para seleccionar
una textura de fuente de un tamaño particular para que coincida con
un tamaño de fuente deseado y minimizar cualquier error de ajuste a
escala. Así, una biblioteca de fuentes de la presente invención
puede incluir texturas de fuente para el mismo tipo de fuente en
diferentes tamaños. Con fuentes de tipo de textura en 3D, la
información de geometría incluida en la fuente puede utilizarse
para el ajuste a escala y puede no ser necesario seleccionar una
textura de fuente de un tamaño particular cuando se ajusta a
escala.
A modo de reiteración, cuando se utiliza una
fuente de tipo de textura en 2D no se crea la geometría de polígono
para definir la forma de un carácter, sino que en su lugar se crea
superficie visible en 3D a la que puede aplicarse una imagen de
textura. La imagen de textura puede incluir la forma y apariencia
real del carácter. Si se utiliza una fuente de tipo de textura en
3D, entonces la fuente puede contener la información de polígono,
que definiría la forma física en 3D del carácter (véase la figura 8B
por ejemplo de una fuente de tipo de textura en 3D). La imagen de
textura puede utilizarse para mejorar su aspecto. Sin embargo, la
información de polígono puede utilizarse para definir la forma del
carácter. Las fuentes de tipo de curva pueden tratarse igual que
las fuentes de textura en 3D excepto porque la forma física en 3D
del carácter se define mediante curvas. Puede crearse el polígono
utilizando la información de curva y a continuación puede aplicarse
una textura a los polígonos.
Otra ventaja del enfoque de procedimiento de
textura en 2D es que reduce el número de polígonos que es necesario
procesar mediante el software/hardware gráfico. En sistemas de
gráficos en 3D, la capacidad de renderizar escenas en tiempo real
está en función del número de polígonos que es necesario renderizar.
Cuando el sistema tiene que procesar demasiados polígonos, el
rendimiento del sistema puede degradarse hasta el punto en que es
demasiado lento para poder utilizarse en un entorno operativo. En la
realización de textura en 2D, la renderización de cada carácter en
una cadena de texto requiere el procesamiento de sólo dos polígonos
triangulares. Por tanto, el procedimiento reduce la cantidad de
polígonos que es necesario que el sistema procese en comparación
con un enfoque en el que una forma de cada fuente en un carácter se
representa mediante un gran número de polígonos.
Hay numerosas propiedades y características, de
las que puede disponerse mediante ActorText que pueden utilizarse
para proporcionar formateo de texto y efectos visuales en la
presente invención. Estas características adicionales pueden
afectar también a la generación de la geometría de carácter en 3D.
La siguiente lista describe algunos ejemplos de características, a
las que puede accederse mediante llamadas de función API,
instrucciones (scripts) y modelos. Sin embargo, la presente
invención no se limita a estos ejemplos. Las órdenes se implementan
para funcionar en el contexto del sistema de renderización gráfica
en 3D utilizado en las máquinas de juego o dispositivos de juego de
la presente invención.
Se observa que las órdenes descritas en los
siguientes párrafos son órdenes de alto nivel. Cada orden puede
comprender una secuencia de órdenes de bajo nivel o llamadas de
función que permiten que las órdenes de alto nivel se implementen
en el sistema de renderización gráfica en 3D.
SetPosition puede asignar la coordenada
posicional x, y y z para la ubicación de un objeto de texto en 3D
generado. SetScale puede fijar el valor de ajuste a escala que va a
aplicarse al tamaño de toda la cadena de texto. SetRotation puede
utilizarse para fijar los valores de rotación que pueden aplicarse a
todo el texto en los ejes x, y y z. Los polígonos que definen un
carácter de texto o cadena de texto pueden manipularse como otros
objetos en 3D definidos en el entorno de juego en 3D. SetPivotPoint
puede fijar la coordenada posicional x, y y z para la ubicación del
punto de pivote. El punto de pivote puede utilizarse como una
ubicación de referencia en el objeto de texto en 3D cuando está
girándose, ajustándose a escala y situándose. SetDisplayRegionSize
puede utilizarse para fijar el tamaño de página de texto (ancho,
altura y profundidad), que se utiliza para contener la cadena de
texto.
SetJustification puede utilizarse para fijar el
tipo de justificación utilizado para situar la cadena de texto en
la zona de visualización de texto definida por la página de texto en
3D. Hay varios tipos de justificación que pueden combinarse cada
uno entre sí para formar el efecto de justificación deseado. NINGUNO
no se aplica ninguna justificación a la cadena de texto. IZQUIERDA
alinea la cadena de texto al lado izquierdo de la página de texto
en 3D. DERECHA alinea la cadena de texto al lado derecho de la
página de texto en 3D. CENTRADO HORIZONTAL centra la cadena de
texto de manera horizontal en la página de texto en 3D. ARRIBA
alinea la cadena de texto al borde superior de la página de texto
en 3D. ABAJO alinea la cadena de texto al borde inferior de la
página de texto en 3D. CENTRADO VERTICAL centra la cadena de texto
de manera vertical en la página de texto en 3D.
SetSizing puede utilizarse para fijar el
algoritmo de dimensionamiento utilizado sobre la cadena de texto.
Pueden aplicarse varios tipos de algoritmos de dimensionamiento.
NINGUNO no se aplica ningún dimensionamiento a la cadena de texto.
AUMENTAR PARA AJUSTAR puede dimensionar la cadena de texto para que
siempre se ajuste dentro de la página de texto en 3D encogiendo o
expandiendo el ancho y/o la altura de cadena. AUMENTAR PARA AJUSTAR
puede mantener la relación de aspecto de la cadena y operar sobre el
ancho y la altura de la cadena. AUMENTAR ANCHO PARA AJUSTAR puede
cambiar el ancho de la cadena para ajustarse siempre dentro del
ancho de la página de texto en 3D encogiendo o expandiendo el la
ancho de la cadena. AUMENTAR ANCHO PARA AJUSTAR puede cambiar la
relación de aspecto de la cadena y puede operar sobre el ancho de la
cadena (la altura no se ve afectada). AUMENTAR ALTURA PARA AJUSTAR
puede cambiar la altura de la cadena para ajustarse siempre dentro
de la página de texto en 3D encogiendo o expandiendo en altura la
altura de la cadena. AUMENTAR ALTURA PARA AJUSTAR puede cambiar la
relación de aspecto de la cadena y opera sobre la altura de la
cadena (el ancho no se ve afectado).
ENCOGER PARA AJUSTAR puede encoger la cadena
para ajustarse dentro de la página de texto en 3D cuando el ancho o
la altura de la cadena superan los límites de la página de texto en
3D. ENCOGER PARA AJUSTAR puede mantener la relación de aspecto de
la cadena y puede operar sobre el ancho y la altura de las cadenas.
ENCOGER ANCHO PARA AJUSTAR puede encoger el ancho de la cadena para
ajustarse dentro del ancho de la página de texto en 3D cuando el
ancho de la cadena supera el ancho de la página de texto en 3D.
ENCOGER ANCHO PARA AJUSTAR puede cambiar la relación de aspecto de
la cadena y opera sobre su ancho (la altura no se ve afectada).
ENCOGER ALTURA PARA AJUSTAR puede encoger la altura de la cadena
para ajustarse dentro de la altura de la página de texto en 3D
cuando la altura de la cadena supera la altura de la página de texto
en 3D. Este parámetro cambia la relación de aspecto de la cadena y
opera sobre su altura (el ancho no se ve afectado). DIMENSIONAR PARA
AJUSTAR puede cambiar el ancho y la altura de la cadena para que
siempre sean los mismos que el ancho y la altura de la página de
texto en 3D. DIMENSIONAR PARA AJUSTAR puede cambiar la relación de
aspecto de la cadena y puede operar sobre su ancho y su altura.
AUMENTAR ALTURA ENCOGER ANCHO puede cambiar la
altura de la cadena para que siempre se ajuste dentro de la altura
de página de texto en 3D encogiendo o expandiendo la altura de la
cadena (no cambia la relación de aspecto). AUMENTAR ALTURA ENCOGER
ANCHO puede encoger también el ancho de la cadena para ajustarse
dentro del ancho de la página de texto en 3D cuando el ancho de la
cadena supera el ancho de la página de texto en 3D (cambia la
relación de aspecto). AUMENTAR ANCHO ENCOGER ALTURA puede cambiar el
ancho de la cadena para que siempre se ajuste dentro del ancho de
la página de texto en 3D encogiendo o expandiendo el ancho de la
cadena (no cambia la relación de aspecto). AUMENTAR ANCHO ENCOGER
ALTURA puede encoger también la altura de la cadena para ajustarse
dentro de la altura de la página de texto en 3D cuando la altura de
la cadena supera la altura de la página de texto en 3D. AUMENTAR
ANCHO ENCOGER ALTURA puede cambiar también la relación de aspecto
de la cadena y puede operar sobre su ancho y su altura (cambiará la
relación de aspecto).
SetClipping puede habilitar o deshabilitar el
recorte de texto frente a los límites definidos por la página de
texto. Cuando se habilita, cualquier parte de un carácter o
caracteres que pueda encontrarse fuera de los límites de la página
de texto en 3D puede eliminarse y puede no visualizarse. SetName
puede fijar el nombre del objeto de texto en 3D. SetFont pueden
utilizarse para asignar un recurso de fuente que puede utilizarse
cuando se crea la cadena de texto. SetFontSize puede utilizarse para
fijar el tamaño de fuente definiendo su altura en un sistema de
coordenadas apropiado. SetColor puede utilizarse para fijar la
información de color de la cadena especificando valores de color
rojo, verde, azul y alfa independientes.
SetLineSpacing puede utilizarse para fijar el
espaciado entre líneas adicional que se utiliza entre líneas dentro
de la cadena. SetSize puede utilizarse para fijar el ancho, la
altura y la profundidad de la cadena. SetString puede utilizarse
para asignar una cadena de texto que va a dibujarse. GetRawExtents
puede utilizarse para calcular el ancho, la altura y la profundidad
de la geometría en 3D de la cadena de texto utilizando ajustes de
propiedades actuales. SetCharacterScale puede utilizarse para
asignar un valor de ajuste a escala que va a aplicarse a cada
tamaño de carácter. Esto puede utilizarse para cambiar la relación
de aspecto de carácter proporcionando capacidades de apretar y
estirar. SetCharacterSpacing puede utilizarse para fijar el
espaciado entre caracteres para el espacio utilizado para separar
cada carácter en la cadena de texto. Este valor se añade al ancho
de carácter definido en el recurso de fuente.
SetNonProportionalWidth puede utilizarse para ajustar el ancho de
carácter para su uso en espaciado no proporcional. Este valor se
añade al ancho por defecto de carácter de fuente para producir un
nuevo ancho que se aplica a cada carácter cuando se habilita
espaciado no proporcional.
SetNonProportionalWidthType puede utilizarse
para ajustar los tipos de cálculos utilizados para determinar el
ancho no proporcional utilizando el valor de ancho no proporcional.
Pueden utilizarse varios tipos de ancho diferentes con la presente
invención. PORCENTAJE DE ANCHO DE FUENTE interpreta la propiedad de
ancho no proporcional como un porcentaje del ancho de carácter
máximo de fuente. El valor resultante es el nuevo ancho de carácter
utilizado en espaciado no proporcional. VALOR interpreta la
propiedad de ancho no proporcional como el valor de ancho realmente
utilizado en espaciado no proporcional. COMPENSAR ANCHO DE FUENTE
interpreta la propiedad de ancho no proporcional que va a añadirse
al ancho de carácter máximo de fuente. La suma resultante es el
nuevo ancho de carácter utilizado en espaciado no proporcional.
EnableNonProportionalSpacing puede utilizarse
para indicar que se desea una conversión desde una fuente
proporcional a una fuente no proporcional. SetStringPosition puede
utilizarse para fijar la posición de una cadena en la página de
texto en 3D. Cuando la justificación se ajusta a "NINGUNO",
este valor ajusta la posición de la cadena dentro de la página de
texto en 3D. Utilizar esta característica junto con recorte puede
utilizarse para crear un signo de marquesina en el que el texto se
desplaza a través de un área.
Pueden utilizarse procedimientos en la presente
invención para manipular propiedades de fuente. Por ejemplo, puede
invocarse GetFont para determinar el recurso de fuente actual
(archivo de fuente que está aplicándose) que está utilizándose.
Puede utilizarse SetFont para asignar un recurso de fuente que se
utilizará cuando se cree una cadena de texto. Puede utilizarse
GetFontSize para recuperar un tamaño de fuente. Puede utilizarse
SetFontSize para fijar el tamaño de fuente definiendo su altura.
Pueden utilizarse también procedimientos en la
presente invención para manipular propiedades de cadena de texto.
Por ejemplo, getColor puede utilizarse para recuperar la información
de color de la cadena separada en valores rojo, verde, azul y alfa.
SetColor puede utilizarse para fijar la información de color de la
cadena especificando valores de color red, verde, azul y alfa
independientes. GetLineSpacing puede utilizarse para recuperar
espaciado entre líneas adicional que se añade al espaciado entre
líneas especificado de la fuente. El valor se utiliza para aumentar
o disminuir el espaciado entre cada línea de la cadena.
SetLineSpacing puede utilizarse para fijar el espaciado entre
líneas adicional que se utiliza entre líneas dentro de la
cadena.
GetScale puede utilizarse para obtener el valor
de ajuste a escala actual que está aplicándose a la cadena de texto
en el objeto de texto en 3D. SetScale puede utilizarse para fijar el
valor de ajuste a escala que va a aplicarse al tamaño de la cadena
de texto. GetSize puede utilizarse para calcular el ancho de la
cadena, la altura y la profundidad utilizando los valores de
atributo actuales (es decir tamaño de fuente, espaciado entre
líneas, etc.). SetSize puede utilizarse para fijar el ancho de la
cadena, la altura y la profundidad.
GetString puede utilizarse para recuperar un
puntero a la memoria intermedia que contiene los caracteres en la
cadena que va a dibujarse. SetString asigna una cadena de texto que
va a dibujarse. GetRawExtents puede utilizarse para fijar el ancho,
la altura y la profundidad de la cadena.
Las siguientes órdenes, proporcionadas con fines
ilustrativos, pueden utilizarse como parte de operaciones de
composición tipográfica de carácter realizadas en la máquina de
juego. GetCharacterScale puede utilizarse para recuperar el valor
de ajuste a escala actual que está aplicándose a cada tamaño de
carácter en la cadena. SetCharacterScale puede utilizarse para
asignar un valor de ajuste a escala que ha de aplicarse a cada
tamaño de carácter. GetCharacterSpacing puede utilizarse para
recuperar el espaciado entre caracteres. Puede utilizarse para
separar cada carácter en la cadena. SetCharacterSpacing puede
utilizarse para fijar el espaciado entre caracteres para el espacio
utilizado para separar cada carácter en la cadena. Este valor puede
añadirse al ancho de carácter definido en el recurso de fuente.
GetCharacterWidth puede utilizarse para
recuperar el ancho de carácter utilizado en espaciado no
proporcional. Este valor se añade al ancho de carácter por defecto
de la fuente para modificar el ancho aplicado a cada carácter.
SetCharacterWidth puede utilizarse para ajustar el ancho de carácter
para su uso en espaciado no proporcional. Este valor se añade al
ancho de carácter por defecto de la fuente para producir un nuevo
ancho que es aplica a cada carácter cuando se habilita espaciado no
proporcional. GetProportionalSpacing puede utilizarse para obtener
el procedimiento de espaciado proporcional entre caracteres actual.
SetProportionalSpacing puede utilizarse para habilitar o
deshabilitar el procedimiento de espaciado proporcional entre
caracteres. A continuación se analizar algunos ejemplos de
renderización de texto en 3D utilizando los procedimientos descritos
con respecto a las figuras 4A a 7.
Las figuras 8A y 8B son diagramas de objetos de
texto en 3D renderizados en una pantalla de visualización de una
máquina de juego. Como se describió anteriormente, visualizar texto
en la máquina de juego puede requerir que el desarrollador cree un
objeto de texto en 3D y especifique propiedades de texto para ese
objeto. Estas propiedades pueden asignarse a través de varios
mecanismos diferentes: funciones API, instrucciones (scripts)
y modelos. Puede utilizarse cualquier combinación de estos
mecanismos en cualquier momento para crear, controlar y especificar
propiedades de texto para el objeto de texto en 3D. El objeto de
texto en 3D puede utilizarse en presentaciones de resultado del
juego, presentaciones de juego de bonificación, menús de
mantenimiento y configuración así como cualquier otra función de la
máquina de juego que requiera visualizar texto en una de las
pantallas de visualización en la máquina de juego.
Para visualizar texto en la máquina de juego,
puede crearse un objeto de texto en 3D, tal como 562 ó 552. Una
unidad lógica, a la que se hace referencia como ActorText, puede
utilizarse para crear el objeto de texto en 3D. ActorText puede
utilizarse para crear texto formateado en tiempo real en la máquina
de juego utilizando el sistema de renderización gráfica en 3D de la
máquina de juego o dispositivo de juego en el que se ejecuta. Puede
tener la capacidad de generar la información necesaria para
visualizar texto utilizando fuente, propiedades de desarrollador
especificadas y reglas de ajustes de tipo. La información
visualizada utilizando ActorText puede ser en el contexto de una
actividad presentada en la máquina de juego, tal como un juego de
azar. Así, otros objetos en 3D, tal como 556, presentados como
parte de una actividad específica puede renderizarse también en la
visualización 34 de vídeo con el texto renderizado.
En una realización, el desarrollador puede tener
que especificar al menos tres propiedades antes de que pueda
visualizarse la información de juego, definida por un objeto de
texto en 3D. La primera propiedad que se especifica puede ser la
página de texto resultante en una zona de visualización, tal como
554 ó 560. Cuando la página de texto se renderiza en el sistemas
gráficos en 3D, una zona de visualización en 2D, tal como 554, 560,
574 ó 576, correspondiente a la página de texto se visualiza en la
visualización 34 de vídeo. La página de texto puede especificar el
tamaño y la forma de una superficie en 3D que va a rellenarse con
texto o utilizarse como guía para el texto. En el caso de fuentes
en 3D, la superficie de la página de texto puede actuar como una
guía para la base de las fuentes. Como ejemplos, la página de texto
puede ser un rectángulo simple plano, un polígono complejo plano o
una superficie en 3D. Los bordes de la página de texto pueden ser
curvas definidas mediante B-splines, curvas
de Bezier o segmentos de línea múltiples.
La posición o forma de la página de texto puede
cambiar en función del tiempo. Por ejemplo, la página de texto
puede modelizarse como una bandera que está flameando con la brisa,
576, con texto escrito en la superficie de la bandera. Como otro
ejemplo, la página de texto puede ser una bola del mundo 574 que
está girando 578 con texto escrito en la superficie de la bola del
mundo. En aún otro ejemplo, la página de texto puede modelizarse
como la superficie de un estanque con ondas.
En la presente invención, un diseñador puede ser
capaz de añadir texturas a la página de texto como fondo. Por
ejemplo, una textura de llama que cambia en función del tiempo puede
añadirse a la página de texto correspondiente a la zona 554 de
visualización rectangular. La textura de llama puede proporcionar
una apariencia de que las cadenas de texto "créditos totales"
y "2.356" están ubicadas en llamas. Por tanto, las texturas de
la presente invención pueden superponerse entre sí con la textura
de la cadena de texto superponiéndose a la textura aplicada a la
página de texto, tal como las llamas.
Con la página de texto especificada, ActorText
puede tener la capacidad de deformar los caracteres de texto para
seguir y ajustarse a la forma de la página de texto. Por ejemplo,
los caracteres en el objeto 562 de texto en la figura 8A siguen los
límites de la página de texto renderizada como zona 560 de
visualización. La página de texto puede compararse con una hoja de
papel similar a la de la mayoría de los procesadores de texto
porque es un área en la que los caracteres de texto se componen
tipográficamente utilizando reglas de formateo. Sin embargo, a
diferencia de un procesador de textos, la página de texto de la
presente invención puede ser una forma compleja en 3D, por ejemplo
un trozo de papel curvado y retorcido. Además, la posición y
orientación de la página de texto puede manipularse en el entorno de
juego en 3D para cambiar la forma de la zona de visualización que
se renderiza en la pantalla de visualización.
Se hace notar que el procesador de textos se
utiliza con fines explicativos sólo porque proporciona una analogía
conveniente. Aunque la presente invención realiza funciones que son
similares a un procesador de textos, la presente invención no se
limita a las capacidades de un procesador de textos. Por ejemplo, la
presente invención tiene la capacidad de generar y manipular
fuentes decorativas de maneras que están muy limitadas o que no son
posibles con un procesador de textos convencional.
La forma de la página de texto puede cambiar en
función del tiempo. ActorText puede tener la capacidad de deformar
los caracteres de texto para seguir y ajustarse a la forma de la
página de texto a medida que cambia en función del tiempo.
Asimismo, otras propiedades de carácter tal como un color o textura
de los caracteres en la zona de visualización pueden cambiar en
función del tiempo, lo que puede tenerse en cuenta en objetos de
texto en 3D generados utilizando ActorText.
La siguiente propiedad que puede especificarse
para ActorText es la Propiedad de fuente. La propiedad de fuente
puede ser el nombre de archivo y la ruta del archivo de fuente que
se utiliza para generar el texto en la página de texto en 3D. Con
la fuente, ActorText puede obtener la información necesaria para
colocar caracteres de texto dentro de la zona de visualización
utilizando reglas de ajustes de tipo. El archivo de fuente puede
incluir información sobre la colocación y apariencia de cada
carácter en la fuente según se describe con respecto a las figuras
6A a 7.
Finalmente, la propiedad de texto puede
asignarse a ActorText. Esta propiedad es una cadena de texto que
consiste en caracteres que van a visualizarse. ActorText puede
tomar cada carácter en la cadena de texto y generar la información
en 3D necesaria (vértices, caras, normales, coordenadas UV de
textura) que describen el objeto de texto en 3D que se renderiza en
el entorno de juego en 3D. La cadena de texto puede verse en una de
las visualizaciones de la máquina de juego cuando se renderiza
desde un entorno de juego en 3D que contiene el objeto de texto en
3D.
Esta sección describe una realización que
permite a ActorText generar geometría en 3D para caracteres de texto
utilizando una fuente texturizada en 2D. Es posible también
utilizar fuentes texturizadas en 3D con la presente invención. Dos
ejemplos de fuentes 570 texturizadas en 3D para los caracteres
"V" y "O" se muestran en la figura 8B. Las fuentes
texturizadas en 3D en este ejemplo se definen mediante varios
triángulos. Estas fuentes en 3D pueden manipularse de igual manera
que se manipula cualquier objeto en 3D en el entorno de juego en
3D. Una vez creada la geometría en 3D, ActorText puede enviar esta
información al sistema operativo de la máquina de juego donde se
dibuja en la visualización 34 de vídeo.
Volviendo a la figura 9, se muestra una máquina
2 de videojuego de la presente invención. La máquina 2 incluye un
armario 4 principal, que generalmente rodea el interior de la
máquina (no mostrado) y puede verse por los usuarios. El armario
principal incluye una puerta 8 principal en la parte delantera de la
máquina, que se abre para proporcionar acceso al interior de la
máquina. Acoplados a la puerta principal están los interruptores o
botones 32 de entrada para el jugador, un receptor 28 de monedas y
un verificador 30 de billetes, una bandeja 38 de monedas y un
cristal 40 frontal. Visible a través de la puerta principal hay un
monitor 34 de visualización de vídeo y un panel 36 informativo. El
monitor 34 de visualización principal normalmente será un tubo de
rayos catódicos, panel LCD plano de alta resolución, pantalla de
plasma/LED u otro monitor de vídeo controlado electrónicamente
convencional. La máquina 2 de juego incluye un módulo 6 superior,
que se asienta en la parte superior del armario 4 principal. Un
segundo monitor 42 de visualización puede proporcionarse en el
módulo superior. El segundo monitor de visualización puede ser
también un tubo de rayos catódicos, panel LCD plano de alta
resolución u otro monitor de vídeo controlado electrónicamente
convencional.
Normalmente, después de que un jugador inicie un
juego en la máquina de juego, el monitor 34 de visualización
principal y el segundo monitor 42 de visualización mostrarán
visualmente una presentación de juego, incluyendo uno o más juegos
de bonificación, controlados por un controlador de juego maestro (no
mostrado). El juego de bonificación puede incluirse como suplemento
en la presentación del resultado del juego principal en la máquina
2 de juego. La componente de vídeo de la presentación de juego
consiste en una secuencia de cuadros actualizados a una velocidad
suficiente en al menos una de las visualizaciones, 34 y 42, de modo
que parece como una presentación continua para el jugador que juega
al juego en la máquina de juego. Cada cuadro renderizado en 2D en
la visualización 34 y/o 42 puede corresponder a una vista de cámara
virtual en un entorno de juego virtual en 3D almacenado en un
dispositivo de memoria en la máquina 2 de juego.
Pueden capturarse uno o más cuadros de vídeo de
la secuencia de cuadros utilizada en la presentación de juego y
almacenare en un dispositivo de memoria ubicado en la máquina de
juego. El uno o más cuadros pueden utilizarse para proporcionar una
historia de actividades de juego que se han producido en la máquina
2 de juego. Se proporcionan detalles de captura de cuadro para
aplicaciones de historia de juego en la solicitud estadounidense en
tramitación junto con la presente nº 09/689,498, presentada el 11
de octubre de 2000 por LeMay, et al., titulada, "Frame
Buffer Capture of Actual Game Play", incorporada en el presente
documento en su totalidad y a todos los efecto.
Volviendo a la máquina de juego en la figura 9,
el panel 36 informativo puede ser un panel de vidrio serigrafiado,
iluminado por detrás, con rotulación para indicar información de
juego general que incluye, por ejemplo, la denominación de los
billetes aceptados por la máquina de juego (por ejemplo de 1
\textdollar, de 20 \textdollar y de 100 \textdollar). El
verificador 30 de billetes, los interruptores 32 de entrada para el
jugador, el monitor 34 de visualización de vídeo y el panel
informativo son dispositivos utilizados para jugar a un juego en la
máquina 2 de juego. Los dispositivos se controlan mediante el
controlador de juego maestro (no mostrado), que está ubicado dentro
del armario 4 principal de la máquina 2.
En el ejemplo, mostrado en la figura 9, el
módulo 6 superior aloja varios dispositivos, que pueden utilizarse
para introducir información de seguimiento de jugador u otra
información de identificación de jugador en la máquina 2 de juego,
incluyendo el verificador 30 de billetes que puede leer tiques 20
con código de barras, un teclado 22 numérico, una visualización 16
fluorescente y una cámara 44, y un lector 24 de tarjetas para
introducir tarjetas con banda magnética o tarjetas inteligentes. La
cámara 44 puede utilizarse para generar imágenes del jugador que se
integran en un entorno de juego virtual implementado en la máquina
de juego. El teclado 22 numérico, la visualización 16 fluorescente
y el lector 24 de tarjetas pueden utilizarse para introducir y
visualizar información de seguimiento de jugador. Además, pueden
utilizarse otros dispositivos de entrada además de los descritos
anteriormente para introducir información de identificación de
jugador incluyendo un dispositivo de registro de huella dactilar o
un escáner de retina. Procedimientos y aparatos para capturar la
imagen de un jugador en un cuadro de vídeo se describen en la
solicitud estadounidense en tramitación junto con la presente nº
09/689.498, por LeMay et al. presentada el 11 de octubre de
2000 y titulada "Frame Buffer Capture of Actual Game Play" y
que se incorpora en el presente documento en su totalidad y a todos
los efectos.
Además de los dispositivos descritos
anteriormente, el módulo 6 superior puede contener dispositivos
diferentes o adicionales a los mostrados en la figura 9. Por
ejemplo, el módulo superior puede contener una rueda de
bonificación o un panel serigrafiado iluminado por detrás, que
pueden utilizarse para añadir características de bonificación al
juego al que está jugándose en la máquina de juego. Durante un
juego, estos dispositivos se controlan y se alimentan, en parte,
mediante el conjunto de circuitos del controlador de juego maestro
(no mostrado) alojada dentro del armario 4 principal de la máquina
2.
Entiéndase que la máquina 2 de juego es sólo un
ejemplo de una amplia gama de diseños de máquina de juego en los
que puede implementarse la presente invención. Por ejemplo, no todas
las máquinas de juego adecuadas tienen módulos superiores o
características de seguimiento de jugador. Además, algunas máquinas
de juego tienen sólo una única visualización de juego - mecánica o
de vídeo, mientras que otras están diseñadas para mesas de bar y
tienen visualizaciones orientadas hacia arriba. Como otro ejemplo,
puede generarse un juego en un ordenador central y puede
visualizarse en un terminal remoto o un dispositivo de juego remoto.
El dispositivo de juego remoto puede estar conectado al ordenador
central a través de una red de algún tipo tal como una red de área
local, una red de área amplia, una intranet o Internet. El
dispositivo de juego remoto puede ser un dispositivo de juego
portátil tal como, pero sin limitarse a, un teléfono móvil, un
asistente digital personal, y un reproductor de juego inalámbrico.
Imágenes renderizadas a partir de entornos de juego en 3D pueden
visualizarse en dispositivos de juego portátiles que se utilizan
para jugar a un juego de azar. Además una máquina o servidor de
juego puede incluir lógica de juego para controlar un dispositivo de
juego remoto para renderizar una imagen procedente de una cámara
virtual en entornos de juego en 3D almacenados en el dispositivo de
juego remoto y para visualizar la imagen renderizada en una
visualización ubicada en el dispositivo de juego remoto. Por tanto,
los expertos en la técnica entenderán que la presente invención,
según se describió anteriormente, puede utilizarse en casi
cualquier máquina de juego disponible actualmente o que se
desarrolle posteriormente.
Volviendo al ejemplo de la figura 9, cuando un
usuario selecciona una máquina 2 de juego, inserta dinero en
metálico a través del receptor 28 de monedas o verificador 30 de
billetes. Además, el verificador de billetes puede aceptar un vale
de tique impreso, que puede ser aceptado por el verificador 30 de
billetes como prueba de crédito. Una vez que la máquina de juego ha
aceptado el dinero en metálico, los créditos o los créditos
promocionales, puede apostarse en un juego de azar en la máquina de
juego. Normalmente, el jugador puede utilizar todo o parte del
dinero en metálico introducido o ingresado en la máquina de juego
para hacer una apuesta en una partida de juego. Durante el
transcurso de un juego, puede pedirse al jugador que tome varias
decisiones que afectan al resultado del juego. Por ejemplo, un
jugador puede variar su apuesta, seleccionar un premio, o tomar
decisiones de duración de juego, que afectan a la partida de juego.
Estas opciones pueden seleccionarse utilizando los interruptores 32
de entrada para el jugador, la pantalla 34 de visualización de vídeo
principal o utilizando algún otro dispositivo que permita a un
jugador introducir información en la máquina de juego incluyendo un
teclado numérico, una pantalla táctil, un ratón, una palanca de
juego (joystick), un micrófono y una bola de control
(track ball).
Utilizando dispositivos de entrada tales como,
pero sin limitarse a, los interruptores 32 de entrada para el
jugador, la pantalla 34 de visualización de vídeo principal o
utilizando algún otro dispositivo que permita a un jugador
introducir información en la máquina de juego incluyendo un teclado
numérico, una pantalla táctil, un ratón, una palanca de juego, un
micrófono y una bola de control, pueden alterarse propiedades de los
objetos en 3D en el entorno de juego en 3D y, por tanto, la
correspondiente presentación de estos objetos en 3D renderizados en
una o más de las pantallas de visualización en la máquina de juego.
Por ejemplo, en un entorno de juego en 3D con un objeto que gira,
tal como, pero sin limitarse a, un tambor que gira, una rueda que
gira, un segmento de tambor que gira, o una esfera que gira, la
máquina de juego puede ser capaz de recibir una entrada a través de
uno de los dispositivos de entrada que hace que un objeto empiece a
girar, hace que un objeto deje de girar o que afecta a la velocidad
de rotación del objeto. En otro ejemplo, la máquina de juego puede
ser capaz de recibir una entrada a través de uno o más dispositivos
de entrada que inicia el movimiento de traslación en uno o más
objetos en 3D en el entorno de juego en 3D, detiene el movimiento de
traslación o afecta a la velocidad del movimiento de
traslación.
En general, la máquina de juego puede ser capaz
de recibir información de entrada para controlar una pluralidad de
parámetros de movimiento para objetos en 3D en el entorno de juego.
Los parámetros de movimiento pueden variar dependiendo de los
grados de libertad de movimiento modelizados para un objeto en 3D en
particular. La información de entrada puede utilizarse para alterar
una presentación de resultado del juego, una presentación del
resultado del juego de bonificación o cualquier otro tipo de
presentación generada en la máquina de juego.
En algunas realizaciones, para cambiar el
formato de una presentación del resultado del juego en la máquina
de juego o utilizar funciones de máquina de juego diferentes, el
jugador puede utilizar un dispositivo de entrada en la máquina de
juego para controlar una cámara virtual en un entorno de juego
virtual implementado en la máquina de juego. Por ejemplo, un
jugador puede utilizar la cámara virtual para "acercar mediante
zoom" o "expandir a voluntad" una parte del entorno de
juego virtual tal como una mano de póquer de cien manos de póquer
visualizadas en la pantalla 34 de visualización. En otro ejemplo, el
jugador puede alterar la presentación del resultado del juego, tal
como la vista o perspectiva de la presentación de resultado del
juego, controlando la cámara virtual. En aún otro ejemplo, el
jugador puede ser capaz de seleccionar un tipo de juego para una
partida de juego en la máquina de juego, seleccionar un entorno de
juego en el que se juega a un juego, recibir información de casino
u obtener diversos servicios de casino, tales como reservas de cenas
y reservas de espectáculos, navegando a través de un casino virtual
implementado en la máquina de juego. El casino virtual puede
corresponder al casino real en el que la máquina de juego está
ubicada. Por tanto, el casino virtual puede utilizarse para dar al
jugador direcciones a otras partes del casino.
En otras realizaciones de la presente invención,
pueden utilizarse modelos CAD/CAM de la máquina 2 de juego para
generar un modelo virtual en 3D de la máquina de juego. El modelo
virtual en 3D puede utilizarse para mostrar de manera visual
diversas características operativas de la máquina 2 de juego. Por
ejemplo, cuando una tarjeta de seguimiento de jugador se inserta
incorrectamente en el lector 24 de tarjetas, el modelo virtual en
3D de la máquina de juego puede utilizarse para visualizar una
secuencia visual de la tarjeta que está retirándose del lector 24
de tarjetas, dándose la vuelta e insertándose correctamente en el
lector 24 de tarjetas. En otro ejemplo, puede utilizarse una
secuencia visual que muestra a un jugador introduciendo un código de
entrada en el teclado 22 numérico para pedir y mostrar al jugador
cómo introducir la información. En otro ejemplo, cuando la máquina
2 de juego está esperando una entrada del jugador utilizando uno de
los interruptores 32 de entrada para el jugador, puede utilizarse
el modelo virtual en 3D de la máquina de juego para visualizar una
secuencia visual del botón correcto que está pulsándose en la
máquina de juego. En otro ejemplo más, la manera en la que un
billete o tique se inserta en el verificador de billetes puede
mostrarse al jugador utilizando una secuencia de fotografías
generadas a partir del modelo en 3D.
Durante ciertos eventos de juego, la máquina 2
de juego puede visualizar efectos visuales y auditivos que el
jugador puede percibir. Estos efectos aumentan la emoción de un
juego, lo que aumenta la probabilidad de que un jugador continúe
jugando. Los efectos auditivos incluyen diversos sonidos que se
proyectan por los altavoces 10, 12, 14. Los efectos visuales
incluyen luces parpadeantes, luces estroboscópicas u otros patrones
visualizados procedentes de luces en la máquina 2 de juego o
procedentes de luces por detrás del cristal 40 frontal. La
capacidad de un jugador para controlar una cámara virtual en un
entorno de juego virtual para cambiar la presentación del resultado
del juego puede también aumentar la emoción del juego. Después de
que el jugador haya completado un juego, el jugador puede recibir
fichas de juego de la bandeja 38 de monedas o el tique 20 de la
impresora 18, que pueden utilizarse para otros juegos o para canjear
por un premio.
La figura 10 es un diagrama de flujo que
representa un procedimiento para generar una presentación del
resultado del juego desde un entorno de juego virtual. En 600,
después de recibir una apuesta para uno o más juegos a los que se
juega en una máquina de juego, se recibe una señal de entrada en la
máquina de juego para iniciar un juego de azar. Un jugador puede
introducir la señal de entrada utilizando diversos dispositivos de
entrada disponibles en la máquina de juego, tales como botones de
entrada y una pantalla táctil. En 602, uno o más resultados del
juego se determinan para el uno o más juegos iniciados por el
jugador. Normalmente, un resultado del juego se determina generando
uno o más números aleatorios y comparando los números con una tabla
de pago almacenada en la máquina de juego.
En 603, basándose en el uno o más resultados del
juego determinados en 602, se renderizan una o más visualizaciones
de juego en un entorno de juego virtual en 3D en la máquina de
juego. En 604, al menos una cámara virtual en el entorno de juego
en 3D se utiliza para renderizar una secuencia de superficies de
proyección en 2D (por ejemplo imágenes) derivada de coordenadas
tridimensionales de superficies en el entorno de juego en 3D. Como
se describe con referencia a la figura 2, la posición de la cámara
virtual puede variar con el tiempo. En 606, la secuencia de
superficies de proyección en 2D renderizadas se visualiza en una o
más pantallas de visualización de juego en la máquina de juego como
parte de una presentación del resultado del juego o una presentación
de juego de bonificación. En 608, el resultado del juego (por
ejemplo una cantidad premiada para uno o más juegos) se visualiza
en la pantalla de visualización. El procedimiento descrito
anteriormente no se limita a presentaciones de resultado del juego.
Otros tipos de información de juego tales como presentaciones de
modo de atracción, información de operación de mantenimiento,
información de operación de juego e información de casino pueden
generarse en un entorno de juego virtual en 3D y visualizarse en una
pantalla de visualización en la máquina de juego. Además, también
pueden generarse y visualizarse pantallas de transición que permiten
una transición suave entre presentaciones de juego diferentes en la
pantalla de visualización. Por ejemplo, puede generarse una
pantalla de transición para visualizar una transición suave entre
una presentación del resultado del juego y un juego de
bonificación.
La figura 11 es un diagrama de bloques de
máquinas de juego que utilizan software de juego distribuido y
procesadores distribuidos para generar un juego de azar para una
realización de la presente invención. Un controlador 250 de juego
maestro se utiliza para presentar uno o más juegos en las máquinas
61, 62 y 63 de juego. El controlador 250 de juego maestro ejecuta
varios módulos de software de juego para operar dispositivos 70 de
juego, tales como tolvas de monedas, verificadores de billetes,
receptores de monedas, altavoces, impresoras, luces, visualizaciones
(por ejemplo 34) y otros mecanismos de entrada/salida. El
controlador 250 de juego maestro puede también ejecutar software de
juego que permite comunicaciones con dispositivos de juego ubicados
fuera de las máquinas 61, 62 y 63 de juego, tales como servidores
de seguimiento de jugador, servidores de juego de bonificación,
servidores de juego y servidores de juego progresivo. En algunas
realizaciones, pueden realizarse comunicaciones con dispositivos
ubicados fuera de las máquinas de juego utilizando el panel 252 de
comunicación principal y conexiones 71 de red. Las conexiones 71 de
red pueden permitir comunicaciones con dispositivos de juego remotos
a través de una red de área local, una intranet, Internet o
combinaciones de las mismas.
Las máquinas 61, 62 y 63 de juego pueden
utilizar módulos de software de juego para generar un juego de azar
que puede distribuirse entre dispositivos locales de almacenamiento
de archivos y dispositivos remotos de almacenamiento de archivos.
Por ejemplo, para jugar a un juego de azar en la máquina 61 de
juego, el controlador de juego maestro puede cargar módulos de
software de juego en la RAM 56 que puede estar ubicada en 1) un
dispositivo 251 de almacenamiento de archivos en la máquina 61 de
juego, 2) un dispositivo 81 remoto de almacenamiento de archivos,
2) un dispositivo 82 remoto de almacenamiento de archivos, 3) un
servidor 90 de juego, 4) un dispositivo 251 de almacenamiento de
archivos en la máquina 62 de juego, 5) un dispositivo 251 de
almacenamiento de archivos en la máquina 63 de juego, o 6)
combinaciones de los mismos. Los módulos de software de juego
pueden incluir archivos de instrucciones (script), archivos
de datos y modelos en 3D utilizados para generar objetos en 3D en
los entornos de juego en 3D de la presente invención. En una
realización de la presente invención, el sistema operativo de juego
puede permitir utilizar archivos almacenados en los dispositivos
locales de almacenamiento de archivos y dispositivos remotos de
almacenamiento de archivos como parte de un sistema de archivos
compartidos en el que los archivos en los dispositivos remotos de
almacenamiento de archivos están integrados de manera remota en el
sistema local de archivos. Los dispositivos de almacenamiento de
archivos pueden ser una unidad de disco duro, CDROM,
CD-DVD, RAM estática, memoria flash, EPROM,
memoria flash compacta, medios inteligentes, disco sobre
placa, medios amovibles (por ejemplo unidades de ZIP con discos
ZIP, flexibles o combinaciones de los mismos). Por motivos tanto de
seguridad como legales, el software de juego ejecutado en las
máquinas 61, 62 y 63 de juego por los controladores 250 de juego
maestros puede verificarse de manera regular comparando el software
almacenado en la RAM 56 para su ejecución en las máquinas de juego
con copias certificadas del software almacenado en la máquina de
juego (por ejemplo los archivos pueden almacenarse en el
dispositivo 251 de almacenamiento de archivos), accesibles por la
máquina de juego a través de una conexión de comunicación remota
(por ejemplo, 81, 82 y 90) o combinaciones de las mismas.
El servidor 90 de juego puede ser un depósito
para módulos de software de juego y software para otros servicios
de juego proporcionados en las máquinas 61, 62 y 63 de juego. En una
realización de la presente invención, las máquinas 61, 62 y 63 de
juego puede descargar módulos de software de juego desde el servidor
90 de juego a un dispositivo local de almacenamiento de archivos
para jugar a un juego de azar o el servidor de juego puede iniciar
la descarga. Un ejemplo de un servidor de juego que puede utilizarse
con la presente invención se describe en la solicitud de patente
estadounidense en tramitación junto con la presente 09/042.192,
presentada el 16/06/2000, titulada "Using a Gaming Machine as a
Server" que se incorpora en el presente documento en su
totalidad y a todos los efectos. En otro ejemplo, el servidor de
juego puede ser también un ordenador dedicado o un servicio que se
ejecuta en un servidor con otros programas de aplicación.
En una realización de la presente invención, los
procesadores utilizados para generar un juego de azar pueden estar
distribuidos entre diferentes máquinas. Por ejemplo, la lógica de
flujo de juego para jugar a un juego de azar puede ejecutarse en un
servidor 92 de juego mediante el procesador 90 mientras que el
controlador 250 de juego maestro puede ejecutar la lógica de
presentación de juego en las máquinas 61, 62 y 63 de juego. Los
sistemas operativos de juego en las máquinas 61, 62 y 63 de juego y
el servidor 90 de juego pueden permitir comunicar eventos de juego
entre diferentes módulos de software de juego que están ejecutándose
en diferentes máquinas de juego a través de API definidas. Por
tanto, un módulo de software de flujo de juego ejecutado en el
servidor 92 de juego puede enviar eventos de juego a un módulo de
software de presentación de juego ejecutado en la máquina 61, 62 ó
63 de juego para controlar el juego de un juego de azar o para
controlar el juego de un juego de bonificación de azar presentados
en las máquinas 61, 62 y 63 de juego. Como otro ejemplo, las
máquinas 61, 62 y 63 de juego pueden enviarse eventos de juego entre
sí a través de una conexión 71 de red para controlar el juego de un
juego de bonificación compartido al que se juega simultáneamente en
las diferentes máquinas de juego o en general para afectar a la
partida de juego en otra máquina.
Aunque la invención anterior se ha descrito con
cierto detalle con fines de claridad de comprensión, será evidente
que pueden realizarse algunos cambios y modificaciones dentro del
alcance de las reivindicaciones adjuntas. Por ejemplo, aunque las
máquinas de juego de esta invención se han representado con un
módulo superior montado en la parte superior del armario principal
de la máquina de juego, el uso de dispositivos de juego según esta
invención no está limitado de este modo. Por ejemplo, la máquina de
juego puede proporcionarse sin un módulo superior o una
visualización secundaria. Estos dos tipos de máquinas de juego
pueden modelizarse en un entorno de juego virtual almacenado en una
máquina de juego.
Claims (38)
1. Un procedimiento para generar un juego de
azar en una máquina de juego que puede operarse i) para recibir
dinero en metálico o pruebas de crédito para una apuesta en el juego
de azar y ii) para entregar dinero en metálico o una prueba de
crédito como premio por el juego de azar, en el que la máquina de
juego comprende un controlador de juego maestro, un dispositivo de
visualización, un dispositivo de memoria y un sistema de
renderización gráfica en 3D, comprendiendo el procedimiento:
- proporcionar en la máquina de juego una textura de fuente que comprende una pluralidad de caracteres trazados en un estilo de fuente particular, comprendiendo dicha textura de fuente;
- uno o más parámetros de fuente para definir características globales de la pluralidad de características en la textura de fuente;
- uno o más parámetros de carácter para definir características de cada carácter;
- durante la operación de la máquina de juego, determinar una cadena de texto que comprende una pluralidad de caracteres para su visualización en el dispositivo de visualización;
- determinar una superficie de página de texto para guiar una colocación de la pluralidad de caracteres en un entorno de juego en 3D;
- para cada carácter en la cadena de texto,
- dimensionar un objeto en 3D para el carácter utilizando los parámetros de fuente y los parámetros de carácter;
- mapear una textura del carácter a partir de la textura de fuente con el objeto en 3D;
- colocar cada objeto en 3D sobre la superficie de página de texto;
- aplicar una o más reglas de composición tipográfica a los objetos en 3D para mejorar una calidad visual de la cadena de texto renderizada a partir de los objetos en 3D incluyendo determinar una ubicación de cada carácter en la cadena de texto con respecto a otro en el entorno de juego en 3D;
- renderizar la cadena de texto utilizando el sistema de renderización gráfica en 3D;
- visualizar la cadena de texto renderizada en el dispositivo de visualización;
- recibir la apuesta para los juegos de azar controlados por el controlador de juego maestro en la máquina de juego;
- determinar un resultado del juego para el juego de azar;
- visualizar el resultado del juego utilizando el sistema de renderización gráfica en 3D en el dispositivo de visualización.
2. El procedimiento según la reivindicación 1,
en el que el sistema de renderización gráfica en 3D es compatible
con OpenGL.
3. El procedimiento según la reivindicación 1,
en el que el juego de azar se selecciona del grupo que consiste en
un juego tragaperras, un juego keno, un juego de póquer, un juego de
pachinko, un juego de vídeo black jack, un juego de bingo, un juego
de bacará, a juego de ruleta, a juego de dados y un juego de
cartas.
4. El procedimiento según la reivindicación 1,
que comprende además:
almacenar una o más texturas de fuente generadas
en una librería de fuentes en el dispositivo de memoria en la
máquina de juego.
5. El procedimiento según la reivindicación 4,
en el que la librería de fuentes comprende además una pluralidad de
texturas de fuente con el mismo estilo de fuente y diferentes
parámetros de fuente o parámetros de carácter.
6. El procedimiento según la reivindicación 4,
en el que la librería de fuentes comprende además una pluralidad de
texturas de fuente con diferentes estilos de fuente.
7. El procedimiento según la reivindicación 1,
en el que la cadena de texto se renderiza para transmitir
información textual para uno o más de i) una presentación del
resultado del juego para el juego de azar, ii) una operación de
mantenimiento del juego, iii) una característica de modo de
atracción, iv) una característica promocional, v) información del
casino, vi) presentación de juego de bonificación y capturando la
información textual en la una o más imágenes bidimensionales.
8. El procedimiento según la reivindicación 1,
en el que la cadena de texto se renderiza para transmitir
información textual desde uno o más de un anuncio, noticias,
cotizaciones de bolsa, correo electrónico, una página web, un
servicio de mensajería, un servicio de localización o un servicio de
hotel/casino, una película, una selección musical, una promoción de
casino, un evento de difusión, una historia de juego, un servicio
de seguimiento de un jugador, un menú de bebidas y un menú de
aperitivos.
9. El procedimiento según la reivindicación 1,
en el que las reglas de composición tipográfica son para uno o más
de i) ajustar un espaciado entre los caracteres, ii) ajustar pesos
de color de los caracteres, iii) justificar la cadena de texto, iv)
centrar la cadena de texto, v) ajustar las dimensiones de los trazos
que definen los caracteres, vi) alinear los caracteres con una
línea base, vii), situar la cadena de texto en dos o más líneas,
viii) ajustar el espaciado entre dos o más líneas de texto, ix)
ajustar la alineación vertical u horizontal de los caracteres, x)
ajustar un tamaño relativo de cada carácter, xi) ajustar los píxeles
que definen el carácter y xii) y ajustar los téxeles que definen el
carácter.
10. El procedimiento según la reivindicación 1,
que comprende además:
- en el que el cambio de uno o más de una forma de la superficie de página de texto, una posición de la superficie de página de texto o una orientación de la superficie de página de texto en función del tiempo.
11. El procedimiento según la reivindicación 1,
en el que una forma de la superficie de página de texto es un
rectángulo plano.
12. El procedimiento según la reivindicación 1,
en el que una forma de la superficie de página de texto es un
polígono plano de múltiples lados.
13. El procedimiento según la reivindicación 1,
en el que una forma de la superficie de página de texto es una
superficie en 3D.
14. El procedimiento según la reivindicación 1,
en el que la superficie de página de texto es invisible.
15. El procedimiento según la reivindicación 1,
que comprende además aplicar uno de una textura estática, una
textura animada o combinaciones de las mismas a la superficie de
página de texto.
16. El procedimiento según la reivindicación 1,
que comprende además recortar una parte de un primer objeto en 3D
que se extiende más allá de un límite definido por la superficie de
página de texto.
17. El procedimiento según la reivindicación 1,
que comprende además ajustar a escala el uno o más objetos en 3D
para que encaje dentro de los límites definidos por la superficie de
página de texto.
18. El procedimiento según la reivindicación 1,
en el que cada uno de los objetos en 3D está compuesto por dos
polígonos triangulares.
19. El procedimiento según la reivindicación 1,
en el que uno o más de una forma, una posición y una orientación
angular de los objetos en 3D cambia en función del tiempo en el
entorno de juego en 3D.
20. El procedimiento según la reivindicación 1,
que comprende además:
- calcular coordenadas de textura para cada uno de los objetos en 3D y mapear un primer carácter de la textura de fuente utilizando las coordenadas de textura con un primer objeto en 3D.
21. El procedimiento según la reivindicación 1,
en el que los parámetros de fuente son uno o más de un nombre de
fuente, un estilo de fuente, un tipo de letra de fuente, un peso de
fuente, una línea base de fuente, una elevación de fuente, un
descenso de fuente, una inclinación de fuente, una altura máxima de
fuente, un ancho máximo de fuente y un número de caracteres en la
textura de fuente.
22. El procedimiento según la reivindicación 1,
en el que los parámetros de carácter son uno o más de una altura de
carácter, un ancho de carácter, una elevación de carácter, un
descenso de carácter, un origen de carácter, información de
carácter para indicar dónde colocar un carácter adyacente, una forma
de carácter o coordenadas de ubicación de carácter para ubicar el
carácter en la textura de fuente.
23. El procedimiento según la reivindicación 1,
que comprende además:
- ubicar un primer carácter en la textura de fuente utilizando coordenadas de ubicación de carácter.
\newpage
\global\parskip0.930000\baselineskip
24. Una máquina de juego que comprende:
una carcasa;
un controlador de juego maestro acoplado a la
carcasa diseñado o configurado para controlar un juego de azar al
que se juega en la máquina de juego;
un entorno de juego tridimensional (3D) para
renderizar al menos una presentación del resultado del juego para
el juego de azar almacenado en un dispositivo de memoria en la
máquina de juego;
un dispositivo de memoria para almacenar
texturas de fuente en una librería de fuentes en la máquina de juego
comprendiendo cada textura de fuente; i) uno o más parámetros de
fuente para definir características globales de la pluralidad de
características en la textura de fuente; y ii) uno o más parámetros
de carácter para definir características de cada carácter;
una lógica de juego para 1) determinar una
cadena de texto que comprende una pluralidad de caracteres para su
visualización en el dispositivo de visualización; 2) determinar una
superficie de página de texto para guiar una colocación de la
pluralidad de caracteres en un entorno de juego en 3D; 3) para cada
carácter en la cadena de texto, a) dimensionar un objeto en 3D para
el carácter utilizando los parámetros de fuente y los parámetros de
carácter; b) mapear una textura del carácter a partir de la textura
de fuente con el objeto en 3D; c) colocar cada objeto en 3D en la
superficie de página de texto; y d) aplicar una o más reglas de
composición tipográfica a los objetos en 3D para mejorar una calidad
visual de la cadena de texto renderizada a partir de los objetos en
3D incluyendo determinar una ubicación de cada carácter en la cadena
de texto con respecto a otro en el entorno de juego en 3D;
lógica de juego para renderizar una o más
imágenes bidimensionales obtenidas a partir de los objetos en 3D en
el entorno de juego en 3D en la que al menos uno de los objetos en
3D es un objeto de texto en 3D adaptado para trasladar información
textual;
al menos un dispositivo de visualización para
visualizar las una o más imágenes bidimensionales renderizadas en
el que la máquina de juego es operable i) para recibir dinero en
metálico o pruebas de crédito para una apuesta en el juego de azar
y ii) para entregar dinero en metálico o una prueba de crédito como
premio por el juego de azar.
25. La máquina de juego según la reivindicación
24, que comprende además:
- un sistema de renderización gráfica en 3D para renderizar la una o más imágenes en 2D.
26. La máquina de juego según la reivindicación
24, que comprende además:
- una lógica de juego diseñada o configurada para renderizar información textual desde una operación de mantenimiento de la máquina de juego en el entorno de juego en 3D utilizando una pluralidad de los objetos de texto en 3D y para capturar la operación de mantenimiento de la máquina de juego en la una o más imágenes bidimensionales.
27. La máquina de juego según la reivindicación
24, que comprende además:
- una lógica de juego diseñada o configurada para renderizar información textual desde uno o más de i) una característica operativa de la máquina de juego, ii) una operación de mantenimiento de la máquina de juego en el entorno de juego en 3D, iii) una característica de modo de atracción, iv) una característica promocional, v) información de casino o vi) una presentación de juego de bonificación utilizando una pluralidad de los objetos de texto en 3D y para capturar la característica de operación de la máquina de juego en la una o más imágenes bidimensionales.
28. La máquina de juego según la reivindicación
24, en la que una posición tridimensional del objeto en 3D varía en
el tiempo.
29. La máquina de juego según la reivindicación
24, que comprende además:
- una unidad de procesamiento gráfico, separada de dicho controlador de juego maestro, diseñada o configurada para ejecutar las operaciones gráficas utilizadas para renderizar una o más imágenes bidimensionales derivadas de los objetos en 3D en el entorno de juego en 3D.
30. La máquina de juego según la reivindicación
24, que comprende además:
- un panel de interfaz de red diseñado o configurado para permitir al controlador de juego maestro comunicar información textual renderizada a un dispositivo de visualización remoto.
31. La máquina de juego según la reivindicación
30, en la que el controlador de juego maestro se comunica con el
dispositivo de visualización remoto a través de al menos uno de una
red de área local, una red de área amplia e Internet.
\global\parskip1.000000\baselineskip
32. La máquina de juego según la reivindicación
24, en la que el juego de azar se selecciona del grupo que consiste
en un juego tragaperras, un juego keno, un juego de póquer, un juego
de pachinko, un juego de vídeo black jack, un juego de bingo, un
juego de bacará, un juego de ruleta, un juego de dados y un juego de
cartas.
33. La máquina de juego según la reivindicación
24, en la que el juego de azar son múltiples manos de un juego de
cartas presentadas simultáneamente.
34. La máquina de juego según la reivindicación
33, en la que las múltiples manos del juego de cartas son entre 1
mano de póquer y 1000 manos de póquer.
35. La máquina de juego según la reivindicación
30, en la que la máquina de juego puede operarse para renderizar
información textual utilizando los objetos en 3D en el entorno de
juego en 3D de uno o más de un anuncio, noticias, cotizaciones de
bolsa, correo electrónico, una página web, un servicio de
mensajería, un servicio de localización o un servicio de
hotel/casino, una película, una selección musical, una promoción de
casino, un evento de difusión, una operación de mantenimiento, un
servicio de seguimiento de un jugador, un menú de bebidas y un menú
de aperitivos.
36. La máquina de juego según la reivindicación
24, que comprende además:
- una tarjeta de vídeo de múltiples terminales.
37. La máquina de juego según la reivindicación
24, en la que la librería de fuentes comprende además una
pluralidad de texturas de fuente con el mismo estilo de fuente y
diferentes parámetros de fuente o parámetros de carácter.
38. La máquina de juego según la reivindicación
26, en la que la librería de fuentes comprende además una
pluralidad de texturas de fuente con diferentes estilos de
fuente.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US41498202P | 2002-09-30 | 2002-09-30 | |
US414982P | 2002-09-30 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2319983T3 true ES2319983T3 (es) | 2009-05-18 |
Family
ID=32043416
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES03773084T Expired - Lifetime ES2319983T3 (es) | 2002-09-30 | 2003-09-30 | Texto en 3d en una maquina de juego. |
Country Status (7)
Country | Link |
---|---|
EP (1) | EP1545728B1 (es) |
AT (1) | ATE421371T1 (es) |
AU (1) | AU2003279742B2 (es) |
DE (1) | DE60325982D1 (es) |
ES (1) | ES2319983T3 (es) |
RU (1) | RU2344483C9 (es) |
WO (1) | WO2004028650A1 (es) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7367885B2 (en) | 2001-08-09 | 2008-05-06 | Igt | 3-D text in a gaming machine |
US7909696B2 (en) | 2001-08-09 | 2011-03-22 | Igt | Game interaction in 3-D gaming environments |
US8267767B2 (en) | 2001-08-09 | 2012-09-18 | Igt | 3-D reels and 3-D wheels in a gaming machine |
US7918730B2 (en) | 2002-06-27 | 2011-04-05 | Igt | Trajectory-based 3-D games of chance for video gaming machines |
US8454428B2 (en) | 2002-09-12 | 2013-06-04 | Wms Gaming Inc. | Gaming machine performing real-time 3D rendering of gaming events |
EP1756782A4 (en) | 2004-02-23 | 2010-10-27 | Wagerworks Inc | BONUS STRUCTURES FOR MULTI-RESULTS / MULTI-PURPOSE GAMBLING GAME |
ATE427145T1 (de) * | 2004-06-21 | 2009-04-15 | Weike S Pte Ltd | Virtuelles kartenspielsystem |
WO2006039371A2 (en) | 2004-10-01 | 2006-04-13 | Wms Gaming Inc. | Displaying 3d characters in gaming machines |
WO2007032874A2 (en) | 2005-09-09 | 2007-03-22 | Wms Gaming Inc. | Gaming system modelling 3d volumetric masses |
US9666031B2 (en) | 2006-06-12 | 2017-05-30 | Bally Gaming, Inc. | Wagering machines having three dimensional game segments |
US8251825B2 (en) | 2006-08-14 | 2012-08-28 | Wms Gaming Inc. | Applying graphical characteristics to graphical objects in a wagering game machine |
US8248462B2 (en) | 2006-12-15 | 2012-08-21 | The Board Of Trustees Of The University Of Illinois | Dynamic parallax barrier autosteroscopic display system and method |
US8384710B2 (en) | 2007-06-07 | 2013-02-26 | Igt | Displaying and using 3D graphics on multiple displays provided for gaming environments |
US9640021B2 (en) | 2007-11-09 | 2017-05-02 | Bally Gaming, Inc. | Real three dimensional display for wagering game machine events |
KR101639053B1 (ko) * | 2009-02-17 | 2016-07-13 | 코닌클리케 필립스 엔.브이. | 3d 이미지 및 그래픽 데이터의 조합 |
US8803889B2 (en) * | 2009-05-29 | 2014-08-12 | Microsoft Corporation | Systems and methods for applying animations or motions to a character |
TWI460650B (zh) * | 2011-10-25 | 2014-11-11 | Kye Systems Corp | 輸入裝置及其物件縮放控制方法 |
RU2523925C2 (ru) * | 2011-11-17 | 2014-07-27 | Корпорация "САМСУНГ ЭЛЕКТРОНИКС Ко., Лтд." | Способ динамической визуализации коллекции изображений в виде коллажа |
GB2501457A (en) | 2012-02-10 | 2013-10-30 | Rational Intellectual Holdings Ltd | Assigning player positions in an online table game |
US9324214B2 (en) | 2012-09-05 | 2016-04-26 | Bally Gaming, Inc. | Wagering game having enhanced display of winning symbols |
CN112370774B (zh) * | 2020-11-12 | 2024-07-23 | 网易(杭州)网络有限公司 | 一种在游戏加速器中启动游戏的方法及装置 |
CN112489166B (zh) * | 2020-11-17 | 2024-08-09 | 娄底景明新材料有限公司 | 汽车板激光切割自动排版制图方法及系统 |
CN112614218B (zh) * | 2020-12-25 | 2022-05-20 | 广州凡科互联网科技股份有限公司 | 一种实现二维文字转换三维文字的展示方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5469536A (en) * | 1992-02-25 | 1995-11-21 | Imageware Software, Inc. | Image editing system including masking capability |
US6612575B1 (en) * | 2000-05-16 | 2003-09-02 | Colepat, Llc | Gaming device and method of playing a game |
US6394901B1 (en) * | 2000-06-26 | 2002-05-28 | John A. Marta | Gaming device |
AUPR100600A0 (en) * | 2000-10-25 | 2000-11-16 | Aristocrat Technologies Australia Pty Limited | Gaming graphics |
-
2003
- 2003-09-30 EP EP03773084A patent/EP1545728B1/en not_active Expired - Lifetime
- 2003-09-30 AT AT03773084T patent/ATE421371T1/de not_active IP Right Cessation
- 2003-09-30 ES ES03773084T patent/ES2319983T3/es not_active Expired - Lifetime
- 2003-09-30 AU AU2003279742A patent/AU2003279742B2/en not_active Ceased
- 2003-09-30 DE DE60325982T patent/DE60325982D1/de not_active Expired - Lifetime
- 2003-09-30 WO PCT/US2003/031158 patent/WO2004028650A1/en not_active Application Discontinuation
- 2003-09-30 RU RU2005109161/09A patent/RU2344483C9/ru not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
DE60325982D1 (de) | 2009-03-12 |
RU2344483C9 (ru) | 2009-07-20 |
RU2344483C2 (ru) | 2009-01-20 |
EP1545728B1 (en) | 2009-01-21 |
AU2003279742A1 (en) | 2004-04-19 |
AU2003279742B2 (en) | 2010-02-18 |
RU2005109161A (ru) | 2006-01-27 |
EP1545728A1 (en) | 2005-06-29 |
ATE421371T1 (de) | 2009-02-15 |
WO2004028650A1 (en) | 2004-04-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2319983T3 (es) | Texto en 3d en una maquina de juego. | |
US7367885B2 (en) | 3-D text in a gaming machine | |
AU784628B2 (en) | Virtual cameras and 3-d gaming environments in a gaming machine | |
US7909696B2 (en) | Game interaction in 3-D gaming environments | |
US9418504B2 (en) | 3-D reels and 3-D wheels in a gaming machine | |
US8002623B2 (en) | Methods and devices for displaying multiple game elements | |
AU2003279092B2 (en) | 3-D reels and 3-D wheels in a gaming machine |