Archive for the 'gelato' Category

Frappe con pelo

Posted in gelato on April 13th, 2008

Una de las limitaciones del exportador de Blender a Gelato más potentes es que no puede sacar curvas 1D. Lo que quiere decir que no puedes rendearte un pelo, ó un césped, ó partículas en general, directamente desde Frappe hacia Gelato.

suzzane gelato blender hair

Tras examinar un poquito el código de los plugins y scrips hechos en python para blender [1]. He encontrado un modo muy sencillo de exportar a gelato las partículas vector que pueden formar pelo, el snippet es el siguiente:

print ‘Selected objects’
for ob in selectedObjects:
..print ob
..print ob.name
..eff = Blender.Effect.Get(ob.name)[0]
..particles = eff.getParticlesLoc()
..for pt in particles:
….if len(pt) > 2:
……txt_Curve = ‘Curves (\”linear\”, 1, %d, \”vertex point P\”,(’ % len(pt)
……FILE.write(txt_Curve)
……for i in range(len(pt)-1):
……..pt_item = pt[i]
……..txt = ‘(%f, %f, %f),’ % (pt_item[0], pt_item[1], pt_item[2])
……..FILE.write(txt)
……pt_item = pt[len(pt) - 1]
……txt = ‘(%f, %f, %f)’ % (pt_item[0], pt_item[1], pt_item[2])
……FILE.write(txt)
……FILE.write(’), \”float width\”, 0.01)\n’)

Este código te generará un fichero .pyg pequeño y funcional que puedes emplear usando un Input sobre el pyg general de la escena.

Tras atizarle un poquito al pelo ahora quiero mejorar un pelín los ojos, quizás termine envolviendo la escena con un mapa de entorno. Ya os contaré.

1. API blender 2.45.

Gelato sombreado

Posted in gelato on March 23rd, 2008

Termina la semana santa y con ella termino también mi primer periodo de estudio de Gelato como renderer basado en REYES. Tampoco han sido tantas horas y especialmente ayer estuve tremendamente espeso, incluso un poco resfriado si me apuráis.

Ha sido duro. La documentación es algo ardua y encontrar recursos es difícil. He tenido algo de suerte y me he dado con este paquete de python dedicado a la computación gráfica: cgkit. Una conveniente casualidad dado que el formato de entrada al render, cuando no se dispone de ficheros programados, es, directamente Python.

Hoy he trabajado un poco con sombras, ficheros intermedios, etc. Os dejo dos fotografías muy sencillas y llenas de artefactos por los cuatro costados[1]

Os dejo el código fuente para que este artículo no esté tan vacío, en particular aquí van dos teteras, una con un error muy curioso y fácil de detectar, y la otra algo mejor compuesta.

artifacted teapot

Los respectivos códigos fuentes los he introducido directamente sobre flickr.

nVidia gelato teapot shadowmap example.

nVidia gelato teapot bogus shadowmap


1. Lo que me jode porque me suena que he leído la solución y no logro recordar dónde.

Recursos gelato

Posted in gelato on March 23rd, 2008

Aprender a usar este motor de render de nVidia está resultando algo más complicado de lo que esperaba. Un buen punto de partida es empezando leyendo el Renderman companion y el Advanced renderman. Ambos son libros de referencia clásicos. Sin embargo Renderman y Gelato tienen sus diferencias y pronto empieza a ser frustrante que algunas funciones nativas de Renderman no estén presentes en gelato, ie: hacer un mapa de entorno, tan común y tan útil.

El paquete instalador contiene algo de documentación. Está bien como curiosidad pero resulta algo corto si se quiere empezar en serio con él. La descripción de las APIs está bien, pero es un modo algo árido de empezar a usar un motor de render. Un link que he encontrado útil a la hora de aprender a usarlo es Gelato Renderer Exercise.

Para poder emplear Gelato sin necesidad (imperiosa) de tener un Maya 8.5 con licencia (ya que la edición Personal Learning aparentemente no sirve) se puede emplear Blender + frappe.

Blender Frappe Interface