fbpx
Wikipedia

Bit blit

En computación gráfica, BIT BLIT (bitblt, blitting, etc) es una primitiva gráfica consistente en que dos mapas de bit son combinados en uno. Se trata de una de las primitivas gráficas más básicas y por tanto más utilizadas en gráficos 2D. La mayoría de las tarjetas de vídeo la implementan en hardware (es una de la muchas operaciones de las que se encarga la GPU).

Orígenes editar

El nombre deriva de la instrucción BitBLT (bit block transfer, transferencia de bloque de bits) del ordenador Xerox Alto. Esta operación fue creada por Diana Merry en Xerox PARC para el sistema Smalltalk-72. Para el sistema Smalltalk-74, Dan Ingalls implementó una versión rediseñada en microcódigo.

El desarrollo de métodos rápidos para varias operaciones bit blit fue la clave en la evolución de visualizaciones en ordenadores desde el uso de gráficos de caracteres, hasta el uso de gráficos de mapas de bit para todo. Las máquinas que necesitaban especial rendimiento de gráficos 2D (como las consolas de videojuegos) venían con un chip especializado llamado Blitter.

Bit Blit, técnicas y usos editar

Un uso clásico para blitting es renderizar sprites con transparencias sobre un fondo. Por razones de velocidad es normalmente inviable moverse a través de cada pixel y encontrar si esto necesita ser visualizado. Por ejemplo, si tenemos la siguiente imagen de fondo:

 

y deseamos mostrar varios sprites sobre esta imagen de fondo representando, por ejemplo, objetos de un juego para producir esto:

 
 
Sprites (Left) and Masks (Right)

Lo primero que necesitamos son los mapas de bit para los sprites y las correspondientes máscaras. Los colores tienen mucha importancia ya que el fondo del sprite y el primer plano de la máscara son negros, almacenados como ceros binarios. Los fondos de las máscaras son blancos, almacenados como unos binarios.

El primer blit usa el RasterOp de AND con el fondo y la máscara de los sprites. Debido a que cualquier valor AND con 0 igual a 0, y cualquier valor AND con 1 sin cambios, podemos crear áreas negras donde los sprites actuales aparecerán, y dejarán el resto del fondo sólo.

 

El segundo blit usa el RasterOp de OR con el fondo modificado y el sprite actual. Debido a algún valor OR con 0 sin cambios, el fondo no será afectado y las áreas negras son ocupadas con la actual imagen del sprite.

Blitting vs. sprites editar

La técnica de bliting es similar al dibujo de sprites mediante hardware, en ambos sistemas se reproduce un patrón, típicamente un área cuadrada, en diferentes localizaciones de la pantalla. Los sprites tienen la ventaja de ser alojados en una memoria separada, y por tanto no molesta a la memoria de la visualización principal. Esto les permite ser movidos sobre la visualización, cubriendo el "fondo", sin afectarlo.

La técnica de blitting mueve los mismos tipos de patrones sobre la pantalla, pero escribiendo tanto en la misma memoria como en el resto de la visualización. Esto significa que el patrón se sitúa todo el tiempo "bajo" la pantalla de la visualización (mientras éste es sobreescrito). Éste es alzado hacia el software para encauzarlo mediante blitting de dos maneras, una vez para eliminar "la suciedad", y luego otra vez para emplazar el bit en su nueva localización. Sin embargo, hay varios caminos para optimizar esto. Si grandes áreas de la pantalla son tomadas por los patrones, puede ser más eficiente "blitear" el fondo de la pantalla en lugar de estar borrando cada patrón individualmente. La variación supone dividir la pantalla en segmentos y borrar únicamente los segmentos donde los patrones han sido dibujados. Esta técnica es conocida como ensuciado de rectángulos.

Como uno podría imaginar, todo esto hace que la técnica de blitting sea significativamente más lenta que la manipulación de sprites. Sin embargo el blitting tiene una gran ventaja, no está limitado físicamente al número de patrones que se puedan "blitear", o al tamaño de los patrones. Se puede usar blitting para mostrar cualquier cosa en la pantalla, incluyendo simulación de sprites (a través de un patrón de doble escritura), o un evento de texto.

Enlaces externos editar

  •   Datos: Q878737
  •   Multimedia: Bit blit / Q878737

blit, computación, gráfica, blit, bitblt, blitting, primitiva, gráfica, consistente, mapas, combinados, trata, primitivas, gráficas, más, básicas, tanto, más, utilizadas, gráficos, mayoría, tarjetas, vídeo, implementan, hardware, muchas, operaciones, encarga, . En computacion grafica BIT BLIT bitblt blitting etc es una primitiva grafica consistente en que dos mapas de bit son combinados en uno Se trata de una de las primitivas graficas mas basicas y por tanto mas utilizadas en graficos 2D La mayoria de las tarjetas de video la implementan en hardware es una de la muchas operaciones de las que se encarga la GPU Indice 1 Origenes 2 Bit Blit tecnicas y usos 3 Blitting vs sprites 4 Enlaces externosOrigenes editarEl nombre deriva de la instruccion BitBLT bit block transfer transferencia de bloque de bits del ordenador Xerox Alto Esta operacion fue creada por Diana Merry en Xerox PARC para el sistema Smalltalk 72 Para el sistema Smalltalk 74 Dan Ingalls implemento una version redisenada en microcodigo El desarrollo de metodos rapidos para varias operaciones bit blit fue la clave en la evolucion de visualizaciones en ordenadores desde el uso de graficos de caracteres hasta el uso de graficos de mapas de bit para todo Las maquinas que necesitaban especial rendimiento de graficos 2D como las consolas de videojuegos venian con un chip especializado llamado Blitter Bit Blit tecnicas y usos editarUn uso clasico para blitting es renderizar sprites con transparencias sobre un fondo Por razones de velocidad es normalmente inviable moverse a traves de cada pixel y encontrar si esto necesita ser visualizado Por ejemplo si tenemos la siguiente imagen de fondo nbsp y deseamos mostrar varios sprites sobre esta imagen de fondo representando por ejemplo objetos de un juego para producir esto nbsp nbsp Sprites Left and Masks Right Lo primero que necesitamos son los mapas de bit para los sprites y las correspondientes mascaras Los colores tienen mucha importancia ya que el fondo del sprite y el primer plano de la mascara son negros almacenados como ceros binarios Los fondos de las mascaras son blancos almacenados como unos binarios El primer blit usa el RasterOp de AND con el fondo y la mascara de los sprites Debido a que cualquier valor AND con 0 igual a 0 y cualquier valor AND con 1 sin cambios podemos crear areas negras donde los sprites actuales apareceran y dejaran el resto del fondo solo nbsp El segundo blit usa el RasterOp de OR con el fondo modificado y el sprite actual Debido a algun valor OR con 0 sin cambios el fondo no sera afectado y las areas negras son ocupadas con la actual imagen del sprite Blitting vs sprites editarLa tecnica de bliting es similar al dibujo de sprites mediante hardware en ambos sistemas se reproduce un patron tipicamente un area cuadrada en diferentes localizaciones de la pantalla Los sprites tienen la ventaja de ser alojados en una memoria separada y por tanto no molesta a la memoria de la visualizacion principal Esto les permite ser movidos sobre la visualizacion cubriendo el fondo sin afectarlo La tecnica de blitting mueve los mismos tipos de patrones sobre la pantalla pero escribiendo tanto en la misma memoria como en el resto de la visualizacion Esto significa que el patron se situa todo el tiempo bajo la pantalla de la visualizacion mientras este es sobreescrito Este es alzado hacia el software para encauzarlo mediante blitting de dos maneras una vez para eliminar la suciedad y luego otra vez para emplazar el bit en su nueva localizacion Sin embargo hay varios caminos para optimizar esto Si grandes areas de la pantalla son tomadas por los patrones puede ser mas eficiente blitear el fondo de la pantalla en lugar de estar borrando cada patron individualmente La variacion supone dividir la pantalla en segmentos y borrar unicamente los segmentos donde los patrones han sido dibujados Esta tecnica es conocida como ensuciado de rectangulos Como uno podria imaginar todo esto hace que la tecnica de blitting sea significativamente mas lenta que la manipulacion de sprites Sin embargo el blitting tiene una gran ventaja no esta limitado fisicamente al numero de patrones que se puedan blitear o al tamano de los patrones Se puede usar blitting para mostrar cualquier cosa en la pantalla incluyendo simulacion de sprites a traves de un patron de doble escritura o un evento de texto Enlaces externos editarTutorial de Bitblt enlace roto disponible en Internet Archive vease el historial la primera version y la ultima nbsp Datos Q878737 nbsp Multimedia Bit blit Q878737 Obtenido de https es wikipedia org w index php title Bit blit amp oldid 117879831, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos