Skip to content

Latest commit

 

History

History
66 lines (30 loc) · 2.94 KB

README.md

File metadata and controls

66 lines (30 loc) · 2.94 KB

Proyecto 1 - Software Renderer - Gráficas por computadora

En el presente proyecto se buscó demostrar los conocimientos adquiridos en lo que ha transcurrido del curso de Gráficas por Computadora mediante renderización de modelos, aplicación de shaders y tranformaciones de los modelos.

El tema de la escena renderizada fue: Vida submarina. Se buscó aplicar 6 distintos shaders en los elementos puestos en la escena. De los cuales se hablará más a continuación.

Escene

Shader: Estática (Escala de grises)

El objetivo de crear el shader de estática en escala de grises fue simular el efecto de que la estrella estuviera cubierta de arena.

Static-Shader

Shader: HSV

El objetivo de crear este shader fue convertir los colores RGB (Rojo, Verde y Azul) a colores HSV (Tono, Saturación y Brillo), siendo los colores HSV otra representación de los colores RGB.

HSV-Shader

Shader: YIQ

El objetivo de crear este shader fue convertir los colores RGB (Rojo, Verde y Azul) al espacio de colores YIQ. Donde Y representa la información de luminancia siendo esta correspondiente al brillo y las componentes Q e I que representan a la información de crominancia, la cual es correspondiente al matiz y la saturación del color.

Para lograr esta conversión se multiplicó cierta matriz por el vector con las componentes del color RGB.

YIQ-Shader

Fun fact: Este espacio de color fue utilizado por el sistema análogo de color NTSC (National Television System Committee).

Shader: Normal

El propósito de este shader fue simular las imperfecciones de una superficie sin necesidad de que se hayan modelado en el modelo 3d renderizado. **

Normal-Shader

** Shader basado en ejemplo dado en clase.

Shader: Oompa Loompa

El propósito de este shader fue poder aplicar un cambio de color azul hacia pigmentos de un tono neón amarillo.

OompaLoompa-Shader

Shader: Negative

El propósito de este shader fue invertir los colores RGB y dar un efecto de imagen negativa.

Negative-Shader

Ejecución del programa

Para ejecutar el programa solamente es necesario ejecutar el comando a continuación, esperar unos minutos y visualizar la escena generada en el archivo Escene.bmp.

  python Engine3D.py