Support Blender Core Development with a monthly contribution.
The creators who share. Access production content and knowledge from the Open Movies.
Latest news and updates on Blender development.
Join the community and help with design, development, docs and more.
A platform to collect and display the Blender Benchmark results.
Documentation on Blender's features, tools and API.
The yearly event that brings together the Blender community in one place.
Download the latest Blender version, or try the beta!
The Shader Editor
Colors, Values & Vectors
Vectors and Pixels
Generating PBR Maps
Geometric Dependency - Context Sensitivity
Blending & Masking
Walls (Chapter 2+)
Wood (Chapter 3+)
Dynamic Walls (Chapter 4+)
Wooden Boards (Chapter 5+)
Fire (Chapter 6+)
Rainy Window (Chapter 6+)
Example Scene - Simplified
Visualization (Chapter 1-4): Value Graph
Visualization (Chapter 2-5): Space Origami
Example Shader (Chapter 3-1): Rock
Example Shader (Chapter 4-1): Dilapidated Cube Scene
Example Shader (Chapter 4-3): Image Texture De-Tiling
Example Shader (Chapter 4-3): Semi-Procedural Fishbones Boards
Example Shader (Chapter 4-4): Procedural Volumetric Clouds
You can join Blender Studio for €9.90/month and get access to all of our training & film content
2: Procedural Textures
9th July 2020
You can download the file from this video here: 2-3_Repetition.blend
Join to comment publicly.
22nd July 2020 - 08:58
Wow, this chapter was intense for a procedural noob like me. Like watching magic!
22nd July 2020 - 11:43
*@Sean Kennedy* I did cram a lot of information into quite short time in these videos to make it easy for people to come back and look up specific things. The workflow examples should help to understand the concepts and make the connections, being more slowly paced and in-depth :)
15th September 2020 - 08:23
*@Simon Thommes* Is it ok to skip right to the workflow examples and then comeback to these chapters for a clearer concept? Or do i have to go through these chapters first?
15th September 2020 - 13:25
*@victor p* Totally! I made the workflow examples to go along with the course and get progessively more advanced. If you feel like that is a better way for you to understand everything, you can start with the first workflow examples an then go back to the explanation videos.
But the workflow examples get more advanced quite quickly. I made a note for each one what level of the main course they are meant for, so keep that in mind.
16th September 2020 - 06:26
Okk thank you Simon
20th July 2020 - 20:38
very exciting stuff cant wait to see what animations i can get
26th July 2020 - 12:17
This is totally 🔥🔥🔥 and deep.
6th August 2020 - 10:44
That’s what snap is for, learned something new.
30th September 2020 - 14:56
Going to the workflows as discussed with victor p sounds like the way forward for me, the information is truly amazing, but I need the hands on context (I'm 18 months in on Blender).
28th October 2020 - 17:23
This course is amazing <3
1st November 2020 - 14:39
This is fantastic! I had always wanted to know how to do this. But I got scared at how complex the nodes become. I am more used to programming directly and not seeing nodes. I am always cared that it's going to take a very long time
20th April 2021 - 15:31
very good info as usual. The programmer side of me keeps wanting to visualize the mathematical formulas being generated. 👨💻
28th July 2020 - 23:52
Are the blend files available? Wish I could download that instead of the mp4.
29th July 2020 - 11:51
*@Vítor* I added the file for download in the description
29th July 2020 - 12:41
*@Simon Thommes* Sorry, that was stupid from my part. Thanks for the reply.
29th July 2020 - 13:04
*@Vítor* No it wasn't! I added it only after you commented, because I forgot about it before. Thank you for reminding me :D
29th July 2020 - 23:53
*@Simon Thommes* Oh, l was feeling so stupid, lol. Glad I could help in my own simple way. This course is sooooo interesting but sometimes there is a lot of information to absorb. Having the actual scene files will help. Again, thanks for the reply.
30th August 2020 - 09:12
It always took me 2-3 hours until I've really understood what is explained here in 5-minutes. But as soon as you've understood the concept behind each step its even a kind of fun.
Nevertheless I've a question: where does the colors come from at 3:44? How are the numbers interpreted as colors? I've understood the principles of the luminosity value (at least I think I did) but I cannot comprehend where the red, green,yellow and black tones come from.
31st August 2020 - 10:42
*@Michael Schwarz* The red, green and blue channels of the color represent the x, y and z components of the vector map that is displayed.
Negative values cannot be displayed and result in black and when both x and y component are positive, that results in yellow because it mixes red + green.
If that concept is still difficult for you, you can go back to the chapter 1-1 about colors, values and vectors, or simply connect a 'Combine XYZ' node to the viewer node and observe what happens when you change the values around.
It takes some getting used to the colors until you can read a color map and understand the vector map that it represents. I hope this helps.
31st August 2020 - 11:49
I think I've got it. x = red y = green z = blue
zero and negative black. Thanks for hint. And of course I should have known it ;)
17th February 2021 - 10:38
@Michael Schwarz I'll chime in here because the concept of a vector map has confused me for a while. I just started to understand it through this course. Maybe this will help others. A vector is a list of 3 values, like Simon said. In this case, X, Y, and Z. The plan is 2D, so it's like a spreadsheet of values, with rows and columns, each "cell" containing a vector. So one cell would have [0,0,0], another cell might have [1,1,1]. The range of these values depends on the properties of the "spreadsheet" (coordinate map). Some maps will have vectors with values -1 to 1, others with values 0-1. In the case of our 2D spreadsheet, each cell's vector's z component is always 0.
But with a third dimension, it's like stacking spreadsheets on spreadsheets, the z component's value varying depending on what position that spreadsheet is in in the stack.
The node tree takes every single cell in every single spreadsheet and operates on the vector in that cell, and in the case of colors, the output of the node tree determines the output color. The mix of X Y and Z values (only X = red, and Y=green values though since this is 2D) determines the resulting color for that cell. If you were to apply this to a 3D object, you'd see an even greater range of colors because now you have a Z (blue) component mixing with all the other red and green components.
17th February 2021 - 12:01
@Tighe Racicot Yea, that's a good way of thinking about it! Only that the size of the spreadsheet/ the number of cells is dynamic and dependent on pixels and ray intersections.
16th September 2020 - 07:52
Simon, what is the node between combine xyz and math node in this example? It labeled Length but i can find it on the search bar.
16th September 2020 - 11:55
*@victor p* It is the 'Vector Math', set to the 'Length' operation. It simply gives you the value of the length of a vector, which is, in terms of coordinate vectors, the distance to the center.
28th October 2020 - 03:22
This is why I hate math lol
17th February 2021 - 10:54
17th February 2021 - 12:02
@Tighe Racicot It sounds like you are using the regular math node instead of the vector math node. That one interprets the input as a simple value and so you simply get a repetition along the x=y axis
17th February 2021 - 20:31
@Simon Thommes Thanks, yes, that was it. In 2.92 the vector math nodes are a different color, and the regular math nodes are blue like in the video (you’re using 2.83 in the video). The “vector” label on the input and output clued me in that it was vector math, since the math node’s in/out labels are “Value”.
18th February 2021 - 19:31
@Tighe Racicot Ah right, yes!
28th February 2021 - 10:46
hi, what should I do to make the graphics appear randomly in the included positions
1st March 2021 - 11:09
@Chien Hey, I'm not sure that I understand your question correctly but maybe this helps:
After dividing the coordinates into cells you can do anything randomly to the parameters that are generating the shapes inside them. If you want to shift their positions, you can add a random vector to the coordinates they are using. However, you inherently can't go beyond the limits of the cells to make the shapes overall, due to the logic of how this works (I go a bit more into the logic in chapter 2-5).
If you want overlapping shapes you can do this method multiple times in parallel, offset the different grids and then blend the result.
But even just shifting the textures within a cell can be quite useful (I'm showing this later in chapter 4-3).
8th March 2021 - 07:37
@西蒙·汤姆斯 Thank you very much for your answer, it made me understand more fully