Optimización de la geometría dependiente de la conectividad para renderización en tiempo real.

Un método implementado por ordenador para visualizar/renderizar un modelo por ordenador

, comprendiendo el modelo por ordenador una multitud de componentes, en el que el método comprende:

- almacenar una multitud de piezas de al menos uno de la multitud de componentes, incluyendo cada pieza información de la geometría para visualizar/renderizar la pieza,

- almacenar información indicativa de la posición y la orientación de una multitud de componentes en un sistema de coordenadas

- determinar una relación espacial entre los componentes individuales de los componentes sobre la base de la información almacenada indicativa de la posición y la orientación de la multitud de componentes.

- Determinar para al menos un componente una serie de piezas almacenadas para utilizarlas para visualizar/renderizar el mencionado componente, sobre la base de la relación espacial determinada entre los componentes individuales

Tipo: Patente Internacional (Tratado de Cooperación de Patentes). Resumen de patente/invención. Número de Solicitud: PCT/EP2010/063296.

Solicitante: LEGO A/S.

Nacionalidad solicitante: Dinamarca.

Dirección: AASTVEJ 1, DK-7190 BILLUND, DINAMARCA.

Inventor/es: ERSTVANG,JESPER MARTIN, JAKOBSEN,JAKOB SPROGØE, JAKOBSEN,TUE.

Fecha de Publicación: .

Clasificación Internacional de Patentes:

  • SECCION G — FISICA > COMPUTO; CALCULO; CONTEO > TRATAMIENTO O GENERACION DE DATOS DE IMAGEN, EN GENERAL... > modelado 3D mediante gráficos de computdor > G06T17/10 (Descripción de volumen, p.ej. cilindros, cubos o utilizando CSG [Geometría Constructiva del Sólido])
  • SECCION G — FISICA > COMPUTO; CALCULO; CONTEO > TRATAMIENTO O GENERACION DE DATOS DE IMAGEN, EN GENERAL... > Interpretación de imagines 3D [Tridimensionales] > G06T15/40 (Supresión de partes escondidas)

PDF original: ES-2528605_T3.pdf

 

google+ twitter facebookPin it
Ilustración 1 de Optimización de la geometría dependiente de la conectividad para renderización en tiempo real.
Ilustración 2 de Optimización de la geometría dependiente de la conectividad para renderización en tiempo real.
Ilustración 3 de Optimización de la geometría dependiente de la conectividad para renderización en tiempo real.
Ilustración 4 de Optimización de la geometría dependiente de la conectividad para renderización en tiempo real.
Ver la galería de la patente con 12 ilustraciones.
Optimización de la geometría dependiente de la conectividad para renderización en tiempo real.

Fragmento de la descripción:

Optimización de la geometría dependiente de la conectividad para renderización en tiempo real Campo de la invención

La invención se refiere a un método para visualizar/renderizar un modelo informático. Específicamente, la invención se refiere a un método computacional eficaz para visualizar/renderizar un modelo informático.

Antecedentes de la invención

Los gráficos por ordenador en 3D se utilizan en una amplia gama de campos como el diseño asistido por ordenador (CAD) y los juegos de ordenador. Los gráficos por ordenador en 3D se pueden utilizar para generar vistas en perspectiva de modelos 3D. Esto se puede utilizar en un proceso de diseño como es el caso del CAD o con el propósito de entretenimiento como es el caso de los juegos de ordenador. Un problema común que enfrentan los gráficos por ordenador en 3D son los grandes recursos computacionales necesarios. Esto es especialmente un problema para los gráficos por ordenador en 3D en tiempo real, ya que la falta de recursos computacionales resultará en una disminución de la velocidad de fotogramas, con una correspondiente disminución de la experiencia del usuario.

La investigación intensiva en computación ha sido igualada por un aumento similar en la complejidad de los modelos por ordenador. Esto es a la vez el caso del CAD, en el que se diseñan estructuras más grandes, así como en los juegos de ordenador, en los que un mayor nivel de detalle da lugar a modelos más complejos. Un grupo común de objetos para representar con gráficos por ordenador en 3D son productos compuestos. Los productos compuestos son productos compuestos por una serie de componentes físicos más pequeños.

Ejemplos de productos compuestos que comprenden un gran número de componentes incluyen grandes máquinas, coches, aviones y otros vehículos, edificios, así como productos que se venden y se envían sin montar, tales como muebles, modelos de juguetes, etc. Un ejemplo particular de productos que se componen de un gran número de componentes más pequeños, incluyen conjuntos de construcción de juguete que incluyen una multitud de elementos de construcción de juguete ¡nterconectables.

Hay varios tipos conocidos de conceptos de modelado de tales conjuntos de construcción de juguete. Especialmente, son muy populares los conceptos modulares o semi-modulares, ya que proporcionan una interesante y desafiante experiencia de juego. Típicamente, estos conceptos proporcionan un conjunto de elementos prefabricados de construcción que se pueden interconectar entre sí de alguna manera predeterminada por medio de elementos de conexión u otros medios de acoplamiento de los elementos prefabricados. Los elementos de construcción prefabricados pueden parecerse a objetos conocidos adaptados a una tarea de modelado específico. Así, en por ejemplo, la construcción de un modelo de una casa, los elementos de construcción pueden parecerse a los ladrillos de la pared, las tejas, las puertas y las ventanas. Una ventaja de seleccionar los elementos de construcción de esta manera, es que el juego se pone dentro del sistema y el trabajo implicado en la construcción de un modelo de una casa se reduce significativamente, en comparación con una situación en la que todos los detalles de la casa se han de definir cada vez que debe hacerse un nuevo modelo. Sin embargo, la completa libertad en la construcción de una casa u otro objeto se compensa por la simplicidad de construir el modelo.

Por ejemplo, los conjuntos de construcción de juguete disponibles bajo el nombre LEGO comprenden una multitud de tipos diferentes de elementos de construcción ¡nterconectables que tienen salientes y que se corresponden con cavidades como elementos de conexión. Los elementos de conexión se disponen según patrones de cuadrícula regulares, por lo que permiten una amplia variedad de interconexiones entre los elementos de construcción.

Una manera conocida de reducir la carga computacional necesaria para visualizar/renderizar un modelo por ordenador es la determinación de oclusiones. La determinación de oclusiones funciona mediante la búsqueda de caras ocultas desde una perspectiva de visualización determinada. Los algoritmos determinación de ocultaciones conocidos son, sin embargo, lentos y hay que ejecutarlos cada vez que la vista cambia. Especialmente, esto es un problema para el diseño asistido por ordenador y para los juegos de ordenador ya que la vista en estas aplicaciones cambia a menudo típicamente, lo que resulta en una gran carga computacional provocada por el algoritmo de determinación de oclusiones.

El documento US 29/187385 A1 describe un método en el que se determina un valor de visibilidad para cada una de las partes del modelo; el valor de visibilidad se calcula mediante la evaluación de la visibilidad de la pieza desde una multitud de direcciones.

El documento US 23/1348 A1 describe un método para identificar superficies ocultas de un objeto n- dimensional al superponer una cuadrícula n-dimensional de píxeles sobre una imagen de un objeto e identificar las superficies visibles como superficies en las que se solapan píxeles visibles que forman el exterior de la imagen.

Sin embargo, sigue siendo un problema para visualizar/renderizar productos compuestos, de una forma computacionalmente eficaz.

Compendio

Un primer aspecto de la invención se refiere a un método implementado por ordenador para visualizar/renderizar un modelo de ordenador, comprendiendo el modelo de ordenador una multitud de componentes en el que el método comprende:

almacenar una multitud de piezas de al menos uno de la multitud de componentes, incluyendo cada una de las piezas información de la geometría para visualizar/renderizar la pieza,

almacenar información indicativa de las respectivas posiciones y orientaciones de una multitud de componentes en un sistema de coordenadas

determinar una relación espacial entre los componentes individuales de los componentes sobre la base de la información indicativa almacenada de las respectivas posiciones y orientaciones de la multitud de componentes

determinar, para al menos un componente y basado en la relación espacial determinada entre los componentes individuales, un número de piezas almacenadas que se van a utilizar para visualizar/renderizar el mencionado componente.

El modelo por ordenador puede representar cualquier objeto, tal como un producto compuesto, por ejemplo, un modelo de juguete o, alternativamente, un producto no compuesto, por ejemplo un carácter digital. El modelo por ordenador puede tener cualesquiera dimensiones tales como dos dimensiones o tres dimensiones. El modelo por ordenador puede ser, además, animado con el tiempo. La animación del modelo por ordenador puede implicar a todo el modelo o a los componentes seleccionados del modelo. Puede ser un componente cualquier subgrupo del modelo, tal como un elemento de construcción de juguete, cuando el modelo por ordenador representa un modelo de juguete construido de elementos de construcción de juguete o alternativamente un grupo de caras de un elemento de construcción de juguete. Puede ser una pieza cualquier subgrupo de un componente, tal como un cilindro que sobresale en un elemento de construcción de juguete o, alternativamente, un grupo de caras de un cilindro que sobresale.

En una realización, los subgrupos son subgrupos apropiados, significa que un componente no puede ser todo el modelo y que una pieza no puede ser todo el componente.

En una realización, los subgrupos no están limitados a ser subgrupos propios significa que un componente puede ser todo el modelo, y que una pieza puede ser todo el componente.

Una pieza puede comprender información de la geometría, que define la geometría de la pieza. La información de la... [Seguir leyendo]

 


Reivindicaciones:

1. Un método ¡mplementado por ordenador para visualizar/renderizar un modelo por ordenador, comprendiendo el modelo por ordenador una multitud de componentes, en el que el método comprende:

almacenar una multitud de piezas de al menos uno de la multitud de componentes, Incluyendo cada pieza Información de la geometría para visualizar/renderizar la pieza,

almacenar Información Indicativa de la posición y la orientación de una multitud de componentes en un sistema de coordenadas

determinar una relación espacial entre los componentes individuales de los componentes sobre la base de la información almacenada indicativa de la posición y la orientación de la multitud de componentes.

Determinar para al menos un componente una serie de piezas almacenadas para utilizarlas para visualizar/renderizar el mencionado componente, sobre la base de la relación espacial determinada entre los componentes individuales.

2. Un método ¡mplementado por ordenador para visualizar/renderizar un modelo por ordenador según la reivindicación 1, en el que al menos se define una zona de conexión predeterminada en relación con al menos un componente, en el que la mencionada zona de conexión es indicativa de una parte del componente que se puede conectar a una o más zonas de conexión otro componente.

3. Un método ¡mplementado por ordenador para visualizar/renderizar un modelo por ordenador según la reivindicación 2, en el que la etapa de determinar una relación espacial entre componentes individuales comprende la etapa de determinar la relación espacial de las zonas de conexión de los componentes individuales.

4. Un método ¡mplementado por ordenador para visualizar/renderizar un modelo por ordenador según la reivindicación 3, en el que la etapa de determinar la relación espacial entre zonas de conexión individuales comprende la etapa de determinar una distancia entre dos zonas de conexión, y en el que las mencionadas zonas de conexión se conectan cuando una distancia está dentro de un intervalo predeterminado.

5. Un método ¡mplementado por ordenador para visualizar/renderizar un modelo por ordenador según las reivindicaciones 3 y 4, en el que la etapa de determinar la relación espacial entre zonas de conexión individuales comprende la etapa de determinar la orientación de una zona de conexión respecto a otra.

6. Un método ¡mplementado por ordenador para visualizar/renderizar un modelo por ordenador según las reivindicaciones 4 y 5, en el que una primera parte del componente se asocia con una o más zonas de conexión, y en el que la etapa de determinar, para al menos un componente, una serie de piezas que utilizar para visualizar/renderizar el mencionado componente, comprende determinar si una o más zonas de conexión se conectan a una zona de conexión de otro componente.

7. Un método ¡mplementado por ordenador para visualizar/renderizar un modelo por ordenador según cualquiera de las anteriores reivindicaciones, en el que un primer componente comprende una primera zona de oclusión de un tipo predeterminado y un segundo componente comprende una segunda zona de oclusión de un tipo predeterminado en el que la relación espacial entre la primera y la segunda zona de oclusión se utiliza para determinar una parte del primer componente ocluido por el segundo componente.

8. Un método ¡mplementado por ordenador para visualizar/renderizar un modelo por ordenador según cualquiera de las anteriores reivindicaciones, en el que el método comprende determinar una pieza que no se utiliza para visualizar renderizar un componente cuando al menos una parte predeterminada del área superficial de la pieza está cubierta por una o más de otras piezas cuando se ve desde cualquier dirección exterior de la caja de delimitación del mencionado modelo por ordenador.

9. Un método ¡mplementado por ordenador para visualizar/renderizar un modelo por ordenador según cualquiera de las anteriores reivindicaciones, en el que la etapa de determinar para al menos un componente una serie de piezas que utilizar para visualizar/renderizar el mencionado componente comprende, además, la etapa de determinar las propiedades del material de un componente, y sobre la base, tanto de la relación espacial determinada como de las propiedades del material determinadas, determinar una serie de piezas que utilizar para visualizar/renderizar el mencionado componente.

1. Un método ¡mplementado por ordenador para visualizar/renderizar un modelo por ordenador según la reivindicación 9, en el que la etapa de determinar las propiedades del material comprende la etapa de determinar los ajustes de transparencia para un componente.

11. Un método implementado por ordenador para visualizar/renderizar un modelo por ordenador según cualquiera de las anteriores reivindicaciones, en el que el modelo por ordenador representa un producto compuesto.

12. Un método implementado por ordenador para visualizar/renderizar un modelo por ordenador según cualquiera de las anteriores reivindicaciones, en el que la primera pieza tiene un mayor nivel de detalle que la segunda pieza y en el que la etapa de determinar una serie de piezas almacenadas que usar para visualizar/renderizar el mencionado componente comprende, además, seleccionar a lo sumo una entre la primera y la segunda piezas para utilizarla para visualizar/renderizar el mencionado componente.

13. Un programa informático, en el que el programa informático comprende un código de programa de ordenador ejecutable adaptado a producir un sistema de procesamiento de datos para realizar:

al menos una etapa de diseño que comprende

proporcionar una herramienta de construcción implementada por ordenador para permitir a un usuario seleccionar una respectiva representación digital de una multitud de componentes desde un repositorio de componentes, en el que cada componente se compone de una multitud de piezas, y disponer los componentes seleccionados en una relación espacial entre si, para así generar una representación digital de un producto compuesto;

y además una etapa de procesamiento que comprende

generar una visualización/renderización de al menos una parte del producto compuesto en el que generar comprende:

almacenar una multitud de piezas de al menos uno de la multitud de componentes, incluyendo cada pieza información geométrica para visualizar/renderizar la pieza,

almacenar información indicativa de la posición y la orientación de una multitud de componentes en un sistema de coordenadas

determinar una relación espacial entre los componentes individuales de los componentes sobre la base de la información indicativa almacenada de la posición y la orientación de la multitud de componentes

determinar para al menos un componente una serie de piezas almacenadas que usar para visualizar/renderizar el mencionado componente, sobre la base de la relación espacial determinada entre los componentes individuales.

14. Un programa informático según la reivindicación 13, en el que el programa informático es un programa informático de juguete para niños.

15. Un sistema de procesamiento de datos que tiene almacenado en el mismo que tiene almacenado en el mismo, medios de código de programa adaptados a producir el sistema de procesamiento de datos para realizar las etapas del método según una cualquiera de las reivindicaciones 1 a 12, cuando los mencionados medios de código de programa se ejecutan en el sistema de procesamiento de datos.

16. Un sistema de procesamiento de datos que tiene almacenado en el mismo que tiene almacenado en el mismo, medios del código del programa adaptados a producir el sistema de procesamiento de datos para realizar las etapas del método según una cualquiera de las reivindicaciones 1 a 12, cuando los mencionados medios del código del programa se ejecutan en el sistema de procesamiento de datos.

17. Un producto de programa de ordenador según la reivindicación 16, que comprende un medio legible por ordenador que tiene almacenado en el mismo los medios del código del programa.

18. Una señal de datos de ordenador incorporada en una onda portadora y que representa secuencias de instrucciones que, cuando son ejecutadas por un procesador, producen que el procesador realice las etapas del método según una cualquiera de las reivindicaciones 1 a 12.