Escena procedimental propia y compleja



Esta escena fue realizada con OpenGL, haciendo uso de golang. Cada uno de los objetos que se ven en esta escena, como los troncos, hojas o cada una de las partes que componen el pozo, fueron creados a partir de primitivas como 'tringle strips' o 'triangle fans'. 


Se usó la librería GLFW para el manejo de la ventana y se hicieron uso de algunos shaders simples, para así permitir el uso de cámara, perspectiva y colores


Los árboles, la fuente y la luna se componen de figuras geométricas sencillas, como cilindros, cubos, esferas. Sin embargo, como se mencionó anteriormente las únicas primitivas usadas fueron  'triangle strips' y 'triangle fans', por lo que cada una de estas figuras tuvieron que ser construidas individualmente con funciones propias.
 

El cilindro por ejemplo se compone de tres primitivas, dos círculos para las tapas, hechas con un 'triangle fan' y la cara exterior hecha con 'triangle strip'. Estos cilindros luego son trasladados, girados o escalados para crear así los troncos de los árboles o los pilares del pozo.

La esfera es similar al cilindro, en el sentido de que esta también se compone de tres primitivas, dos 'triangle fans' para los polos y un 'triangle strip' para el cuerpo de la esfera, fue necesario realizar algunos calculos trigonométricos con el fin de hallar los distintos radios de los cortes de la esfera. Esta fue usada para la luna.

Los cubos por otra parte son algo más sencillos, ya que se pueden construir a partir de un único 'triangle strip'. Estos se usaron para las hojas de los árboles y el techo del pozo. Los árboles se construyen a partir de un cilindro y tres cubos, que fueron trasladados y escalados de forma que dieran la impresión de aleatoriedad. Además de estos, se realizó una pequeña animación en las hojas, usando funciones con senos y cosenos para así escalar hacia arriba y hacia abajo los cubos, dando la impresión de una ligera brisa.

El suelo también se creó a partir de una primitiva, este es un cuadrado enorme creado a partir de un 'triangle strip'. 

Por último, la figura más compleja fue el cilindro hueco, usado para la parte baja del pozo, esta figura se compone de cuatro 'triangle strips', dos anillos para las tapas y dos caras laterales, la cara interna y externa del cilindro.

Comentarios

Entradas populares de este blog

Sistema de partículas con geometry shader