Blender Studio
  • Films
  • Training
  • Characters
  • Pipeline
  • Blog
  • Sign in
  • 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.

Films
Training
Blog
Pipeline and Tools
Characters
Search
Login
Join

Course

Procedural Shading: Fundamentals and Beyond
feed Course Overview
Introduction keyboard_arrow_down
  1. 01

    Introduction

    Free
  2. 02

    Definition

  3. 03

    Content Overview

  4. 04

    The Shader Editor

1: Fundamentals keyboard_arrow_down
  1. 01

    Colors, Values & Vectors

  2. 02

    Vectors and Pixels

  3. 03

    Coordinate Types

  4. 04

    Value Control

2: Procedural Textures keyboard_arrow_down
  1. 01

    Noise Textures

  2. 02

    Shape Control

  3. 03

    Repetition

  4. 04

    Texture Composition

  5. 05

    Space Manipulation

3: Shading Principles keyboard_arrow_down
  1. 01

    PBR

  2. 02

    Geometric Dependency - Context Sensitivity

  3. 03

    Generating PBR Maps

4: Shader Composition keyboard_arrow_down
  1. 01

    Blending & Masking

  2. 02

    Randomization

  3. 03

    Semi-Procedural Workflow

  4. 04

    Volumetric Shaders

5: Modular Setup keyboard_arrow_down
  1. 01

    Parametrization

  2. 02

    Nodegroups

6: Automation keyboard_arrow_down
  1. 01

    Drivers

  2. 02

    Animation

Workflow Examples keyboard_arrow_down
  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 keyboard_arrow_down
  1. insert_drive_file Example Scene visibility_off
  2. insert_drive_file Example Scene - Simplified visibility_off
  3. insert_drive_file Visualization (Chapter 1-4): Value Graph visibility_off
  4. insert_drive_file Visualization (Chapter 2-5): Space Origami visibility_off
  5. insert_drive_file Example Shader (Chapter 3-1): Rock visibility_off
  6. insert_drive_file Example Shader (Chapter 4-1): Dilapidated Cube Scene visibility_off
  7. insert_drive_file Example Shader (Chapter 4-3): Image Texture De-Tiling visibility_off
  8. insert_drive_file Example Shader (Chapter 4-3): Semi-Procedural Fishbones Boards visibility_off
  9. insert_drive_file Example Shader (Chapter 4-4): Procedural Volumetric Clouds visibility_off

Course

Procedural Shading: Fundamentals and Beyond
Introduction keyboard_arrow_down
  1. 01

    Introduction

    Free
  2. 02

    Definition

  3. 03

    Content Overview

  4. 04

    The Shader Editor

1: Fundamentals keyboard_arrow_down
  1. 01

    Colors, Values & Vectors

  2. 02

    Vectors and Pixels

  3. 03

    Coordinate Types

  4. 04

    Value Control

2: Procedural Textures keyboard_arrow_down
  1. 01

    Noise Textures

  2. 02

    Shape Control

  3. 03

    Repetition

  4. 04

    Texture Composition

  5. 05

    Space Manipulation

3: Shading Principles keyboard_arrow_down
  1. 01

    PBR

  2. 02

    Geometric Dependency - Context Sensitivity

  3. 03

    Generating PBR Maps

4: Shader Composition keyboard_arrow_down
  1. 01

    Blending & Masking

  2. 02

    Randomization

  3. 03

    Semi-Procedural Workflow

  4. 04

    Volumetric Shaders

5: Modular Setup keyboard_arrow_down
  1. 01

    Parametrization

  2. 02

    Nodegroups

6: Automation keyboard_arrow_down
  1. 01

    Drivers

  2. 02

    Animation

Workflow Examples keyboard_arrow_down
  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 keyboard_arrow_down
  1. insert_drive_file Example Scene
  2. insert_drive_file Example Scene - Simplified Free
  3. insert_drive_file Visualization (Chapter 1-4): Value Graph
  4. insert_drive_file Visualization (Chapter 2-5): Space Origami
  5. insert_drive_file Example Shader (Chapter 3-1): Rock
  6. insert_drive_file Example Shader (Chapter 4-1): Dilapidated Cube Scene
  7. insert_drive_file Example Shader (Chapter 4-3): Image Texture De-Tiling
  8. insert_drive_file Example Shader (Chapter 4-3): Semi-Procedural Fishbones Boards
  9. insert_drive_file Example Shader (Chapter 4-4): Procedural Volumetric Clouds

You need to login to view this content

You can join Blender Studio for €11.50/month and get access to all of our training & film content instantly!

Login Join Blender Studio

Workflow Examples

Fire (Chapter 6+)

Sept. 4th, 2020

info License: CC-BY
Report Problem
Simon Thommes
Simon Thommes Publisher

File EX5-fire.blend

Join to comment publicly.

13 comments

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).

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!

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!

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?

  • Films
  • Training
  • Blog
Pipeline and Tools
  • Cloud Rig
  • Blender Kitsu
  • Contact Sheet Add-on
  • Blender Purge
  • Blender Cloud Services
Characters
  • Cat
  • Dog
  • Chicken & Sets
  • Einar
Studio
  • Terms & Conditions
  • Privacy Policy
  • Contact
  • Remixing Music
  • blender.org

Blender Studio

The creators who share.

Facebook Logo Twitter Logo YouTube Logo
Loading...