InicioApuntes Y MonografiasEfectos gráficos en los Videojuegos

Hola a todos. Bueno este es mi primer post a pesar de que ya tiene bastante tiempo que me uní a esta familia, pero el motivo por el cual no hacia un post fue porque no sabía sobre que hacerlo, así que me decidí por hacer un tema del cual muchos no comprendemos a la perfección; los gráficos en los videojuegos, así es les hablare de esos efectos gráficos que le dan vida a nuestros títulos favoritos.

Aclaro que los conceptos y algunas explicaciones han sido corregidas pero son de una página cuya fuente pondré a final de este post. Las imágenes contenidas en este post son screenhots y renders hechos por mí. Otra cosa es que encontré un post similar a este pero lo vi incompleto por eso hago este, aparte de que abarco otros temas más, así quen no es repost.

Espero que les sea de ayuda a muchos para que entiendan mejor sobre estos efectos y sobre la renderización.

Renderización
Renderizado (render en inglés) es un término usado en informática para referirse al proceso de generar una imagen desde un modelo. Este término técnico es utilizado por los animadores o productores audiovisuales y en programas de diseño en 3D.

En términos de visualizaciones en una computadora, más específicamente en 3D, la renderización es un proceso de cálculo complejo desarrollado por un ordenador destinado a generar una imagen 2D a partir de una escena 3D. La traducción más correcta es interpretación, aunque se suele usar el término inglés. Así podría decirse que en el proceso de renderización la computadora interpreta la escena en tres dimensiones y la plasma en una imagen bidimensional.

La renderización se aplica en la computación gráfica, más comúnmente a la infografía. En infografía este proceso se desarrolla con el fin de imitar un espacio 3D formado por estructuras poligonales, comportamiento de luces, texturas, materiales (agua, madera, metal, plástico, tela, etcétera) y animación, simulando ambientes y estructuras físicas verosímiles. Una de las partes más importantes de los programas dedicados a la infografía son los motores de renderizado, los cuales son capaces de realizar técnicas complejas como radiosidad, raytrace (trazador de rayos), canal alfa, reflexión, refracción o iluminación global.

Cuando se trabaja en un programa de diseño 3D por computadora, normalmente no es posible visualizar en tiempo real el acabado final deseado de una escena 3D compleja ya que esto requiere una potencia de cálculo demasiado elevada, por lo que se opta por crear el entorno 3D con una forma de visualización más simple y técnica y luego generar el lento proceso de renderización para conseguir los resultados finales deseados. El tiempo de render depende en gran medida de los parámetros establecidos en los materiales y luces, así como de la configuración del programa de renderizado.

Normalmente cada aplicación de 3D cuenta con su propio motor de renderizado, pero cabe aclarar que existen plugins que se dedican a hacer el cálculo dentro del programa utilizando fórmulas especiales. En el caso de los videojuegos, normalmente se utilizan imágenes prerendereadas para generar las texturas y así ayudar al procesador de la consola a trabajar en el entorno virtual con mucha más fluidez.

Mapa pre renderizado
Los mapas pre renderizados se suelen utilizar en los juegos y significa que el mapa, o sea las paredes, el suelo y muchos objetos ya han sido renderizadas y solo se renderiza en tiempo real el personaje o los bots.

Frecuentemente las escenas de introducción o los vídeos de dentro de un juego también son pre renderizados, o sea, que los han renderizado anteriormente los diseñadores gráficos y los han convertido en vídeo, ya que sino se necesitaría mucho PC para poder renderizar y que se viera fluido.

Generalmente al instalar el juego ya se copian estos vídeos, o en la instalación mínima se suelen coger del cd-rom mientras estás jugando.
Casi siempre los mapas pre renderizados estalvian mucho uso de CPU y de tarjeta gráfica, ya que estás no han de renderizar en tiempo real, sino que solo deben enseñarte un vídeo.

Normalmente los mapas pre renderizados pierden mucha calidad ya que suelen ser simples texturas, es por este motivo que los juegos actuales cada vez lo usan menos y hacen la renderización en tiempo real a causa de la evolución del hardware actual.

Como pueden observar la captura de pantalla de este juego (concretamente Resident Evil 3 de PC) los escenarios ya han sido renderizados, al contrario de la chica que se renderiza en tiempo real cuando tu la mueves.

Estos son Screenshot del juego Resient Evil 3 (Version PC.

Aquí se pude observar como estas escenas son pre-renderizadas y convertidas en videos para el juego. Pues de esta manera el jugador disfruta mejor las escenas a un nivel visual espectacular sin consumir muchos recursos de hardware.


En estas imágenes se observa como fue pre-renderizado todo el escenario de forma que se vea agradable el entorno y realista, mientras que los personajes se renderizán en tiempo real viéndose esto con calidad poligonal y un texturizad mucho más pobre.

Prerrenderización
La prerrenderización se basa en el uso de la imagen o textura en un juego que fue renderizada a través de un motor gráfico mucho más potente que el que se usa en el juego (uno profesional), por lo cual el motor gráfico del juego sólo se ocupa de calcular la posición de esa textura y no de todo su contenido, ya que es mucho más fácil para un ordenador calcular píxeles que montones de polígonos texturados y afectados por luces, sombras, reflejos, etc.

Se utilizaba mucho principalmente en juegos antiguos (anteriores al 2003 se podría decir), que eran una mezcla de 3D y 2D, ya que lo único que el motor gráfico calculaba en 3 dimensiones eran los objetos dinámicos (personajes, objetos que podían ser guardados o utilizados, etc.) mientras que los fondos eran una textura inmóvil. Se usaban cajas de colisión para que un personaje pudiera simular estar golpeando los objetos de esa textura inmóvil, y así no traspasarlos. La principal desventaja de este método era que no se podía usar una cámara libre, sino que el campo de visión del jugador se basaba en un montón de posiciones predeterminadas de la cámara teniendo en cuenta la posición del personaje. Este método se utilizó mucho en los primeros juegos de series como Resident Evil y Dino Crisis, entre otros.

Actualmente la prerrenderización se usa sólo para texturar objetos 3D estáticos. Por ejemplo, prerrenderizando una pared en la cual hay una sombra, se consigue que el motor gráfico no tenga que calcular en cada fotograma la posición y todas las características de la sombra, si no solamente la imagen previamente asignada al objeto. También para otros detalles mínimos, aunque posiblemente en el futuro prácticamente no se necesite debido a que le quita dinamismo a los gráficos: tomando como ejemplo la sombra prerrenderizada del caso anterior, esa sombra no podría ya ser modificada en otros aspectos como la luz o la posición del objeto que la está generando, ya que el motor gráfico no lo está calculando.

Usos erróneos de la palabra (render)
Desde hace varios años diseñadores aficionados han llamado «render» a aquellas imágenes que usan el canal alpha para eliminar el fondo y facilitar la edición de dicha imagen, a pesar de que dicha edición no utiliza ningún motor de renderización. Este término mal empleado se ha expandido por todo Internet, con mayor influencia en páginas donde se publican tutoriales gratis de edición de imágenes digitales, permitiendo así que los nuevos diseñadores aficionados empleen de forma errónea el término (render).

Términos gráficos generales.

Gráficos 2D
Son los gráficos que no tienen profundidad. Un ejemplo de esto es esta imagen de un juego de antaño:


En los inicios de los videojuegos todos los juegos se hacían en 2d y hasta hace pocos años no se crearon juegos poligonales renderizados en tiempo real y en 3d.

En el inicio de las tarjetas aceleradores y la evolución de las tarjetas gráficas empezaron a surgir este tipo de juegos.

Como podemos ver en esta imagen no hay profundidad, solo hay 2d ya que el personaje solo se puede mover de lado, hacia la izquierda o hacia la derecha, pero nunca hacia dentro.

Gráficos 3D
Se llaman gráficos 3D a todos los objetos que se pueden dibujar en un espacio R3: puntos, segmentos, curvas, superficies y varios cuerpos formados por caras poligonales, así como textos y macros.

En una palabra, son gráficos que tienen profundidad y además aportan mucha sensación de realismo.

En los juegos en 3d el personaje que manejamos o cualquier bot se puede mover en los tres ejes cartesianos: x, y , z.

La mayoría de juegos 3d han sido modelados mediante polígonos formando una malla y a continuación han sido renderizados.

En esta imagen se puede apreciar la sensación de profundidad, de este modo llegamos a la conclusión que el gráfico está en 3d como se puede apreciar fácilmente.



Polígono
Es una figura cerrada con espacio dentro y fuera de él, construido al menos por tres líneas. Los triángulos de tres caras forman la base de creación de objetos en 3d.

En casi todos los juegos los objetos son construidos con polígonos estructurados en una gran variedad de formas para crear una imagen real.

En la mayoría de los casos, se necesitan cientos o miles de polígonos para un objeto sencillo en 3D, con la consiguiente cantidad de datos para generar y manipular, la cual cosa hace que el juego haga mucho uso del microprocesador y de la tarjeta gráfica.

En esta imagen podemos observar un simple triángulo en dos dimensiones (x,y) y dos objetos usando polígonos par dar forma a unos personajes.



Pixel
El pixel es la unidad más pequeña que un adaptador puede generar.

Los colores que pueden tener los pixeles dependen de la tarjeta de vídeo que se posea.

Si tienes una resolución grande de 1024x768 los píxeles serán de un tamaño diminuto, si por lo contrario tienes una resolución muy baja de 640x480 veras que cada pixel parece un bloque.

La palabra pixel viene de la abreviación del término inglés PEL -picture element- (elemento de dibujo), y representa la unidad mínima capaz de ser representada por el monitor en una resolución.

En las siguientes imágenes se puede a preciar que cuando la resolución sea más alta, la imagen se verá mejor definida y de cierta forma más pequeña (imagen izquierda), mientras que cuando se tenga una resolución pequeña la imagen se verá más grande y por consecuencia se notaran los pixeles que la conforman (Imagen derecha).



Sprite
Un sprite es un objeto gráfico que puede ser movido por encima de una imagen de fondo (Un cursor).

Un juego donde se puede ver los sprites es por ejemplo Zelda en sus versiones más antiguas.

Como podemos ver en la siguiente imagen son colores que de acuerdo a una posición formar objetos por medio de coordenadas.



Tasa de frames o framerate
La tasa de frames representa el número de imágenes (frames) por segundo que tiene un vídeo o un juego.
Por ejemplo, un valor de 30 frames por segundo significa que se pintan todos los objetos de la pantalla 30 veces en un segundo.

Normalmente un valor de 30 frames segundos es un buen valor en un videojuego, si tenemos este buen valor difícilmente tendremos un mal "scroll".

Si la tasa de frames es muy baja mientras estas jugando veras que este da muchos tirones, es decir, que no se mueve fluido y puede ser que se aprecie el juego en cámara lenta.

La tasa de frames varia normalmente a causa del hardware, una mala tarjeta gráfica hará que los juegos vayan a tirones e igualmente un microprocesador obsoleto.

Pero muchos de ustedes se preguntaran, ¿Por qué el hardware? Pues básicamente este es el encargado de renderizar todos los objetos y si no puede ir más rápido observaremos tirones en los videojuegos y una tasa de frames muy baja.

Los frames por segundo también están relacionados con la resolución que se tenga ya que nuestro hardware movera más fácilmente 640x480 líneas que tenga que pintar 1024x768.

VSync
El VSync es una función que sirve para sincronizar el numero de frames generado por la tarjeta gráfica con la tasa de refresco del monitor; a fin de prevenir que aparezcan defectos visuales, tales como bandas, parpadeos, movimientos bruscos, etc.

¿Porque sucede esto? Pues porque mientras que casi cualquier tarjeta de video moderna es capaz de generar una gran cantidad de cuadros por segundo 80, 100, 120, 150... etc.; los monitores estándares solo puede mostrar un número limitado de cuadros por segundo de 85 a 100, dependiendo de que tan bueno sea el monitor, al generar la tarjeta mas cuadros de los que el monitor puede presentar se genera una desincronización que genera los problemas antes expuestos; de ahí el nombre VSync que significa sincronización vertical.

El tenerlo activado o no, no afecta el rendimiento, pero si tu tarjeta en cierto juego genera m{as cuadros por segundo de los que puede refrescar tu monitor es mejor activarlo para no tener ningún efecto no deseado, pero si genera menos de los que puede refrescar tu monitor no te afecta en nada.

DirectX
DirectX es una colección de API desarrolladas para facilitar las complejas tareas relacionadas con multimedia, especialmente programación de juegos y vídeo, en la plataforma Microsoft Windows.

DirectX consta de las siguientes API

Direct3D: utilizado para el procesamiento y la programación de gráficos en tres dimensiones (una de las características más usadas de DirectX).
Direct Graphics: para dibujar imágenes en dos dimensiones (planas), y para representar imágenes en tres dimensiones.
DirectInput: para procesar datos del teclado, mouse, joystick y otros controles para juegos.
DirectPlay: para comunicaciones en red.
DirectSound: para la reproducción y grabación de sonidos de ondas.
DirectMusic: para la reproducción de pistas musicales compuestas con DirectMusic Producer.
DirectShow: para reproducir audio y vídeo con transparencia de red.
DirectSetup: para la instalación de componentes DirectX.
DirectCompute: lenguaje e instrucciones especiales para el manejo de cientos o miles de hilos de procesamiento, especial para procesadores de núcleos masivos.

A pesar de ser desarrollado exclusivamente para la plataforma Windows, se está desarrollando una implementación de código abierto de su API para otros sistemas.

Historial de lanzamientos



Bueno existen varias versiones pero solo mencionare las más destacadas las que hoy en día son de mayor utilidad.

DirectX 10
Como cambio mayor en la API DirectX, DirectX 10 es lanzado junto a Windows Vista y es exclusivo de este sistema; versiones anteriores de Windows no pueden ejecutar aplicaciones exclusivas de DirectX 10 de manera oficial.

Muchas partes de la API fueron sacadas en el último DirectX SDK y se mantienen únicamente con motivos de compatibilidad: DirectInput fue retirado en favor de XInput, DirectSound fue reemplazado por XACT con la consecuente pérdida de soporte de aceleración de hardware, debido a nuevas características en la pila de audio de Windows Vista, la cual renderiza el audio directamente al procesador.
Para mantener una compatibilidad hacia atrás, DirectX de Windows Vista contiene muchas versiones de Direct3D:

Direct3D 9: emula el comportamiento de Direct3D 9 como lo era en Windows XP. Las ventajas del nuevo Windows Display Driver Model de Vista no son mostradas a la aplicación si no están instalados controladores WDDM.
Direct3D 9Ex: permite acceso total a las nuevas capacidades de WDDM (si están instalados controladores compatibles con WDDM) a la vez que se mantiene compatibilidad con aplicaciones Direct3D existentes. La interfaz de usuario Windows Aero trabaja en D3D 9Ex.
Direct3D 10: Diseñada alrededor del nuevo modelo de controlador de Windows Vista y proporcionando muchas mejoras a las capacidades y flexibilidad de renderizado, incluyendo el Shader Model 4.

Direct3D 10.1 es una actualización incremental de Direct3D 10, la cual se incluye y requiere de Windows
Vista Service Pack 1. Esta release sólo determina algunos estándares de calidad para los fabricantes de tarjetas gráficas, a la vez que proporciona a desarrolladores más control en la calidad de la imagen.4 También incluye una serie de nuevos requerimientos mínimos al hardware, como Shader Model 4.1 y operaciones de punto flotante de 32-bit. Direct3D 10.1 soporta completamente el hardware Direct3D 10, pero para acceder a las nuevas características se necesita de una tarjeta nueva.

Sin embargo hay que tener en consideración, que a pesar de que Microsoft trato de mantener en DirectX 10 cierta retrocompatibilidad, hay programas (especialmente videojuegos creados antes de la aparición de DirectX 10) que requieren tener instalado algunos de los archivos de DirectX 9; pero los cuales no fueron considerados que estuvieran presentes en la versión DirectX 10. Debido a ello igualmente a los usuarios de Windows Vista, se les sugiere también haber instalado la última versión de DirectX 9.0c (actualizaciones bimensuales); con el objetivo de mejorar la compatibilidad entre Windows Vista y los programas que requieran DirectX 9 (ambas versiones de DirectX son compatibles, ya que solo serán instalados los archivos que no están presentes en la versión posterior de DirectX; con lo cual DirectX 10 aún permanecerá como la versión instalada en Windows Vista).

Ejemplo grafico entre DirectX 9 vs DirectX 10:


Como se puede observar e la imagen anterior en cuanto a objetos no aporta mucho que digamos DirecX 10 puesto que toman volumen las piedras que se encuentran en el suelo en comparación con DirectX 9, pero si hablamos de ambientación se nota mucho la diferencia, ya que con DX10 se aprecia como hay partículas en el ambiente que son afectadas por las sombras generadas de las palmeras, haciendo que se vean unos ligeros rayos y además tiene un mejor alcance de renderizado pues se ve un conjunto mayor de palmeras al fondo que con DX9.

En conclusión se podría decir que a lo mejor se podría lograr esto con tan solo DX9 per probablemente no estaban optimizadas estas funciones con DX9 por lo cual no se podían implementar con tanta libertad como lo hizo DX10.

DirectX 11
DirectX ® 11, la próxima generación de tecnología de gráficos, llega con Windows 7. Esta es una gran noticia para los jugadores ya que muchos de los juegos más novedosos para Windows aprovechan al máximo esta tecnología para crear mundos de manera más inmersiva y detallada, tanto como para mejorar las experiencias visuales. Los desarrolladores de juegos utilizan las nuevas características para crear mundos ricos, personajes realistas, y hacer más fluido el juego.

DirectX 11 características, incluyen:

Teselación - Teselación se ejecuta sobre la GPU para calcular una superficie más suave curva que resulta en imágenes detalladas de manera más gráfica, incluyendo más personajes llenos de vida en los mundos de juego que explorar.
Multi-Threading - La capacidad de las escalas dentro de las CPU Multinúcleo permitirá a los desarrolladores aprovechar mejor el poder dentro de ellas. El resultado será FPS más rápidos para los juegos, sin dejar de apoyar el mayor detalle visual posible.
DirectCompute - Los desarrolladores pueden utilizar la potencia de las tarjetas gráficas discretas (De gama Baja) para acelerar los juegos y aplicaciones. Esto mejora los gráficos, al mismo tiempo permitiendo a los jugadores acelerar las tareas diarias, como la edición de vídeo, en su PC de Windows.

Ejemplo de Teselación:


En esta imagen podemos ver como gracias al Teselado se puede mejorar un objeto 3D pues ya que contiene un mayor número de polígonos que lo definen dándole una forma más realista.


En esta otra imagen vemos como gracias al teselado se definen mejor las piedras que conforman el piso para darle un mejor realismo visualmente.

Efectos gráficos

Filtrado anisotropico
El filtrado anisotrópico mezcla la función de aplicar una textura en todas sus dimensiones, implementando filtrados bilineales o trilineales de forma mucho más precisa para difuminar las líneas de los píxeles, en función del ángulo y la distancia desde la que se visualizan.

En definitiva, logra que las texturas tengan un aspecto más realista y evita que se produzcan "bailes de píxeles" con texturas que están a mayor distancia o en ángulos oblicuos desde nuestra perspectiva.
Merece la pena activarlo en entornos bajo OpenGL o Direct3D, aunque sólo si dispones de una tarjeta de última generación, ya que si no puede afectar gravemente el rendimiento.

Como podéis observar en la imagen de la izquierda el filtro anisotrópico está desactivado y se aprecia fácilmente en la calidad de la textura del suelo, que en la distancia pierde mucha definición y se vuelve.

En la imagen de la derecha el filtrado anisotrópico está activado y podemos ver que la textura mantiene la misma calidad tanto arriba como abajo viéndola perspectiva mente.

En una palabra, que sin filtro anisotrópico la textura pierde calidad y se vuelve borrosa en la lejanía y con el filtro anisotrópico activado no.

Aquí pueden ver un claro ejemplo del filtrado anisotrópico, como la textura de la madera se torna algo borrosa del lado izquierdo.



Anti-aliasing
El antialiasing es la técnica usada para la disminución de esas pequeñas escaleritas que se forman dentro de una línea recta o curva cuando tendría que verse una línea o curva totalmente uniforme, es decir, elimina el molesto "efecto de sierra o efecto aliasing" que se produce en las aristas de los polígonos de una escena 3D debido a que los pixels presentan una forma cuadrada.

Pero no nos engañemos, el antialiasing no elimina las dientes de sierra, simplemente las disimula.
Actualmente, esta técnica está siendo utilizada en las nuevas tarjetas 3D, para sacarle más provecho y realismo a los juegos en 3D.




En este render vemos como en la proyección de lado izquierdo no hay antialiasing activado y vemos las aristas, mientras que del lado derecho ha sido activado y las aristas se ven disminuidas.

Bump Mapping
La técnica del Bump mapping se utiliza para agregar el detalle a una imagen sin aumentar el número de polígonos.

Crea un relieve en la superficie del objeto mediante el uso de texturas sin cambiar la superficie del objeto.
En definitiva que teniendo un polígono plano y aplicamos bump mapping conseguiremos que parezca que tenga relieve, cuando en realidad el objeto no la tiene.

Son aplicados correspondiendo a una serie de pixeles coloreados en el objeto renderizado.
Normalmente, dentro de la programación de juegos, el programador crea generalmente una versión alterna para que no tenga que utilizar Bump mapping, pero esta versión será de más baja calidad.


En esta imagen se puede apreciar como del izquierdo no se nota un relieve en el azulejo mientras del lado derecho se marca un ligero relieve para poderle dar un mejor realismo al suelo.

Filtrado Bilinear
El filtro bilineal es unas de las maneras más simples de evitar el efecto de pixelado (grandes cuadros para dibujar el entorno) sin texturas, lo cual puede ser especialmente visible cuando un personaje se mueve cerca de un objeto con textura mapeada.

El filtro bilinear suaviza las texturas coloreando cada texel, con un rango de colores cercano a los 4 texel de alrededor.

La diferencia de calidad es muy grande, en especial en aquellos casos donde el mapeado de texturas ha sido realizado.

En las dos imágenes se puede observar la diferencia, en la imagen izquierda no está activado y se ven cuadraditos en las texturas, en cambio en la inferior el filtro ha sido activado y la textura se ve mucho más realista.



Filtro trilinear
En pocas palabras podemos decir que el cometido del Filtro trilinear es logras texturas más realistas y reduce los parpadeos de la imagen.

Podemos decir que el filtro trilinear es prácticamente lo mismo que el bilinear pero más, es decir, si el bilinear reduce un 20% los cuadraditos de las texturas, el trilinear lo hará un 40% (estos % son solo como ejemplo, no tienen nada de real).

Como pueden ver la diferencia de calidad no es asombrosa pero si nos fijamos más detalladamente veremos que la calidad mejora un poco.



Mip Mapping
El Mip mapping es un efecto muy básico y que conocemos todos, y que se confunde a veces con el antialiasing.

El Mip mapping es el encargado de difuminar las texturas para que no pixelen, suavizándola más o menos según el tipo. Aquí tendríamos un polígono sin Mip mapping...

Como pueden ver se ven varios quadraditos en la textura, en la próxima imagen serán corregidos con dicho efecto:


La calidad de este filtrado también depende de la paleta de color que se use, cuanto mayor sea mejor. También es la culpable de que a veces las texturas se vean borrosas.

Cuando una textura es pequeña, sin mip mapping será un conjunto de enormes píxeles. Con Mip mapping serían un enorme borrón. En cualquier caso siempre queda mejor, como podemos ver a continuación...

En una palabra: el mip mapping se utiliza para que las texturas no pixelen (se vean cuadraditos) y se suavicen.

Environment Mapping
El environment mapping consiste en una imagen que es proyectada, que se refleja, en ciertos objetos.

El ejemplo más común es el de los juegos de coches. En los cristales siempre vemos árboles pasando, o montañas... o sea, una imagen cualquiera con montañas u árboles dibujados que se refleja en el cristal (o en la carrocería o en donde sea) para simular que refleja el entorno.

Aquí pueden observar una imagen sin mapeado de entorno:



La diferencia es óbvia, en la primera imágen es una textura simple y con un realismo bajo, en cambio en el segunda se refleja la textura de la primera imagen.


He de aclarar algo importante, pues este environment mapping no sirve para reflejar como tal el entorno que rodea al objeto (azulejo), si no como reflejo tendremos la imagen seleccionada para el objeto en este caso la imagen de un paisaje.
Como pueden observar la calidad se paga, y el que la paga es la tarjeta gráfica y el microprocesador.

Fogging (Efecto de niebla)
El efecto de fogging también se puede llamar efecto de niebla y es uno de los efectos atmosféricos más comunes. Hace que los objetos cercanos se vean claramente, mientras que los más lejanos se ven atenuados.

Este efecto no es sólo un efecto atmosférico, si no que los desarrolladores lo usan para reducir la cantidad de detalle de una determinada escena, reduciendo el proceso de carga y acelerando el renderizado.

Por lo tanto, lo que hacen los programadores es poner un poco de niebla en el horizonte con el fin que el motor gráfico se libere de renderizar lo que hay detrás de la niebla.

De este modo, no parece que sea un "truco" para renderizar menos objetos, sino que parece un efecto atmosférico.

En esta imagen podemos apreciar una muy buena comparativa, en la imagen de la izquierda nuestro microprocesador y nuestra tarjeta gráfica tienen que renderizar los nueve palos que se ven y todo el suelo hasta el horizonte, en cambio en la imagen de la derecha se a aplicada el efecto de niebla y el micro y la gráfica se libra prácticamente de renderizar los ocho palos del fondo y parte del suelo.

Como ven puede ser un efecto muy práctico a la hora de subir los frames por segundo; ya que si se renderiza la mitad de los objetos los frames por segundo serán de casi del doble no?.



Depth of Field
La profundidad de campo (DOF) es la distancia entre los objetos más cercanos y más lejos en una escena que parece aceptable en una imagen nítida. Aunque una lente precisamente puede enfocar a sólo una distancia a la vez.

Esto es que entre más lejos este el objeto más borroso se verán estos, debido a que la camara solo tiene un rango de enfoque.



Resolucion
La resolución es el número de puntos que es capaz de presentar por pantalla una tarjeta de vídeo, tanto en horizontal como en vertical.

Así, una resolución de "16x16" significa que la imagen está formada por 16 rectas horizontales de 16 puntos cada una, como en la siguiente imagen:


Por este motivo es lógico que sea mejor jugar con un monitor o televisor que soporte resoluciones altas, ya que la calidad de imagen mejorara pues se verá mejor compuesta la imagen, pero a mayor resolución los frames irán disminuyendo si la tarjeta de video no es lo suficientemente potente para soportar altas resoluciones.

Textura
Una textura es un conjunto de píxeles que se aplica a un polígono.

De la misma manera podemos decir que se denomina así no sólo a la apariencia externa de la estructura de los materiales, sino al tratamiento que puede darse a una superficie a través de los materiales. Puede ser táctil, cuando presenta diferencias que responden al tacto, y a la visión, rugosa, áspera, suave, etc.

La textura es expresiva, significativa y trasmite de por sí reacciones variables en el espectador, las que son utilizadas por los artistas, que llevan la materia a un nivel superior del que ella tiene, para aumentar el grado de contenido a transmitir en su obra.

Como todos sabemos todos los objetos de nuestro alrededor tienen texturas: la mesa, de madera; el asfalto, aquel granizado... Muchos objetos de nuestro alrededor tienen una textura.

Las texturas son de vital importancia en los videojuegos ya que le aportan mucho realismo, ya que sino un juego sin texturas en que el suelo, las paredes ni nada tuviese texturas seria todo de color, como os podéis imaginar no seria lo mismo jugar en una textura de arena que en un suelo de color negro.

El hardware encargado de renderizar las texturas en los videojuegos para que nosotros las podemos ver es básicamente la tarjeta gráfica, pero también suele intervenir el microprocesador.

Ejemplos te dextura:



Iluminacion o lighting
Como podéis deducir se necesitan luces para iluminar los objetos 3D para que parezcan lo más reales posibles en la renderización final.

Podemos distinguir 4 tipos de luces en el diseño 3d:
Omni Lights: Es como un foco de iluminación en todas direcciones, como un foco en medio de una habitación que ilumina a todas las paredes.
Spot Lights: Es un tipo de luz que ilumina parte de un objeto, si tenemos una pared y aplicamos el foco veremos que no se ilumina toda, si no la parte en que apunta el foco
Ambient Lights: Que presenta al objeto 3D en cualquier lugar del espació.
Specular Highlights: Son los reflejos de la luz en los objetos, (suelen consumir bastantes recursos).

Ejemplo de Spot Light:



Ejemplo de Omni Light:



Glow, Flare y Halo
Efectos de distorsión óptica diseñados para brindar al usuario la máxima sensación de autenticidad cuando observa una escena tridimensional generada por ordenador. En unos casos se limitan a recrear un objeto como es percibido por el ojo humano y en otros hacen acopio de nuestra experiencia al mirar a través de una lente. El efecto flare es generadopor destellos de luz en forma de rayos. Glow simula respectivamente el destello de una luz de forma redonda esférica y el Halo simula un aro con los colores de arcoíris.

Ejemplo de Glow:



Ejemplo de Flare:



Ejemplo de Halo:



Motion Blur
Efecto gráfico que simula el desenfoque de movimiento ocasionado por el rápido desplazamiento del entorno o de cualquier objeto desde el punto de vista del espectador.

Para facilitar su implementación, el hardware gráfico suele incorporar una estructura de almacenamiento temporal (buffert temporal), donde se guardan dos imágenes consecutivas de una animación para crear una adicional intermedia capaz de aportar este efecto.

Aquí pueden ver un ejemplo de motion blur:



Bueno es seria todo espero les sirva para entender estos temas mejor.



Recuerden que comentar es agradecer .
Datos archivados del Taringa! original
53puntos
2,893visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
3visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

D
DavisLink🇦🇷
Usuario
Puntos0
Posts1
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.