A method of buffering graphics vertex commands adaptively. A minimally-formatted vertex values buffer is created. As vertex commands are received from application software, attribute values are stored in an attribute values buffer until a vertex coordinate command is received. Upon receipt of a vertex coordinate command, attribute values are copied from the attribute values buffer into the vertex values buffer. Whenever application software issues a vertex attribute command corresponding to an attribute type that is not currently reflected in the vertex values buffer format, the vertex values buffer is automatically reformatted to include the new attribute type. Thus, the vertex values buffer automatically adapts itself to the behavior of the application. Multiple primitives are buffered between flushes. First-call and subsequent-call versions of code are provided for vertex commands. At initialization, a dispatch table is populated with pointers to the first-call versions. Thereafter, the dispatch table entries are manipulated by the commands themselves. Multiple subsequent-calls versions are provided for a single vertex coordinate command, each of the different subsequent-calls versions optimized for a different vertex values buffer format. The first-call version of the command determines which of the subsequent-calls versions is optimal for the current vertex values buffer format, and places a pointer to the optimized version in the dispatch table. Thereafter, the copying of values from the attribute values buffer into the vertex values buffer is done by the subsequent-calls version in a manner that corresponds exactly to the current vertex values buffer format, and without making any decisions.

Un método de proteger cima de los gráficos ordena adaptante. Se crea un almacenador intermediario mi'nimo-ajustado a formato de los valores de la cima. Mientras que los comandos de la cima se reciben de software de uso, los valores de la cualidad se almacenan en un almacenador intermediario de los valores de la cualidad hasta que se recibe un comando del coordenada de la cima. Sobre recibo de un comando del coordenada de la cima, los valores de la cualidad se copian del almacenador intermediario de los valores de la cualidad en el almacenador intermediario de los valores de la cima. Siempre que el software de uso publique un comando de la cualidad de la cima que corresponde a un tipo de la cualidad que no se refleje actualmente en la cima valora el formato del almacenador intermediario, los valores de la cima que el almacenador intermediario se cambia formato automáticamente para incluir el nuevo tipo de la cualidad. Así, el almacenador intermediario de los valores de la cima se adapta automáticamente al comportamiento del uso. Los primitivos múltiples se protegen entre los rubores. Primero-llame y subsecuente-llame las versiones del código se preven comandos de la cima. En la inicialización, una tabla del envío se puebla con los indicadores a primero-llama versiones. Después de eso, las entradas de la tabla del envío son manipuladas por los comandos ellos mismos. Múltiple subsecuente-llama versiones se preven un solo comando del coordenada de la cima, cada uno del diferente subsecuente-llama versiones optimizadas para un diverso formato del almacenador intermediario de los valores de la cima. Primero-llame la versión del comando se determina cuál de subsecuente-llama versiones es óptimo para el formato actual del almacenador intermediario de los valores de la cima, y coloca un indicador a la versión optimizada en la tabla del envío. Después de eso, el copiado de valores del almacenador intermediario de los valores de la cualidad en los valores de la cima que el almacenador intermediario es hecho por subsecuente-llama la versión de una manera que corresponda exactamente al formato actual del almacenador intermediario de los valores de la cima, y sin tomar ningunas decisiones.

 
Web www.patentalert.com

< (none)

< Technique for reducing the frequency of frame buffer clearing

> Surface normal compression/decompression storing two vector components

> (none)

~ 00024