- File Output Image
- File Output Video
- Photoshop Compositing
- Davinci Resolve Compositing
- Stop Motion
Preparations
1.1 Software, Skills & Setup
Blender 4.2.2 LTS
Used for modeling, texturing, and rendering the project.
Photoshop 2025
Used to define the project’s visual style.
DaVinci Resolve 19
Used for the final animation.
Hardware Used
GPU NVIDIA RTX 3080 Ti
CPU Intel i7 7700K
RAM 64 GB
Hardware Minimum
GPU 6 Gb VRAM
RAM 16 GB
Blender File Size
65 Mb
The objective of this project is to create a scene without relying on UVs and produce a simple animation. The workflow is heavily node-based, covering everything from procedural modeling and animation to textures and final composition.
3D Knowledge Level Advanced
Reading Time 30 minutes

1.2 Concept
This guide explores the creation of a scene using a node-based workflow for modeling, texturing, and post-production
The project is inspired by the now-extinct Arena Coliseo de Monterrey, which first opened its doors in 1955 and was demolished in 2023. Known as the cathedral of wrestling in Monterrey, Mexico, this iconic venue held deep cultural significance. While studying Visual Development for Environments and Characters, I wanted to pay tribute to this historic place by creating an animated scene entirely from scratch.
1.3 References
Having a sufficient number of reference images was crucial, as I needed to build the concept from scratch
I searched not only for images of the coliseum but also for pictures of cars from the period between 1955 and 2023, to capture the historical context of the place.
Additionally, I thought about the various assets that could potentially enhance the scene. While many of the assets I initially envisioned didn’t make it into the final image, having a large list of possible assets was essential to guide the creative process.

1.4 Composition
Composition helps us organize a scene with the goal of telling a clear and compelling story. There are various compositional guidelines we can use, and in many cases, multiple approaches can be combined within a single scene

Rule of Thirds
The most commonly used guideline, making a scene feel more natural and visually pleasing.

50/50 Composition
Creates a sense of balance through symmetry, harmony and a feeling of formality within the scene.

90/10 Composition
Emphasizes a specific area by dedicating 90% of the space to it, drawing the viewer’s attention.

80/20 Composition
Showcases more of the background while keeping the most important elements within the 80% area.

1.5 Tonal Values
Light and shadow play a crucial role in defining depth, guiding the viewer’s eye, and establishing the most important areas within a scene
By carefully controlling tonal values, we can create clear visual hierarchies and improve overall readability. Achieving effective lighting requires multiple studies, not just one, to explore different possibilities and determine the best approach for our objective. The goal is not realism but rather a simplified representation that makes the scene easier to read and understand. Reducing the number of tonal values helps streamline the composition, ensuring clarity and a stronger visual impact.

Further Study
A great resource for studying tonal values is Graphic L.A. by Robh Ruppel. This book breaks down how to simplify lighting and shapes into strong, readable compositions. It focuses on using limited tonal values to establish depth, contrast, and storytelling efficiently.

Modeling
Blender 4.2.2 LTS
2.1 Geometry Nodes Modeling
Geometry Nodes is a powerful vehicle for the Procedural Creation of objects, allowing for large-scale asset generation with flexibility and control
Using procedural workflows speeds up the creation of objects that involve heavy repetition while still providing unique variations for each instance.

This approach also makes it easy to modify designs quickly through simple parameter adjustments. While understanding node systems can be challenging at first, practice gradually makes the process more intuitive. Instead of explaining the function of each individual node, this guide will focus on a practical approach, building objects from the simplest to the most complex within this scene. Through these examples, you’ll see how I’ve leveraged Geometry Nodes to streamline modeling and enhance efficiency.

2.1.1 Louvers
First, I start by modeling the Mesh Input (1). Then, I add a Mesh Line, setting its direction along the X-axis (2) with a fixed number of points, 11 in this case. I use this Mesh Line as the points for the Instance on Points node. The Mesh Input is assigned as the instance, and I apply a Random Value node to rotate it along the Z-axis for variation. (3)
2.1.2 Curb
The base starts with a Plane (1) as a Mesh Base. Then, Separate each face and Scale them individually (2). After that, Extrude (3) the shapes and add some Distortion (4) to the top section for variation. Finally, set the Material (5) to complete the look.
2.1.3 Brick Main Building
I start with a Cube primitive, modifying its shape to resemble a brick and applying a Material (1). Then, I instance the brick multiple times (2) and use a Random value to give each one a slightly different depth (3). To break uniformity, I introduce horizontal offsets (4) and randomly remove some bricks (5). Finally, I apply a Boolean operation (6).
2.1.4 Brick Side Building
I start with a Grid as the base (1) and a Cube primitive to serve as a brick (2). Then, I create two staggered rows and merge them to form an interlocking Brick Wall (3). Next, I align the excess bricks on the left side (4), followed by the right (5). Finally, I adjust their Position and Scale (6) before applying a Material (7).
2.1.5 Cobblestone
I start with a base plane (1), then create Instances of cubes using the Cube node and randomly remove some (2). Next, I apply distortion (3) to break uniformity and finish with a Material (4).
Download the clay render for free or get the Complete Pack to explore every Geometry Node, texture, and animation in depth!
2.2 Geometry Nodes Animation
Geometry Nodes isn’t just for procedural modeling—it’s also a powerful tool for Procedural Animation, enabling complex motion with full control and flexibility

By leveraging procedural techniques, we can create animations that would be time-consuming or impractical with traditional keyframing. This approach allows for dynamic behaviors, automated motion systems, and parameter-driven effects that adapt in real time.

2.2.1 Fan
We start with a Base Mesh (1). Then, duplicate and position it to form the fan structure (2). Finally, use Scene Time to animate the rotation along the Z-axis (3).
2.2.2 Cables
Start with a Path Curve as the base (1). Then, select specific vertices using Index (2) and animate them with a Noise Texture (3). Finally, add Thickness to the curve (4) and apply a Material (5).
2.2.3 Moths
Start with a Sphere as the Base Mesh (1). Then, create a simple moth shape entirely within Geometry Nodes (2). Using the Base Mesh as a Volume, I distribute the moth instances inside it (3). Finally, animate them with Scene Time (4) and apply a Material (5).
2.2.4 Flags
Start with a Path Curve as the base for the cable (1). Then, create the shape of a single flag (2) and animate the cable using Scene Time and a Noise Texture (3). Next, use the curve and the flag to generate an array of flags along the cable (4). Animate the flags (5) and randomly delete some of them to create variation (6). Then select specific flags to apply the Red Material (7), Blue Material (8), and White Material (9). After that, give Thickness to the spline and smooth it with a Subdivision (10). Add a Switch to toggle the visibility of the flags (11) and, finally, combine everything using Join Geometry (12).
Texturing
Blender 4.2.2 LTS
3.1 Masking
Masking is a fundamental part of the texturing process
Creating Masks was essential for achieving varied effects, as I wanted to avoid flat, solid colors. By Combining Multiple Masks, I was able to generate more complex textures while maintaining a stylized look that complemented the modeling.
In this section, I will showcase different node combinations used to create the masks for this project.
3.2 Simple Masks
Before diving into complex masks, it’s essential to start with simple ones, as they serve as the foundation for more intricate textures
By combining Basic Procedural Nodes, we can create a variety of masks that will later be layered and refined for more stylized results. Some of the most useful nodes for generating simple masks include: Voronoi Texture, Wave Texture, Brick Texture, Gradient Texture & Color Ramp
By layering and modifying these masks, we can create a wide range of effects that add depth and variation while maintaining a cohesive stylized look.








Download the clay render for free or get the Complete Pack to explore every Shading Node, and animation in depth!
3.3 Complex Masks
Now that we understand how to create simple masks, we can start combining them to add more complexity
By blending simple masks, we can generate a variety of intricate patterns that enhance the detail and visual interest of our materials. To achieve this, we will introduce additional nodes such as Mix Color, Mapping, Texture Coordinate, Vector Math, Value, and Magic Texture.
With these tools, we will create more advanced textures and expand our library of effects.








3.3.1 Gradient with Points
We start with a Voronoi Texture node, combined with a Color Ramp set to Constant to create distinct point patterns.
Next, we add a Gradient Texture, controlled by a Mapping node and a Texture Coordinate node, allowing for adjustments in position and orientation.
Finally, we blend both elements using a Mix Color node with the Multiply blending mode, merging the gradient and point patterns into a cohesive mask.
3.3.2 Overlapping Squares
We begin with a Voronoi Texture node, followed by a Color Ramp set to Constant, adjusting the ramp’s position to refine the pattern.
Separately, we use another Voronoi Texture node with a smaller scale, also processed through a Color Ramp.
Finally, both patterns are blended using a Mix Color node with the Screen blending mode, creating an overlapping square effect.
3.3.3 Dotted Regions
We start with a Voronoi Texture node set to output Color, followed by a Color Ramp with Constant interpolation and an additional stop to refine the effect.
Separately, another Voronoi Texture node is used, this time set to output Distance. This output is processed through a Color Ramp, inverted, and also set to Constant interpolation.
Finally, both patterns are blended using a Mix Color node with the Multiply blending mode, creating a scattered dot effect within specific areas.
3.3.4 Fluid Cell Structures
Start with a Voronoi Texture node set to output Distance, with Randomness enabled. This output is processed through a Color Ramp with Constant interpolation to define distinct regions.
Separately, another Voronoi Texture node is used, also set to output Distance with Randomness enabled, creating a complementary variation.
Finally, both patterns are blended using a Mix Color node with the Multiply blending mode, resulting in an organic, interconnected worm-like structure.
3.3.5 Segmented Line Patterns
Start with a Voronoi Texture node set to output Color, with a slight Randomness variation. This output is processed through a Color Ramp with Constant interpolation, where an additional stop is introduced to define clearer regions.
Separately, a Wave Texture node is used, combined with a Mapping and Texture Coordinate node to allow rotation along the Z-axis. This pattern is also passed through a Color Ramp with Constant interpolation to create sharp transitions.
Finally, both elements are merged using a Mix Color node with the Multiply blending mode, producing a structured interplay of lines distributed by defined Voronoi areas.
3.3.6 Wavy Lines by Region
Begin with a Voronoi Texture node with slight Randomness, followed by a Color Ramp using Constant interpolation to define distinct areas.
Separately, a Wave Texture node is used alongside Mapping and Texture Coordinate nodes to control rotation along the Z-axis. To distort the wave pattern into an organic shape, a Magic Texture node is introduced. This distortion is further refined with two Vector Math nodes, while a Value node is used to uniformly modify three axes with a single input.
Finally, both elements are blended using a Mix Color node with the Multiply blending mode, creating a structured yet dynamic wave pattern influenced by the Voronoi regions.
3.3.7 Layered Voronoi Deformations
The process begins with a Voronoi Texture node with slight Randomness, followed by a White Noise Texture node set to 4D mode. This noise is then refined using a Color Ramp with Constant interpolation to control contrast.
To manipulate orientation, Mapping and Texture Coordinate nodes are used, allowing rotation along the Z-axis.
Additionally, another Voronoi Texture node is introduced, combined with multiple Vector Math nodes to further deform the primary Voronoi pattern, adding complexity and variation to the final texture.
3.3.8 Layered Brick
This setup begins with a Voronoi Texture combined with a White Noise Texture in 4D mode to control the dark areas, followed by a Color Ramp for contrast adjustment.
Separately, a Brick Texture node is used, enhanced with multiple Color Ramps to generate different effects from the same texture. Finally, these elements are blended together using Mix Color nodes, applying Multiply for depth and Screen for highlights, creating a more intricate layered brick effect.

3.4 Animated Textures
Textures can be animated using traditional methods, but they can also be controlled dynamically through Geometry Nodes
While the Shader Editor lacks a direct equivalent to the Scene Time node found in Geometry Nodes, we can achieve the same effect by Passing an Attribute. This method is simple, efficient, and highly functional.
Character
Blender 4.2.2 LTS
4.1 Character Design Fundamentals
Creating compelling characters requires a solid understanding of fundamental design principles, and fortunately, there are many tools available to guide the process
For this project, I relied on various references that clearly outline the essential elements of character design. While there isn’t a single correct method, understanding core concepts such as shape language, the line of action, and silhouette can provide a structured approach to designing characters effectively. In the following sections, I will break down each of these key aspects to demonstrate how they contribute to strong and visually appealing character designs.

4.2 Scott McCloud’s Pyramid
Scott McCloud’s Understanding Comics introduces a visual tool known as the “Pyramid,” which helps us analyze how characters are represented across three key axes

Realism: The closer a design is to this point, the more detailed and true-to-life it becomes. This approach is often used for unique, highly individualized characters, such as hyperrealistic portraits.
Symbolism: This category includes simplified and stylized designs, making characters more universally recognizable. Examples include emojis or the iconic characters from Peanuts (Charlie Brown).
Abstraction: At this end of the spectrum, the focus shifts towards pure visual expression rather than literal representation. Think of cubist art or abstract compositions that use shapes and colors to convey emotions and concepts.
Understanding where a character falls within this pyramid can guide design choices. A highly realistic character emphasizes individuality and complexity, while a symbolic design enhances accessibility and relatability. Meanwhile, abstraction allows for deeper exploration of emotions and ideas through stylized forms. By consciously positioning characters within this framework, we can create more intentional and effective designs.
Further Study
A great resource for understanding visual storytelling and character representation is Understanding Comics by Scott McCloud. This book explores the mechanics of comics, breaking down how images, symbols, and abstraction influence readability and engagement. It provides valuable insights into character design, composition, and the balance between realism and stylization, making it an essential read for artists and storytellers alike.

4.3 Character Design
Strong character design relies on simple, clear shapes that communicate personality and function. Overcomplicating a design can dilute its impact, while strategic use of basic forms enhances clarity and appeal

Breaking shapes into large, medium, and small sections helps maintain balance and visual interest. A strong hierarchy prevents clutter and ensures the design remains readable at a glance.

Shapes influence how a character is perceived. Circles create a friendly and inviting look, squares suggest stability and reliability, while triangles add energy and sharpness, making a design feel more dynamic.

Weight distribution affects a character’s presence. A lower center of mass makes them feel grounded and strong, while a top-heavy design can suggest agility, instability, or dominance. In this case, is a top-heavy type.
4.4 Line of Action
The Line of Action is a fundamental tool for making characters feel dynamic and expressive. It establishes the flow of movement, ensuring poses are lively and full of energy rather than stiff or static
The Line of Action is an imaginary curved guideline that defines the character’s posture and movement. It creates a natural sense of rhythm and direction, enhancing the clarity and intent behind each pose.
A strong Line of Action helps convey emotions and storytelling. Whether a character is leaping, slouching, or striking a dramatic stance, this foundational shape reinforces their attitude and purpose within a scene.

Further Study
A great resource for understanding the Line of Action is Cartoon Animation by Preston Blair. This book breaks down how to use fluid, dynamic lines to create expressive and energetic poses. It emphasizes how a strong Line of Action enhances movement, clarity, and storytelling in character design and animation.

4.5 The Strength of Silhouettes
A silhouette is the outer shape of a character, seen as a solid figure without internal details. It plays a crucial role in making a character instantly recognizable and their movements easy to understand
A clear silhouette ensures that a character’s pose and actions are readable even without colors or linework. Strong silhouettes make characters more memorable and their gestures more expressive. Beyond recognition, silhouettes also help define weight distribution, creating a balanced and believable stance. The way shapes are arranged within a silhouette can also guide the viewer’s eye, leading attention toward key areas like the face or hands.

4.6 Blue Demon: Guardian of the Coliseo
I wanted to design a character that would honor the legacy of the Arena Coliseo de Monterrey, once a legendary venue for lucha libre before its demolition. To symbolize its spirit and history, I chose one of the most iconic figures from Nuevo León, Blue Demon
In this vision, Blue Demon stands as a guardian, keeping the doors of the Coliseo open. As long as he remains at the entrance, the arena lives on, not in reality, but in our collective memory. This concept influenced the character’s pose, emphasizing his role as a protector. Another defining aspect of Blue Demon was his signature formal attire. Unlike traditional luchadores who are often seen in wrestling gear, he was known for his elegant suits. To reflect this distinguished presence, I chose to depict him dressed in a more serious and dignified manner, reinforcing his status as both A legend and a guardian of the past.

Rendering
Blender 4.2.2 LTS
5.1 Folder Output for Images
Manually saving each render pass can be tedious and prone to errors. Automating this process ensures efficiency, consistency, and better file organization
To achieve this, we use the File Output node, which allows us to automatically direct multiple render passes to a designated folder. This node provides flexibility by letting you specify the file name, format, and additional properties for each output. By setting up a structured file output system, you can streamline your workflow, keep your files organized, and avoid the risk of missing important passes during post-production.
5.2 Folder Output for Videos
Managing multiple render passes efficiently requires saving each pass in separate folders for better organization and workflow integration
To achieve this, we use multiple File Output nodes, ensuring that each pass is neatly stored in its own folder. This setup makes it easier to import and manage footage in DaVinci Resolve without sorting files manually. While using an EXR Multilayer would be more convenient, it doesn’t retain the applied Color Management, so I opt for 16-bit PNGs instead to maintain color accuracy.
5.3 Compositing in Photoshop
Once the passes are ready, final adjustments are needed to enhance the image and achieve the desired look
I will break down each step done in Photoshop so it can later be replicated in DaVinci Resolve. Understanding each adjustment makes it easier to translate the look into video. While these techniques and workflow are not mandatory for every project, they help shape the final aesthetic. In this case, my goal was to create a nostalgic, aged, and slightly faded atmosphere, evoking the feeling of a memory.
First, in Camera Raw, increase Texture and Clarity to enhance sharpness. Then, I use Levels to brighten the darker areas. I apply the Ambient Occlusion Pass with Multiply at 50%, adjusting it with Levels to fine-tune its effect. I also add the Color Denoise Pass with Screen at 5% to smooth the image.
Layer all Light Passes with Screen at 100%, blending them with the Mist Pass and applying a warm tint to enhance depth.
Use multiple Levels to selectively lighten and darken areas, creating a Vignetting effect. Finally, I apply several LUTs and reduce Saturation, shifting the image towards muted, grayscale tones.
5.4 Exporting LUTs from Photoshop
LUTs used in Photoshop often don’t translate correctly to other software like DaVinci Resolve
To ensure compatibility, LUTs need to be properly exported from Photoshop, following specific rules. First, any elements that shouldn’t be included in the LUT must be merged into the Background layer. Before exporting, select only the layers that contain the color adjustments. Then, navigate to: File > Export > Color Lookup Tables, choose the desired formats, and save the LUT for use in other programs.
5.5 Compositing in DaVinci Resolve
To create high-quality videos, it’s essential to use software capable of advanced compositing
DaVinci Resolve has become my go-to tool for video creation due to its speed and efficiency. The free version is incredibly powerful, and the full version is available at a very accessible price. It offers specialized workspaces for color grading, editing, audio, and compositing, making it a versatile choice for post-production.
For this project, I worked mainly in Fusion, DaVinci’s Node-Based Compositing System. My biggest challenge was replicating the adjustments made in Photoshop within Fusion. After experimenting, I found that many techniques translate well between the two, with masks being one of the key differences. This section will focus on those unique aspects.
Tip
To quickly find nodes in Fusion, use Ctrl + Spacebar to bring up the search bar. This shortcut allows you to search and add nodes instantly without navigating through menus, making your workflow much more efficient.
5.6 Fusion Masks
I used two different approaches to create masks: one with Polygons, which is the simplest method, and another using Luma Keyer with the Mist Pass for a more refined selection
(+) Zoomable Image
For the Mist Pass Mask, a direct connection doesn’t work, so I used additional nodes. First, I adjusted the Brightness and Contrast to control the mask’s intensity. Then, I applied a Luma Keyer to isolate the bright areas. Finally, I used a Channel Booleans Node to combine the mask with the target image, integrating it seamlessly.
5.7 Color Correction
There is no Levels node in DaVinci Resolve, so we need an alternative method to achieve the same effect
Instead of using Levels like in Photoshop, I used the Color Corrector node, which provides similar control over contrast and brightness. Within this node, the Lift option works similarly to adjusting the black point in Levels, allowing me to fine-tune the darkest areas of the image.
5.8 Stop Motion
To achieve a Stop-Motion Effect, we need to reduce the frame rate from 24 frames per second to 12 frames per second or lower
Initially, I planned to render the animation directly at 12 FPS to save rendering time. However, I realized that DaVinci Resolve does not provide a straightforward option to change the playback frame rate in this way. Instead, I used the Stop Motion Node, which allows selecting how many frames should be held before advancing to the next. By setting it to hold every second frame, I effectively reduced the animation to 12 FPS. If I wanted an even choppier effect, I could set it to hold every third frame, resulting in 8 FPS.
The Project
6.1 Conclusion
This project turned out to be a fascinating experiment. From modeling with Geometry Nodes to using Procedural Shaders instead of UV textures, and even handling animations and compositing with nodes, everything ended up being more Node-Heavy than I initially planned. My goal was to create something quick and more conceptual, rather than the polished, finished look of my previous projects.
At first, this wasn’t even meant to be a full project, just a simple test. But the more I worked on it, the more I enjoyed the process, and it eventually became a small animated study. Through it, I learned a lot about Procedural Workflows, and I hope this guide can be useful for others. It’s structured more like a Cookbook than a step-by-step tutorial, offering insights rather than rigid instructions.
I want to thank Lauro Villarreal for taking reference photos, my wife Nina Lagler for her constant support, and my mother’s memory Florinda Elva. Who, by coincidence, lived the same number of years as the Arena Coliseo de Monterrey. This project is a tribute to both. While she may not be visibly present in the scene, the car parked in front is modeled after the one she owned when I was just two years old.
Thank you for reading this guide. See you in the next one!
Alex Treviño
Free Pack
Get started with the Clay Render and explore the core structure of the project. A great way to analyze the scene and understand its foundation.
Download Free Pack