22 may 2006

22/05/06: Feel the power

Diario de Guerra de Alejandro González, Alias "WaaghMan". Anotación nº 155:

Hace cosa de un mes que estoy trabajando en una empresa, cuyo nombre de momento no publicaré aquí. Es un contrato temporal de becario, que si todo va bien podría convertirse en un puesto fijo, y ojalá fuese así :). He de dar las gracias a Edy y a Diego por recomendarme para el trabajo, ha sido toda una sorpresa el saber que existe una empresa así en Asturias.

En fin, al trapo. El caso es que últimamente he estado trabajando en temas de gráficos 3D, especialmente con el tema de Shaders. No voy a poner ni una línea de código al respecto, puesto que ni siquiera estoy capacitado legalmente para hacerlo :P. Pero bueno, creo que por poner unas simples capturillas no pasará nada.

A continuación va una ristra de muestras de lo que los Pixel Shaders son capaces, que son lo que más he trabajado en este momento. El motivo es que los Pixel Shaders resultan más versátiles que los Vertex Shaders, ya que se pueden aplicar en casi cualquier parte de una escena 3D (todo lo que use texturas, incluida la escena final). Los vertex shader, por el contrario, suelen depender de la geometría de los objetos, por lo que probarlos resulta más complejos.

Los pixel shader mostrados son todos de Post-Proceso, lo que significa que funcionarían para cualquier escena que tuviésemos en pantalla, con resultados similares. Además, pueden combinarse cuantos deseen, de forma secuencial, al estilo de filtros del Photoshop. La mayor parte de los mostrados son filtros simples, en el sentido que no hace falta configurar muchos parámetros para hacerlos funcionar. El único que resulta complejo de poner en marcha es el HDR, que requiere acerca de 8 texturas diferentes, generadas en tiempo real en cada frame.

Aquí va la lista:

  • Sin Shaders:

  • Tono Sepia:

  • Relieve:

  • Vision Nocturna:

  • Onda:

  • Desenfoque Gaussiano:

  • Invertir colores:

  • HDR:

  • Modo Infrarrojos:

  • Distorsion por temperatura:

  • Desenfoque triangular:

  • Bloom:

  • Contraste:



Muchos de ellos son Pixel Shader 1.1, que creo que hasta la Geforce 4 soporta, pero no lo tengo muy claro.

Como se puede ver, una cutreescena con pocos poligonos puede convertirse en algo resulton con solo añadir un par de efectos bien escogidos. Y tampoco es algo que consuma tiempo de ejecucion como un poseso, en esa escena podian mostrarse unos 8 o 9 shaders simultaneos sin notar ninguna reduccion.

PD: Perdon si faltan acentos, al teclado le ha dado un yuyu a la mitad del post y no los escribe :\

4 comentarios:

Miguel Herrero dijo...

Molan, sobretodo HDR y el Bloom (son los más 'usables' en juegos). Tiene buena pinta la especie de simulador de aviones en miniatura :p

Me alegro de que te vaya bien. Desde luego, menudo filón han encontrao...

Anónimo dijo...

no me digas que la empresa se llama EMERGENT

Miguel Herrero dijo...

EMERGENT suena más a nombre de motor. Por cierto, ahora que teneis shaders tenéis que echarle más a la otra cosa que hace mejorar el aspecto visual: 'la parte artística'.

Puede que lo que dijo rodri suene alocado, pero hay mucha verdad es sus palabras :P

Anónimo dijo...

De nada, hombre.

¿Nadie te ha hablado de mi comisión sobre tu sueldo, verdad? :P

Suerte en el curro.^_^