, by Oday Abuzaeed

Celebrate the Holiday Season with this Christmas Sweater Generator

As 2021 comes to an end, we're celebrating the Christmas season with this awesome procedural sweater made by Oday Abuzaeed.

  • Game
  • Interview

Hey Everyone I’m Oday Abuzaeed, an environment artist from Cairo, Egypt. In terms of studies, my background is technical, as I hold a degree in Computer Science specializing in 3D Computational Geometry. As a gamer, I’ve had that urge to get involved more in the gaming industry since forever, and that got me into 3D. 

Currently, I work at the FlatterThanEarth game studio as an environment artist, and I specialize in props and materials. 

Substance 3D Designer

Designer is irreplaceable as its procedural workflow helps artists create as many details as they want without worrying about things like polycount, as well as saving a lot of time and effort. Imagine you want to make a dungeon floor with ZBrush or whatever; this would take hours of boring work. On the other hand, using Designer yields results within an hour or so and with a lot of detail. On a studio level, it helps you create a material library with as many parameters as you need so you don’t spend too much time retexturing or modifying as it’s just a matter of tweaking a value to get the look you want. 
 
Procedural modeling is one of the best techniques one can use, especially in large-scale scenes with many objects of the same type but different shapes. It also helps to apply effects such as damage, moss, and so on. And of course, procedural modeling is one of the most powerful features but still too young to have reached its full potential, like Houdini.

Animated Sweater material

I saw this video, which caused me to be intrigued about remaking this material in Designer, and I intended to release it free as a tutorial to celebrate the end of Nodevember. 

The breakdown is going to be a long answer, so sit comfortably with a cup of eggnog and enjoy. 

For my approach, I divided the material into 4 sections:  
– Main stitches shape 
– Color map 
– The procedural Christmas sweater pattern (trees, snowflakes) 
– The animation

Main stitches shape 

It’s a simple circle deformed with Transform, and then mirrored with a subtle Blur.

Color map 

To make the pattern I used the Tile Sampler node – but the color node, with my base color hooked into my colormap input. The Tile Sampler node takes the color corresponding to each stitch in the pattern and averages the color of the pixels for this stitch covers, which gives the knitted look. The more stitches you have, the more color information you can draw on, and the pattern can be higher resolution.

Christmas Sweater pattern 

The trees are just a Polygon node; I set the number of sides value to 3, and with transformation stacked and repeated to make the top part of the tree. For the trunk, it’s just a shape squeezed alongside the X-axis. 

For the snowflakes, I have the same approach, but to make the diamond shape I used the Mirror node with the Splatter Circular node, to make the shape of the flake. 

Animation 

The animation is quite simple. I use a Shape node with Safe Transform to place each element in its initial position, and another for the animation.

For the falling snow, it’s a standard math freefall equation, I then tweak the value to “20” to control the gravity acceleration (AKA falling speed). So to make the snow fall, a Tile Sampler node with different speed values (20,40,80) is combined with the sweater pattern.

For the text animation, it’s the same but on the y axis.

Exposed parameters

For the parameters, there are 3 groups: 

Bottom text: you can enter any text you want, adjust the font size, and control the movement speed of the text.

Upper text: it is the same but without the speed.

Color: you can change the color of the background and the colors of the pattern.

And for the individual parameters, you can change the pattern size and import a custom image (add any bitmap and it appears on the sweater). 

Conclusion

For me, the most important thing is to keep evolving. One should keep learning new techniques, like learning procedural modeling, and keep your work original. With the current expansion of the industry, a lot of artists are making similar projects in one way or another so as to stand out make an original idea.  

I’m currently working on a tool to convert images to thread embroidery patches, a tool that could help character artists a lot. Stay tuned!

Read more