Blender Studio
  • Films
  • Projects
  • Training
  • Characters
  • Tools
  • Blog
  • Join
  • BLENDER.ORG

    • Download

      Get the latest Blender, older versions, or experimental builds.

    • What's New

      Stay up-to-date with the new features in the latest Blender releases.

    LEARNING & RESOURCES

    • Blender Studio

      Access production assets and knowledge from the open movies.

    • Manual

      Documentation on the usage and features in Blender.

    DEVELOPMENT

    • Developers Blog

      Latest development updates, by Blender developers.

    • Documentation

      Guidelines, release notes and development docs.

    • Benchmark

      A platform to collect and share results of the Blender Benchmark.

    • Blender Conference

      The yearly event that brings the community together.

    DONATE

    • Development Fund

      Support core development with a monthly contribution.

    • One-time Donations

      Perform a single donation with more payment options available.

Training Highlights
Stylized Rendering with Brushstrokes
Geometry Nodes from Scratch
Procedural Shading Fundamentals
Stylized Character Workflow

Training types
Course Documentation Production Lesson Workshop

Training categories
Animation Geometry Nodes Lighting Rendering Rigging Shading
Film Highlights
Wing It!
2023
Charge
2022
Sprite Fright
2021
Spring
2019
Project Highlights
Project DogWalk
Interactive
Gold
Showcase
BCON24 Identity
Showcase
Fighting with Grease Pencil
Article
Course
Procedural Shading: Fundamentals and Beyond
Introduction
  1. 01

    Introduction

    Free
  2. 02

    Definition

  3. 03

    Content Overview

  4. 04

    The Shader Editor

1: Fundamentals
  1. 01

    Colors, Values & Vectors

  2. 02

    Vectors and Pixels

  3. 03

    Coordinate Types

  4. 04

    Value Control

2: Procedural Textures
  1. 01

    Noise Textures

  2. 02

    Shape Control

  3. 03

    Repetition

  4. 04

    Texture Composition

  5. 05

    Space Manipulation

3: Shading Principles
  1. 01

    PBR

  2. 02

    Geometric Dependency - Context Sensitivity

  3. 03

    Generating PBR Maps

4: Shader Composition
  1. 01

    Blending & Masking

  2. 02

    Randomization

  3. 03

    Semi-Procedural Workflow

  4. 04

    Volumetric Shaders

5: Modular Setup
  1. 01

    Parametrization

  2. 02

    Nodegroups

6: Automation
  1. 01

    Drivers

  2. 02

    Animation

Workflow Examples
  1. 01

    Walls (Chapter 2+)

  2. 02

    Wood (Chapter 3+)

  3. 03

    Dynamic Walls (Chapter 4+)

  4. 04

    Wooden Boards (Chapter 5+)

  5. 05

    Fire (Chapter 6+)

  6. 06

    Rainy Window (Chapter 6+)

Files & Tools
  1. Example Scene
  2. Example Scene - Simplified Free
  3. Visualization (Chapter 1-4): Value Graph
  4. Visualization (Chapter 2-5): Space Origami
  5. Example Shader (Chapter 3-1): Rock
  6. Example Shader (Chapter 4-1): Dilapidated Cube Scene
  7. Example Shader (Chapter 4-3): Image Texture De-Tiling
  8. Example Shader (Chapter 4-3): Semi-Procedural Fishbones Boards
  9. Example Shader (Chapter 4-4): Procedural Volumetric Clouds

Login to view this content

Join Blender Studio for just €11.50/month and get instant access to all of our training and film assets!

Login Join Blender Studio
Simon Thommes
Simon Thommes Author
License CC-BY
Report Problem
Workflow Examples

Fire (Chapter 6+)

File

Blender File · 2.0 MB · CC-BY EX5-fire.blend
Download File

Join to leave a comment.

13 comments
Joel V Favela
Joel V Favela
July 28th, 2023

Hello! I have a problem in my file, I did the steps of the course but when I run the animation, it runs slower than the course and the reference file. I looked in the general settings and the animation setting (I changed the playback from "play every frame" to "Frame Dropping" but it didn't work), I couldn't find where the problem could be. Can you help me?

Simon Thommes
Simon Thommes
July 31st, 2023

@Joel V Favela That can have different reasons. If the example file works fine for you I assume it's not a hardware issue. Make sure that the framerate is set to the same value. The time mapping in the nodes itself could also be different, make sure the same values are used for the math in there.

When you render out a video in the example file and your file, are they the same speed then?

Aron
Aron
Oct. 22nd, 2020

How power stretch vector space? add,substract and scale is intuitive how vector sapce manipulate.
(0~1,0) + (1,0)= (0~2,0) is just move (0~1,0) x (4,0) =(0~4,0)is just scale but 0~1 to power of 2 , 1 is 1 and 0,x is less then 1. I can't associate it to stretch the vector
what difference between scale the vector and stretch the vector?

I'm not good at eng but i hope this question delivered well :)

Huân Lê-Vương
Huân Lê-Vương
Oct. 23rd, 2020

*@Aron* scale is "linear". power isn't linear. when scaling, the vector remain the same "shape" of it, just "bigger"/"smaller". power is we multiply the value to itself multiple time, imagine each coordinate will be scaled in a different way than the others may result in stretching the vector.

Aron
Aron
Oct. 23rd, 2020

*@Huân Lê-Vương* oh thanks for answer my question. 0~0.1 to power of 2 is 0~0.01 so 0~0.1 value range get shorter but 0.9~1 to power of 2 is 0.81~1 so 0.9~1 value range get longer , generally 0~1 value range is stretched lengthen. so top of fire animation is fatster then bottom is it correct?

Huân Lê-Vương
Huân Lê-Vương
Oct. 24th, 2020

*@Aron* for example, we create a plane. we take X value of the Generated. on the graph, the function of X is y=x with the limit from 0 to 1.

We power the value of X with the exponent of 2. now the function is y=x^2. limit from 0^2 to 1^2. the value still goes from 0 to 1 but look at the graph, it's stretched.

to see how it's stretched, just separate the y=x^2 into 10 steps of 0.1 using a snap operation (add a math node, change to snap, increment 0.1)

in the graph, as you mention above, at the first step of 0.1, y=0.1^2=0.01. so when x goes from 0 to 0.1, y only goes from 0 to 0.01.

At the last step 0.9 to 1, you see from 0.9^2 to 1^2 is 0.19. so the y goes 19 time faster than it does at the first step.

Aron
Aron
Oct. 24th, 2020

*@Huân Lê-Vương* great! thank you to solve my question!

dean
dean
Sept. 10th, 2020

This is incredible, I wonder if it's possible to create a procedural node based explosion without requiring baking.

Huân Lê-Vương
Huân Lê-Vương
Sept. 10th, 2020

*@dean* He uploaded an explosion example in Chapter 4-4

Simon Thommes
Simon Thommes
Sept. 10th, 2020

*@Huân Lê-Vương* That example was to show baked simulations, it's not just a procedural shader!

Technically you could do something similar with nodes, but it would be much more difficult than this simple fire and would probably never look as good as actual simulation.

But if you want something more stylized then it might be a valid option.

Huân Lê-Vương
Huân Lê-Vương
Sept. 10th, 2020

*@Simon Thommes* oh sorry!

Andreas Friedel
Andreas Friedel
Sept. 8th, 2020

Awesome!

Huân Lê-Vương
Huân Lê-Vương
Sept. 8th, 2020

Is it normal if my volumetric cube keep animating even I haven't added any time manipulation to it yet?

(Ignore this. It's because of the noise).

Films Projects Training Blog Blender Studio for Teams
Pipeline and Tools
  • CloudRig
  • Blender Kitsu
  • Brushstroke Tools Add-on
  • Blender Studio Extensions
Characters
  • Mikassa
  • Whale
  • Ballan Wrasse
  • Snow
Studio
  • Terms & Conditions
  • Privacy Policy
  • Contact
  • Remixing Music
Blender Studio

The creators who share.

Artistic freedom starts with Blender The Free and Open Source 3D Creation Suite