Displacement map Touch Designer

Siempre me ha interesado mucho el tema del Displacement map, que ya había tratado anteriormente en Quartz Composer, pero ahora con TouchDesigner se abren un montón de nuevas posibilidades. En primer lugar debo dar las gracias a Matthew Ragan por su worshop “Make some noise” de lectura obligada para los que, como yo, nos iniciamos en estos temas con Touch Designer. Aquí está el link del curso, con explicaciones y una serie de buenos vídeos:
https://matthewragan.com/make-some-noise-sf-2017-touchdesigner/

Para realizar el Displacement map podemos hacerlo con GLSL, lo cual implica tener unos mínimos conocimientos de programación, pero también podemos hacerlo con los operadores del Touch, Sops, Tops y Chops, que es lo que vamos a ver a continuación.

Como veis en esta captura la cuestión es usar el SOP sphere como elemento base y el TOP noise como elemento del desplazamiento. Lo que nos interesa es pasar los datos del noise a la sphere, pero sólo los del canal tz. Para ello unimos la Sphere a un chopto y el noise a un topto(chop); en este último cambiamos el canal red por el tz y lo vemos todo como Full Image. Nos aparecerá una tabla con 30 channels (los mismos que tiene la resolución del noise, que está a su vez unido a las filas y columnas de la sphere) y para ordenar los channels por nombre usamos un CHOP shuffle y por último un CHOP null.
Ahora tenemos que pasar los valores tz al chopto y para ello arrastramos el null1 sobre el mismo y ponemos en Channel Scope tz y en Attribute Scope P(2) (es decir Point Position Z) y ya lo tenemos. Para variar el desplazamiento sólo tenemos que aumentar la amplitud del TOP noise1. Finalmente colocamos el geo, camera, light y un render y ya tenemos nuestro displacement map.

Como se ve el resultado no es muy satisfactorio porque nos falta añadirle un material. Para ello tenemos varias posibilidades, poner un pbr, un wireframe, un phong con alguna textura o combinar varios de ellos con un MAT switch. Como veis en esta captura esta última opción es la que usado para poder cambiar entre un pbr o un wireframe.

Y ya por último si queremos que nuestro Displacement map sea audioreactivo tenemos que ponerle un CHOP audiofilein o audiodevicein conectado a la amplitud del TOP noise. Pero para darle mayor versatilidad al audio pondremos algunos CHOP operadores entre ambos: primero un select para seleccionar un canal, luego un analyze (muy importante pues tiene diversas funciones como maximum, minimum, value of first pick, index of first peack, value of last peack, etc. que cambiarán el tipo de extrusion o desplazamiento), un math para aumentar o disminuir el audio y finalmente un null que será el que conectemos con la Amplitude del TOP noise.

La composición final quedaría así:

La otra manera de realizar el Displacement map es utilizar un phong. Para ello elegimos el operador phong en MAT y en Parameters hacemos click en la opción Output de Output Shader al final de la pestaña RGB.Se abrirá una ventana y le damos al OK.

Entonces se creará el phongGLSL con tres operadores, phong1GLSLVertex1, phong1GLSLPixel1,(en ellos es donde tenemos que poner nuestro código de programación VertexShader y PixerShader) y phong1GLSLInfo1, el cual nos informará si nuestra programación se ha realizado con éxito.

No voy a hacer aquí ningún tutorial para hacer la programación para el Displacement map porque es bastante largo y porque en los videos que cité de Matthew Ragan está explicado mucho mejor de lo que lo podría hacer yo, sólo voy a mostrar algunos ejemplos de lo que he conseguido investigando este tema, que dicho sea de paso, tiene infinitas variaciones.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s