ETR Absolute Transform nodes for Designer

I present you my first set of nodes for Substance 3D Designer: Eterea Absolute Transforms. It consists of 12 nodes, with grayscale and color versions, with which you can perform different types of transformations and deformations to our images. I will now describe each of them briefly (except one, they are all very easy and intuitive).

But first of all I want to thank Julián Rojas Millán who created the initial germ of these nodes. In his ArtStation website he shares an SBS that I downloaded and started to use. But I was immediately bitten by the bug and wanted to know how they were created, expand their features and adapt them to my needs. I talked to him and he kindly accepted that I could share with you my own extended version. Thanks a lot for everything, Julián!

⬇️ Download ETR Absolute Transform

First of all, let’s see how to install these nodes, in case you have never done it before:


Once downloaded, I advise you, if you don’t already have it, to create a directory so Designer can load from there all your personal nodes (these and others that you can download and install in the future). You can indicate any place, but I advise you here:

/Users/YOURNAME/Documents/Adobe/Adobe Substance 3D Designer/

Inside this directory you can place the folder “Absolute_Transforms” with the file “”.

Then is time to open Designer and go to Preferences > Projects > User Project > Library

Click on the little “+” icon and add the directory you just created.

On the other hand, in the Library panel add a new Filter, the icon with the little circle and + sign (you will have to add a Folder first, clicking on the icon on the left, if you don’t want to add it inside an existing folder) and configure this Filter as shown in the screenshot: call it “Absolute Transforms”, Project: User Project, Graph, URL, Contains, “etr_abs_transforms”.

Yes, I know, if you have never done it before, this whole process will seem a bit cumbersome… Later and with more experience it’s a piece of cake.

This way, by clicking on this “Filter” you will be able to access all the nodes for this kit, in their versions for grayscale or color.


In this collection we have two large groups of nodes, the Transformation nodes themselves (Position, Scale, Rotation…) and also the Deformation nodes (Skew, Stretch, Bend…).

In Designer we have a fundamental Atomic Node which is Transformation 2D. It is able to make any change to Position, Scale and Rotation and it acts in a very similar way to the Transform tool in Photoshop. But this node has a special feature, as indicated in the manual:

The settings for scaling and rotation are not absolute, and do not relate to the 2D view directly. If you type in an Angle or Stretch value, you must Apply it, and can then not easily reset it. Best way to wipe the Rotation and Stretch settings is to reset it to default.

It is a node that, in the case of Rotations and Stretch, is more intended to be used manually, using the 2D viewport interface. If we use it numerically, all transformations, except for translations, must be applied in steps. This way of acting can be very useful and convenient in certain situations. But not so much in others.

The nodes presented here, like the ones that Julian did in his day, act in an “absolute” way. When we apply a scale or a rotation, the slider stays there with that transformation value. And we can return to it at any time to modify it. This only happens with the Position, in the original Transformation 2D Atomic Node. Here it’s so with EVERYTHING.

For the rest, before going node by node, I will tell you some generic things that affect all or almost all:

  • For Scale changes and for Deformation intensities I have preferred to use percentage type sliders. Some go from 0% to 100% and others from -100% to +100% I know that in other Designer nodes it is more common to use normalised values (from 0 to 1 or from -1 to +1), but as a creator and artist I generally prefer to think in percentage terms when I think about the scale or the intensities of a deformation. I like to think of “25%” rather than “0.25”, but of course we can also enter floating values to fine tune and having “115.25%”. Oh, and no parameter is clamped: we can go beyond -100 and +100 (although in some cases you may get very extreme results going far away).
  • For the Rotation I have preferred not to use the native Designer widget, with the rotor and the double slider for turns & degrees, but I have included a simple slider that goes from -180 to 180 degrees, because again, I also believe that those are the most common ranges of rotation. I never need to rotate “15 turns” in Designer. If we were talking about an animation program it would be different.
  • In almost every node we can change the Pivot. If we do not change it, in a rotation, scale or any deformation everything will take place with respect to the center, but with the pivot we can make it with respect to any of the corners, the center of the sides or any desired point. In some nodes you may never need to change it… but I have preferred to keep it in all, except for position changes, where it does not make sense.
  • In all nodes (except Safe Rot Ext, where it is not relevant) we can change the Tiling Mode which, by default, is in “Relative to Input” mode (that is: generally active) to “Absolute” mode to remove it completely or leave it only at X or Y.
  • In almost all nodes (except Safe Rot Ext, where it is not needed) we can change the Matte Color. That is, the color that appears when we reduce our image and we have disabled tiling. By default it is black, but we can change it to another gray or color.
  • And in all nodes we can change the Filtering, which by default is Bilinear but we can change it to Nearest. Something very useful in certain occasions, although generally it is not necessary to touch.

Let’s see now node by node:

Position and Rotation

No big mystery. The first one can only change the position, being 0.5 the default value and the second one only changes the rotation, being 0 degrees the default value.


In this node you can change the scale uniformly or independently, along X and Y. Or in a combined way, if it’s more comfortable for us. You will see how interesting it is to be able to have the rotation and specific scales that we have given to an element as a value that we can read and alter at any time, unlike what happens with the original Transformation 2D, where we often have to reset the transformation matrix if we want to make any change.

Transform PSR

It’s a node that has the 3 previous ones in one. We can translate, rotate, scale uniformly and non-uniformly. Having this node we could do without the 3 previous ones, but I prefer to keep all of them, because there are many times that we have completely clear that we only want to make a unique kind of transformation to a certain input.

Rot Int

This is a very interesting node that serves to be able to rotate an element that occupies all our image without that nothing of the element disappears. That is to say: at the same time that the rotation takes place, it is also reduced according to the angle, so that the initial square always touches the limits of the image, without going out. If we change the pivot, logically things change, but the result obtained can also be very interesting.

Safe Rot Ext

This is one of the most complex and useful nodes of the set. And of which I am particularly proud: in its first version, made after seeing Szymon Wójciak’s tweet, it only scaled the image when it was rotated so that nothing from the outside would ever “enter”. It is the opposite of the previous node: instead of being reduced, the image is enlarged when rotated. Something very useful, for example, to be able to freely rotate a vertical gradient so that it adapts according to the angle. But then I realized that I could go further, and here comes the most interesting part. But I will tell you about that later, in a section dedicated to this node.

And so far all the transformation nodes. The following are deformation nodes:


Which performs a tilt of the image on any of the axes. By combining the two axes and changing the pivot we can perform very extreme transformations (in fact we can also rotate the image).


Scales the image differently on one side or the other. Again, by acting on the two axes, and even more if we change the pivot, the possibilities are enormous. Try it.

Bend Exponential

It is a deformation that “bends” the image, as if it were an Arabian roof tile. It does so along any of the axes, and initially with respect to the center, but if we change the pivot we can make it with respect to the sides. It is called “exponential” because it basically deforms x as a function of y^2 (and inversely). It is a very “cheap” and simple deformation to calculate, mathematically speaking.

Bend Circular

It is another of the most complex nodes, perhaps the one that has given me more work and headaches. And more out of stubbornness than anything else. In principle it may seem very similar to the previous one, but it is not. Here the deformations always follow the curves of circumferences. When you take the deformation to the extreme it becomes more evident. Thanks to Javier Colominas and Luis Rández with the mathematics behind this. Ahh, and thanks also to Geogebra, where I could study and understand everything that had to happen. Here you have the functional setup. Geogebra is a marvellous gem.

Setup in Geogebra to study the behaviour for the ABS Bend Circular
Graph for “circular_bend” function, the core for ABS Bend Circular
Bulge Gauss

It is a deformation similar to Bend, but in this case it can be applied to one side and not to the other. So we can have one side straight and the opposite side curved. And also can be apply independently to extremes. It was relatively easy to obtain, but it immediately began to “bother me” the fact that the deformation was transforming into a kind of Gaussian bell when it became more extreme… so then I started working on the next one.

Bulge Parabolic

With this one, something similar to the Bend Circular happened to me, I ended up taking it forward by stubbornness. I wanted to obtain a deformation where the curves were always parabolic and where it did not appear that effect “Gauss bell” that appears in the previous one. With this node also Luis Rández gave me a hand with the mathematics, but it was decisive the help of Esger in the Substance Designer Discord.

Play with all of these nodes, changing the pivot, to see how the deformation changes drastically.

And of course, if you feel like getting into the world of Pixel Processor I encourage you to inspect its graphs by opening the SBS directly with Designer. But before you touch anything, make a backup!.

Let’s go now with some notes more specific to the Safe Rot Ext node (I sincerely believe that one of the most useful of the pack).

Safe Rot Ext. The details

This node rotates the image while enlarging it. After creating it I realized that by using it in combination with certain images I could get tileable results. Which was a surprise. A tileable image is no longer tileable as soon as you rotate it. Unless we also zoom it, with certain kind of images. Marco Vitale has a very interesting article on this subject in ArtStation.

Pixel Processor graph for the ABS Safe Rot Ext node

Of course, a noise, a dirt, grunge image or organic noise will never be tileable once we rotate it, except if we zoom and rotate it 45 degrees. But there are many images, modular type, with repeating structures, that can be rotated many angles, if we also scale them. And this is what this node can do automatically for you.

If we connect a Tile Generator, a Mesh 2, a Fibers 2, a Weave 2, etc… those kind of images with repeating elements can be safely rotated (keeping the tileability) using the “Rotate with Safe Steps” mode of this node. But for this it will be very important that first of all we indicate to the node how many tiles the incoming texture has. With a Tile Generator it is obvious: if it is 10×10 we will indicate 10. But with other nodes, like Mesh 2, if we give 7 to the tiling to our node we have to increase it to double, 14 (because the internal modularity is 14), and then yes, we can change the slider “Steps for Safe Rotation” to rotate.

As a curiosity: in a 10×10 Tile Generator we can find exactly 40 possible rotation angles (10 for each 90 degrees) in which the texture remains tileable, once it is rotated and scaled conveniently.


Apart from the aforementioned Julián Rojas, creator of what is the germ of these nodes, I would also like to thank:

Andrei Zelenco, a wizard Designer user who I like to consider as “the god of Pixel Processor and FX-Map”. In his ArtStation you can see his incredible creations, totally procedural, using those tools. Andrei created a Facebook group time ago, Inside the Node, together with another great guy and master, Marco Vitale, where both share a multitude of complex and interesting setups using the most technical part of the program. Thanks to several tutorials shared in that group by Andrei and others I have been able to learn enough about Pixel Processor to be able to develop these plugins.

Luis Rández, friend and professor of mathematics at the University of Zaragoza, who helped me with several formulas in a couple of nodes (Bend Circular and Bulge Parabolic). And also to decipher a very strange issue with function nomenclatures in Geogebra.

Several people who have helped me on Twitter with some mathematical formulas, such as:

Javier Colominas – This smart guy helped with formulas for the starting version of circular deformations.

Pedro J. Molina – Thanks for the “uni-step” function needed to change the pivot of the circular deformations. Although I would learn more about “uni-step” later, from Luis Rández.

Szymon Wójciak – Who gave me the idea to create the first version of Safe Rot Ext.

Several Substance Discord users, such as Esger van der Post, Luca Giarrizo and others, who helped me with their technical advice.

And I’m sure I’m leaving someone out… Many thanks to all of you.

I hope these nodes will be useful in your work with Designer.

Curso Substance Designer para CTA

Me complace anunciaros que en febrero de 2023 voy a dar un curso de Adobe Substance 3D Designer en las instalaciones del Centro de Tecnologías Avanzadas (CTA) de Zaragoza.

Será un curso presencial de 48 horas repartido en 12 mañanas, de lunes a viernes, de 10 a 14 h, desde el día 13 al 28 de febrero de 2023. Y como siempre con los cursos de este centro público, a un precio totalmente imbatible: ¡completamente gratis!

Aquí tenéis el enlace al curso desde el portal del CTA

Ahí os detallan todo: requisitos, contenidos básicos del curso…y también encontraréis el enlace a la ficha de inscripción. Así que, venga, adelante: ¡INSCRIBIROS! Recordad que el curso es gratuito, pero las plazas están limitadas a 16 alumnos.

Aquí me tenéis explicando brevemente de qué va este curso:

Frame Colors, plugin for Designer

Here is my second plugin for Substance Designer: “Frame Colors”. After the first one, “Print Modified Values”, I immediately started with this new utility. The purpose of this plugin is very simple: to quickly change the color of selected frames choosing between various predefined samples in a palette.

⬇️ Download “Frame Colors”

Frame Colors in action

How to install it

Once you have downloaded and unzipped the ZIP file, move the main folder “etr_frame_colors” (which also contains a .json file and another subfolder folder with the same name) to where you normally have other Designer plugins installed.

If you have never done it I recommend you to use this directory:

/Users/NAME/Documents/Adobe/Adobe Substance 3D Designer/python/sduserplugins/

Then start Designer, open Preferences / Projects, click on the vertical tab “User project” (inside Configuration / Project Files) and then on the horizontal tab Python. Click on the little + icon on the right and add the above directory. And as indicated in yellow, once this is done you will have to restart Designer.

Once Designer is restarted, the plugin should be loaded. But just in case, open Tools / Plugin Manager and check that the checkbox of our plugin is enabled. Doing this, by the way, you can activate or deactivate any plugin.

As soon as you install it, you will not see it appear in your top bar. To do this you must first create a new Substance Graph. Do it. Now you will see a new little green frame button appearing in the main toolbar. And this one can enable or disable the big group of color samples immediately below. I recommend to close the Atomic nodes to make room for this (after all, I particularly never add them from here, but using the space bar)

How to use it

It is very simple: select the frame or frames you want to colorise and press any of these small color buttons. You can use a “lasso selection” to select a bunch of frames and also nodes, don’t worry: the plugin will recognise frames, discarding nodes or any other graph element, and will apply the color.

As you can see, default blue is marked with a dot. I recommend to use the first vanish-subtle colors with big frames, the ones that are behind a big group of nodes. And leave the more vivid-strong colors for those frames that are used as a call for attention in some special or important node.


SHORT: I have done my best to create a stable and robust tool. But use with caution, please. I recommend to create a copy of your graph before proceed to comment your nodes using this tool.


Print Modified Values, plugin for Designer

I present you my first plugin for Adobe Substance 3D Designer: “Print Modified Values”. The purpose of this plugin is to add a Comment, as a “child” of a node, containing the information of those parameters that have been modified.

In February 2023 I will teach a Designer course in my town (I will share more information soon) and in the preparation of the contents for that course I immediately realized how useful this tool would be. I searched and asked around, but found nothing, so I got down to work myself.

After a lot of work, here you have the first version. I hope it will be useful, especially to those of you who like to spread the word by sharing screenshots of your Graphs. It is certainly saving me a lot of work, hopefully more than it has taken me to create it… 🤪 In any case I have learned a lot, not only about Designer API, but also about the internal structure of the application itself.

⬇️ Download “Print Modified Values”

Print Modified Values in action

How to install it

Once you have downloaded and unzipped the ZIP file, move the main folder “etr_print_modified_values” (which also contains a .json file and another subfolder folder with the same name) to where you normally have other Designer plugins installed.

If you have never done it I recommend you to use this directory:

/Users/NAME/Documents/Adobe/Adobe Substance 3D Designer/python/sduserplugins/

Then start Designer, open Preferences / Projects, click on the vertical tab “User project” (inside Configuration / Project Files) and then on the horizontal tab Python. Click on the little + icon on the right and add the above directory. And as indicated in yellow, once this is done you will have to restart Designer.

Once Designer is restarted, the plugin should be loaded. But just in case, open Tools / Plugin Manager and check that the checkbox of our plugin is enabled. Doing this, by the way, you can activate or deactivate any plugin.

As soon as you install it, you will not see it appear in your top bar. To do this you must first create a new Substance Graph. Do it. Now you will see 2 new little buttons appear in the toolbar: the one without color can activate or deactivate the presence of the other one, in orange.

How to use it

It is very simple: suppose we have a Splatter Circular node that we have modified and we want to write down what parameters we have changed. We simply select it and click the little orange button. Automatically a Comment node will be added as a “child” of our Splatter (“child” means that when we move the node, the comment is moved with it).

You can also use “Q” as a keyboard shortcut instead of the button, as it is much more agile. I have chosen that letter because it evokes “Query” (ask the node about its own parameters). If you don’t like this shortcut or it conflicts with another one you already have, you can change it by editing the file located inside the “print_modified_values” subfolder. But be careful not to touch anything else, if you don’t know what you are doing 😉.


SHORT: I have done my best to create a stable and robust tool. But use with caution, please. I recommend to create a copy of your graph before proceed to comment your nodes using this tool.


Curso Substance Painter para CTA

En el momento que escribo estas líneas me encuentro preparando los contenidos para el próximo curso que voy a impartir a través del Centro de Tecnologías Avanzadas (CTA) de Zaragoza: “Aprender a Texturizar Modelos 3D con Substance Painter”.

Se trata de un curso que se hará online (debido al Covid19). No es algo que me entusiasme, la verdad… Impartir el curso, sí, pero hacerlo online ya no tanto. Prefiero el contacto directo en clase con los alumnos. Pero en fin: trataremos de hacerlo lo mejor posible y luchar contra los inconvenientes técnicos que, espero, NO surjan ;-)

Y ojo, que aunque la forma de impartir el curso sea “online/virtual”, el número de plazas está limitado a 16, así que no “os durmáis” si tenéis pensado apuntaros.

  • Fechas: del lunes 18 de octubre al miércoles 3 de noviembre. 12 mañanas (el lunes 1 es festivo)
  • Horario: 4 horas cada mañana, de 9.30 a 13.30. Un total de 48 horas.
  • Precio: gratis, previa preinscripción y superación de una prueba de acceso, que también será online.
  • IMPORTANTE: fecha límite para inscribirse, miércoles 29 de septiembre a las 8:00 horas.

Tenéis la ficha oficial del curso y, sobre todo, el botón para realizar la preinscripción en el siguiente enlace:


Si tenéis dudas sobre cualquier cosa que NO sean estrictamente los contenidos del curso (que es lo único que yo controlo) lo mejor es que contactéis directamente con el CTA en el teléfono 976 71 51 06, preguntando por África Gómez Garrido.

A continuación os dejo el contenido del curso. Ojo, este “índice” tuve que elaborarlo a principios de verano. Pero como ya os he dicho, justo ahora me encuentro preparando los contenidos del mismo, primero las partes más teóricas y luego los ejercicios. Así que es muy posible que alguno de estos apartados “baile” de orden:

MÓDULO 1: Introducción al software y primeras prácticas básicas.

  1. Introducción, interfaz usuario, creación y settings de un nuevo proyecto.
  2. Atajos de teclado básicos.
  3. Preparación de un modelo 3D para obtener “Texture Sets” en Painter. Opciones.
  4. Importancia de crear “Baking Maps” antes de empezar a pintar.
  5. Qué son los Normal Maps, ID Maps, Curvature Maps, AO Maps, Position Maps, Thickness Maps.
  6. Opciones del Base Shader.
  7. Pinceles: propiedades del pincel. Lazy Mouse. Alphas.
  8. Paleta “Layers”. Tipos de layers: Paint Layer, Fill Layer, Masks.
  9. Efectos básicos: Paint, Fill, Levels…
  10. Importación de “Resources” externos.
  11. Primeras prácticas sencillas con modelos 3D básicos facilitados por el profesor.

MÓDULO 2: Herramientas especializadas y prácticas avanzadas.

  1. Efectos avanzados: Generators, Filters…
  2. Simetría normal y simetría radial.
  3. Smart Materials. Cómo usarlos, cómo crearlos.
  4. Anchor Points e Instancias.
  5. Exportación final de los mapas de textura para usar en nuestro programa 3D.
  6. Aplicación de toda la teoría practicando sobre modelos 3D más complejos, también facilitados por el profesor.

NOTA: a lo largo del curso trabajaremos practicando sobre varios modelos que yo os facilitaré. El casco samurai que aparece en el vídeo será uno de ellos. Pero no el único. Habrá más… pero no podían aparecer en ese vídeo, pues aún lo estoy preparando.

Etérea Nudges Kit

Después de mucho tiempo os presento un nuevo kit para Modo, “Etérea Nudges”, compuesto de tres paletas para hacer transformaciones incrementales (moviendo, escalando o rotando de forma precisa nuestros vértices, edges, polígonos, items, centros o pivots) y una cuarta paleta, complementaria, para obtener información sobre la geometría que tengamos seleccionada y poder trasladar los resultados a las primeras.

Lo tenéis todo explicado en este post de los foros de Modo (eso sí, en Inglés).

Espero que os guste y os sea útil :-)

Un proyecto inacabado…

El reciente fallecimiento de John H. Conway, creador del famoso “Juego de la Vida”, así como este fantástico vídeo que me ha pasado mi amigo Víctor, sobre ese mismo tema, ha hecho que recordara un viejo guion que desarrollé hace ya siete años (!) para una animación 3D.

Iba a ser una especie de “Nature by Numbers 2”. De hecho, la empecé, llegué a modelar algunas cosas… pero entonces me entró mucho trabajo de encargo, pasaron los meses, perdí el interés por ella y… nunca vio la luz.

Bastante al principio del vídeo tenían que aparecer unas estructuras animadas, no exactamente un “Juego de la Vida”, pero sí otro tipo de autómatas celulares, basados en la obra de Stephen Wolfram, mediante los cuales se explicaran los patrones geométricos de la piel de una serpiente. Y a partir de ahí muchas cosas más…

No creía que fuera a enseñarlo, porque es tan solo un material interno de trabajo (que todavía tenía que pulir) y que me serviría de ayuda para planificarlo todo. Pero, oye, ya que estamos viviendo tiempos extraños, vamos a hacer cosas extrañas.

Aquí os dejo con esa vieja “animática”, a modo de boceto en movimiento, con la que os podéis hacer una mejor idea de qué iba la cosa. Recuerdo que se la mandé a los propietarios de la música, para poder tramitar las debidas licencias de uso. Pero nunca me contestaron…

No sé si algún día recuperaré la idea, o alguna parte de lo que aquí aparece… Todo es posible :-)

Tutorial Violín

Hace bastantes años me dio por crear una serie de tutoriales “premium” (o sea, de pago). Más recientemente, poco antes de lanzar mi nueva web, decidí dejar de venderlos, un poco porque ya estaban algo desfasados y otro poco porque mantener el servicio de venta online me costaba un dinero que no se compensaba con las escasísimas ventas.

El que considero más completo y útil de aquel grupo de tutoriales, y también el que más trabajo me dio, sería el que mostraba cómo crear un violín usando Modo. Todo el proceso: modelado, creación de UV’s y texturizado/shading.

Modo ha evolucionado mucho desde entonces (allá por 2013) pero sinceramente creo que si tuviera que volver a crear un modelo como éste, apenas cambiaría nada mi flujo de trabajo. Al menos por lo que respecta al modelado y las UVs. Para el texturizado sí es cierto que hoy día seguramente acabaría utilizando Substance Painter.

En cualquier caso creo que quizás pueda ser de utilidad para alguien. Así que, movido por el deseo de compartir algo con la comunidad en estos extraños tiempos que vivimos (escribo esto en pleno confinamiento por el COVID-19) he pensado que no sería mala idea desempolvarlo.

Originalmente se distribuyó a mucha menor resolución (1280 x 720), pero para esta ocasión he vuelto a exportarlos desde Screenflow a la resolución a la que fueron grabados (2560 x 1440). O sea que se deberían ver con una nitidez cristalina :-)

Como complemento a los vídeo tutoriales y por si os animáis a meteros con ello, os dejo un par de recursos:

• Un montón de imágenes de referencia (un ZIP de 29 MB)

• Los “backdrops” o plantillas, para dibujar y modelar por encima (otro ZIP de 3 MB)

Por cierto: si alguno os lanzáis a modelar este proyecto, por favor, decidme algo en los comentarios :-)

Fase de Modelado

Como ya he comentado: aunque estos tutoriales datan de 2013, os aseguro que hoy día utilizaría el mismo flujo de trabajo para casi todo. Y por lo demás, este tipo de modelado (por subdivisión de superficies) es perfectamente trasladable a cualquier otro tipo de software 3D: Blender, Maya, 3DSMax, etc. (dejando a un lado algunas especificidades de Modo, como los Falloffs o los Action Centers). O sea, que incluso aunque no uses Modo quizá puedas encontrar alguna idea o técnica que te pueda ser útil.


En la siguiente galería podéis ver el aspecto que tiene el modelo una vez finalizado y con la subdivisión activada. Como podréis observar, he buscado que tenga una topología “limpia y ligera”, dos conceptos fundamentales para este tipo de modelado.

Esta fase se desarrolla a lo largo de 4 tutoriales. Os dejo este PDF con el índice de los capítulos por si queréis encontrar fácilmente la parte que más os interese.

Creación de las UVs

Al igual que he comentado del modelado, la creación de UVs sería prácticamente idéntica hoy en día. Quizá cambiaría algo en la parte final, cuando se “empaqueta” todo, ya que si optara por crear los materiales fuera de Modo (en Substance Painter) probablemente buscaría tener un menor número de “Texture Sets”.


En esta otra galería podéis ver el modelo final con un “checkgrid” típico de ajedrez. Veréis que la densidad de los cuadraditos cambia mucho de unas zonas a otras. Esto es porque, al crear los materiales dentro de Modo (y no necesitar que este modelo sea exportable, por ejemplo, a un motor de videojuego u otro software 3D) para cada material uso todo el espacio UV. No lo texturizo usando un único “Texture Set” para todo el modelo, que es lo que haría hoy día, si lo quisiera exportar y trabajar en Substance Painter. Pero por lo que respecta al desplegado previo y “planchado” de las UVs propiamente dichas, todo sería igual.

Esta fase se desarrolla a lo largo de 2 tutoriales. Lo mismo que para el de modelado, aquí tenéis un PDF con el índice de los capítulos para encontrar la parte que os interese.

Texturizado y Shading

Esta forma de texturizar es, en realidad, la que yo he utilizado “toda la vida” (desde que empecé en esto del 3D allá a finales de los 90): abrimos las UVs en Photoshop, creamos los diferentes mapas dentro de ese programa (Color, Bump, Reflexion, etc), exportamos a nuestro programa 3D, ajustamos los parámetros de shading, chequeamos con el preview render, volvemos a Photoshop para re-ajustar, etc. Todos los trabajos que aparecen en mi web están texturizados así.

A finales de 2019 decidí aprender, por fin, Substance Painter, y esto hará que en mis próximos proyectos mi flujo de trabajo para los materiales cambie bastante. Pero de todas formas, sigo pensando que para ciertas cosas (¿info-arquitectura?) la forma “tradicional” que aquí se describe todavía puede seguir siendo bastante válida.

De hecho, una cosa muy curiosa que he aprendido, es que casi todo lo que hasta ahora hacía dentro de Photoshop es perfectamente trasladable a Painter: no es realmente “aprender un sistema ni tan nuevo ni tan diferente”. Así que espero que, en cualquier caso, también a esta fase final le podáis sacar algún partido.


Aquí tenéis otra galería con los renders finales, mostrando los detalles desde un montón de ángulos. La verdad es que un violín es una pieza preciosa y muy “satisfactoria” para modelar, texturizar e iluminar:

Esta fase se desarrolla a lo largo de 5 tutoriales. Y también os dejo el PDF con el índice de los capítulos.

Curso Técnicas de Animación con C4D en Zaragoza, 2020

El próximo mes de febrero impartiré un mini-curso gratuito sobre “Técnicas de Animación con Cinema 4D” en el Centro de Tecnologías Avanzadas

Serán 25 horas distribuidas a lo largo de 6 tardes (de 16.00 a 20.10), los días 19-20 y del 24 al 27 de febrero de 2020, en las instalaciones del CTA en Zaragoza.

Es un curso completamente gratuito y solo para 16 alumnos. Así que si os interesa, debéis inscribiros cuanto antes a través del siguiente enlace, que os llevará a la web del CTA. Habrá una pequeña prueba de acceso o selección, el lunes 10 de febrero a las 18.00 en el mismo centro. Si tenéis cualquier duda sobre el procedimiento, mejor que os pongáis en contacto directo con los organizadores (en el enlace tenéis teléfono y responsable)


Tal como podéis ver en su ficha, no es un curso realmente “avanzado”, pero sí es imprescindible tener unos conocimientos básicos previos de Cinema 4D (para eso servirá la prueba de acceso). Digamos que se trataría de una continuación del curso que ya dimos en el mismo centro hace algo más de un año. Es decir, para poder seguir el curso es necesario:

  • Estar familiarizado con el interface.
  • Conocer las principales herramientas de modelado y splines.
  • Los deformadores más importantes.
  • Y tener un mínimo de idea sobre texturizado e iluminación.

El curso será en español, pero usaremos la versión en inglés del programa (mucho mejor para familiarizarse con los términos universales del 3D). Y contaremos en los 16 equipos, espero, con una de las dos últimas versiones (r20 o r21)

Empezaremos repasando los conceptos más básicos de la animación: animar coordenadas PSR / HPB, órdenes de rotación, Gimbal Lock, cómo usar el Timeline (Dope Sheet vs F-Curves), cómo establecer ciclos o definir “animaciones perpetuas” gracias al uso de “Track After Repeat, Oscillate”, etc…

Una de las partes más importantes del curso será Xpresso, una serie de herramientas que nos permite acceder a todos los parámetros de un objeto para poder relacionarlos con los de cualquier otro objeto mediante el uso de un sistema visual, por nodos. Veremos y practicaremos con los nodos más comunes y de uso constante, incluyendo los Range Mappers y los Iterators. Y también aprenderemos a definir interfaces de usuario (“User Data”) para controlar todos los aspectos de una escena mediante nuestro propio interface

Además de Xpresso, también le dedicaremos una buena cantidad de tiempo a Mograph, entendiendo lo que son los Cloners, MoText, MoSpline, etc y repasando los Effectors más importantes (Plain, Random, Spline, Step, Target, Time, Delay…) y viendo cómo se pueden combinar diferentes Fields dentro de un mismo Effector para conseguir resultados muy complejos.

Si nos da tiempo también veremos alguna cosa de dinámicas, para hacer colisionar objetos (de modo rígido y blando) o incluso fracturarlos.

Cosas que no veremos: no daremos nada (o apenas nada) de modelado, ni de materiales o iluminación. Solo de animación.  Pero tampoco nos vamos a meter con animación de personajes, ni creación de pelo, ni explosiones pirotécnicas, porque eso sería todo un mundo. Es un curso súper compacto y solo tenemos 25 horas, así que iremos al grano.

Básicamente espero enseñaros los conceptos más básicos e importantes del tipo de técnicas que yo he empleado desde hace más de 10 años en mis animaciones.

Haremos constantemente ejercicios muy sencillos, para aplicar todos esos conceptos. Y espero dedicar la recta final (que tampoco podrá ser mucho, una o dos tardes) a poner en práctica la mayor parte de lo aprendido en un solo ejercicio.

Si estuvisteis en el pasado curso (de finales de 2018) y os gustó, no os lo perdáis. Espero que nos volvamos a ver :-)

Artículo en Investigación y Ciencia

A mediados de noviembre de 2019 recibí uno de esos emails que te alegran el día. Se trataba de Bartolo Luque, un físico de sistemas complejos y profesor de matemáticas aplicadas en la Universidad Politécnica de Madrid. En su correo me decía que le encantaban mis animaciones y que pretendía publicar, atención: ¡un artículo sobre mi trabajo para el siguiente número de la revista Investigación y Ciencia!

Bartolo escribe desde hace años una columna sobre juegos matemáticos para esta revista, además de haber dirigido recientemente una colección de libros sobre matemáticas publicada por El País.

Por supuesto me quedé encantado con la idea. Investigación y Ciencia es, nada menos, que la versión en español de la prestigiosa Scientific American. Recuerdo que hace muchos años, cuando yo era un chaval que empezó a estudiar ingeniería, me compré varios números de esa publicación, aunque también debo confesar que la mayor parte de lo que allí se contaba me venía demasiado grande… Luego abandoné esos estudios y ya marché a Barcelona para estudiar bellas artes, con lo cual me desvinculé más de la ciencia y la tecnología. Aunque nunca han dejado de interesarme.

Y el hecho de que ahora, en una revista tan prestigiosa le dediquen a mi trabajo, no un pequeño párrafo, sino cuatro páginas completas… pues es un motivo de orgullo y satisfacción. Además de un gran honor.

Muchas gracias a Bartolo y a todo el equipo de la revista Investigación y Ciencia. Aquí tenéis el arranque de este artículo, aparecido en el número de enero de 2020.